@charset "UTF-8";
/* ========================================================================
   Component: Base
 ========================================================================== */
/*
 * 1. Set `font-size` to support `rem` units
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Style
 */
html {
  /* 1 */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
  background: #fff;
  color: #666;
}

/*
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/* Links
 ========================================================================== */
/*
 * Style
 */
a,
.uk-link {
  color: #1e87f0;
  text-decoration: none;
  cursor: pointer;
}

a:hover,
.uk-link:hover,
.uk-link-toggle:hover .uk-link {
  color: #0f6ecd;
  text-decoration: underline;
}

/* Text-level semantics
 ========================================================================== */
/*
 * 1. Add the correct text decoration in Edge.
 * 2. The shorthand declaration `underline dotted` is not supported in Safari.
 */
abbr[title] {
  /* 1 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
  -webkit-text-decoration-style: dotted;
}

/*
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/*
 * 1. Consolas has a better baseline in running text compared to `Courier`
 * 2. Correct the odd `em` font sizing in all browsers.
 * 3. Style
 */
:not(pre) > code,
:not(pre) > kbd,
:not(pre) > samp {
  /* 1 */
  font-family: Consolas, monaco, monospace;
  /* 2 */
  font-size: 0.875rem;
  /* 3 */
  color: #f0506e;
  white-space: nowrap;
  padding: 2px 6px;
  background: #f8f8f8;
}

/*
 * Emphasize
 */
em {
  color: #f0506e;
}

/*
 * Insert
 */
ins {
  background: #ffd;
  color: #666;
  text-decoration: none;
}

/*
 * Mark
 */
mark {
  background: #ffd;
  color: #666;
}

/*
 * Quote
 */
q {
  font-style: italic;
}

/*
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
 ========================================================================== */
/*
 * Remove the gap between the element and the bottom of its parent container.
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * 1. Constrain the element to its parent width.
 * 2. Preserve the intrinsic aspect ratio and auto-scale the height of an image if the `height` attribute is present.
 * 3. Take border and padding into account.
 */
canvas,
img,
svg,
video {
  /* 1 */
  max-width: 100%;
  /* 2 */
  height: auto;
  /* 3 */
  box-sizing: border-box;
}

/*
 * Deprecated: only needed for `img` elements with `uk-img`
 * 1. Hide `alt` text for lazy load images.
 * 2. Fix lazy loading images if parent element is set to `display: inline` and has `overflow: hidden`.
 */
img:not([src]) {
  /* 1 */
  visibility: hidden;
  /* 2 */
  min-width: 1px;
}

/*
 * Iframe
 * Remove border in all browsers
 */
iframe {
  border: 0;
}

/* Block elements
 ========================================================================== */
/*
 * Margins
 */
p,
ul,
ol,
dl,
pre,
address,
fieldset,
figure {
  margin: 0 0 20px 0;
}

/* Add margin if adjacent element */
* + p,
* + ul,
* + ol,
* + dl,
* + pre,
* + address,
* + fieldset,
* + figure {
  margin-top: 20px;
}

/* Headings
 ========================================================================== */
h1, .uk-h1,
h2, .uk-h2,
h3, .uk-h3,
h4, .uk-h4,
h5, .uk-h5,
h6, .uk-h6,
.uk-heading-small,
.uk-heading-medium,
.uk-heading-large,
.uk-heading-xlarge,
.uk-heading-2xlarge,
.uk-heading-3xlarge {
  margin: 0 0 20px 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: normal;
  color: #333;
  text-transform: none;
}

/* Add margin if adjacent element */
* + h1, * + .uk-h1,
* + h2, * + .uk-h2,
* + h3, * + .uk-h3,
* + h4, * + .uk-h4,
* + h5, * + .uk-h5,
* + h6, * + .uk-h6,
* + .uk-heading-small,
* + .uk-heading-medium,
* + .uk-heading-large,
* + .uk-heading-xlarge,
* + .uk-heading-2xlarge,
* + .uk-heading-3xlarge {
  margin-top: 40px;
}

/*
 * Sizes
 */
h1, .uk-h1 {
  font-size: 2.23125rem;
  line-height: 1.2;
}

h2, .uk-h2 {
  font-size: 1.7rem;
  line-height: 1.3;
}

h3, .uk-h3 {
  font-size: 1.5rem;
  line-height: 1.4;
}

h4, .uk-h4 {
  font-size: 1.25rem;
  line-height: 1.4;
}

h5, .uk-h5 {
  font-size: 16px;
  line-height: 1.4;
}

h6, .uk-h6 {
  font-size: 0.875rem;
  line-height: 1.4;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  h1, .uk-h1 {
    font-size: 2.625rem;
  }
  h2, .uk-h2 {
    font-size: 2rem;
  }
}
/* Lists
 ========================================================================== */
ul,
ol {
  padding-left: 30px;
}

/*
 * Reset margin for nested lists
 */
ul > li > ul,
ul > li > ol,
ol > li > ol,
ol > li > ul {
  margin: 0;
}

/* Description lists
 ========================================================================== */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Horizontal rules
 ========================================================================== */
/*
 * 1. Show the overflow in Chrome, Edge and IE.
 * 2. Add the correct text-align in Edge and IE.
 * 3. Style
 */
hr, .uk-hr {
  /* 1 */
  overflow: visible;
  /* 2 */
  text-align: inherit;
  /* 3 */
  margin: 0 0 20px 0;
  border: 0;
  border-top: 1px solid #e5e5e5;
}

/* Add margin if adjacent element */
* + hr,
* + .uk-hr {
  margin-top: 20px;
}

/* Address
 ========================================================================== */
address {
  font-style: normal;
}

/* Blockquotes
 ========================================================================== */
blockquote {
  margin: 0 0 20px 0;
  font-size: 1.25rem;
  line-height: 1.5;
  font-style: italic;
  color: #333;
}

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

/*
 * Content
 */
blockquote p:last-of-type {
  margin-bottom: 0;
}

blockquote footer {
  margin-top: 10px;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #666;
}
blockquote footer::before {
  content: "— ";
}

/* Preformatted text
 ========================================================================== */
/*
 * 1. Contain overflow in all browsers.
 */
pre {
  font: 0.875rem / 1.5 Consolas, monaco, monospace;
  color: #666;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
  /* 1 */
  overflow: auto;
  padding: 10px;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  background: #fff;
}

pre code {
  font-family: Consolas, monaco, monospace;
}

/* Focus
 ========================================================================== */
:focus {
  outline: none;
}

:focus-visible {
  outline: 2px dotted #333;
}

/* Selection pseudo-element
 ========================================================================== */
::-moz-selection {
  background: #39f;
  color: #fff;
  text-shadow: none;
}
::selection {
  background: #39f;
  color: #fff;
  text-shadow: none;
}

/* HTML5 elements
 ========================================================================== */
/*
 * 1. Add the correct display in Edge, IE 10+, and Firefox.
 * 2. Add the correct display in IE.
 */
details,
main { /* 2 */
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Pass media breakpoints to JS
 ========================================================================== */
/*
 * Breakpoints
 */
:root {
  --uk-breakpoint-s: 320px;
  --uk-breakpoint-m: 768px;
  --uk-breakpoint-l: 1200px;
  --uk-breakpoint-xl: 1600px;
}

/* ========================================================================
   Component: Link
 ========================================================================== */
/* Muted
 ========================================================================== */
a.uk-link-muted,
.uk-link-muted a,
.uk-link-toggle .uk-link-muted {
  color: #999;
}

a.uk-link-muted:hover,
.uk-link-muted a:hover,
.uk-link-toggle:hover .uk-link-muted {
  color: #666;
}

/* Text
 ========================================================================== */
a.uk-link-text,
.uk-link-text a,
.uk-link-toggle .uk-link-text {
  color: inherit;
}

a.uk-link-text:hover,
.uk-link-text a:hover,
.uk-link-toggle:hover .uk-link-text {
  color: #999;
}

/* Heading
 ========================================================================== */
a.uk-link-heading,
.uk-link-heading a,
.uk-link-toggle .uk-link-heading {
  color: inherit;
}

a.uk-link-heading:hover,
.uk-link-heading a:hover,
.uk-link-toggle:hover .uk-link-heading {
  color: #1e87f0;
  text-decoration: none;
}

/* Reset
 ========================================================================== */
/*
 * `!important` needed to override inverse component
 */
a.uk-link-reset,
.uk-link-reset a {
  color: inherit !important;
  text-decoration: none !important;
}

/* Toggle
 ========================================================================== */
.uk-link-toggle {
  color: inherit !important;
  text-decoration: none !important;
}

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

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

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

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

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

.uk-heading-3xlarge {
  font-size: 8rem;
  line-height: 1;
}

/* Tablet Landscape and bigger */
@media (min-width: 768px) {
  .uk-heading-small {
    font-size: 3.25rem;
  }
  .uk-heading-medium {
    font-size: 3.5rem;
  }
  .uk-heading-large {
    font-size: 4rem;
  }
  .uk-heading-xlarge {
    font-size: 6rem;
  }
  .uk-heading-2xlarge {
    font-size: 8rem;
  }
  .uk-heading-3xlarge {
    font-size: 11rem;
  }
}
/* Laptop and bigger */
@media (min-width: 1200px) {
  .uk-heading-medium {
    font-size: 4rem;
  }
  .uk-heading-large {
    font-size: 6rem;
  }
  .uk-heading-xlarge {
    font-size: 8rem;
  }
  .uk-heading-2xlarge {
    font-size: 11rem;
  }
  .uk-heading-3xlarge {
    font-size: 15rem;
  }
}
/* Primary
   Deprecated: Use `uk-heading-medium` instead
 ========================================================================== */
/* Tablet landscape and bigger */
/* Desktop and bigger */
/* Hero
   Deprecated: Use `uk-heading-xlarge` instead
 ========================================================================== */
/* Tablet landscape and bigger */
/* Desktop and bigger */
/* Divider
 ========================================================================== */
.uk-heading-divider {
  padding-bottom: calc(5px + 0.1em);
  border-bottom: calc(0.2px + 0.05em) solid #e5e5e5;
}

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

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

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

/*
 * Extra markup is needed to make it work with text align
 */
.uk-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
 */
.uk-heading-line > ::before,
.uk-heading-line > ::after {
  content: "";
  /* 1 */
  position: absolute;
  top: calc(50% - (calc(0.2px + 0.05em) / 2));
  /* 2 */
  width: 2000px;
  /* 3 */
  border-bottom: calc(0.2px + 0.05em) solid #e5e5e5;
}

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

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

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

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

/* Icon
 ========================================================================== */
.uk-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%23e5e5e5%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%;
}

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

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

.uk-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
 */
/* 1 */
.uk-divider-small {
  line-height: 0;
}

/* 2 */
.uk-divider-small::after {
  content: "";
  display: inline-block;
  width: 100px;
  max-width: 100%;
  border-top: 1px solid #e5e5e5;
  vertical-align: top;
}

/* Vertical
 ========================================================================== */
.uk-divider-vertical {
  width: -moz-max-content;
  width: max-content;
  height: 100px;
  margin-left: auto;
  margin-right: auto;
  border-left: 1px solid #e5e5e5;
}

/* ========================================================================
   Component: List
 ========================================================================== */
.uk-list {
  padding: 0;
  list-style: none;
}

/*
 * Avoid column break within the list item, when using `column-count`
 */
.uk-list > * {
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
}

/*
 * Remove margin from the last-child
 */
.uk-list > * > :last-child {
  margin-bottom: 0;
}

/*
 * Style
 */
.uk-list > :nth-child(n+2),
.uk-list > * > ul {
  margin-top: 10px;
}

/* Marker modifiers
 ========================================================================== */
.uk-list-disc,
.uk-list-circle,
.uk-list-square,
.uk-list-decimal,
.uk-list-hyphen {
  padding-left: 30px;
}

.uk-list-disc {
  list-style-type: disc;
}

.uk-list-circle {
  list-style-type: circle;
}

.uk-list-square {
  list-style-type: square;
}

.uk-list-decimal {
  list-style-type: decimal;
}

.uk-list-hyphen {
  list-style-type: "–  ";
}

/*
 * Color modifiers
 */
.uk-list-muted > ::marker {
  color: #999 !important;
}

.uk-list-emphasis > ::marker {
  color: #333 !important;
}

.uk-list-primary > ::marker {
  color: #1e87f0 !important;
}

.uk-list-secondary > ::marker {
  color: #222 !important;
}

/* Image bullet modifier
 ========================================================================== */
.uk-list-bullet > * {
  position: relative;
  padding-left: 30px;
}

.uk-list-bullet > ::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 1.5em;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.uk-list-divider > :nth-child(n+2) {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #e5e5e5;
}

/*
 * Striped
 */
.uk-list-striped > * {
  padding: 10px 10px;
}
.uk-list-striped > *:nth-of-type(odd) {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

.uk-list-striped > :nth-of-type(odd) {
  background: #f8f8f8;
}

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

/* Size modifier
 ========================================================================== */
.uk-list-large > :nth-child(n+2),
.uk-list-large > * > ul {
  margin-top: 20px;
}

.uk-list-collapse > :nth-child(n+2),
.uk-list-collapse > * > ul {
  margin-top: 0;
}

/*
 * Divider
 */
.uk-list-large.uk-list-divider > :nth-child(n+2) {
  margin-top: 20px;
  padding-top: 20px;
}

.uk-list-collapse.uk-list-divider > :nth-child(n+2) {
  margin-top: 0;
  padding-top: 0;
}

/*
 * Striped
 */
.uk-list-large.uk-list-striped > * {
  padding: 20px 10px;
}

.uk-list-collapse.uk-list-striped > * {
  padding-top: 0;
  padding-bottom: 0;
}

.uk-list-large.uk-list-striped > :nth-child(n+2),
.uk-list-collapse.uk-list-striped > :nth-child(n+2) {
  margin-top: 0;
}

/* ========================================================================
   Component: Description list
 ========================================================================== */
/*
 * Term
 */
.uk-description-list > dt {
  color: #333;
  font-size: 0.875rem;
  font-weight: normal;
  text-transform: uppercase;
}

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

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

/* ========================================================================
   Component: Table
 ========================================================================== */
/*
 * 1. Remove most spacing between table cells.
 * 2. Behave like a block element
 * 3. Style
 */
.uk-table {
  /* 1 */
  border-collapse: collapse;
  border-spacing: 0;
  /* 2 */
  width: 100%;
  /* 3 */
  margin-bottom: 20px;
}

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

/* Header cell
 ========================================================================== */
/*
 * 1. Style
 */
.uk-table th {
  padding: 16px 12px;
  text-align: left;
  vertical-align: bottom;
  /* 1 */
  font-size: 0.875rem;
  font-weight: normal;
  color: #999;
  text-transform: uppercase;
}

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

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

/* Footer
 ========================================================================== */
.uk-table tfoot {
  font-size: 0.875rem;
}

/* Caption
 ========================================================================== */
.uk-table caption {
  font-size: 0.875rem;
  text-align: left;
  color: #999;
}

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

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

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

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

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

/* Size modifier
 ========================================================================== */
.uk-table-small th,
.uk-table-small td {
  padding: 10px 12px;
}

.uk-table-large th,
.uk-table-large td {
  padding: 22px 12px;
}

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

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

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

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

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

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

.uk-table-small .uk-table-link > a {
  padding: 10px 12px;
}

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

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

/* ========================================================================
   Component: Icon
 ========================================================================== */
/*
 * Note: 1. - 7. is required for `button` elements. Needed for Close and Form Icon component.
 * 1. Remove margins in Chrome, Safari and Opera.
 * 2. Remove borders for `button`.
 * 3. Remove border-radius in Chrome.
 * 4. Address `overflow` set to `hidden` in IE.
 * 5. Correct `font` properties and `color` not being inherited for `button`.
 * 6. Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 7. Remove default `button` padding and background color
 * 8. Style
 * 9. Fill all SVG elements with the current text color if no `fill` attribute is set
 * 10. Let the container fit the height of the icon
 */
.uk-icon {
  /* 1 */
  margin: 0;
  /* 2 */
  border: none;
  /* 3 */
  border-radius: 0;
  /* 4 */
  overflow: visible;
  /* 5 */
  font: inherit;
  color: inherit;
  /* 6 */
  text-transform: none;
  /* 7. */
  padding: 0;
  background-color: transparent;
  /* 8 */
  display: inline-block;
  /* 9 */
  fill: currentcolor;
  /* 10 */
  line-height: 0;
}

/* Required for `button`. */
button.uk-icon:not(:disabled) {
  cursor: pointer;
}

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

/*
 * Set the fill and stroke color of all SVG elements to the current text color
 */
.uk-icon:not(.uk-preserve) [fill*="#"]:not(.uk-preserve) {
  fill: currentcolor;
}

.uk-icon:not(.uk-preserve) [stroke*="#"]:not(.uk-preserve) {
  stroke: currentcolor;
}

/*
 * Fix Firefox blurry SVG rendering: https://bugzilla.mozilla.org/show_bug.cgi?id=1046835
 */
.uk-icon > * {
  transform: translate(0, 0);
}

/* Image modifier
 ========================================================================== */
/*
 * Display images in icon dimensions
 * 1. Required for `span` with background image
 * 2. Required for `image`
 */
.uk-icon-image {
  width: 20px;
  height: 20px;
  /* 1 */
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  /* 2 */
  -o-object-fit: scale-down;
     object-fit: scale-down;
  max-width: none;
}

/* Style modifiers
 ========================================================================== */
/*
 * Link
 * 1. Allow text within link
 */
.uk-icon-link {
  color: #999;
  /* 1 */
  text-decoration: none !important;
}

.uk-icon-link:hover {
  color: #666;
}

/* OnClick + Active */
.uk-icon-link:active,
.uk-active > .uk-icon-link {
  color: rgb(89.25, 89.25, 89.25);
}

/*
 * Button
 * 1. Center icon vertically and horizontally
 */
.uk-icon-button {
  box-sizing: border-box;
  width: 36px;
  height: 36px;
  border-radius: 500px;
  background: #f8f8f8;
  color: #999;
  vertical-align: middle;
  /* 1 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}

/* Hover */
.uk-icon-button:hover {
  background-color: rgb(235.25, 235.25, 235.25);
  color: #666;
}

/* OnClick + Active */
.uk-icon-button:active,
.uk-active > .uk-icon-button {
  background-color: rgb(222.5, 222.5, 222.5);
  color: #666;
}

/* ========================================================================
   Component: Form Range
 ========================================================================== */
/*
 * 1. Remove default style.
 * 2. Define consistent box sizing.
 * 3. Remove `margin` in all browsers.
 * 4. Align to the center of the line box.
 * 5. Prevent content overflow if a fixed width is used.
 * 6. Take the full width.
 * 7. Remove white background in Chrome.
 */
.uk-range {
  /* 1 */
  -webkit-appearance: none;
  /* 2 */
  box-sizing: border-box;
  /* 3 */
  margin: 0;
  /* 4 */
  vertical-align: middle;
  /* 5 */
  max-width: 100%;
  /* 6 */
  width: 100%;
  /* 7 */
  background: transparent;
}

/* Focus */
.uk-range:focus {
  outline: none;
}

.uk-range::-moz-focus-outer {
  border: none;
}

/*
 * Improves consistency of cursor style for clickable elements
 */
.uk-range:not(:disabled)::-webkit-slider-thumb {
  cursor: pointer;
}

.uk-range:not(:disabled)::-moz-range-thumb {
  cursor: pointer;
}

/*
 * Track
 * 1. Safari doesn't have a focus state. Using active instead.
 */
/* Webkit */
.uk-range::-webkit-slider-runnable-track {
  height: 3px;
  background: rgb(235.25, 235.25, 235.25);
  border-radius: 500px;
}

.uk-range:focus::-webkit-slider-runnable-track,
.uk-range:active::-webkit-slider-runnable-track {
  background: rgb(222.5, 222.5, 222.5);
}

/* Firefox */
.uk-range::-moz-range-track {
  height: 3px;
  background: rgb(235.25, 235.25, 235.25);
  border-radius: 500px;
}

.uk-range:focus::-moz-range-track {
  background: rgb(222.5, 222.5, 222.5);
}

/*
 * Thumb
 * 1. Reset
 * 2. Style
 */
/* Webkit */
.uk-range::-webkit-slider-thumb {
  /* 1 */
  -webkit-appearance: none;
  margin-top: -7px;
  /* 2 */
  height: 15px;
  width: 15px;
  border-radius: 500px;
  background: #fff;
  border: 1px solid rgb(203.5, 203.5, 203.5);
}

/* Firefox */
.uk-range::-moz-range-thumb {
  /* 1 */
  border: none;
  /* 2 */
  height: 15px;
  width: 15px;
  margin-top: -7px;
  border-radius: 500px;
  background: #fff;
  border: 1px solid rgb(203.5, 203.5, 203.5);
}

/* ========================================================================
   Component: Form
 ========================================================================== */
/*
 * 1. Define consistent box sizing.
 *    Default is `content-box` with following exceptions set to `border-box`
 *    `select`, `input[type="checkbox"]` and `input[type="radio"]`
 *    `input[type="search"]` in Chrome, Safari and Opera
 *    `input[type="color"]` in Firefox
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Change font properties to `inherit` in all browsers.
 */
.uk-input,
.uk-select,
.uk-textarea,
.uk-radio,
.uk-checkbox {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  margin: 0;
  /* 3 */
  border-radius: 0;
  /* 4 */
  font: inherit;
}

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

/*
 * Remove the inheritance of text transform in Firefox.
 */
.uk-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.
 */
.uk-select optgroup {
  /* 1 */
  font: inherit;
  /* 2 */
  font-weight: bold;
}

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

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

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

/*
 * Correct vertical alignment in Safari.
 */
.uk-input[type=date]::-webkit-datetime-edit,
.uk-input[type=time]::-webkit-datetime-edit,
.uk-input[type=datetime-local]::-webkit-datetime-edit {
  display: inline-flex;
  align-items: center;
  height: 100%;
  padding: 0;
}

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

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

/*
 * Define consistent border, margin, and padding.
 * 1. Reset `min-width`
 */
.uk-fieldset {
  border: none;
  margin: 0;
  padding: 0;
  /* 1 */
  min-width: 0;
}

/* Input, select and textarea
 * Allowed: `text`, `password`, `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.
 */
.uk-input,
.uk-textarea {
  -webkit-appearance: none;
}

/*
 * 1. Prevent content overflow if a fixed width is used
 * 2. Take the full width
 * 3. Reset default
 * 4. Style
 */
.uk-input,
.uk-select,
.uk-textarea {
  /* 1 */
  max-width: 100%;
  /* 2 */
  width: 100%;
  /* 3 */
  border: 0 none;
  /* 4 */
  padding: 0 10px;
  background: #fff;
  color: #666;
  border: 1px solid #e5e5e5;
  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
 */
.uk-input,
.uk-select:not([multiple]):not([size]) {
  height: 40px;
  vertical-align: middle;
  /* 1 */
  display: inline-block;
}

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

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

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

/* Focus */
.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
  outline: none;
  background-color: #fff;
  color: #666;
  border-color: #1e87f0;
}

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

/*
 * Placeholder
 */
.uk-input::-moz-placeholder {
  color: #999;
}
.uk-input::placeholder {
  color: #999;
}

.uk-textarea::-moz-placeholder {
  color: #999;
}

.uk-textarea::placeholder {
  color: #999;
}

/* Style modifier (`uk-input`, `uk-select` and `uk-textarea`)
 ========================================================================== */
/*
 * Small
 */
.uk-form-small {
  font-size: 0.875rem;
}

/* Single-line */
.uk-form-small:not(textarea):not([multiple]):not([size]) {
  height: 30px;
  padding-left: 8px;
  padding-right: 8px;
}

/* Multi-line */
textarea.uk-form-small,
[multiple].uk-form-small,
[size].uk-form-small {
  padding: 5px 8px;
}

.uk-form-small:not(select):not(input):not(textarea) {
  line-height: 28px;
}

/*
 * Large
 */
.uk-form-large {
  font-size: 1.25rem;
}

/* Single-line */
.uk-form-large:not(textarea):not([multiple]):not([size]) {
  height: 55px;
  padding-left: 12px;
  padding-right: 12px;
}

/* Multi-line */
textarea.uk-form-large,
[multiple].uk-form-large,
[size].uk-form-large {
  padding: 7px 12px;
}

.uk-form-large:not(select):not(input):not(textarea) {
  line-height: 53px;
}

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

/*
 * Success
 */
.uk-form-success,
.uk-form-success:focus {
  color: #32d296;
  border-color: #32d296;
}

/*
 * Blank
 */
.uk-form-blank {
  background: none;
  border-color: transparent;
}

.uk-form-blank:focus {
  border-color: #e5e5e5;
  border-style: solid;
}

/* Width modifiers (`uk-input`, `uk-select` and `uk-textarea`)
 ========================================================================== */
/*
 * Fixed widths
 * Different widths for mini sized `input` and `select` elements
 */
input.uk-form-width-xsmall {
  width: 50px;
}

select.uk-form-width-xsmall {
  width: 75px;
}

.uk-form-width-small {
  width: 130px;
}

.uk-form-width-medium {
  width: 200px;
}

.uk-form-width-large {
  width: 500px;
}

/* Select
 ========================================================================== */
/*
 * 1. Remove default style. Also works in Firefox
 * 2. Style
 * 3. Set `color` for options in the select dropdown, because the inherited `color` might be too light.
 */
.uk-select:not([multiple]):not([size]) {
  /* 1 */
  -webkit-appearance: none;
  -moz-appearance: none;
  /* 2 */
  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%23666%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%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%;
}

/* 3 */
.uk-select:not([multiple]):not([size]) option {
  color: #666;
}

/*
 * Disabled
 */
.uk-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
 ========================================================================== */
/*
 * 1. Remove default style in Chrome
 */
.uk-input[list] {
  padding-right: 20px;
  background-repeat: no-repeat;
  background-position: 100% 50%;
}

.uk-input[list]:hover,
.uk-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%23666%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

/* 1 */
.uk-input[list]::-webkit-calendar-picker-indicator {
  display: none !important;
}

/* Radio and checkbox
 ========================================================================== */
/*
 * 1. Style
 * 2. Make box more robust so it clips the child element
 * 3. Vertical alignment
 * 4. Remove default style
 * 5. Fix black background on iOS
 * 6. Center icons
 */
.uk-radio,
.uk-checkbox {
  /* 1 */
  display: inline-block;
  height: 16px;
  width: 16px;
  /* 2 */
  overflow: hidden;
  /* 3 */
  margin-top: -4px;
  vertical-align: middle;
  /* 4 */
  -webkit-appearance: none;
  -moz-appearance: none;
  /* 5 */
  background-color: transparent;
  /* 6 */
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 1px solid rgb(203.5, 203.5, 203.5);
  transition: 0.2s ease-in-out;
  transition-property: background-color, border;
}

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

/* Focus */
.uk-radio:focus,
.uk-checkbox:focus {
  background-color: rgba(0, 0, 0, 0);
  outline: none;
  border-color: #1e87f0;
}

/*
 * Checked
 */
.uk-radio:checked,
.uk-checkbox:checked,
.uk-checkbox:indeterminate {
  background-color: #1e87f0;
  border-color: transparent;
}

/* Focus */
.uk-radio:checked:focus,
.uk-checkbox:checked:focus,
.uk-checkbox:indeterminate:focus {
  background-color: rgb(13.6875, 109.5, 205.3125);
}

/*
 * Icons
 */
.uk-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");
}

.uk-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");
}

.uk-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
 */
.uk-radio:disabled,
.uk-checkbox:disabled {
  background-color: #f8f8f8;
  border-color: #e5e5e5;
}

.uk-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");
}

.uk-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");
}

.uk-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");
}

/* Legend
 ========================================================================== */
/*
 * Legend
 * 1. Behave like block element
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove padding so people aren't caught out if they zero out fieldsets.
 * 4. Style
 */
.uk-legend {
  /* 1 */
  width: 100%;
  /* 2 */
  color: inherit;
  /* 3 */
  padding: 0;
  /* 4 */
  font-size: 1.5rem;
  line-height: 1.4;
}

/* Custom controls
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Behave like most inline-block elements
 */
.uk-form-custom {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  vertical-align: middle;
}

/*
 * 1. Position and resize the form control to always cover its container
 * 2. Required for Firefox for positioning to the left
 * 3. Required for Webkit to make `height` work
 * 4. Hide controls and show cursor
 * 5. Needed for the cursor
 * 6. Clip height caused by 5. Needed for Webkit only
 */
.uk-form-custom select,
.uk-form-custom input[type=file] {
  /* 1 */
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  /* 2 */
  left: 0;
  /* 3 */
  -webkit-appearance: none;
  /* 4 */
  opacity: 0;
  cursor: pointer;
}

.uk-form-custom input[type=file] {
  /* 5 */
  font-size: 500px;
  /* 6 */
  overflow: hidden;
}

/* Label
 ========================================================================== */
.uk-form-label {
  color: #333;
  font-size: 0.875rem;
}

/* Layout
 ========================================================================== */
/*
 * Stacked
 */
.uk-form-stacked .uk-form-label {
  display: block;
  margin-bottom: 5px;
}

/*
 * Horizontal
 */
/* Tablet portrait and smaller */
@media (max-width: 767px) {
  /* Behave like `uk-form-stacked` */
  .uk-form-horizontal .uk-form-label {
    display: block;
    margin-bottom: 5px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-form-horizontal .uk-form-label {
    width: 200px;
    margin-top: 7px;
    float: left;
  }
  .uk-form-horizontal .uk-form-controls {
    margin-left: 215px;
  }
  /* Better vertical alignment if controls are checkboxes and radio buttons with text */
  .uk-form-horizontal .uk-form-controls-text {
    padding-top: 7px;
  }
}
/* Icons
 ========================================================================== */
/*
 * 1. Set position
 * 2. Set width
 * 3. Center icon vertically and horizontally
 * 4. Style
 */
.uk-form-icon {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  width: 40px;
  /* 3 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /* 4 */
  color: #999;
}

/*
 * Required for `a`.
 */
.uk-form-icon:hover {
  color: #666;
}

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

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

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

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

/* ========================================================================
   Component: Button
 ========================================================================== */
/*
 * 1. Remove margins in Chrome, Safari and Opera.
 * 2. Remove borders for `button`.
 * 3. Address `overflow` set to `hidden` in IE.
 * 4. Correct `font` properties and `color` not being inherited for `button`.
 * 5. Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 6. Remove default style for `input type="submit"`in iOS.
 * 7. Style
 * 8. `line-height` is used to create a height because it also centers the text vertically for `a` elements.
 *    Better would be to use height and flexbox to center the text vertically but flexbox doesn't work in Firefox on `button` elements.
 * 9. Align text if button has a width
 * 10. Required for `a`.
 */
.uk-button {
  /* 1 */
  margin: 0;
  /* 2 */
  border: none;
  /* 3 */
  overflow: visible;
  /* 4 */
  font: inherit;
  color: inherit;
  /* 5 */
  text-transform: none;
  /* 6 */
  -webkit-appearance: none;
  border-radius: 0;
  /* 7 */
  display: inline-block;
  box-sizing: border-box;
  padding: 0 30px;
  vertical-align: middle;
  font-size: 0.875rem;
  /* 8 */
  line-height: 38px;
  /* 9 */
  text-align: center;
  /* 10 */
  text-decoration: none;
  text-transform: uppercase;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color, border-color;
}

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

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

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

/* OnClick + Active */
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-button-default {
  background-color: transparent;
  color: #333;
  border: 1px solid #e5e5e5;
}

/* Hover */
.uk-button-default:hover {
  background-color: transparent;
  color: #333;
  border-color: #b2b2b2;
}

/* OnClick + Active */
.uk-button-default:active,
.uk-button-default.uk-active {
  background-color: transparent;
  color: #333;
  border-color: rgb(152.5, 152.5, 152.5);
}

/*
 * Primary
 */
.uk-button-primary {
  background-color: #1e87f0;
  color: #fff;
  border: 1px solid transparent;
}

/* Hover */
.uk-button-primary:hover {
  background-color: rgb(15.28125, 122.25, 229.21875);
  color: #fff;
}

/* OnClick + Active */
.uk-button-primary:active,
.uk-button-primary.uk-active {
  background-color: rgb(13.6875, 109.5, 205.3125);
  color: #fff;
}

/*
 * Secondary
 */
.uk-button-secondary {
  background-color: #222;
  color: #fff;
  border: 1px solid transparent;
}

/* Hover */
.uk-button-secondary:hover {
  background-color: rgb(21.25, 21.25, 21.25);
  color: #fff;
}

/* OnClick + Active */
.uk-button-secondary:active,
.uk-button-secondary.uk-active {
  background-color: rgb(8.5, 8.5, 8.5);
  color: #fff;
}

/*
 * Danger
 */
.uk-button-danger {
  background-color: #f0506e;
  color: #fff;
  border: 1px solid transparent;
}

/* Hover */
.uk-button-danger:hover {
  background-color: rgb(237.9868421053, 56.5131578947, 90.5394736842);
  color: #fff;
}

/* OnClick + Active */
.uk-button-danger:active,
.uk-button-danger.uk-active {
  background-color: rgb(235.9736842105, 33.0263157895, 71.0789473684);
  color: #fff;
}

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

/* Size modifiers
 ========================================================================== */
.uk-button-small {
  padding: 0 15px;
  line-height: 28px;
  font-size: 0.875rem;
}

.uk-button-large {
  padding: 0 40px;
  line-height: 53px;
  font-size: 0.875rem;
}

/* Text modifiers
 ========================================================================== */
/*
 * Text
 * 1. Reset
 * 2. Style
 */
.uk-button-text {
  /* 1 */
  padding: 0;
  line-height: 1.5;
  background: none;
  /* 2 */
  color: #333;
  position: relative;
}
.uk-button-text::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 100%;
  border-bottom: 1px solid currentColor;
  transition: right 0.3s ease-out;
}

/* Hover */
.uk-button-text:hover {
  color: #333;
}
.uk-button-text:hover::before {
  right: 0;
}

/* Disabled */
.uk-button-text:disabled {
  color: #999;
}
.uk-button-text:disabled::before {
  display: none;
}

/*
 * Link
 * 1. Reset
 * 2. Style
 */
.uk-button-link {
  /* 1 */
  padding: 0;
  line-height: 1.5;
  background: none;
  /* 2 */
  color: #333;
}

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

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

/* Group
 ========================================================================== */
/*
 * 1. Using `flex` instead of `inline-block` to prevent whitespace between child elements
 * 2. Behave like button
 * 3. Create position context
 */
.uk-button-group {
  /* 1 */
  display: inline-flex;
  /* 2 */
  vertical-align: middle;
  /* 3 */
  position: relative;
}

/* Group
 ========================================================================== */
/*
 * Collapse border
 */
.uk-button-group > .uk-button:nth-child(n+2),
.uk-button-group > div:nth-child(n+2) .uk-button {
  margin-left: -1px;
}

/*
 * Create position context to superimpose the successor elements border
 * Known issue: If you use an `a` element as button and an icon inside,
 * the active state will not work if you click the icon inside the button
 * Workaround: Just use a `button` or `input` element as button
 */
.uk-button-group .uk-button:hover,
.uk-button-group .uk-button:focus,
.uk-button-group .uk-button:active,
.uk-button-group .uk-button.uk-active {
  position: relative;
  z-index: 1;
}

/* ========================================================================
   Component: Progress
 ========================================================================== */
/*
 * 1. Add the correct vertical alignment in all browsers.
 * 2. Behave like a block element.
 * 3. Remove borders in Firefox.
 * 4. Remove default style in Chrome, Safari and Edge.
 * 5. Style
 */
.uk-progress {
  /* 1 */
  vertical-align: baseline;
  /* 2 */
  display: block;
  width: 100%;
  /* 3 */
  border: 0;
  /* 4 */
  background-color: #f8f8f8;
  /* 5 */
  margin-bottom: 20px;
  height: 15px;
  border-radius: 500px;
  overflow: hidden;
}

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

/*
 * Show background color set on `uk-progress` in Chrome, Safari and Edge.
 */
.uk-progress::-webkit-progress-bar {
  background-color: transparent;
}

/*
 * Progress Bar
 * 1. Transitions don't work on `::-moz-progress-bar` pseudo element in Firefox yet.
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=662351
 */
.uk-progress::-webkit-progress-value {
  background-color: #1e87f0;
  -webkit-transition: width 0.6s ease;
  transition: width 0.6s ease;
}

.uk-progress::-moz-progress-bar {
  background-color: #1e87f0;
  /* 1 */
  -moz-transition: width 0.6s ease;
  transition: width 0.6s ease;
}

/* ========================================================================
   Component: Section
 ========================================================================== */
/*
 * 1. Make it work with `100vh` and height in general
 */
.uk-section {
  display: flow-root;
  box-sizing: border-box; /* 1 */
  padding-top: 40px;
  padding-bottom: 40px;
}

/* Desktop and bigger */
@media (min-width: 768px) {
  .uk-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
/*
 * Remove margin from the last-child
 */
.uk-section > :last-child {
  margin-bottom: 0;
}

/* Size modifiers
 ========================================================================== */
/*
 * XSmall
 */
.uk-section-xsmall {
  padding-top: 20px;
  padding-bottom: 20px;
}

/*
 * Small
 */
.uk-section-small {
  padding-top: 40px;
  padding-bottom: 40px;
}

/*
 * Large
 */
.uk-section-large {
  padding-top: 70px;
  padding-bottom: 70px;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-section-large {
    padding-top: 140px;
    padding-bottom: 140px;
  }
}
/*
 * XLarge
 */
.uk-section-xlarge {
  padding-top: 140px;
  padding-bottom: 140px;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-section-xlarge {
    padding-top: 210px;
    padding-bottom: 210px;
  }
}
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-section-default {
  --uk-inverse: dark;
  background: #fff;
}

/*
 * Muted
 */
.uk-section-muted {
  --uk-inverse: dark;
  background: #f8f8f8;
}

/*
 * Primary
 */
.uk-section-primary {
  --uk-inverse: light;
  background: #1e87f0;
}

/*
 * Secondary
 */
.uk-section-secondary {
  --uk-inverse: light;
  background: #222;
}

/* Overlap modifier
 ========================================================================== */
/*
 * Reserved modifier to make a section overlap another section with an border image
 * Implemented by the theme
 */
/* ========================================================================
   Component: Container
 ========================================================================== */
/*
 * 1. Box sizing has to be `content-box` so the max-width is always the same and
 *    unaffected by the padding on different breakpoints. It's important for the size modifiers.
 */
.uk-container {
  display: flow-root;
  /* 1 */
  box-sizing: content-box;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-container {
    padding-left: 30px;
    padding-right: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
/*
 * Remove margin from the last-child
 */
.uk-container > :last-child {
  margin-bottom: 0;
}

/*
 * Remove padding from nested containers
 */
.uk-container .uk-container {
  padding-left: 0;
  padding-right: 0;
}

/* Size modifier
 ========================================================================== */
.uk-container-xsmall {
  max-width: 750px;
}

.uk-container-small {
  max-width: 900px;
}

.uk-container-large {
  max-width: 1400px;
}

.uk-container-xlarge {
  max-width: 1600px;
}

.uk-container-expand {
  max-width: none;
}

/* Expand modifier
 ========================================================================== */
/*
 * Expand one side only
 */
.uk-container-expand-left {
  margin-left: 0;
}

.uk-container-expand-right {
  margin-right: 0;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-container-expand-left.uk-container-xsmall,
  .uk-container-expand-right.uk-container-xsmall {
    max-width: calc(50% + (750px / 2) - 30px);
  }
  .uk-container-expand-left.uk-container-small,
  .uk-container-expand-right.uk-container-small {
    max-width: calc(50% + (900px / 2) - 30px);
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-container-expand-left,
  .uk-container-expand-right {
    max-width: calc(50% + (1200px / 2) - 40px);
  }
  .uk-container-expand-left.uk-container-xsmall,
  .uk-container-expand-right.uk-container-xsmall {
    max-width: calc(50% + (750px / 2) - 40px);
  }
  .uk-container-expand-left.uk-container-small,
  .uk-container-expand-right.uk-container-small {
    max-width: calc(50% + (900px / 2) - 40px);
  }
  .uk-container-expand-left.uk-container-large,
  .uk-container-expand-right.uk-container-large {
    max-width: calc(50% + (1400px / 2) - 40px);
  }
  .uk-container-expand-left.uk-container-xlarge,
  .uk-container-expand-right.uk-container-xlarge {
    max-width: calc(50% + (1600px / 2) - 40px);
  }
}
/* Item
 ========================================================================== */
/*
 * Utility classes to reset container padding on the left or right side
 * Note: It has to be negative margin on the item, because it's specific to the item.
 */
.uk-container-item-padding-remove-left,
.uk-container-item-padding-remove-right {
  width: calc(100% + 15px);
}

.uk-container-item-padding-remove-left {
  margin-left: -15px;
}

.uk-container-item-padding-remove-right {
  margin-right: -15px;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-container-item-padding-remove-left,
  .uk-container-item-padding-remove-right {
    width: calc(100% + 30px);
  }
  .uk-container-item-padding-remove-left {
    margin-left: -30px;
  }
  .uk-container-item-padding-remove-right {
    margin-right: -30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-container-item-padding-remove-left,
  .uk-container-item-padding-remove-right {
    width: calc(100% + 40px);
  }
  .uk-container-item-padding-remove-left {
    margin-left: -40px;
  }
  .uk-container-item-padding-remove-right {
    margin-right: -40px;
  }
}
/* ========================================================================
   Component: Tile
 ========================================================================== */
.uk-tile {
  display: flow-root;
  position: relative;
  box-sizing: border-box;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 40px;
  padding-bottom: 40px;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-tile {
    padding-left: 30px;
    padding-right: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-tile {
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
/*
 * Remove margin from the last-child
 */
.uk-tile > :last-child {
  margin-bottom: 0;
}

/* Size modifiers
 ========================================================================== */
/*
 * XSmall
 */
.uk-tile-xsmall {
  padding-top: 20px;
  padding-bottom: 20px;
}

/*
 * Small
 */
.uk-tile-small {
  padding-top: 40px;
  padding-bottom: 40px;
}

/*
 * Large
 */
.uk-tile-large {
  padding-top: 70px;
  padding-bottom: 70px;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-tile-large {
    padding-top: 140px;
    padding-bottom: 140px;
  }
}
/*
 * XLarge
 */
.uk-tile-xlarge {
  padding-top: 140px;
  padding-bottom: 140px;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-tile-xlarge {
    padding-top: 210px;
    padding-bottom: 210px;
  }
}
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-tile-default {
  --uk-inverse: dark;
  background-color: #fff;
}

/*
 * Muted
 */
.uk-tile-muted {
  --uk-inverse: dark;
  background-color: #f8f8f8;
}

/*
 * Primary
 */
.uk-tile-primary {
  --uk-inverse: light;
  background-color: #1e87f0;
}

/*
 * Secondary
 */
.uk-tile-secondary {
  --uk-inverse: light;
  background-color: #222;
}

/* ========================================================================
   Component: Card
 ========================================================================== */
.uk-card {
  position: relative;
  box-sizing: border-box;
  transition: box-shadow 0.1s ease-in-out;
}

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

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

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

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-card-body {
    padding: 40px 40px;
  }
  .uk-card-header {
    padding: 20px 40px;
  }
  .uk-card-footer {
    padding: 20px 40px;
  }
}
/*
 * Remove margin from the last-child
 */
.uk-card-body > :last-child,
.uk-card-header > :last-child,
.uk-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
 ========================================================================== */
.uk-card-title {
  font-size: 1.5rem;
  line-height: 1.4;
}

/* Badge
 ========================================================================== */
/*
 * 1. Position
 * 2. Size
 * 3. Style
 * 4. Center child vertically
 */
.uk-card-badge {
  /* 1 */
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 1;
  /* 2 */
  height: 22px;
  padding: 0 10px;
  /* 3 */
  background: #1e87f0;
  color: #fff;
  font-size: 0.875rem;
  /* 4 */
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 0;
  border-radius: 2px;
  text-transform: uppercase;
}

/*
 * Remove margin from adjacent element
 */
.uk-card-badge:first-child + * {
  margin-top: 0;
}

/* Hover modifier
 ========================================================================== */
.uk-card-hover:not(.uk-card-default):not(.uk-card-primary):not(.uk-card-secondary):hover {
  background-color: #fff;
  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
 */
.uk-card-default {
  --uk-inverse: dark;
  background-color: #fff;
  color: #666;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-card-default .uk-card-title {
  color: #333;
}

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

.uk-card-default .uk-card-header {
  border-bottom: 1px solid #e5e5e5;
}

.uk-card-default .uk-card-footer {
  border-top: 1px solid #e5e5e5;
}

/*
 * Primary
 */
.uk-card-primary {
  --uk-inverse: light;
  background-color: #1e87f0;
  color: #fff;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

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

.uk-card-primary.uk-card-hover:hover {
  background-color: #1e87f0;
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

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

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

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

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

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

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

/*
 * Large
 */
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-card-large.uk-card-body,
  .uk-card-large .uk-card-body {
    padding: 70px 70px;
  }
  .uk-card-large .uk-card-header {
    padding: 35px 70px;
  }
  .uk-card-large .uk-card-footer {
    padding: 35px 70px;
  }
}
/*
 * Default
 */
.uk-card-body > .uk-nav-default {
  margin-left: -30px;
  margin-right: -30px;
}

.uk-card-body > .uk-nav-default:only-child {
  margin-top: -15px;
  margin-bottom: -15px;
}

.uk-card-body > .uk-nav-default > li > a,
.uk-card-body > .uk-nav-default .uk-nav-header,
.uk-card-body > .uk-nav-default .uk-nav-divider {
  padding-left: 30px;
  padding-right: 30px;
}

.uk-card-body > .uk-nav-default .uk-nav-sub {
  padding-left: 45px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-card-body > .uk-nav-default {
    margin-left: -40px;
    margin-right: -40px;
  }
  .uk-card-body > .uk-nav-default:only-child {
    margin-top: -25px;
    margin-bottom: -25px;
  }
  .uk-card-body > .uk-nav-default > li > a,
  .uk-card-body > .uk-nav-default .uk-nav-header,
  .uk-card-body > .uk-nav-default .uk-nav-divider {
    padding-left: 40px;
    padding-right: 40px;
  }
  .uk-card-body > .uk-nav-default .uk-nav-sub {
    padding-left: 55px;
  }
}
/*
 * Small
 */
.uk-card-small > .uk-nav-default {
  margin-left: -20px;
  margin-right: -20px;
}

.uk-card-small > .uk-nav-default:only-child {
  margin-top: -5px;
  margin-bottom: -5px;
}

.uk-card-small > .uk-nav-default > li > a,
.uk-card-small > .uk-nav-default .uk-nav-header,
.uk-card-small > .uk-nav-default .uk-nav-divider {
  padding-left: 20px;
  padding-right: 20px;
}

.uk-card-small > .uk-nav-default .uk-nav-sub {
  padding-left: 35px;
}

/*
 * Large
 */
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-card-large > .uk-nav-default {
    margin: 0;
  }
  .uk-card-large > .uk-nav-default:only-child {
    margin: 0;
  }
  .uk-card-large > .uk-nav-default > li > a,
  .uk-card-large > .uk-nav-default .uk-nav-header,
  .uk-card-large > .uk-nav-default .uk-nav-divider {
    padding-left: 0;
    padding-right: 0;
  }
  .uk-card-large > .uk-nav-default .uk-nav-sub {
    padding-left: 15px;
  }
}
/* ========================================================================
   Component: Close
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
.uk-close {
  color: #999;
  transition: 0.1s ease-in-out;
  transition-property: color, opacity;
}

/* Hover */
.uk-close:hover {
  color: #666;
}

/* ========================================================================
   Component: Spinner
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
/* SVG
 ========================================================================== */
.uk-spinner > * {
  animation: uk-spinner-rotate 1.4s linear infinite;
}

@keyframes uk-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(270deg);
  }
}
/*
 * Circle
 */
.uk-spinner > * > * {
  stroke-dasharray: 88px;
  stroke-dashoffset: 0;
  transform-origin: center;
  animation: uk-spinner-dash 1.4s ease-in-out infinite;
  stroke-width: 1;
  stroke-linecap: round;
}

@keyframes uk-spinner-dash {
  0% {
    stroke-dashoffset: 88px;
  }
  50% {
    stroke-dashoffset: 22px;
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 88px;
    transform: rotate(450deg);
  }
}
/* ========================================================================
   Component: Totop
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
.uk-totop {
  padding: 5px;
  color: #999;
  transition: color 0.1s ease-in-out;
}

/* Hover */
.uk-totop:hover {
  color: #666;
}

/* OnClick */
.uk-totop:active {
  color: #333;
}

/* ========================================================================
   Component: Marker
 ========================================================================== */
/*
 * Addopts `uk-icon`
 */
.uk-marker {
  padding: 5px;
  background: #222;
  color: #fff;
  border-radius: 500px;
}

/* Hover */
.uk-marker:hover {
  color: #fff;
}

/* ========================================================================
   Component: Alert
 ========================================================================== */
.uk-alert {
  position: relative;
  margin-bottom: 20px;
  padding: 15px 29px 15px 15px;
  background: #f8f8f8;
  color: #666;
}

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

/*
 * Remove margin from the last-child
 */
.uk-alert > :last-child {
  margin-bottom: 0;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
.uk-alert-close {
  position: absolute;
  top: 20px;
  right: 15px;
  color: inherit;
  opacity: 0.4;
}

/*
 * Remove margin from adjacent element
 */
.uk-alert-close:first-child + * {
  margin-top: 0;
}

/*
 * Hover
 */
.uk-alert-close:hover {
  color: inherit;
  opacity: 0.8;
}

/* Style modifiers
 ========================================================================== */
/*
 * Primary
 */
.uk-alert-primary {
  background: rgb(215.625, 234, 252.375);
  color: #1e87f0;
}

/*
 * Success
 */
.uk-alert-success {
  background: rgb(236.55, 250.95, 245.55);
  color: #32d296;
}

/*
 * Warning
 */
.uk-alert-warning {
  background: rgb(254.5, 245.5, 238.5);
  color: #faa05a;
}

/*
 * Danger
 */
.uk-alert-danger {
  background: rgb(254.0526315789, 243.9473684211, 245.8421052632);
  color: #f0506e;
}

/*
 * Content
 */
.uk-alert h1,
.uk-alert h2,
.uk-alert h3,
.uk-alert h4,
.uk-alert h5,
.uk-alert h6 {
  color: inherit;
}

.uk-alert a:not([class]) {
  color: inherit;
  text-decoration: underline;
}

.uk-alert a:not([class]):hover {
  color: inherit;
  text-decoration: underline;
}

/* ========================================================================
   Component: Placeholder
 ========================================================================== */
.uk-placeholder {
  margin-bottom: 20px;
  padding: 30px 30px;
  background: transparent;
  border: 1px dashed #e5e5e5;
}

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

/*
 * Remove margin from the last-child
 */
.uk-placeholder > :last-child {
  margin-bottom: 0;
}

/* ========================================================================
   Component: Badge
 ========================================================================== */
/*
 * 1. Style
 * 2. Center child vertically and horizontally
 */
.uk-badge {
  box-sizing: border-box;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 500px;
  vertical-align: middle;
  /* 1 */
  background: #1e87f0;
  color: #fff !important;
  font-size: 11px;
  /* 2 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 0;
}

/*
 * Required for `a`
 */
.uk-badge:hover {
  text-decoration: none;
}

/* ========================================================================
   Component: Label
 ========================================================================== */
.uk-label {
  display: inline-block;
  padding: 0 10px;
  background: #1e87f0;
  line-height: 1.5;
  font-size: 0.875rem;
  color: #fff;
  vertical-align: middle;
  white-space: nowrap;
  border-radius: 2px;
  text-transform: uppercase;
}

/* Color modifiers
 ========================================================================== */
/*
 * Success
 */
.uk-label-success {
  background-color: #32d296;
  color: #fff;
}

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

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

/* ========================================================================
   Component: Overlay
 ========================================================================== */
.uk-overlay {
  padding: 30px 30px;
}

/*
 * Remove margin from the last-child
 */
.uk-overlay > :last-child {
  margin-bottom: 0;
}

/* Icon
 ========================================================================== */
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-overlay-default {
  --uk-inverse: dark;
  background: rgba(255, 255, 255, 0.8);
}

/*
 * Primary
 */
.uk-overlay-primary {
  --uk-inverse: light;
  background: rgba(34, 34, 34, 0.8);
}

/* ========================================================================
   Component: Article
 ========================================================================== */
.uk-article {
  display: flow-root;
}

/*
 * Remove margin from the last-child
 */
.uk-article > :last-child {
  margin-bottom: 0;
}

/* Adjacent sibling
 ========================================================================== */
.uk-article + .uk-article {
  margin-top: 70px;
}

/* Title
 ========================================================================== */
.uk-article-title {
  font-size: 2.23125rem;
  line-height: 1.2;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-article-title {
    font-size: 2.625rem;
  }
}
/* Meta
 ========================================================================== */
.uk-article-meta {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #999;
}
.uk-article-meta a {
  color: #999;
}
.uk-article-meta a:hover {
  color: #666;
  text-decoration: none;
}

/* ========================================================================
   Component: Comment
 ========================================================================== */
/* Sections
 ========================================================================== */
.uk-comment-body {
  display: flow-root;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.uk-comment-header {
  display: flow-root;
  margin-bottom: 20px;
}

/*
 * Remove margin from the last-child
 */
.uk-comment-body > :last-child,
.uk-comment-header > :last-child {
  margin-bottom: 0;
}

/* Title
 ========================================================================== */
.uk-comment-title {
  font-size: 1.25rem;
  line-height: 1.4;
}

/* Meta
 ========================================================================== */
.uk-comment-meta {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #999;
}

/* Avatar
 ========================================================================== */
/* List
 ========================================================================== */
.uk-comment-list {
  padding: 0;
  list-style: none;
}

/* Adjacent siblings */
.uk-comment-list > :nth-child(n+2) {
  margin-top: 70px;
}

/*
 * Sublists
 * Note: General sibling selector allows reply block between comment and sublist
 */
.uk-comment-list .uk-comment ~ ul {
  margin: 70px 0 0 0;
  padding-left: 30px;
  list-style: none;
}

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-comment-list .uk-comment ~ ul {
    padding-left: 100px;
  }
}
/* Adjacent siblings */
.uk-comment-list .uk-comment ~ ul > :nth-child(n+2) {
  margin-top: 70px;
}

/* Style modifier
 ========================================================================== */
.uk-comment-primary {
  padding: 30px;
  background-color: #f8f8f8;
}

/* ========================================================================
   Component: Search
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Reset `form`
 */
.uk-search {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  margin: 0;
}

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

/*
 * Removes placeholder transparency in Firefox.
 */
.uk-search-input::-moz-placeholder {
  opacity: 1;
}

/*
 * 1. Define consistent box sizing.
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Change font properties to `inherit` in all browsers
 * 5. Show the overflow in Edge.
 * 6. Remove default style in iOS.
 * 7. Vertical alignment
 * 8. Take the full container width
 * 9. Style
 */
.uk-search-input {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  margin: 0;
  /* 3 */
  border-radius: 0;
  /* 4 */
  font: inherit;
  /* 5 */
  overflow: visible;
  /* 6 */
  -webkit-appearance: none;
  /* 7 */
  vertical-align: middle;
  /* 8 */
  width: 100%;
  /* 9 */
  border: none;
  color: #666;
}

.uk-search-input:focus {
  outline: none;
}

/* Placeholder */
.uk-search-input::-moz-placeholder {
  color: #999;
}
.uk-search-input::placeholder {
  color: #999;
}

/* Icon (Adopts `uk-icon`)
 ========================================================================== */
/*
 * Position above input
 * 1. Set position
 * 2. Center icon vertically and horizontally
 * 3. Style
 */
.uk-search .uk-search-icon {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /* 3 */
  color: #999;
}

/*
 * Required for `a`.
 */
.uk-search .uk-search-icon:hover {
  color: #999;
}

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

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

/* Default modifier
 ========================================================================== */
.uk-search-default {
  width: 240px;
}

/*
 * Input
 */
.uk-search-default .uk-search-input {
  height: 40px;
  padding-left: 10px;
  padding-right: 10px;
  background: transparent;
  border: 1px solid #e5e5e5;
}

/* Focus */
.uk-search-default .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0);
  border-color: #1e87f0;
}

/*
 * Icon
 */
.uk-search-default .uk-search-icon {
  padding-left: 10px;
  padding-right: 10px;
}

.uk-search-default:has(.uk-search-icon:not(.uk-search-icon-flip)) .uk-search-input {
  padding-left: 40px;
}

.uk-search-default:has(.uk-search-icon-flip) .uk-search-input {
  padding-right: 40px;
}

/* Navbar modifier
 ========================================================================== */
.uk-search-navbar {
  width: 240px;
}

/*
 * Input
 */
.uk-search-navbar .uk-search-input {
  height: 40px;
  padding-left: 10px;
  padding-right: 10px;
  background: #fff;
  border: 1px solid #e5e5e5;
}

/* Focus */
.uk-search-navbar .uk-search-input:focus {
  background-color: #fff;
  border-color: #1e87f0;
}

/*
 * Icon
 */
.uk-search-navbar .uk-search-icon {
  padding-left: 10px;
  padding-right: 10px;
}

.uk-search-navbar:has(.uk-search-icon:not(.uk-search-icon-flip)) .uk-search-input {
  padding-left: 40px;
}

.uk-search-navbar:has(.uk-search-icon-flip) .uk-search-input {
  padding-right: 40px;
}

/* Medium modifier
 ========================================================================== */
.uk-search-medium {
  width: 400px;
}

/*
 * Input
 */
.uk-search-medium .uk-search-input {
  height: 55px;
  padding-left: 12px;
  padding-right: 12px;
  background: transparent;
  font-size: 1.5rem;
  border: 1px solid #e5e5e5;
}

/* Focus */
.uk-search-medium .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0);
  border-color: #1e87f0;
}

/*
 * Icon
 */
.uk-search-medium .uk-search-icon {
  padding-left: 12px;
  padding-right: 12px;
}

.uk-search-medium:has(.uk-search-icon:not(.uk-search-icon-flip)) .uk-search-input {
  padding-left: 48px;
}

.uk-search-medium:has(.uk-search-icon-flip) .uk-search-input {
  padding-right: 48px;
}

/* Large modifier
 ========================================================================== */
.uk-search-large {
  width: 500px;
}

/*
 * Input
 */
.uk-search-large .uk-search-input {
  height: 90px;
  padding-left: 20px;
  padding-right: 20px;
  background: transparent;
  font-size: 2.625rem;
  border: 1px solid #e5e5e5;
}

/* Focus */
.uk-search-large .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0);
  border-color: #1e87f0;
}

/*
 * Icon
 */
.uk-search-large .uk-search-icon {
  padding-left: 20px;
  padding-right: 20px;
}

.uk-search-large:has(.uk-search-icon:not(.uk-search-icon-flip)) .uk-search-input {
  padding-left: 80px;
}

.uk-search-large:has(.uk-search-icon-flip) .uk-search-input {
  padding-right: 80px;
}

/* Toggle
 ========================================================================== */
.uk-search-toggle {
  color: #999;
}

/* Hover */
.uk-search-toggle:hover {
  color: #666;
}

/* ========================================================================
   Component: Accordion
 ========================================================================== */
.uk-accordion {
  padding: 0;
  list-style: none;
}

/* Item
 ========================================================================== */
.uk-accordion > :nth-child(n+2) {
  margin-top: 20px;
}

/* Title
 ========================================================================== */
.uk-accordion-title {
  display: block;
  font-size: 1.25rem;
  line-height: 1.4;
  color: #333;
  overflow: hidden;
}
.uk-accordion-title::before {
  content: "";
  width: 1.4em;
  height: 1.4em;
  margin-left: 10px;
  float: right;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.uk-open > .uk-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/* Hover */
.uk-accordion-title:hover {
  color: #666;
  text-decoration: none;
}

/* Content
 ========================================================================== */
.uk-accordion-content {
  display: flow-root;
  margin-top: 20px;
}

/*
 * Remove margin from the last-child
 */
.uk-accordion-content > :last-child {
  margin-bottom: 0;
}

/* ========================================================================
   Component: Drop
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 */
.uk-drop {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 1020;
  --uk-position-offset: 20px;
  --uk-position-viewport-offset: 15px;
  /* 3 */
  box-sizing: border-box;
  width: 300px;
}

/* Show */
.uk-drop.uk-open {
  display: block;
}

/* Grid modifiers
 ========================================================================== */
.uk-drop-stack .uk-drop-grid > * {
  width: 100% !important;
}

/* Parent icon
 ========================================================================== */
.uk-drop-parent-icon {
  margin-left: 0.25em;
  transition: transform 0.3s ease-out;
}

[aria-expanded=true] > .uk-drop-parent-icon {
  transform: rotateX(180deg);
}

/* ========================================================================
   Component: Dropbar
 ========================================================================== */
/*
 * Adopts `uk-drop`
 * 1. Reset drop
 * 2. Style
 */
.uk-dropbar {
  --uk-position-offset: 0;
  --uk-position-shift-offset: 0;
  --uk-position-viewport-offset: 0;
  --uk-inverse: dark;
  /* 1 */
  width: auto;
  /* 2 */
  padding: 25px 15px 25px 15px;
  background: #fff;
  color: #666;
}

/*
 * Remove margin from the last-child
 */
.uk-dropbar > :last-child {
  margin-bottom: 0;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-dropbar {
    padding-left: 30px;
    padding-right: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-dropbar {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.uk-dropbar :focus-visible {
  outline-color: #333 !important;
}

/* Size modifier
 ========================================================================== */
.uk-dropbar-large {
  padding-top: 40px;
  padding-bottom: 40px;
}

/* Direction modifier
 ========================================================================== */
.uk-dropbar-top {
  box-shadow: 0 12px 7px -6px rgba(0, 0, 0, 0.05);
}

.uk-dropbar-bottom {
  box-shadow: 0 -12px 7px -6px rgba(0, 0, 0, 0.05);
}

.uk-dropbar-left {
  box-shadow: 12px 0 7px -6px rgba(0, 0, 0, 0.05);
}

.uk-dropbar-right {
  box-shadow: -12px 0 7px -6px rgba(0, 0, 0, 0.05);
}

/* ========================================================================
   Component: Dropnav
 ========================================================================== */
/*
 * 1. Position
 * 2. Reset dropbar
 * 3. Width
 */
.uk-dropnav-dropbar {
  /* 1 */
  position: absolute;
  z-index: 980;
  /* 2 */
  padding: 0;
  /* 3 */
  left: 0;
  right: 0;
}

/* ========================================================================
   Component: Modal
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Allow scrolling for the modal dialog
 * 4. Horizontal padding
 * 5. Mask the background page
 * 6. Fade-in transition
 */
.uk-modal {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1010;
  /* 3 */
  overflow-y: auto;
  /* 4 */
  padding: 15px 15px;
  /* 5 */
  background: rgba(0, 0, 0, 0.6);
  /* 6 */
  opacity: 0;
  transition: opacity 0.15s linear;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-modal {
    padding: 50px 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-modal {
    padding-left: 40px;
    padding-right: 40px;
  }
}
/*
 * Open
 */
.uk-modal.uk-open {
  opacity: 1;
}

/* Page
 ========================================================================== */
/*
 * Prevent scrollbars
 */
.uk-modal-page {
  overflow: hidden;
}

/* Dialog
 ========================================================================== */
/*
 * 1. Create position context for spinner and close button
 * 2. Dimensions
 * 3. `!important` is needed to overwrite `uk-width-auto`. See `#modal-media-image` in tests
 * 4. Style
 * 5. Slide-in transition
 */
.uk-modal-dialog {
  /* 1 */
  position: relative;
  /* 2 */
  box-sizing: border-box;
  margin: 0 auto;
  width: 600px;
  /* 3 */
  max-width: 100% !important;
  /* 4 */
  background: #fff;
  /* 5 */
  opacity: 0;
  transform: translateY(-100px);
  transition: 0.3s linear;
  transition-property: opacity, transform;
}

/*
 * Open
 */
.uk-open > .uk-modal-dialog {
  opacity: 1;
  transform: translateY(0);
}

/* Size modifier
 ========================================================================== */
/*
 * Container size
 * Take the same size as the Container component
 */
.uk-modal-container .uk-modal-dialog {
  width: 1200px;
}

/*
 * Full size
 * 1. Remove padding and background from modal
 * 2. Reset all default declarations from modal dialog
 */
/* 1 */
.uk-modal-full {
  padding: 0;
  background: none;
}

/* 2 */
.uk-modal-full .uk-modal-dialog {
  margin: 0;
  width: 100%;
  max-width: 100%;
  transform: translateY(0);
}

/* Sections
 ========================================================================== */
.uk-modal-body {
  display: flow-root;
  padding: 20px 20px;
}

.uk-modal-header {
  display: flow-root;
  padding: 10px 20px;
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
}

.uk-modal-footer {
  display: flow-root;
  padding: 10px 20px;
  background: #fff;
  border-top: 1px solid #e5e5e5;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-modal-body {
    padding: 30px 30px;
  }
  .uk-modal-header {
    padding: 15px 30px;
  }
  .uk-modal-footer {
    padding: 15px 30px;
  }
}
/*
 * Remove margin from the last-child
 */
.uk-modal-body > :last-child,
.uk-modal-header > :last-child,
.uk-modal-footer > :last-child {
  margin-bottom: 0;
}

/* Title
 ========================================================================== */
.uk-modal-title {
  font-size: 2rem;
  line-height: 1.3;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
[class*=uk-modal-close-] {
  position: absolute;
  z-index: 1010;
  top: 10px;
  right: 10px;
  padding: 5px;
}

/*
 * Remove margin from adjacent element
 */
[class*=uk-modal-close-]:first-child + * {
  margin-top: 0;
}

/*
 * Hover
 */
/*
 * Default
 */
/*
 * Outside
 * 1. Prevent scrollbar on small devices
 */
.uk-modal-close-outside {
  top: 0;
  /* 1 */
  right: -5px;
  transform: translate(0, -100%);
  color: white;
}

.uk-modal-close-outside:hover {
  color: #fff;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  /* 1 */
  .uk-modal-close-outside {
    right: 0;
    transform: translate(100%, -100%);
  }
}
/*
 * Full
 */
.uk-modal-close-full {
  top: 0;
  right: 0;
  padding: 10px;
  background: #fff;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-modal-close-full {
    padding: 20px;
  }
}
/* ========================================================================
   Component: Slideshow
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-slideshow {
  /* 1 */
  -webkit-tap-highlight-color: transparent;
}

/* Items
 ========================================================================== */
/*
 * 1. Create position and stacking context
 * 2. Reset list
 * 3. Clip child elements
 * 4. Prevent displaying the callout information on iOS.
 * 5. Disable horizontal panning gestures
 */
.uk-slideshow-items {
  /* 1 */
  position: relative;
  z-index: 0;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  overflow: hidden;
  /* 4 */
  -webkit-touch-callout: none;
  /* 5 */
  touch-action: pan-y;
}

/* Item
 ========================================================================== */
/*
 * 1. Position items above each other
 * 2. Take the full width
 * 3. Clip child elements, e.g. for `uk-cover`
 * 4. Optimize animation
 */
.uk-slideshow-items > * {
  /* 1 */
  position: absolute;
  top: 0;
  left: 0;
  /* 2 */
  right: 0;
  bottom: 0;
  /* 3 */
  overflow: hidden;
  /* 4 */
  will-change: transform, opacity;
}

/*
 * Hide not active items
 */
.uk-slideshow-items > :not(.uk-active) {
  display: none;
}

/* ========================================================================
   Component: Slider
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-slider {
  /* 1 */
  -webkit-tap-highlight-color: transparent;
}

/* Container
 ========================================================================== */
/*
 * 1. Clip child elements
 * 2. Prevent accidental scrolling through elements in slide getting focused
 */
.uk-slider-container {
  /* 1 */
  overflow: hidden;
  /* 2 */
  overflow: clip;
}

/*
 * Widen container to prevent box-shadows from clipping, `large-box-shadow`
 */
.uk-slider-container-offset {
  margin: -11px -25px -39px -25px;
  padding: 11px 25px 39px 25px;
}

/* Items
 ========================================================================== */
/*
 * 1. Optimize animation
 * 2. Create a containing block. In Safari it's neither created by `transform` nor `will-change`.
 * 3. Disable horizontal panning gestures
 */
.uk-slider-items {
  /* 1 */
  will-change: transform;
  /* 2 */
  position: relative;
  /* 3 */
  touch-action: pan-y;
}

/*
 * 1. Reset list style without interfering with grid
 * 2. Prevent displaying the callout information on iOS.
 */
.uk-slider-items:not(.uk-grid) {
  display: flex;
  /* 1 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 2 */
  -webkit-touch-callout: none;
}

.uk-slider-items.uk-grid {
  flex-wrap: nowrap;
}

/* Item
 ========================================================================== */
/*
 * 1. Let items take content dimensions (0 0 auto)
 *    `max-width` needed to keep image responsiveness and prevent content overflow
 * 2. Create position context
 */
.uk-slider-items > * {
  /* 1 */
  flex: none !important;
  box-sizing: border-box;
  max-width: 100%;
  /* 2 */
  position: relative;
}

/* ========================================================================
   Component: Sticky
 ========================================================================== */
/*
 * 1. Create position context so it's t the same like when fixed.
 * 2. Create stacking context already when not sticky to have the same context
*     for position set to `sticky` and `relative`
 * 2. More robust if padding and border are used and the sticky height is transitioned
 */
.uk-sticky {
  /* 1 */
  position: relative;
  /* 2 */
  z-index: 980;
  /* 3 */
  box-sizing: border-box;
}

.uk-sticky-fixed {
  margin: 0 !important;
}

/*
 * Faster animations
 */
.uk-sticky[class*=uk-animation-] {
  animation-duration: 0.2s;
}

.uk-sticky.uk-animation-reverse {
  animation-duration: 0.2s;
}

/*
 * Placeholder
 * Make content clickable for sticky cover and reveal effects
 */
.uk-sticky-placeholder {
  pointer-events: none;
}

/* ========================================================================
   Component: Off-canvas
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 */
.uk-offcanvas {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}

/*
 * Flip modifier
 */
.uk-offcanvas-flip .uk-offcanvas {
  right: 0;
  left: auto;
}

/* Bar
 ========================================================================== */
/*
 * 1. Set position
 * 2. Size and style
 * 3. Allow scrolling
 */
.uk-offcanvas-bar {
  --uk-inverse: light;
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: -270px;
  /* 2 */
  box-sizing: border-box;
  width: 270px;
  padding: 20px 20px;
  background: #222;
  /* 3 */
  overflow-y: auto;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-offcanvas-bar {
    left: -350px;
    width: 350px;
    padding: 30px 30px;
  }
}
/* Flip modifier */
.uk-offcanvas-flip .uk-offcanvas-bar {
  left: auto;
  right: -270px;
}

/* Tablet landscape and bigger */
@media (min-width: 320px) {
  .uk-offcanvas-flip .uk-offcanvas-bar {
    right: -350px;
  }
}
/*
 * Open
 */
.uk-open > .uk-offcanvas-bar {
  left: 0;
}

.uk-offcanvas-flip .uk-open > .uk-offcanvas-bar {
  left: auto;
  right: 0;
}

/*
 * Slide Animation (Used in slide and push mode)
 */
.uk-offcanvas-bar-animation {
  transition: left 0.3s ease-out;
}

.uk-offcanvas-flip .uk-offcanvas-bar-animation {
  transition-property: right;
}

/*
 * Reveal Animation
 * 1. Set position
 * 2. Clip the bar
 * 3. Animation
 * 4. Reset position
 */
.uk-offcanvas-reveal {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  width: 0;
  overflow: hidden;
  /* 3 */
  transition: width 0.3s ease-out;
}

.uk-offcanvas-reveal .uk-offcanvas-bar {
  /* 4 */
  left: 0;
}

.uk-offcanvas-flip .uk-offcanvas-reveal .uk-offcanvas-bar {
  /* 4 */
  left: auto;
  right: 0;
}

.uk-open > .uk-offcanvas-reveal {
  width: 270px;
}

/* Tablet landscape and bigger */
@media (min-width: 320px) {
  .uk-open > .uk-offcanvas-reveal {
    width: 350px;
  }
}
/*
 * Flip modifier
 */
.uk-offcanvas-flip .uk-offcanvas-reveal {
  right: 0;
  left: auto;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
.uk-offcanvas-close {
  position: absolute;
  z-index: 1000;
  top: 5px;
  right: 5px;
  padding: 5px;
}

/* Tablet landscape and bigger */
@media (min-width: 320px) {
  .uk-offcanvas-close {
    top: 10px;
    right: 10px;
  }
}
/*
 * Remove margin from adjacent element
 */
.uk-offcanvas-close:first-child + * {
  margin-top: 0;
}

/* Overlay
 ========================================================================== */
/*
 * Overlay the whole page. Needed for the `::before`
 * 1. Using `100vw` so no modification is needed when off-canvas is flipped
 * 2. Allow for closing with swipe gesture on devices with pointer events.
 */
.uk-offcanvas-overlay {
  /* 1 */
  width: 100vw;
  /* 2 */
  touch-action: none;
}

/*
 * 1. Mask the whole page
 * 2. Fade-in transition
 */
.uk-offcanvas-overlay::before {
  /* 1 */
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.1);
  /* 2 */
  opacity: 0;
  transition: opacity 0.15s linear;
}

.uk-offcanvas-overlay.uk-open::before {
  opacity: 1;
}

/* Prevent scrolling
 ========================================================================== */
/*
 * Prevent horizontal scrollbar when the content is slide-out
 * Has to be on the `html` element too to make it work on the `body`
 * 1. `clip` is needed for `position: sticky` elements to keep their position
 */
.uk-offcanvas-page,
.uk-offcanvas-container {
  overflow-x: hidden;
  /* 1 */
  overflow-x: clip;
}

/* Container
 ========================================================================== */
/*
 * Prepare slide-out animation (Used in reveal and push mode)
 * Using `position: left` instead of `transform` because position `fixed` elements like sticky navbars
 * lose their fixed state and behaves like `absolute` within a transformed container
 * 1. Provide a fixed width and prevent shrinking
 */
.uk-offcanvas-container {
  position: relative;
  left: 0;
  transition: left 0.3s ease-out;
  /* 1 */
  box-sizing: border-box;
  width: 100%;
}

/*
 * Activate slide-out animation
 */
:not(.uk-offcanvas-flip).uk-offcanvas-container-animation {
  left: 270px;
}

.uk-offcanvas-flip.uk-offcanvas-container-animation {
  left: -270px;
}

/* Tablet landscape and bigger */
@media (min-width: 320px) {
  :not(.uk-offcanvas-flip).uk-offcanvas-container-animation {
    left: 350px;
  }
  .uk-offcanvas-flip.uk-offcanvas-container-animation {
    left: -350px;
  }
}
/* ========================================================================
   Component: Switcher
 ========================================================================== */
/*
 * Reset list
 */
.uk-switcher {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Items
 ========================================================================== */
/*
 * Hide not active items
 */
.uk-switcher > :not(.uk-active) {
  display: none;
}

/*
 * Remove margin from the last-child
 */
.uk-switcher > * > :last-child {
  margin-bottom: 0;
}

/* ========================================================================
   Component: Leader
 ========================================================================== */
.uk-leader {
  overflow: hidden;
}

/*
 * 1. Place element in text flow
 * 2. Never break into a new line
 * 3. Get a string back with as many repeating characters to fill the container
 * 4. Prevent wrapping. Overflowing characters will be clipped by the container
 */
.uk-leader-fill::after {
  /* 1 */
  display: inline-block;
  margin-left: 15px;
  /* 2 */
  width: 0;
  /* 3 */
  content: attr(data-fill);
  /* 4 */
  white-space: nowrap;
}

/*
 * Hide if media does not match
 */
.uk-leader-fill.uk-leader-hide::after {
  display: none;
}

/*
 * Pass fill character to JS
 */
:root {
  --uk-leader-fill-content: .;
}

/* ========================================================================
   Component: Notification
 ========================================================================== */
/*
 * 1. Set position
 * 2. Dimensions
 */
.uk-notification {
  /* 1 */
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 1040;
  /* 2 */
  box-sizing: border-box;
  width: 350px;
}

/* Position modifiers
========================================================================== */
.uk-notification-top-right,
.uk-notification-bottom-right {
  left: auto;
  right: 10px;
}

.uk-notification-top-center,
.uk-notification-bottom-center {
  left: 50%;
  margin-left: -175px;
}

.uk-notification-bottom-left,
.uk-notification-bottom-right,
.uk-notification-bottom-center {
  top: auto;
  bottom: 10px;
}

/* Responsiveness
========================================================================== */
/* Phones portrait and smaller */
@media (max-width: 319px) {
  .uk-notification {
    left: 10px;
    right: 10px;
    width: auto;
    margin: 0;
  }
}
/* Message
========================================================================== */
.uk-notification-message {
  position: relative;
  padding: 15px;
  background: #f8f8f8;
  color: #666;
  font-size: 1.25rem;
  line-height: 1.4;
  cursor: pointer;
}

* + .uk-notification-message {
  margin-top: 10px;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
.uk-notification-close {
  display: none;
  position: absolute;
  top: 20px;
  right: 15px;
}

.uk-notification-message:hover .uk-notification-close {
  display: block;
}

/* Style modifiers
 ========================================================================== */
/*
 * Primary
 */
.uk-notification-message-primary {
  color: #1e87f0;
}

/*
 * Success
 */
.uk-notification-message-success {
  color: #32d296;
}

/*
 * Warning
 */
.uk-notification-message-warning {
  color: #faa05a;
}

/*
 * Danger
 */
.uk-notification-message-danger {
  color: #f0506e;
}

/* ========================================================================
   Component: Tooltip
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Position
 * 3. Remove tooltip from document flow to keep the UIkit container from changing its size when injected into the document initially
 * 4. Dimensions
 * 5. Style
 */
.uk-tooltip {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 1030;
  --uk-position-offset: 10px;
  --uk-position-viewport-offset: 10;
  /* 3 */
  top: 0;
  /* 4 */
  box-sizing: border-box;
  max-width: 200px;
  padding: 3px 6px;
  /* 5 */
  background: #666;
  border-radius: 2px;
  color: #fff;
  font-size: 12px;
}

/* Show */
.uk-tooltip.uk-active {
  display: block;
}

/* ========================================================================
   Component: Sortable
 ========================================================================== */
.uk-sortable {
  position: relative;
}

/*
 * Remove margin from the last-child
 */
.uk-sortable > :last-child {
  margin-bottom: 0;
}

/* Drag
 ========================================================================== */
.uk-sortable-drag {
  position: fixed !important;
  z-index: 1050 !important;
  pointer-events: none;
}

/* Placeholder
 ========================================================================== */
.uk-sortable-placeholder {
  opacity: 0;
  pointer-events: none;
}

/* Empty modifier
 ========================================================================== */
.uk-sortable-empty {
  min-height: 50px;
}

/* Handle
 ========================================================================== */
/* Hover */
.uk-sortable-handle:hover {
  cursor: move;
}

/* ========================================================================
   Component: Countdown
 ========================================================================== */
/* Item
 ========================================================================== */
/* Number
 ========================================================================== */
/*
 * 1. Make numbers all of the same size to prevent jumping. Must be supported by the font.
 * 2. Style
 */
.uk-countdown-number {
  /* 1 */
  font-variant-numeric: tabular-nums;
  /* 2 */
  font-size: 2rem;
  line-height: 0.8;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-countdown-number {
    font-size: 4rem;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-countdown-number {
    font-size: 6rem;
  }
}
/* Separator
 ========================================================================== */
.uk-countdown-separator {
  font-size: 1rem;
  line-height: 1.6;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-countdown-separator {
    font-size: 2rem;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-countdown-separator {
    font-size: 3rem;
  }
}
/* Label
 ========================================================================== */
/* ========================================================================
   Component: Thumbnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.uk-thumbnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  margin-left: -15px;
}

/*
 * Space is allocated based on content dimensions, but shrinks: 0 1 auto
 * 1. Gutter
 */
.uk-thumbnav > * {
  /* 1 */
  padding-left: 15px;
}

/* Items
 ========================================================================== */
/*
 * Items
 */
.uk-thumbnav > * > * {
  display: inline-block;
  position: relative;
}
.uk-thumbnav > * > *::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4));
  transition: opacity 0.1s ease-in-out;
}

/* Hover */
.uk-thumbnav > * > :hover::after {
  opacity: 0;
}

/* Active */
.uk-thumbnav > .uk-active > *::after {
  opacity: 0;
}

/* Modifier: 'uk-thumbnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.uk-thumbnav-vertical {
  /* 1 */
  flex-direction: column;
  /* 2 */
  margin-left: 0;
  margin-top: -15px;
}

/* 2 */
.uk-thumbnav-vertical > * {
  padding-left: 0;
  padding-top: 15px;
}

/* ========================================================================
   Component: Iconnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.uk-iconnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  margin-left: -10px;
}

/*
 * Space is allocated based on content dimensions, but shrinks: 0 1 auto
 * 1. Gutter
 */
.uk-iconnav > * {
  /* 1 */
  padding-left: 10px;
}

/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * 1. Center content vertically if there is still some text
 * 2. Imitate white space gap when using flexbox
 * 3. Force text not to affect item height
 * 4. Style
 * 5. Required for `a` if there is still some text
 */
.uk-iconnav > * > a {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  /* 3 */
  line-height: 0;
  /* 4 */
  color: #999;
  /* 5 */
  text-decoration: none;
  font-size: 0.875rem;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}

/* Hover */
.uk-iconnav > * > a:hover {
  color: #666;
}

/* Active */
.uk-iconnav > .uk-active > a {
  color: #666;
}

/* Modifier: 'uk-iconnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.uk-iconnav-vertical {
  /* 1 */
  flex-direction: column;
  /* 2 */
  margin-left: 0;
  margin-top: -10px;
}

/* 2 */
.uk-iconnav-vertical > * {
  padding-left: 0;
  padding-top: 10px;
}

/* ========================================================================
   Component: Grid
 ========================================================================== */
/*
 * 1. Allow cells to wrap into the next line
 * 2. Reset list
 */
.uk-grid {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
}

/*
 * Grid cell
 * Note: Space is allocated solely based on content dimensions, but shrinks: 0 1 auto
 * Reset margin for e.g. paragraphs
 */
.uk-grid > * {
  margin: 0;
}

/*
 * Remove margin from the last-child
 */
.uk-grid > * > :last-child {
  margin-bottom: 0;
}

/* Gutter
 ========================================================================== */
/*
 * Default
 */
/* Horizontal */
.uk-grid {
  margin-left: -30px;
}

.uk-grid > * {
  padding-left: 30px;
}

/* Vertical */
.uk-grid + .uk-grid,
.uk-grid > .uk-grid-margin,
* + .uk-grid-margin {
  margin-top: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .uk-grid {
    margin-left: -40px;
  }
  .uk-grid > * {
    padding-left: 40px;
  }
  /* Vertical */
  .uk-grid + .uk-grid,
  .uk-grid > .uk-grid-margin,
  * + .uk-grid-margin {
    margin-top: 40px;
  }
}
/*
 * Small
 */
/* Horizontal */
.uk-grid-small,
.uk-grid-column-small {
  margin-left: -15px;
}

.uk-grid-small > *,
.uk-grid-column-small > * {
  padding-left: 15px;
}

/* Vertical */
.uk-grid + .uk-grid-small,
.uk-grid + .uk-grid-row-small,
.uk-grid-small > .uk-grid-margin,
.uk-grid-row-small > .uk-grid-margin,
* + .uk-grid-margin-small {
  margin-top: 15px;
}

/*
 * Medium
 */
/* Horizontal */
.uk-grid-medium,
.uk-grid-column-medium {
  margin-left: -30px;
}

.uk-grid-medium > *,
.uk-grid-column-medium > * {
  padding-left: 30px;
}

/* Vertical */
.uk-grid + .uk-grid-medium,
.uk-grid + .uk-grid-row-medium,
.uk-grid-medium > .uk-grid-margin,
.uk-grid-row-medium > .uk-grid-margin,
* + .uk-grid-margin-medium {
  margin-top: 30px;
}

/*
 * Large
 */
/* Horizontal */
.uk-grid-large,
.uk-grid-column-large {
  margin-left: -40px;
}

.uk-grid-large > *,
.uk-grid-column-large > * {
  padding-left: 40px;
}

/* Vertical */
.uk-grid + .uk-grid-large,
.uk-grid + .uk-grid-row-large,
.uk-grid-large > .uk-grid-margin,
.uk-grid-row-large > .uk-grid-margin,
* + .uk-grid-margin-large {
  margin-top: 40px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .uk-grid-large,
  .uk-grid-column-large {
    margin-left: -70px;
  }
  .uk-grid-large > *,
  .uk-grid-column-large > * {
    padding-left: 70px;
  }
  /* Vertical */
  .uk-grid + .uk-grid-large,
  .uk-grid + .uk-grid-row-large,
  .uk-grid-large > .uk-grid-margin,
  .uk-grid-row-large > .uk-grid-margin,
  * + .uk-grid-margin-large {
    margin-top: 70px;
  }
}
/*
 * Collapse
 */
/* Horizontal */
.uk-grid-collapse,
.uk-grid-column-collapse {
  margin-left: 0;
}

.uk-grid-collapse > *,
.uk-grid-column-collapse > * {
  padding-left: 0;
}

/* Vertical */
.uk-grid + .uk-grid-collapse,
.uk-grid + .uk-grid-row-collapse,
.uk-grid-collapse > .uk-grid-margin,
.uk-grid-row-collapse > .uk-grid-margin {
  margin-top: 0;
}

/* Divider
 ========================================================================== */
.uk-grid-divider > * {
  position: relative;
}

.uk-grid-divider > :not(.uk-first-column)::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  border-left: 1px solid #e5e5e5;
}

/* Vertical */
.uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  border-top: 1px solid #e5e5e5;
}

/*
 * Default
 */
/* Horizontal */
.uk-grid-divider {
  margin-left: -60px;
}

.uk-grid-divider > * {
  padding-left: 60px;
}

.uk-grid-divider > :not(.uk-first-column)::before {
  left: 30px;
}

/* Vertical */
.uk-grid-divider.uk-grid-stack > .uk-grid-margin {
  margin-top: 60px;
}

.uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
  top: -30px;
  left: 60px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .uk-grid-divider {
    margin-left: -80px;
  }
  .uk-grid-divider > * {
    padding-left: 80px;
  }
  .uk-grid-divider > :not(.uk-first-column)::before {
    left: 40px;
  }
  /* Vertical */
  .uk-grid-divider.uk-grid-stack > .uk-grid-margin {
    margin-top: 80px;
  }
  .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
    top: -40px;
    left: 80px;
  }
}
/*
 * Small
 */
/* Horizontal */
.uk-grid-divider.uk-grid-small,
.uk-grid-divider.uk-grid-column-small {
  margin-left: -30px;
}

.uk-grid-divider.uk-grid-small > *,
.uk-grid-divider.uk-grid-column-small > * {
  padding-left: 30px;
}

.uk-grid-divider.uk-grid-small > :not(.uk-first-column)::before,
.uk-grid-divider.uk-grid-column-small > :not(.uk-first-column)::before {
  left: 15px;
}

/* Vertical */
.uk-grid-divider.uk-grid-small.uk-grid-stack > .uk-grid-margin,
.uk-grid-divider.uk-grid-row-small.uk-grid-stack > .uk-grid-margin {
  margin-top: 30px;
}

.uk-grid-divider.uk-grid-small.uk-grid-stack > .uk-grid-margin::before {
  top: -15px;
  left: 30px;
}

.uk-grid-divider.uk-grid-row-small.uk-grid-stack > .uk-grid-margin::before {
  top: -15px;
}

.uk-grid-divider.uk-grid-column-small.uk-grid-stack > .uk-grid-margin::before {
  left: 30px;
}

/*
 * Medium
 */
/* Horizontal */
.uk-grid-divider.uk-grid-medium,
.uk-grid-divider.uk-grid-column-medium {
  margin-left: -60px;
}

.uk-grid-divider.uk-grid-medium > *,
.uk-grid-divider.uk-grid-column-medium > * {
  padding-left: 60px;
}

.uk-grid-divider.uk-grid-medium > :not(.uk-first-column)::before,
.uk-grid-divider.uk-grid-column-medium > :not(.uk-first-column)::before {
  left: 30px;
}

/* Vertical */
.uk-grid-divider.uk-grid-medium.uk-grid-stack > .uk-grid-margin,
.uk-grid-divider.uk-grid-row-medium.uk-grid-stack > .uk-grid-margin {
  margin-top: 60px;
}

.uk-grid-divider.uk-grid-medium.uk-grid-stack > .uk-grid-margin::before {
  top: -30px;
  left: 60px;
}

.uk-grid-divider.uk-grid-row-medium.uk-grid-stack > .uk-grid-margin::before {
  top: -30px;
}

.uk-grid-divider.uk-grid-column-medium.uk-grid-stack > .uk-grid-margin::before {
  left: 60px;
}

/*
 * Large
 */
/* Horizontal */
.uk-grid-divider.uk-grid-large,
.uk-grid-divider.uk-grid-column-large {
  margin-left: -80px;
}

.uk-grid-divider.uk-grid-large > *,
.uk-grid-divider.uk-grid-column-large > * {
  padding-left: 80px;
}

.uk-grid-divider.uk-grid-large > :not(.uk-first-column)::before,
.uk-grid-divider.uk-grid-column-large > :not(.uk-first-column)::before {
  left: 40px;
}

/* Vertical */
.uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin,
.uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin {
  margin-top: 80px;
}

.uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin::before {
  top: -40px;
  left: 80px;
}

.uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin::before {
  top: -40px;
}

.uk-grid-divider.uk-grid-column-large.uk-grid-stack > .uk-grid-margin::before {
  left: 80px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .uk-grid-divider.uk-grid-large,
  .uk-grid-divider.uk-grid-column-large {
    margin-left: -140px;
  }
  .uk-grid-divider.uk-grid-large > *,
  .uk-grid-divider.uk-grid-column-large > * {
    padding-left: 140px;
  }
  .uk-grid-divider.uk-grid-large > :not(.uk-first-column)::before,
  .uk-grid-divider.uk-grid-column-large > :not(.uk-first-column)::before {
    left: 70px;
  }
  /* Vertical */
  .uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin,
  .uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin {
    margin-top: 140px;
  }
  .uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin::before {
    top: -70px;
    left: 140px;
  }
  .uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin::before {
    top: -70px;
  }
  .uk-grid-divider.uk-grid-column-large.uk-grid-stack > .uk-grid-margin::before {
    left: 140px;
  }
}
/* Match child of a grid cell
 ========================================================================== */
/*
 * Behave like a block element
 * 1. Wrap into the next line
 * 2. Take the full width, at least 100%. Only if no class from the Width component is set.
 * 3. Expand width even if larger than 100%, e.g. because of negative margin (Needed for nested grids)
 */
.uk-grid-match > *,
.uk-grid-item-match {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
}

.uk-grid-match > * > :not([class*=uk-width]),
.uk-grid-item-match > :not([class*=uk-width]) {
  /* 2 */
  box-sizing: border-box;
  width: 100%;
  /* 3 */
  flex: auto;
}

/* ========================================================================
   Component: Nav
 ========================================================================== */
/*
 * Reset
 */
.uk-nav,
.uk-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/*
* 1. Center content vertically, e.g. an icon
* 2. Imitate white space gap when using flexbox
* 3. Reset link
 */
.uk-nav li > a {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  /* 3*/
  text-decoration: none;
}

/*
 * Items
 * Must target `a` elements to exclude other elements (e.g. lists)
 */
.uk-nav > li > a {
  padding: 5px 0;
}

/* Sublists
 ========================================================================== */
/*
 * Level 2
 * `ul` needed for higher specificity to override padding
 */
ul.uk-nav-sub {
  padding: 5px 0 5px 15px;
}

/*
 * Level 3 and deeper
 */
.uk-nav-sub ul {
  padding-left: 15px;
}

/*
 * Items
 */
.uk-nav-sub a {
  padding: 2px 0;
}

/* Parent icon
 ========================================================================== */
.uk-nav-parent-icon {
  margin-left: auto;
  transition: transform 0.3s ease-out;
}

.uk-nav > li.uk-open > a .uk-nav-parent-icon {
  transform: rotateX(180deg);
}

/* Header
 ========================================================================== */
.uk-nav-header {
  padding: 5px 0;
  text-transform: uppercase;
  font-size: 0.875rem;
}

.uk-nav-header:not(:first-child) {
  margin-top: 20px;
}

/* Divider
 ========================================================================== */
.uk-nav .uk-nav-divider {
  margin: 5px 0;
}

/* Default modifier
 ========================================================================== */
.uk-nav-default {
  font-size: 0.875rem;
  line-height: 1.5;
}

/*
 * Items
 */
.uk-nav-default > li > a {
  color: #999;
}

/* Hover */
.uk-nav-default > li > a:hover {
  color: #666;
}

/* Active */
.uk-nav-default > li.uk-active > a {
  color: #333;
}

/*
 * Subtitle
 */
.uk-nav-default .uk-nav-subtitle {
  font-size: 12px;
}

/*
 * Header
 */
.uk-nav-default .uk-nav-header {
  color: #333;
}

/*
 * Divider
 */
.uk-nav-default .uk-nav-divider {
  border-top: 1px solid #e5e5e5;
}

/*
 * Sublists
 */
.uk-nav-default .uk-nav-sub {
  font-size: 0.875rem;
  line-height: 1.5;
}

.uk-nav-default .uk-nav-sub a {
  color: #999;
}

.uk-nav-default .uk-nav-sub a:hover {
  color: #666;
}

.uk-nav-default .uk-nav-sub li.uk-active > a {
  color: #333;
}

/* Primary modifier
 ========================================================================== */
.uk-nav-primary {
  font-size: 1.5rem;
  line-height: 1.5;
}

/*
 * Items
 */
.uk-nav-primary > li > a {
  color: #999;
}

/* Hover */
.uk-nav-primary > li > a:hover {
  color: #666;
}

/* Active */
.uk-nav-primary > li.uk-active > a {
  color: #333;
}

/*
 * Subtitle
 */
.uk-nav-primary .uk-nav-subtitle {
  font-size: 1.25rem;
}

/*
 * Header
 */
.uk-nav-primary .uk-nav-header {
  color: #333;
}

/*
 * Divider
 */
.uk-nav-primary .uk-nav-divider {
  border-top: 1px solid #e5e5e5;
}

/*
 * Sublists
 */
.uk-nav-primary .uk-nav-sub {
  font-size: 1.25rem;
  line-height: 1.5;
}

.uk-nav-primary .uk-nav-sub a {
  color: #999;
}

.uk-nav-primary .uk-nav-sub a:hover {
  color: #666;
}

.uk-nav-primary .uk-nav-sub li.uk-active > a {
  color: #333;
}

/* Secondary modifier
 ========================================================================== */
.uk-nav-secondary {
  font-size: 16px;
  line-height: 1.5;
}
.uk-nav-secondary > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) {
  margin-top: 0;
}

/*
 * Items
 */
.uk-nav-secondary > li > a {
  color: #333;
  padding: 10px 10px;
}

/* Hover */
.uk-nav-secondary > li > a:hover {
  color: #333;
  background-color: #f8f8f8;
}

/* Active */
.uk-nav-secondary > li.uk-active > a {
  color: #333;
  background-color: #f8f8f8;
}

/*
 * Subtitle
 */
.uk-nav-secondary .uk-nav-subtitle {
  font-size: 0.875rem;
  color: #999;
}

/* Hover */
.uk-nav-secondary > li > a:hover .uk-nav-subtitle {
  color: #666;
}

/* Active */
.uk-nav-secondary > li.uk-active > a .uk-nav-subtitle {
  color: #333;
}

/*
 * Header
 */
.uk-nav-secondary .uk-nav-header {
  color: #333;
}

/*
 * Divider
 */
.uk-nav-secondary .uk-nav-divider {
  border-top: 1px solid #e5e5e5;
}

/*
 * Sublists
 */
.uk-nav-secondary .uk-nav-sub {
  font-size: 0.875rem;
  line-height: 1.5;
}

.uk-nav-secondary .uk-nav-sub a {
  color: #999;
}

.uk-nav-secondary .uk-nav-sub a:hover {
  color: #666;
}

.uk-nav-secondary .uk-nav-sub li.uk-active > a {
  color: #333;
}

/* Size modifier
 ========================================================================== */
/*
 * Medium
 */
.uk-nav-medium {
  font-size: 2.8875rem;
  line-height: 1;
}

.uk-nav-large {
  font-size: 3.4rem;
  line-height: 1;
}

.uk-nav-xlarge {
  font-size: 4rem;
  line-height: 1;
}

/* Tablet Landscape and bigger */
@media (min-width: 768px) {
  .uk-nav-medium {
    font-size: 3.5rem;
  }
  .uk-nav-large {
    font-size: 4rem;
  }
  .uk-nav-xlarge {
    font-size: 6rem;
  }
}
/* Laptop and bigger */
@media (min-width: 1200px) {
  .uk-nav-medium {
    font-size: 4rem;
  }
  .uk-nav-large {
    font-size: 6rem;
  }
  .uk-nav-xlarge {
    font-size: 8rem;
  }
}
/* Alignment modifier
 ========================================================================== */
/*
 * 1. Center header
 * 2. Center items
 */
/* 1 */
.uk-nav-center {
  text-align: center;
}

/* 2 */
.uk-nav-center li > a {
  justify-content: center;
}

/* Sublists */
.uk-nav-center .uk-nav-sub,
.uk-nav-center .uk-nav-sub ul {
  padding-left: 0;
}

/* Parent icon  */
.uk-nav-center .uk-nav-parent-icon {
  margin-left: 0.25em;
}

/* Style modifier
 ========================================================================== */
/*
 * Divider
 * Naming is in plural to prevent conflicts with divider sub object.
 */
.uk-nav.uk-nav-divider > :not(.uk-nav-header, .uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) {
  margin-top: 5px;
  padding-top: 5px;
  border-top: 1px solid #e5e5e5;
}

/* ========================================================================
   Component: Navbar
 ========================================================================== */
/*
 * 1. Create position context to center navbar group
 */
.uk-navbar {
  display: flex;
  /* 1 */
  position: relative;
}

/* Container
 ========================================================================== */
.uk-navbar-container:not(.uk-navbar-transparent) {
  background: #f8f8f8;
}

/* Groups
 ========================================================================== */
/*
 * 1. Align navs and items vertically if they have a different height
 */
.uk-navbar-left,
.uk-navbar-right,
[class*=uk-navbar-center] {
  display: flex;
  gap: 15px;
  /* 1 */
  align-items: center;
}

/*
 * Horizontal alignment
 * 1. Create position context for centered navbar with sub groups (left/right)
 * 2. Fix text wrapping if content is larger than 50% of the container.
 * 3. Needed for dropdowns because a new position context is created
 *    `z-index` must be smaller than off-canvas
 * 4. Align sub groups for centered navbar
 */
.uk-navbar-right {
  margin-left: auto;
}

.uk-navbar-center:only-child {
  margin-left: auto;
  margin-right: auto;
  /* 1 */
  position: relative;
}

.uk-navbar-center:not(:only-child) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /* 2 */
  width: -moz-max-content;
  width: max-content;
  box-sizing: border-box;
  /* 3 */
  z-index: 990;
}

/* 4 */
.uk-navbar-center-left,
.uk-navbar-center-right {
  position: absolute;
  top: 0;
}

.uk-navbar-center-left {
  right: calc(100% + 15px);
}

.uk-navbar-center-right {
  left: calc(100% + 15px);
}

[class*=uk-navbar-center-] {
  width: -moz-max-content;
  width: max-content;
  box-sizing: border-box;
}

/* Nav
 ========================================================================== */
/*
 * 1. Reset list
 */
.uk-navbar-nav {
  display: flex;
  gap: 15px;
  /* 1 */
  margin: 0;
  padding: 0;
  list-style: none;
}

/*
 * Allow items to wrap into the next line
 * Only not `absolute` positioned groups
 */
.uk-navbar-left,
.uk-navbar-right,
.uk-navbar-center:only-child {
  flex-wrap: wrap;
}

/*
 * Items
 * 1. Center content vertically and horizontally
 * 2. Imitate white space gap when using flexbox
 * 3. Dimensions
 * 4. Style
 * 5. Required for `a`
 */
.uk-navbar-nav > li > a,
.uk-navbar-item,
.uk-navbar-toggle {
  /* 1 */
  display: flex;
  justify-content: center;
  align-items: center;
  /* 2 */
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  /* 3 */
  box-sizing: border-box;
  min-height: 80px;
  /* 4 */
  font-size: 0.875rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  /* 5 */
  text-decoration: none;
}

/*
 * Nav items
 */
.uk-navbar-nav > li > a {
  padding: 0 0;
  color: #999;
  text-transform: uppercase;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}

/*
 * Hover
 * Apply hover style also if dropdown is opened
 */
.uk-navbar-nav > li:hover > a,
.uk-navbar-nav > li > a[aria-expanded=true] {
  color: #666;
}

/* OnClick */
.uk-navbar-nav > li > a:active {
  color: #333;
}

/* Active */
.uk-navbar-nav > li.uk-active > a {
  color: #333;
}

/* Parent icon modifier
 ========================================================================== */
.uk-navbar-parent-icon {
  margin-left: 4px;
  transition: transform 0.3s ease-out;
}

.uk-navbar-nav > li > a[aria-expanded=true] .uk-navbar-parent-icon {
  transform: rotateX(180deg);
}

/* Item
 ========================================================================== */
.uk-navbar-item {
  padding: 0 0;
  color: #666;
}

/*
 * Remove margin from the last-child
 */
.uk-navbar-item > :last-child {
  margin-bottom: 0;
}

/* Toggle
 ========================================================================== */
.uk-navbar-toggle {
  padding: 0 0;
  color: #999;
}

.uk-navbar-toggle:hover,
.uk-navbar-toggle[aria-expanded=true] {
  color: #666;
  text-decoration: none;
}

/*
 * Icon
 * Adopts `uk-icon`
 */
/* Hover */
/* Subtitle
 ========================================================================== */
.uk-navbar-subtitle {
  font-size: 0.875rem;
}

/* Justify modifier
 ========================================================================== */
.uk-navbar-justify .uk-navbar-left,
.uk-navbar-justify .uk-navbar-right,
.uk-navbar-justify .uk-navbar-nav,
.uk-navbar-justify .uk-navbar-nav > li,
.uk-navbar-justify .uk-navbar-item,
.uk-navbar-justify .uk-navbar-toggle {
  flex-grow: 1;
}

/* Style modifiers
 ========================================================================== */
/* Dropdown
 ========================================================================== */
/*
 * Adopts `uk-drop`
 * 1. Set a default width
 * 2. Style
 */
.uk-navbar-dropdown {
  --uk-position-offset: 15px;
  --uk-position-shift-offset: 0;
  --uk-position-viewport-offset: 15px;
  --uk-inverse: dark;
  /* 1 */
  width: 200px;
  /* 2 */
  padding: 25px;
  background: #fff;
  color: #666;
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
}

/*
 * Remove margin from the last-child
 */
.uk-navbar-dropdown > :last-child {
  margin-bottom: 0;
}

.uk-navbar-dropdown :focus-visible {
  outline-color: #333 !important;
}

/*
 * Grid
 * Adopts `uk-grid`
 */
/* Gutter Horizontal */
.uk-navbar-dropdown .uk-drop-grid {
  margin-left: -30px;
}

.uk-navbar-dropdown .uk-drop-grid > * {
  padding-left: 30px;
}

/* Gutter Vertical */
.uk-navbar-dropdown .uk-drop-grid > .uk-grid-margin {
  margin-top: 30px;
}

/*
 * Width modifier
 */
.uk-navbar-dropdown-width-2:not(.uk-drop-stack) {
  width: 400px;
}

.uk-navbar-dropdown-width-3:not(.uk-drop-stack) {
  width: 600px;
}

.uk-navbar-dropdown-width-4:not(.uk-drop-stack) {
  width: 800px;
}

.uk-navbar-dropdown-width-5:not(.uk-drop-stack) {
  width: 1000px;
}

/*
 * Size modifier
 */
.uk-navbar-dropdown-large {
  --uk-position-shift-offset: 0;
  padding: 40px;
}

/*
 * Dropbar modifier
 * 1. Reset dropdown width to prevent to early shifting
 * 2. Reset style
 * 3. Padding
 */
.uk-navbar-dropdown-dropbar {
  /* 1 */
  width: auto;
  /* 2 */
  background: transparent;
  /* 3 */
  padding: 25px 0 25px 0;
  --uk-position-offset: 0;
  --uk-position-shift-offset: 0;
  --uk-position-viewport-offset: 15px;
  box-shadow: none;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-navbar-dropdown-dropbar {
    --uk-position-viewport-offset: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-navbar-dropdown-dropbar {
    --uk-position-viewport-offset: 40px;
  }
}
.uk-navbar-dropdown-dropbar-large {
  --uk-position-shift-offset: 0;
  padding-top: 40px;
  padding-bottom: 40px;
}

/* Dropdown Nav
 * Adopts `uk-nav`
 ========================================================================== */
.uk-navbar-dropdown-nav {
  font-size: 0.875rem;
}

/*
 * Items
 */
.uk-navbar-dropdown-nav > li > a {
  color: #999;
}

/* Hover */
.uk-navbar-dropdown-nav > li > a:hover {
  color: #666;
}

/* Active */
.uk-navbar-dropdown-nav > li.uk-active > a {
  color: #333;
}

/*
 * Subtitle
 */
.uk-navbar-dropdown-nav .uk-nav-subtitle {
  font-size: 12px;
}

/*
 * Header
 */
.uk-navbar-dropdown-nav .uk-nav-header {
  color: #333;
}

/*
 * Divider
 */
.uk-navbar-dropdown-nav .uk-nav-divider {
  border-top: 1px solid #e5e5e5;
}

/*
 * Sublists
 */
.uk-navbar-dropdown-nav .uk-nav-sub a {
  color: #999;
}

.uk-navbar-dropdown-nav .uk-nav-sub a:hover {
  color: #666;
}

.uk-navbar-dropdown-nav .uk-nav-sub li.uk-active > a {
  color: #333;
}

/* Dropbar
 ========================================================================== */
/*
 * Adopts `uk-dropnav-dropbar`
 */
.uk-navbar-container {
  transition: 0.1s ease-in-out;
  transition-property: background-color;
}

/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-navbar-left,
  .uk-navbar-right,
  [class*=uk-navbar-center] {
    gap: 30px;
  }
  .uk-navbar-center-left {
    right: calc(100% + 30px);
  }
  .uk-navbar-center-right {
    left: calc(100% + 30px);
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-navbar-nav {
    gap: 30px;
  }
}
/* ========================================================================
   Component: Subnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Center items vertically if they have a different height
 * 3. Gutter
 * 4. Reset list
 */
.uk-subnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  align-items: center;
  /* 3 */
  margin-left: -20px;
  /* 4 */
  padding: 0;
  list-style: none;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.uk-subnav > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 20px;
  /* 3 */
  position: relative;
}

/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * Using `:first-child` instead of `a` to support `span` elements for text
 * 1. Center content vertically, e.g. an icon
 * 2. Imitate white space gap when using flexbox
 * 3. Style
 */
.uk-subnav > * > :first-child {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  /* 3 */
  color: #999;
  font-size: 0.875rem;
  text-transform: uppercase;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}

/* Hover */
.uk-subnav > * > a:hover {
  color: #666;
  text-decoration: none;
}

/* Active */
.uk-subnav > .uk-active > a {
  color: #333;
}

/* Divider modifier
 ========================================================================== */
/*
 * Set gutter
 */
.uk-subnav-divider {
  margin-left: -41px;
}

/*
 * Align items and divider vertically
 */
.uk-subnav-divider > * {
  display: flex;
  align-items: center;
}

/*
 * Divider
 * 1. `nth-child` makes it also work without JS if it's only one row
 */
.uk-subnav-divider > ::before {
  content: "";
  height: 1.5em;
  margin-left: 0px;
  margin-right: 20px;
  border-left: 1px solid transparent;
}

/* 1 */
.uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before {
  border-left-color: #e5e5e5;
}

/* Pill modifier
 ========================================================================== */
/*
 * Gutter
 */
.uk-subnav-pill {
  margin-left: -20px;
}

.uk-subnav-pill > * {
  padding-left: 20px;
}

.uk-subnav-pill > * > :first-child {
  padding: 5px 10px;
  background: transparent;
  color: #999;
}

/* Hover */
.uk-subnav-pill > * > a:hover {
  background-color: #f8f8f8;
  color: #666;
}

/* OnClick */
.uk-subnav-pill > * > a:active {
  background-color: #f8f8f8;
  color: #666;
}

/* Active */
.uk-subnav-pill > .uk-active > a {
  background-color: #1e87f0;
  color: #fff;
}

/* Disabled
 * The same for all style modifiers
 ========================================================================== */
.uk-subnav > .uk-disabled > a {
  color: #999;
}

/* ========================================================================
   Component: Breadcrumb
 ========================================================================== */
/*
 * 1. Reset list
 * 2. Remove space between elements
 */
.uk-breadcrumb {
  /* 1 */
  padding: 0;
  list-style: none;
  /* 2 */
  font-size: 0;
}

/*
 * 1. Doesn't generate any box and replaced by child boxes
 */
.uk-breadcrumb > * {
  display: contents;
}

/* Items
 ========================================================================== */
.uk-breadcrumb > * > * {
  font-size: 0.875rem;
  color: #999;
}

/* Hover */
.uk-breadcrumb > * > :hover {
  color: #666;
  text-decoration: none;
}

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

/*
 * Divider
 * `nth-child` makes it also work without JS if it's only one row
 * 1. Remove space between inline block elements.
 * 2. Style
 */
.uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before {
  content: "/";
  display: inline-block;
  /* 1 */
  margin: 0 20px;
  /* 2 */
  font-size: 0.875rem;
  color: #999;
}

/* ========================================================================
   Component: Pagination
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Center items vertically if they have a different height
 * 3. Gutter
 * 4. Reset list
 */
.uk-pagination {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  align-items: center;
  /* 3 */
  margin-left: 0;
  /* 4 */
  padding: 0;
  list-style: none;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.uk-pagination > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 0;
  /* 3 */
  position: relative;
}

/* Items
 ========================================================================== */
/*
 * 1. Center content vertically, e.g. an icon
 * 2. Imitate white space gap when using flexbox
 * 3. Style
 */
.uk-pagination > * > * {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  /* 3 */
  padding: 5px 10px;
  color: #999;
  transition: color 0.1s ease-in-out;
}

/* Hover */
.uk-pagination > * > :hover {
  color: #666;
  text-decoration: none;
}

/* Active */
.uk-pagination > .uk-active > * {
  color: #666;
}

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

/* ========================================================================
   Component: Tab
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Gutter
 * 3. Reset list
 */
.uk-tab {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin-left: -20px;
  /* 3 */
  padding: 0;
  list-style: none;
  position: relative;
}
.uk-tab::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 20px;
  right: 0;
  border-bottom: 1px solid #e5e5e5;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.uk-tab > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 20px;
  /* 3 */
  position: relative;
}

/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * 1. Center content vertically, e.g. an icon
 * 2. Imitate white space gap when using flexbox
 * 3. Center content if a width is set
 * 4. Style
 */
.uk-tab > * > a {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  /* 3 */
  justify-content: center;
  /* 4 */
  padding: 5px 10px;
  color: #999;
  border-bottom: 1px solid transparent;
  font-size: 0.875rem;
  text-transform: uppercase;
  transition: color 0.1s ease-in-out;
}

/* Hover */
.uk-tab > * > a:hover {
  color: #666;
  text-decoration: none;
}

/* Active */
.uk-tab > .uk-active > a {
  color: #333;
  border-color: #1e87f0;
}

/* Disabled */
.uk-tab > .uk-disabled > a {
  color: #999;
}

/* Position modifier
 ========================================================================== */
/*
 * Bottom
 */
.uk-tab-bottom::before {
  top: 0;
  bottom: auto;
}

.uk-tab-bottom > * > a {
  border-top: 1px solid transparent;
  border-bottom: none;
}

/*
 * Left + Right
 * 1. Reset Gutter
 */
.uk-tab-left,
.uk-tab-right {
  flex-direction: column;
  /* 1 */
  margin-left: 0;
}

/* 1 */
.uk-tab-left > *,
.uk-tab-right > * {
  padding-left: 0;
}

.uk-tab-left::before {
  top: 0;
  bottom: 0;
  left: auto;
  right: 0;
  border-left: 1px solid #e5e5e5;
  border-bottom: none;
}

.uk-tab-right::before {
  top: 0;
  bottom: 0;
  left: 0;
  right: auto;
  border-left: 1px solid #e5e5e5;
  border-bottom: none;
}

.uk-tab-left > * > a {
  justify-content: left;
  border-right: 1px solid transparent;
  border-bottom: none;
}

.uk-tab-right > * > a {
  justify-content: left;
  border-left: 1px solid transparent;
  border-bottom: none;
}

.uk-tab .uk-dropdown {
  margin-left: 30px;
}

/* ========================================================================
   Component: Slidenav
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
.uk-slidenav {
  padding: 5px 10px;
  color: rgba(102, 102, 102, 0.5);
  transition: color 0.1s ease-in-out;
}

/* Hover */
.uk-slidenav:hover {
  color: rgba(102, 102, 102, 0.9);
}

/* OnClick */
.uk-slidenav:active {
  color: rgba(102, 102, 102, 0.5);
}

/* Icon modifier
 ========================================================================== */
/*
 * Previous
 */
/*
 * Next
 */
/* Size modifier
 ========================================================================== */
.uk-slidenav-large {
  padding: 10px 10px;
}

/* Container
 ========================================================================== */
.uk-slidenav-container {
  display: flex;
}

/* ========================================================================
   Component: Dotnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.uk-dotnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  margin-left: -12px;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 */
.uk-dotnav > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 12px;
}

/* Items
 ========================================================================== */
/*
 * Items
 * 1. Hide text if present
 */
.uk-dotnav > * > * {
  display: block;
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: transparent;
  /* 1 */
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  border: 1px solid rgba(102, 102, 102, 0.4);
  transition: 0.2s ease-in-out;
  transition-property: background-color, border-color;
}

/* Hover */
.uk-dotnav > * > :hover {
  background-color: rgba(102, 102, 102, 0.6);
  border-color: transparent;
}

/* OnClick */
.uk-dotnav > * > :active {
  background-color: rgba(102, 102, 102, 0.2);
  border-color: transparent;
}

/* Active */
.uk-dotnav > .uk-active > * {
  background-color: rgba(102, 102, 102, 0.6);
  border-color: transparent;
}

/* Modifier: 'uk-dotnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.uk-dotnav-vertical {
  /* 1 */
  flex-direction: column;
  /* 2 */
  margin-left: 0;
  margin-top: -12px;
}

/* 2 */
.uk-dotnav-vertical > * {
  padding-left: 0;
  padding-top: 12px;
}

/* ========================================================================
   Component: Dropdown
 ========================================================================== */
/*
 * Adopts `uk-drop`
 * 1. Reset drop and let text expand the width instead of wrapping
 * 2. Set a default width
 * 3. Style
 */
.uk-dropdown {
  --uk-position-offset: 10px;
  --uk-position-viewport-offset: 15px;
  --uk-inverse: dark;
  /* 1 */
  width: auto;
  /* 2 */
  min-width: 200px;
  /* 3 */
  padding: 25px;
  background: #fff;
  color: #666;
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
}

/*
 * Remove margin from the last-child
 */
.uk-dropdown > :last-child {
  margin-bottom: 0;
}

.uk-dropdown :focus-visible {
  outline-color: #333 !important;
}

/* Size modifier
 ========================================================================== */
.uk-dropdown-large {
  padding: 40px;
}

/* Dropbar modifier
 ========================================================================== */
/*
 * 1. Reset dropdown width to prevent to early shifting
 * 2. Reset style
 * 3. Padding
 */
.uk-dropdown-dropbar {
  --uk-position-offset: 10px;
  /* 1 */
  width: auto;
  /* 2 */
  background: transparent;
  /* 3 */
  padding: 5px 0 25px 0;
  --uk-position-viewport-offset: 15px;
  box-shadow: none;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-dropdown-dropbar {
    --uk-position-viewport-offset: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-dropdown-dropbar {
    --uk-position-viewport-offset: 40px;
  }
}
.uk-dropdown-dropbar-large {
  padding-top: 40px;
  padding-bottom: 40px;
}

/* Nav
 * Adopts `uk-nav`
 ========================================================================== */
.uk-dropdown-nav {
  font-size: 0.875rem;
}

/*
 * Items
 */
.uk-dropdown-nav > li > a {
  color: #999;
}

/* Hover + Active */
.uk-dropdown-nav > li > a:hover,
.uk-dropdown-nav > li.uk-active > a {
  color: #666;
}

/*
 * Subtitle
 */
.uk-dropdown-nav .uk-nav-subtitle {
  font-size: 12px;
}

/*
 * Header
 */
.uk-dropdown-nav .uk-nav-header {
  color: #333;
}

/*
 * Divider
 */
.uk-dropdown-nav .uk-nav-divider {
  border-top: 1px solid #e5e5e5;
}

/*
 * Sublists
 */
.uk-dropdown-nav .uk-nav-sub a {
  color: #999;
}

.uk-dropdown-nav .uk-nav-sub a:hover,
.uk-dropdown-nav .uk-nav-sub li.uk-active > a {
  color: #666;
}

/* ========================================================================
   Component: Lightbox
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Allow scrolling for the modal dialog
 * 4. Horizontal padding
 * 5. Mask the background page
 * 6. Fade-in transition
 * 7. Prevent cancellation of pointer events while dragging
 */
.uk-lightbox {
  --uk-inverse: light;
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1010;
  /* 5 */
  background: #000;
  /* 6 */
  opacity: 0;
  transition: opacity 0.15s linear;
  /* 7 */
  touch-action: pinch-zoom;
}

/*
 * Open
 * 1. Center child
 * 2. Fade-in
 */
.uk-lightbox.uk-open {
  display: block;
  /* 2 */
  opacity: 1;
}

/*
 * Focus
 */
.uk-lightbox :focus-visible {
  outline-color: rgba(255, 255, 255, 0.7);
}

/* Page
 ========================================================================== */
/*
 * Prevent scrollbars
 */
.uk-lightbox-page {
  overflow: hidden;
}

/* Items
 ========================================================================== */
/*
 * Reset list
 */
.uk-lightbox-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

/*
 * 1. Center child within the viewport
 * 2. Not visible by default
 * 3. Optimize animation
 * 4. Responsiveness
 *    Using `vh` for `max-height` to fix image proportions after resize in Safari and Opera
 */
.uk-lightbox-items > * {
  /* 1 */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  display: none;
  justify-content: center;
  align-items: flex-start;
  /* 3 */
  will-change: transform, opacity;
  /* 4 */
  overflow: auto;
}

/* 2 */
.uk-lightbox-items > .uk-active {
  display: flex;
}

.uk-lightbox-items-fit > * {
  align-items: center;
}

/* 4 */
.uk-lightbox-items-fit > * > * {
  max-width: 100vw;
  max-height: 100vh;
}

.uk-lightbox-items-fit > * > :not(iframe) {
  width: auto;
  height: auto;
}

/* Zoom Cursor */
.uk-lightbox-items.uk-lightbox-items-fit .uk-lightbox-zoom:hover {
  cursor: zoom-in;
}

.uk-lightbox-items:not(.uk-lightbox-items-fit) .uk-lightbox-zoom:hover {
  cursor: zoom-out;
}

/* Navs
 ========================================================================== */
.uk-lightbox-thumbnav-vertical :where(img, video) {
  max-width: 100px;
}

.uk-lightbox-thumbnav:not(.uk-lightbox-thumbnav-vertical) :where(img, video) {
  max-height: 100px;
}

.uk-lightbox-thumbnav:empty,
.uk-lightbox-dotnav:empty {
  display: none;
}

/* Caption
 ========================================================================== */
.uk-lightbox-caption:empty {
  display: none;
}

.uk-lightbox-caption {
  padding: 10px 10px;
  background: rgba(0, 0, 0, 0.3);
  color: rgba(255, 255, 255, 0.7);
}

.uk-lightbox-caption > * {
  color: rgba(255, 255, 255, 0.7);
}

/* Counter
 ========================================================================== */
.uk-lightbox-counter:empty {
  display: none;
}

/* Iframe
 ========================================================================== */
.uk-lightbox-iframe {
  width: 80%;
  height: 80%;
}

/* ========================================================================
   Component: Animation
 ========================================================================== */
[class*=uk-animation-] {
  animation: 0.5s ease-out both;
}

/* Animations
 ========================================================================== */
/*
 * Fade
 */
.uk-animation-fade {
  animation-name: uk-fade;
  animation-duration: 0.8s;
  animation-timing-function: linear;
}

/*
 * Scale
 */
.uk-animation-scale-up {
  animation-name: uk-fade, uk-scale-up;
}

.uk-animation-scale-down {
  animation-name: uk-fade, uk-scale-down;
}

/*
 * Slide
 */
.uk-animation-slide-top {
  animation-name: uk-fade, uk-slide-top;
}

.uk-animation-slide-bottom {
  animation-name: uk-fade, uk-slide-bottom;
}

.uk-animation-slide-left {
  animation-name: uk-fade, uk-slide-left;
}

.uk-animation-slide-right {
  animation-name: uk-fade, uk-slide-right;
}

/*
 * Slide Small
 */
.uk-animation-slide-top-small {
  animation-name: uk-fade, uk-slide-top-small;
}

.uk-animation-slide-bottom-small {
  animation-name: uk-fade, uk-slide-bottom-small;
}

.uk-animation-slide-left-small {
  animation-name: uk-fade, uk-slide-left-small;
}

.uk-animation-slide-right-small {
  animation-name: uk-fade, uk-slide-right-small;
}

/*
 * Slide Medium
 */
.uk-animation-slide-top-medium {
  animation-name: uk-fade, uk-slide-top-medium;
}

.uk-animation-slide-bottom-medium {
  animation-name: uk-fade, uk-slide-bottom-medium;
}

.uk-animation-slide-left-medium {
  animation-name: uk-fade, uk-slide-left-medium;
}

.uk-animation-slide-right-medium {
  animation-name: uk-fade, uk-slide-right-medium;
}

/*
 * Kenburns
 */
.uk-animation-kenburns {
  animation-name: uk-kenburns;
  animation-duration: 15s;
}

/*
 * Shake
 */
.uk-animation-shake {
  animation-name: uk-shake;
}

/*
 * SVG Stroke
 * The `--uk-animation-stroke` custom property contains the longest path length.
 * Set it manually or use `uk-svg="stroke-animation: true"` to set it automatically.
 * All strokes are animated by the same pace and doesn't end simultaneously.
 * To end simultaneously, `pathLength="1"` could be used, but it's not working in Safari yet.
 */
.uk-animation-stroke {
  animation-name: uk-stroke;
  animation-duration: 2s;
  stroke-dasharray: var(--uk-animation-stroke);
}

/* Direction modifier
 ========================================================================== */
.uk-animation-reverse {
  animation-direction: reverse;
  animation-timing-function: ease-in;
}

/* Duration modifier
 ========================================================================== */
.uk-animation-fast {
  animation-duration: 0.1s;
}

/* Toggle animation based on the State of the Parent Element
 ========================================================================== */
.uk-animation-toggle:not(:hover):not(:focus) [class*=uk-animation-] {
  animation-name: none;
}

/* Keyframes used by animation classes
 ========================================================================== */
/*
 * Fade
 */
@keyframes uk-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*
 * Scale
 */
@keyframes uk-scale-up {
  0% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes uk-scale-down {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
/*
 * Slide
 */
@keyframes uk-slide-top {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes uk-slide-bottom {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes uk-slide-left {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes uk-slide-right {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
/*
 * Slide Small
 */
@keyframes uk-slide-top-small {
  0% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes uk-slide-bottom-small {
  0% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes uk-slide-left-small {
  0% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes uk-slide-right-small {
  0% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
/*
 * Slide Medium
 */
@keyframes uk-slide-top-medium {
  0% {
    transform: translateY(-50px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes uk-slide-bottom-medium {
  0% {
    transform: translateY(50px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes uk-slide-left-medium {
  0% {
    transform: translateX(-50px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes uk-slide-right-medium {
  0% {
    transform: translateX(50px);
  }
  100% {
    transform: translateX(0);
  }
}
/*
 * Kenburns
 */
@keyframes uk-kenburns {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}
/*
 * Shake
 */
@keyframes uk-shake {
  0%, 100% {
    transform: translateX(0);
  }
  10% {
    transform: translateX(-9px);
  }
  20% {
    transform: translateX(8px);
  }
  30% {
    transform: translateX(-7px);
  }
  40% {
    transform: translateX(6px);
  }
  50% {
    transform: translateX(-5px);
  }
  60% {
    transform: translateX(4px);
  }
  70% {
    transform: translateX(-3px);
  }
  80% {
    transform: translateX(2px);
  }
  90% {
    transform: translateX(-1px);
  }
}
/*
 * Stroke
 */
@keyframes uk-stroke {
  0% {
    stroke-dashoffset: var(--uk-animation-stroke);
  }
  100% {
    stroke-dashoffset: 0;
  }
}
/* ========================================================================
   Component: Width
 ========================================================================== */
/* Equal child widths
 ========================================================================== */
[class*=uk-child-width] > * {
  box-sizing: border-box;
  width: 100%;
}

.uk-child-width-1-2 > * {
  width: 50%;
}

.uk-child-width-1-3 > * {
  width: calc(100% / 3);
}

.uk-child-width-1-4 > * {
  width: 25%;
}

.uk-child-width-1-5 > * {
  width: 20%;
}

.uk-child-width-1-6 > * {
  width: calc(100% / 6);
}

.uk-child-width-auto > * {
  width: auto;
}

/*
 * 1. Reset the `min-width`, which is set to auto by default, because
 *    flex items won't shrink below their minimum intrinsic content size.
 *    Using `1px` instead of `0`, so items still wrap into the next line,
 *    if they have zero width and padding and the predecessor is 100% wide.
 */
.uk-child-width-expand > :not([class*=uk-width]) {
  flex: 1;
  /* 1 */
  min-width: 1px;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-child-width-1-1\@s > * {
    width: 100%;
  }
  .uk-child-width-1-2\@s > * {
    width: 50%;
  }
  .uk-child-width-1-3\@s > * {
    width: calc(100% / 3);
  }
  .uk-child-width-1-4\@s > * {
    width: 25%;
  }
  .uk-child-width-1-5\@s > * {
    width: 20%;
  }
  .uk-child-width-1-6\@s > * {
    width: calc(100% / 6);
  }
  .uk-child-width-auto\@s > * {
    width: auto;
  }
  .uk-child-width-expand\@s > :not([class*=uk-width]) {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-child-width-1-1\@s > :not([class*=uk-width]),
  .uk-child-width-1-2\@s > :not([class*=uk-width]),
  .uk-child-width-1-3\@s > :not([class*=uk-width]),
  .uk-child-width-1-4\@s > :not([class*=uk-width]),
  .uk-child-width-1-5\@s > :not([class*=uk-width]),
  .uk-child-width-1-6\@s > :not([class*=uk-width]),
  .uk-child-width-auto\@s > :not([class*=uk-width]) {
    flex: initial;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-child-width-1-1\@m > * {
    width: 100%;
  }
  .uk-child-width-1-2\@m > * {
    width: 50%;
  }
  .uk-child-width-1-3\@m > * {
    width: calc(100% / 3);
  }
  .uk-child-width-1-4\@m > * {
    width: 25%;
  }
  .uk-child-width-1-5\@m > * {
    width: 20%;
  }
  .uk-child-width-1-6\@m > * {
    width: calc(100% / 6);
  }
  .uk-child-width-auto\@m > * {
    width: auto;
  }
  .uk-child-width-expand\@m > :not([class*=uk-width]) {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-child-width-1-1\@m > :not([class*=uk-width]),
  .uk-child-width-1-2\@m > :not([class*=uk-width]),
  .uk-child-width-1-3\@m > :not([class*=uk-width]),
  .uk-child-width-1-4\@m > :not([class*=uk-width]),
  .uk-child-width-1-5\@m > :not([class*=uk-width]),
  .uk-child-width-1-6\@m > :not([class*=uk-width]),
  .uk-child-width-auto\@m > :not([class*=uk-width]) {
    flex: initial;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-child-width-1-1\@l > * {
    width: 100%;
  }
  .uk-child-width-1-2\@l > * {
    width: 50%;
  }
  .uk-child-width-1-3\@l > * {
    width: calc(100% / 3);
  }
  .uk-child-width-1-4\@l > * {
    width: 25%;
  }
  .uk-child-width-1-5\@l > * {
    width: 20%;
  }
  .uk-child-width-1-6\@l > * {
    width: calc(100% / 6);
  }
  .uk-child-width-auto\@l > * {
    width: auto;
  }
  .uk-child-width-expand\@l > :not([class*=uk-width]) {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-child-width-1-1\@l > :not([class*=uk-width]),
  .uk-child-width-1-2\@l > :not([class*=uk-width]),
  .uk-child-width-1-3\@l > :not([class*=uk-width]),
  .uk-child-width-1-4\@l > :not([class*=uk-width]),
  .uk-child-width-1-5\@l > :not([class*=uk-width]),
  .uk-child-width-1-6\@l > :not([class*=uk-width]),
  .uk-child-width-auto\@l > :not([class*=uk-width]) {
    flex: initial;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-child-width-1-1\@xl > * {
    width: 100%;
  }
  .uk-child-width-1-2\@xl > * {
    width: 50%;
  }
  .uk-child-width-1-3\@xl > * {
    width: calc(100% / 3);
  }
  .uk-child-width-1-4\@xl > * {
    width: 25%;
  }
  .uk-child-width-1-5\@xl > * {
    width: 20%;
  }
  .uk-child-width-1-6\@xl > * {
    width: calc(100% / 6);
  }
  .uk-child-width-auto\@xl > * {
    width: auto;
  }
  .uk-child-width-expand\@xl > :not([class*=uk-width]) {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-child-width-1-1\@xl > :not([class*=uk-width]),
  .uk-child-width-1-2\@xl > :not([class*=uk-width]),
  .uk-child-width-1-3\@xl > :not([class*=uk-width]),
  .uk-child-width-1-4\@xl > :not([class*=uk-width]),
  .uk-child-width-1-5\@xl > :not([class*=uk-width]),
  .uk-child-width-1-6\@xl > :not([class*=uk-width]),
  .uk-child-width-auto\@xl > :not([class*=uk-width]) {
    flex: initial;
  }
}
/* Single Widths
 ========================================================================== */
/*
 * 1. `max-width` is needed for the pixel-based classes
 */
[class*=uk-width] {
  box-sizing: border-box;
  width: 100%;
  /* 1 */
  max-width: 100%;
}

/* Halves */
.uk-width-1-2 {
  width: 50%;
}

/* Thirds */
.uk-width-1-3 {
  width: calc(100% / 3);
}

.uk-width-2-3 {
  width: calc(200% / 3);
}

/* Quarters */
.uk-width-1-4 {
  width: 25%;
}

.uk-width-3-4 {
  width: 75%;
}

/* Fifths */
.uk-width-1-5 {
  width: 20%;
}

.uk-width-2-5 {
  width: 40%;
}

.uk-width-3-5 {
  width: 60%;
}

.uk-width-4-5 {
  width: 80%;
}

/* Sixths */
.uk-width-1-6 {
  width: calc(100% / 6);
}

.uk-width-5-6 {
  width: calc(500% / 6);
}

/* Pixel */
.uk-width-small {
  width: 150px;
}

.uk-width-medium {
  width: 300px;
}

.uk-width-large {
  width: 450px;
}

.uk-width-xlarge {
  width: 600px;
}

.uk-width-2xlarge {
  width: 750px;
}

/* Auto */
.uk-width-auto {
  width: auto;
}

/* Expand */
.uk-width-expand {
  flex: 1;
  min-width: 1px;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  /* Whole */
  .uk-width-1-1\@s {
    width: 100%;
  }
  /* Halves */
  .uk-width-1-2\@s {
    width: 50%;
  }
  /* Thirds */
  .uk-width-1-3\@s {
    width: calc(100% / 3);
  }
  .uk-width-2-3\@s {
    width: calc(200% / 3);
  }
  /* Quarters */
  .uk-width-1-4\@s {
    width: 25%;
  }
  .uk-width-3-4\@s {
    width: 75%;
  }
  /* Fifths */
  .uk-width-1-5\@s {
    width: 20%;
  }
  .uk-width-2-5\@s {
    width: 40%;
  }
  .uk-width-3-5\@s {
    width: 60%;
  }
  .uk-width-4-5\@s {
    width: 80%;
  }
  /* Sixths */
  .uk-width-1-6\@s {
    width: calc(100% / 6);
  }
  .uk-width-5-6\@s {
    width: calc(500% / 6);
  }
  /* Pixel */
  .uk-width-small\@s {
    width: 150px;
  }
  .uk-width-medium\@s {
    width: 300px;
  }
  .uk-width-large\@s {
    width: 450px;
  }
  .uk-width-xlarge\@s {
    width: 600px;
  }
  .uk-width-2xlarge\@s {
    width: 750px;
  }
  /* Auto */
  .uk-width-auto\@s {
    width: auto;
  }
  /* Expand */
  .uk-width-expand\@s {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-width-1-1\@s,
  .uk-width-1-2\@s,
  .uk-width-1-3\@s,
  .uk-width-2-3\@s,
  .uk-width-1-4\@s,
  .uk-width-3-4\@s,
  .uk-width-1-5\@s,
  .uk-width-2-5\@s,
  .uk-width-3-5\@s,
  .uk-width-4-5\@s,
  .uk-width-1-6\@s,
  .uk-width-5-6\@s,
  .uk-width-small\@s,
  .uk-width-medium\@s,
  .uk-width-large\@s,
  .uk-width-xlarge\@s,
  .uk-width-2xlarge\@s,
  .uk-width-auto\@s {
    flex: initial;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  /* Whole */
  .uk-width-1-1\@m {
    width: 100%;
  }
  /* Halves */
  .uk-width-1-2\@m {
    width: 50%;
  }
  /* Thirds */
  .uk-width-1-3\@m {
    width: calc(100% / 3);
  }
  .uk-width-2-3\@m {
    width: calc(200% / 3);
  }
  /* Quarters */
  .uk-width-1-4\@m {
    width: 25%;
  }
  .uk-width-3-4\@m {
    width: 75%;
  }
  /* Fifths */
  .uk-width-1-5\@m {
    width: 20%;
  }
  .uk-width-2-5\@m {
    width: 40%;
  }
  .uk-width-3-5\@m {
    width: 60%;
  }
  .uk-width-4-5\@m {
    width: 80%;
  }
  /* Sixths */
  .uk-width-1-6\@m {
    width: calc(100% / 6);
  }
  .uk-width-5-6\@m {
    width: calc(500% / 6);
  }
  /* Pixel */
  .uk-width-small\@m {
    width: 150px;
  }
  .uk-width-medium\@m {
    width: 300px;
  }
  .uk-width-large\@m {
    width: 450px;
  }
  .uk-width-xlarge\@m {
    width: 600px;
  }
  .uk-width-2xlarge\@m {
    width: 750px;
  }
  /* Auto */
  .uk-width-auto\@m {
    width: auto;
  }
  /* Expand */
  .uk-width-expand\@m {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-width-1-1\@m,
  .uk-width-1-2\@m,
  .uk-width-1-3\@m,
  .uk-width-2-3\@m,
  .uk-width-1-4\@m,
  .uk-width-3-4\@m,
  .uk-width-1-5\@m,
  .uk-width-2-5\@m,
  .uk-width-3-5\@m,
  .uk-width-4-5\@m,
  .uk-width-1-6\@m,
  .uk-width-5-6\@m,
  .uk-width-small\@m,
  .uk-width-medium\@m,
  .uk-width-large\@m,
  .uk-width-xlarge\@m,
  .uk-width-2xlarge\@m,
  .uk-width-auto\@m {
    flex: initial;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Whole */
  .uk-width-1-1\@l {
    width: 100%;
  }
  /* Halves */
  .uk-width-1-2\@l {
    width: 50%;
  }
  /* Thirds */
  .uk-width-1-3\@l {
    width: calc(100% / 3);
  }
  .uk-width-2-3\@l {
    width: calc(200% / 3);
  }
  /* Quarters */
  .uk-width-1-4\@l {
    width: 25%;
  }
  .uk-width-3-4\@l {
    width: 75%;
  }
  /* Fifths */
  .uk-width-1-5\@l {
    width: 20%;
  }
  .uk-width-2-5\@l {
    width: 40%;
  }
  .uk-width-3-5\@l {
    width: 60%;
  }
  .uk-width-4-5\@l {
    width: 80%;
  }
  /* Sixths */
  .uk-width-1-6\@l {
    width: calc(100% / 6);
  }
  .uk-width-5-6\@l {
    width: calc(500% / 6);
  }
  /* Pixel */
  .uk-width-small\@l {
    width: 150px;
  }
  .uk-width-medium\@l {
    width: 300px;
  }
  .uk-width-large\@l {
    width: 450px;
  }
  .uk-width-xlarge\@l {
    width: 600px;
  }
  .uk-width-2xlarge\@l {
    width: 750px;
  }
  /* Auto */
  .uk-width-auto\@l {
    width: auto;
  }
  /* Expand */
  .uk-width-expand\@l {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-width-1-1\@l,
  .uk-width-1-2\@l,
  .uk-width-1-3\@l,
  .uk-width-2-3\@l,
  .uk-width-1-4\@l,
  .uk-width-3-4\@l,
  .uk-width-1-5\@l,
  .uk-width-2-5\@l,
  .uk-width-3-5\@l,
  .uk-width-4-5\@l,
  .uk-width-1-6\@l,
  .uk-width-5-6\@l,
  .uk-width-small\@l,
  .uk-width-medium\@l,
  .uk-width-large\@l,
  .uk-width-xlarge\@l,
  .uk-width-2xlarge\@l,
  .uk-width-auto\@l {
    flex: initial;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  /* Whole */
  .uk-width-1-1\@xl {
    width: 100%;
  }
  /* Halves */
  .uk-width-1-2\@xl {
    width: 50%;
  }
  /* Thirds */
  .uk-width-1-3\@xl {
    width: calc(100% / 3);
  }
  .uk-width-2-3\@xl {
    width: calc(200% / 3);
  }
  /* Quarters */
  .uk-width-1-4\@xl {
    width: 25%;
  }
  .uk-width-3-4\@xl {
    width: 75%;
  }
  /* Fifths */
  .uk-width-1-5\@xl {
    width: 20%;
  }
  .uk-width-2-5\@xl {
    width: 40%;
  }
  .uk-width-3-5\@xl {
    width: 60%;
  }
  .uk-width-4-5\@xl {
    width: 80%;
  }
  /* Sixths */
  .uk-width-1-6\@xl {
    width: calc(100% / 6);
  }
  .uk-width-5-6\@xl {
    width: calc(500% / 6);
  }
  /* Pixel */
  .uk-width-small\@xl {
    width: 150px;
  }
  .uk-width-medium\@xl {
    width: 300px;
  }
  .uk-width-large\@xl {
    width: 450px;
  }
  .uk-width-xlarge\@xl {
    width: 600px;
  }
  .uk-width-2xlarge\@xl {
    width: 750px;
  }
  /* Auto */
  .uk-width-auto\@xl {
    width: auto;
  }
  /* Expand */
  .uk-width-expand\@xl {
    flex: 1;
    min-width: 1px;
  }
  /* Reset expand */
  .uk-width-1-1\@xl,
  .uk-width-1-2\@xl,
  .uk-width-1-3\@xl,
  .uk-width-2-3\@xl,
  .uk-width-1-4\@xl,
  .uk-width-3-4\@xl,
  .uk-width-1-5\@xl,
  .uk-width-2-5\@xl,
  .uk-width-3-5\@xl,
  .uk-width-4-5\@xl,
  .uk-width-1-6\@xl,
  .uk-width-5-6\@xl,
  .uk-width-small\@xl,
  .uk-width-medium\@xl,
  .uk-width-large\@xl,
  .uk-width-xlarge\@xl,
  .uk-width-2xlarge\@xl,
  .uk-width-auto\@xl {
    flex: initial;
  }
}
/* Intrinsic Widths
 ========================================================================== */
.uk-width-max-content {
  width: -moz-max-content;
  width: max-content;
}

.uk-width-min-content {
  width: -moz-min-content;
  width: min-content;
}

/* ========================================================================
   Component: Height
 ========================================================================== */
[class*=uk-height] {
  box-sizing: border-box;
}

/*
 * Only works if parent element has a height set
 */
.uk-height-1-1 {
  height: 100%;
}

/*
 * Useful to create image teasers
 */
.uk-height-viewport {
  min-height: 100vh;
}

.uk-height-viewport-2 {
  min-height: 200vh;
}

.uk-height-viewport-3 {
  min-height: 300vh;
}

.uk-height-viewport-4 {
  min-height: 400vh;
}

/*
 * Pixel
 * Useful for `overflow: auto`
 */
.uk-height-small {
  height: 150px;
}

.uk-height-medium {
  height: 300px;
}

.uk-height-large {
  height: 450px;
}

.uk-height-max-small {
  max-height: 150px;
}

.uk-height-max-medium {
  max-height: 300px;
}

.uk-height-max-large {
  max-height: 450px;
}

/* ========================================================================
   Component: Text
 ========================================================================== */
/* Style modifiers
 ========================================================================== */
.uk-text-lead {
  font-size: 1.5rem;
  line-height: 1.5;
  color: #333;
}

.uk-text-meta {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #999;
}
.uk-text-meta > a {
  color: #999;
}
.uk-text-meta > a:hover {
  color: #666;
  text-decoration: none;
}

/* Size modifiers
 ========================================================================== */
.uk-text-small {
  font-size: 0.875rem;
  line-height: 1.5;
}

.uk-text-large {
  font-size: 1.5rem;
  line-height: 1.5;
}

.uk-text-default {
  font-size: 16px;
  line-height: 1.5;
}

/* Weight modifier
 ========================================================================== */
.uk-text-light {
  font-weight: 300;
}

.uk-text-normal {
  font-weight: 400;
}

.uk-text-bold {
  font-weight: 700;
}

.uk-text-lighter {
  font-weight: lighter;
}

.uk-text-bolder {
  font-weight: bolder;
}

/* Style modifier
 ========================================================================== */
.uk-text-italic {
  font-style: italic;
}

/* Transform modifier
 ========================================================================== */
.uk-text-capitalize {
  text-transform: capitalize !important;
}

.uk-text-uppercase {
  text-transform: uppercase !important;
}

.uk-text-lowercase {
  text-transform: lowercase !important;
}

/* Decoration modifier
 ========================================================================== */
.uk-text-decoration-none {
  text-decoration: none !important;
}

/* Color modifiers
 ========================================================================== */
.uk-text-muted {
  color: #999 !important;
}

.uk-text-emphasis {
  color: #333 !important;
}

.uk-text-primary {
  color: #1e87f0 !important;
}

.uk-text-secondary {
  color: #222 !important;
}

.uk-text-success {
  color: #32d296 !important;
}

.uk-text-warning {
  color: #faa05a !important;
}

.uk-text-danger {
  color: #f0506e !important;
}

/* Background modifier
 ========================================================================== */
/*
 * 1. The background clips to the foreground text. Works in all browsers.
 * 2. Default color is set to transparent.
 * 3. Container fits the text
 * 4. Style
 */
.uk-text-background {
  /* 1 */
  -webkit-background-clip: text;
  /* 2 */
  color: transparent !important;
  /* 3 */
  display: inline-block;
  /* 4 */
  background-color: #1e87f0;
  background-image: linear-gradient(90deg, #1e87f0 0%, #411ef0 100%);
}

/* Alignment modifiers
 ========================================================================== */
.uk-text-left {
  text-align: left !important;
}

.uk-text-right {
  text-align: right !important;
}

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

.uk-text-justify {
  text-align: justify !important;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-text-left\@s {
    text-align: left !important;
  }
  .uk-text-right\@s {
    text-align: right !important;
  }
  .uk-text-center\@s {
    text-align: center !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-text-left\@m {
    text-align: left !important;
  }
  .uk-text-right\@m {
    text-align: right !important;
  }
  .uk-text-center\@m {
    text-align: center !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-text-left\@l {
    text-align: left !important;
  }
  .uk-text-right\@l {
    text-align: right !important;
  }
  .uk-text-center\@l {
    text-align: center !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-text-left\@xl {
    text-align: left !important;
  }
  .uk-text-right\@xl {
    text-align: right !important;
  }
  .uk-text-center\@xl {
    text-align: center !important;
  }
}
/*
 * Vertical
 */
.uk-text-top {
  vertical-align: top !important;
}

.uk-text-middle {
  vertical-align: middle !important;
}

.uk-text-bottom {
  vertical-align: bottom !important;
}

.uk-text-baseline {
  vertical-align: baseline !important;
}

/* Wrap modifiers
 ========================================================================== */
/*
 * Prevent text from wrapping onto multiple lines
 */
.uk-text-nowrap {
  white-space: nowrap;
}

/*
 * 1. Make sure a max-width is set after which truncation can occur
 * 2. Prevent text from wrapping onto multiple lines, and truncate with an ellipsis
 * 3. Fix for table cells
 */
.uk-text-truncate {
  /* 1 */
  max-width: 100%;
  /* 2 */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 2 */
th.uk-text-truncate,
td.uk-text-truncate {
  max-width: 0;
}

/*
 * Wrap long words onto the next line and break them if they are too long to fit.
 * 1. Make it work with table cells in all browsers.
 * Note: Not using `hyphens: auto` because it hyphenates text even if not needed.
 */
.uk-text-break {
  overflow-wrap: break-word;
}

/* 1 */
th.uk-text-break,
td.uk-text-break {
  word-break: break-word;
}

/* Stroke modifiers
 ========================================================================== */
.uk-text-stroke {
  -webkit-text-stroke: calc(1.4px + 0.002em);
  -webkit-text-fill-color: transparent;
}

/* ========================================================================
   Component: Column
 ========================================================================== */
[class*=uk-column-] {
  -moz-column-gap: 30px;
       column-gap: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  [class*=uk-column-] {
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
}
/*
 * Fix image 1px line wrapping into the next column in Chrome
 */
[class*=uk-column-] img {
  transform: translate3d(0, 0, 0);
}

/* Divider
 ========================================================================== */
/*
 * 1. Double the column gap
 */
.uk-column-divider {
  -moz-column-rule: 1px solid #e5e5e5;
       column-rule: 1px solid #e5e5e5;
  /* 1 */
  -moz-column-gap: 60px;
       column-gap: 60px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-column-divider {
    -moz-column-gap: 80px;
         column-gap: 80px;
  }
}
/* Width modifiers
 ========================================================================== */
.uk-column-1-2 {
  -moz-column-count: 2;
       column-count: 2;
}

.uk-column-1-3 {
  -moz-column-count: 3;
       column-count: 3;
}

.uk-column-1-4 {
  -moz-column-count: 4;
       column-count: 4;
}

.uk-column-1-5 {
  -moz-column-count: 5;
       column-count: 5;
}

.uk-column-1-6 {
  -moz-column-count: 6;
       column-count: 6;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-column-1-2\@s {
    -moz-column-count: 2;
         column-count: 2;
  }
  .uk-column-1-3\@s {
    -moz-column-count: 3;
         column-count: 3;
  }
  .uk-column-1-4\@s {
    -moz-column-count: 4;
         column-count: 4;
  }
  .uk-column-1-5\@s {
    -moz-column-count: 5;
         column-count: 5;
  }
  .uk-column-1-6\@s {
    -moz-column-count: 6;
         column-count: 6;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-column-1-2\@m {
    -moz-column-count: 2;
         column-count: 2;
  }
  .uk-column-1-3\@m {
    -moz-column-count: 3;
         column-count: 3;
  }
  .uk-column-1-4\@m {
    -moz-column-count: 4;
         column-count: 4;
  }
  .uk-column-1-5\@m {
    -moz-column-count: 5;
         column-count: 5;
  }
  .uk-column-1-6\@m {
    -moz-column-count: 6;
         column-count: 6;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-column-1-2\@l {
    -moz-column-count: 2;
         column-count: 2;
  }
  .uk-column-1-3\@l {
    -moz-column-count: 3;
         column-count: 3;
  }
  .uk-column-1-4\@l {
    -moz-column-count: 4;
         column-count: 4;
  }
  .uk-column-1-5\@l {
    -moz-column-count: 5;
         column-count: 5;
  }
  .uk-column-1-6\@l {
    -moz-column-count: 6;
         column-count: 6;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-column-1-2\@xl {
    -moz-column-count: 2;
         column-count: 2;
  }
  .uk-column-1-3\@xl {
    -moz-column-count: 3;
         column-count: 3;
  }
  .uk-column-1-4\@xl {
    -moz-column-count: 4;
         column-count: 4;
  }
  .uk-column-1-5\@xl {
    -moz-column-count: 5;
         column-count: 5;
  }
  .uk-column-1-6\@xl {
    -moz-column-count: 6;
         column-count: 6;
  }
}
/* Make element span across all columns
 * Does not work in Firefox yet
 ========================================================================== */
.uk-column-span {
  -moz-column-span: all;
       column-span: all;
}

/* ========================================================================
   Component: Cover
 ========================================================================== */
/*
 * Works with iframes and embedded content
 * 1. Use attribute to apply transform instantly. Needed if transform is transitioned.
 * 2. Reset responsiveness for embedded content
 * 3. Center object
 * Note: Percent values on the `top` property only works if this element
 *       is absolute positioned or if the container has a height
 */
/* 1 */
[uk-cover]:where(canvas, iframe, svg),
[data-uk-cover]:where(canvas, iframe, svg) {
  /* 2 */
  max-width: none;
  /* 3 */
  position: absolute;
  left: 50%;
  top: 50%;
  --uk-position-translate-x: -50%;
  --uk-position-translate-y: -50%;
  transform: translate(var(--uk-position-translate-x), var(--uk-position-translate-y));
}

iframe[uk-cover],
iframe[data-uk-cover] {
  pointer-events: none;
}

[uk-cover]:where(img, video),
[data-uk-cover]:where(img, video) {
  /* 3 */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

/* Container
 ========================================================================== */
/*
 * 1. Parent container which clips resized object
 * 2. Needed if the child is positioned absolute. See note above
 */
.uk-cover-container {
  /* 1 */
  overflow: hidden;
  /* 2 */
  position: relative;
}

/* ========================================================================
   Component: Background
 ========================================================================== */
/* Color
 ========================================================================== */
.uk-background-default {
  background-color: #fff;
}

.uk-background-muted {
  background-color: #f8f8f8;
}

.uk-background-primary {
  background-color: #1e87f0;
}

.uk-background-secondary {
  background-color: #222;
}

/* Size
 ========================================================================== */
.uk-background-cover,
.uk-background-contain,
.uk-background-width-1-1,
.uk-background-height-1-1 {
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

.uk-background-cover {
  background-size: cover;
}

.uk-background-contain {
  background-size: contain;
}

.uk-background-width-1-1 {
  background-size: 100%;
}

.uk-background-height-1-1 {
  background-size: auto 100%;
}

/* Position
 ========================================================================== */
.uk-background-top-left {
  background-position: 0 0;
}

.uk-background-top-center {
  background-position: 50% 0;
}

.uk-background-top-right {
  background-position: 100% 0;
}

.uk-background-center-left {
  background-position: 0 50%;
}

.uk-background-center-center {
  background-position: 50% 50%;
}

.uk-background-center-right {
  background-position: 100% 50%;
}

.uk-background-bottom-left {
  background-position: 0 100%;
}

.uk-background-bottom-center {
  background-position: 50% 100%;
}

.uk-background-bottom-right {
  background-position: 100% 100%;
}

/* Repeat
 ========================================================================== */
.uk-background-norepeat {
  background-repeat: no-repeat;
}

/* Attachment
 ========================================================================== */
.uk-background-fixed {
  background-attachment: fixed;
}

/*
 * Exclude touch devices because `fixed` doesn't work on iOS and Android
 */
@media (pointer: coarse) {
  .uk-background-fixed {
    background-attachment: scroll;
  }
}
/* Image
 ========================================================================== */
/* Phone portrait and smaller */
@media (max-width: 319px) {
  .uk-background-image\@s {
    background-image: none !important;
  }
}
/* Phone landscape and smaller */
@media (max-width: 767px) {
  .uk-background-image\@m {
    background-image: none !important;
  }
}
/* Tablet landscape and smaller */
@media (max-width: 1199px) {
  .uk-background-image\@l {
    background-image: none !important;
  }
}
/* Desktop and smaller */
@media (max-width: 1599px) {
  .uk-background-image\@xl {
    background-image: none !important;
  }
}
/* Blend modes
 ========================================================================== */
.uk-background-blend-multiply {
  background-blend-mode: multiply;
}

.uk-background-blend-screen {
  background-blend-mode: screen;
}

.uk-background-blend-overlay {
  background-blend-mode: overlay;
}

.uk-background-blend-darken {
  background-blend-mode: darken;
}

.uk-background-blend-lighten {
  background-blend-mode: lighten;
}

.uk-background-blend-color-dodge {
  background-blend-mode: color-dodge;
}

.uk-background-blend-color-burn {
  background-blend-mode: color-burn;
}

.uk-background-blend-hard-light {
  background-blend-mode: hard-light;
}

.uk-background-blend-soft-light {
  background-blend-mode: soft-light;
}

.uk-background-blend-difference {
  background-blend-mode: difference;
}

.uk-background-blend-exclusion {
  background-blend-mode: exclusion;
}

.uk-background-blend-hue {
  background-blend-mode: hue;
}

.uk-background-blend-saturation {
  background-blend-mode: saturation;
}

.uk-background-blend-color {
  background-blend-mode: color;
}

.uk-background-blend-luminosity {
  background-blend-mode: luminosity;
}

/* ========================================================================
   Component: Align
 ========================================================================== */
/*
 * Default
 */
[class*=uk-align] {
  display: block;
  margin-bottom: 30px;
}

* + [class*=uk-align] {
  margin-top: 30px;
}

/*
 * Center
 */
.uk-align-center {
  margin-left: auto;
  margin-right: auto;
}

/*
 * Left/Right
 */
.uk-align-left {
  margin-top: 0;
  margin-right: 30px;
  float: left;
}

.uk-align-right {
  margin-top: 0;
  margin-left: 30px;
  float: right;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-align-left\@s {
    margin-top: 0;
    margin-right: 30px;
    float: left;
  }
  .uk-align-right\@s {
    margin-top: 0;
    margin-left: 30px;
    float: right;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-align-left\@m {
    margin-top: 0;
    margin-right: 30px;
    float: left;
  }
  .uk-align-right\@m {
    margin-top: 0;
    margin-left: 30px;
    float: right;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-align-left\@l {
    margin-top: 0;
    float: left;
  }
  .uk-align-right\@l {
    margin-top: 0;
    float: right;
  }
  .uk-align-left,
  .uk-align-left\@s,
  .uk-align-left\@m,
  .uk-align-left\@l {
    margin-right: 40px;
  }
  .uk-align-right,
  .uk-align-right\@s,
  .uk-align-right\@m,
  .uk-align-right\@l {
    margin-left: 40px;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-align-left\@xl {
    margin-top: 0;
    margin-right: 40px;
    float: left;
  }
  .uk-align-right\@xl {
    margin-top: 0;
    margin-left: 40px;
    float: right;
  }
}
/* ========================================================================
   Component: SVG
 ========================================================================== */
/*
 * 1. Fill all SVG elements with the current text color if no `fill` attribute is set
 * 2. Set the fill and stroke color of all SVG elements to the current text color
 */
/* 1 */
.uk-svg,
.uk-svg:not(.uk-preserve) [fill*="#"]:not(.uk-preserve) {
  fill: currentcolor;
}

.uk-svg:not(.uk-preserve) [stroke*="#"]:not(.uk-preserve) {
  stroke: currentcolor;
}

/*
 * Fix Firefox blurry SVG rendering: https://bugzilla.mozilla.org/show_bug.cgi?id=1046835
 */
.uk-svg {
  transform: translate(0, 0);
}

/* ========================================================================
   Component: Utility
 ========================================================================== */
/* Panel
 ========================================================================== */
.uk-panel {
  display: flow-root;
  position: relative;
  box-sizing: border-box;
}

/*
 * Remove margin from the last-child
 */
.uk-panel > :last-child {
  margin-bottom: 0;
}

/*
 * Scrollable
 */
.uk-panel-scrollable {
  height: 170px;
  padding: 10px;
  border: 1px solid #e5e5e5;
  overflow: auto;
  resize: both;
}

/* Clearfix
 ========================================================================== */
/*
 * 1. `table-cell` is used with `::before` because `table` creates a 1px gap when it becomes a flex item, only in Webkit
 * 2. `table` is used again with `::after` because `clear` only works with block elements.
 * Note: `display: block` with `overflow: hidden` is currently not working in the latest Safari
 */
/* 1 */
.uk-clearfix::before {
  content: "";
  display: table-cell;
}

/* 2 */
.uk-clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* Float
 ========================================================================== */
/*
 * 1. Prevent content overflow
 */
.uk-float-left {
  float: left;
}

.uk-float-right {
  float: right;
}

/* 1 */
[class*=uk-float-] {
  max-width: 100%;
}

/* Overflow
 ========================================================================== */
.uk-overflow-hidden {
  overflow: hidden;
}

/*
 * Enable scrollbars if content is clipped
 */
.uk-overflow-auto {
  overflow: auto;
}

.uk-overflow-auto > :last-child {
  margin-bottom: 0;
}

/* Box Sizing
 ========================================================================== */
.uk-box-sizing-content {
  box-sizing: content-box;
}

.uk-box-sizing-border {
  box-sizing: border-box;
}

/* Resize
 ========================================================================== */
.uk-resize {
  resize: both;
}

.uk-resize-horizontal {
  resize: horizontal;
}

.uk-resize-vertical {
  resize: vertical;
}

/* Display
 ========================================================================== */
.uk-display-block {
  display: block !important;
}

.uk-display-inline {
  display: inline !important;
}

.uk-display-inline-block {
  display: inline-block !important;
}

/* Inline
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Behave like most inline-block elements
 * 5. Force new layer without creating a new stacking context
 *    to fix 1px glitch when combined with overlays and transitions in Webkit
 * 6. Clip child elements
 */
[class*=uk-inline] {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  vertical-align: middle;
  /* 5 */
  -webkit-backface-visibility: hidden;
}

.uk-inline-clip {
  /* 6 */
  overflow: hidden;
}

/* Responsive objects
 ========================================================================== */
/*
 * Preserve original dimensions
 * Because `img, `video`, `canvas` and  `audio` are already responsive by default, see Base component
 */
.uk-preserve-width,
.uk-preserve-width canvas,
.uk-preserve-width img,
.uk-preserve-width svg,
.uk-preserve-width video {
  max-width: none;
}

/*
 * Responsiveness
 * Corrects `max-width` and `max-height` behavior if padding and border are used
 */
.uk-responsive-width,
.uk-responsive-height {
  box-sizing: border-box;
}

/*
 * 1. Set a maximum width. `important` needed to override `uk-preserve-width img`
 * 2. Auto scale the height. Only needed if `height` attribute is present
 */
.uk-responsive-width {
  /* 1 */
  max-width: 100% !important;
  /* 2 */
  height: auto;
}

/*
 * 1. Set a maximum height. Only works if the parent element has a fixed height
 * 2. Auto scale the width. Only needed if `width` attribute is present
 * 3. Reset max-width, which `img, `video`, `canvas` and  `audio` already have by default
 */
.uk-responsive-height {
  /* 1 */
  max-height: 100%;
  /* 2 */
  width: auto;
  /* 3 */
  max-width: none;
}

/*
 * Fix initial iframe width. Without the viewport is expanded on iOS devices
 */
[uk-responsive],
[data-uk-responsive] {
  max-width: 100%;
}

/* Object
 ========================================================================== */
.uk-object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.uk-object-contain {
  -o-object-fit: contain;
     object-fit: contain;
}

.uk-object-fill {
  -o-object-fit: fill;
     object-fit: fill;
}

.uk-object-none {
  -o-object-fit: none;
     object-fit: none;
}

.uk-object-scale-down {
  -o-object-fit: scale-down;
     object-fit: scale-down;
}

/*
 * Position
 */
.uk-object-top-left {
  -o-object-position: 0 0;
     object-position: 0 0;
}

.uk-object-top-center {
  -o-object-position: 50% 0;
     object-position: 50% 0;
}

.uk-object-top-right {
  -o-object-position: 100% 0;
     object-position: 100% 0;
}

.uk-object-center-left {
  -o-object-position: 0 50%;
     object-position: 0 50%;
}

.uk-object-center-center {
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}

.uk-object-center-right {
  -o-object-position: 100% 50%;
     object-position: 100% 50%;
}

.uk-object-bottom-left {
  -o-object-position: 0 100%;
     object-position: 0 100%;
}

.uk-object-bottom-center {
  -o-object-position: 50% 100%;
     object-position: 50% 100%;
}

.uk-object-bottom-right {
  -o-object-position: 100% 100%;
     object-position: 100% 100%;
}

/* Border
 ========================================================================== */
.uk-border-circle {
  border-radius: 50%;
}

.uk-border-pill {
  border-radius: 500px;
}

.uk-border-rounded {
  border-radius: 5px;
}

/*
 * Fix `overflow: hidden` to be ignored with border-radius and CSS transforms in Webkit
 */
.uk-inline-clip[class*=uk-border-] {
  -webkit-transform: translateZ(0);
}

/* Box-shadow
 ========================================================================== */
.uk-box-shadow-small {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-medium {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-large {
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

.uk-box-shadow-xlarge {
  box-shadow: 0 28px 50px rgba(0, 0, 0, 0.16);
}

/*
 * Hover
 */
[class*=uk-box-shadow-hover] {
  transition: box-shadow 0.1s ease-in-out;
}

.uk-box-shadow-hover-small:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-hover-medium:hover {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-hover-large:hover {
  box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

.uk-box-shadow-hover-xlarge:hover {
  box-shadow: 0 28px 50px rgba(0, 0, 0, 0.16);
}

/* Box-shadow bottom
 ========================================================================== */
/*
 * 1. Set position.
 * 2. Set style
 * 3. Fix shadow being clipped in Safari if container is animated
 */
@supports (filter: blur(0)) {
  .uk-box-shadow-bottom {
    display: inline-block;
    position: relative;
    z-index: 0;
    max-width: 100%;
    vertical-align: middle;
  }
  .uk-box-shadow-bottom::after {
    content: "";
    /* 1 */
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    z-index: -1;
    /* 2 */
    height: 30px;
    border-radius: 100%;
    background: #444;
    filter: blur(20px);
    /* 3 */
    will-change: filter;
  }
}
/* Drop cap
 ========================================================================== */
/*
 * 1. Firefox doesn't apply `::first-letter` if the first letter is inside child elements
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=214004
 * 2. In Firefox, a floating `::first-letter` doesn't have a line box and there for no `line-height`
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=317933
 */
.uk-dropcap::first-letter,
.uk-dropcap > p:first-of-type::first-letter {
  display: block;
  margin-right: 10px;
  float: left;
  font-size: 4.5em;
  line-height: 1;
  margin-bottom: -2px;
}

/* 2 */
@-moz-document url-prefix() {
  .uk-dropcap::first-letter,
  .uk-dropcap > p:first-of-type::first-letter {
    margin-top: 1.1%;
  }
}
/* Logo
 ========================================================================== */
/*
 * 1. Style
 * 2. Required for `a`
 * 3. Behave like image but can be overridden through flex utility classes
 */
.uk-logo {
  /* 1 */
  font-size: 1.5rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #333;
  /* 2 */
  text-decoration: none;
}

/* 3 */
:where(.uk-logo) {
  display: inline-block;
  vertical-align: middle;
}

/* Hover */
.uk-logo:hover {
  color: #333;
  /* 1 */
  text-decoration: none;
}

.uk-logo :where(img, svg, video) {
  display: block;
}

.uk-logo-inverse {
  display: none;
}

/* Disabled State
 ========================================================================== */
.uk-disabled {
  pointer-events: none;
}

/* Drag State
 ========================================================================== */
/*
 * 1. Needed if moving over elements with have their own cursor on hover, e.g. links or buttons
 * 2. Fix dragging over iframes
 */
.uk-drag,
.uk-drag * {
  cursor: move;
}

/* 2 */
.uk-drag iframe {
  pointer-events: none;
}

/* Dragover State
 ========================================================================== */
/*
 * Create a box-shadow when dragging a file over the upload area
 */
.uk-dragover {
  box-shadow: 0 0 20px rgba(100, 100, 100, 0.3);
}

/* Blend modes
 ========================================================================== */
.uk-blend-multiply {
  mix-blend-mode: multiply;
}

.uk-blend-screen {
  mix-blend-mode: screen;
}

.uk-blend-overlay {
  mix-blend-mode: overlay;
}

.uk-blend-darken {
  mix-blend-mode: darken;
}

.uk-blend-lighten {
  mix-blend-mode: lighten;
}

.uk-blend-color-dodge {
  mix-blend-mode: color-dodge;
}

.uk-blend-color-burn {
  mix-blend-mode: color-burn;
}

.uk-blend-hard-light {
  mix-blend-mode: hard-light;
}

.uk-blend-soft-light {
  mix-blend-mode: soft-light;
}

.uk-blend-difference {
  mix-blend-mode: difference;
}

.uk-blend-exclusion {
  mix-blend-mode: exclusion;
}

.uk-blend-hue {
  mix-blend-mode: hue;
}

.uk-blend-saturation {
  mix-blend-mode: saturation;
}

.uk-blend-color {
  mix-blend-mode: color;
}

.uk-blend-luminosity {
  mix-blend-mode: luminosity;
}

/* Transform
========================================================================== */
.uk-transform-center {
  transform: translate(-50%, -50%);
}

/* Transform Origin
========================================================================== */
.uk-transform-origin-top-left {
  transform-origin: 0 0;
}

.uk-transform-origin-top-center {
  transform-origin: 50% 0;
}

.uk-transform-origin-top-right {
  transform-origin: 100% 0;
}

.uk-transform-origin-center-left {
  transform-origin: 0 50%;
}

.uk-transform-origin-center-right {
  transform-origin: 100% 50%;
}

.uk-transform-origin-bottom-left {
  transform-origin: 0 100%;
}

.uk-transform-origin-bottom-center {
  transform-origin: 50% 100%;
}

.uk-transform-origin-bottom-right {
  transform-origin: 100% 100%;
}

/* ========================================================================
   Component: Flex
 ========================================================================== */
.uk-flex {
  display: flex;
}

.uk-flex-inline {
  display: inline-flex;
}

/* Alignment
 ========================================================================== */
/*
 * Align items along the main axis of the current line of the flex container
 * Row: Horizontal
 */
.uk-flex-left {
  justify-content: flex-start;
}

.uk-flex-center {
  justify-content: center;
}

.uk-flex-right {
  justify-content: flex-end;
}

.uk-flex-between {
  justify-content: space-between;
}

.uk-flex-around {
  justify-content: space-around;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-flex-left\@s {
    justify-content: flex-start;
  }
  .uk-flex-center\@s {
    justify-content: center;
  }
  .uk-flex-right\@s {
    justify-content: flex-end;
  }
  .uk-flex-between\@s {
    justify-content: space-between;
  }
  .uk-flex-around\@s {
    justify-content: space-around;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-flex-left\@m {
    justify-content: flex-start;
  }
  .uk-flex-center\@m {
    justify-content: center;
  }
  .uk-flex-right\@m {
    justify-content: flex-end;
  }
  .uk-flex-between\@m {
    justify-content: space-between;
  }
  .uk-flex-around\@m {
    justify-content: space-around;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-flex-left\@l {
    justify-content: flex-start;
  }
  .uk-flex-center\@l {
    justify-content: center;
  }
  .uk-flex-right\@l {
    justify-content: flex-end;
  }
  .uk-flex-between\@l {
    justify-content: space-between;
  }
  .uk-flex-around\@l {
    justify-content: space-around;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-flex-left\@xl {
    justify-content: flex-start;
  }
  .uk-flex-center\@xl {
    justify-content: center;
  }
  .uk-flex-right\@xl {
    justify-content: flex-end;
  }
  .uk-flex-between\@xl {
    justify-content: space-between;
  }
  .uk-flex-around\@xl {
    justify-content: space-around;
  }
}
/*
 * Align items in the cross axis of the current line of the flex container
 * Row: Vertical
 */
.uk-flex-stretch {
  align-items: stretch;
}

.uk-flex-top {
  align-items: flex-start;
}

.uk-flex-middle {
  align-items: center;
}

.uk-flex-bottom {
  align-items: flex-end;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-flex-stretch\@s {
    align-items: stretch;
  }
  .uk-flex-top\@s {
    align-items: flex-start;
  }
  .uk-flex-middle\@s {
    align-items: center;
  }
  .uk-flex-bottom\@s {
    align-items: flex-end;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-flex-stretch\@m {
    align-items: stretch;
  }
  .uk-flex-top\@m {
    align-items: flex-start;
  }
  .uk-flex-middle\@m {
    align-items: center;
  }
  .uk-flex-bottom\@m {
    align-items: flex-end;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-flex-stretch\@l {
    align-items: stretch;
  }
  .uk-flex-top\@l {
    align-items: flex-start;
  }
  .uk-flex-middle\@l {
    align-items: center;
  }
  .uk-flex-bottom\@l {
    align-items: flex-end;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-flex-stretch\@xl {
    align-items: stretch;
  }
  .uk-flex-top\@xl {
    align-items: flex-start;
  }
  .uk-flex-middle\@xl {
    align-items: center;
  }
  .uk-flex-bottom\@xl {
    align-items: flex-end;
  }
}
/* Direction
 ========================================================================== */
.uk-flex-row {
  flex-direction: row;
}

.uk-flex-row-reverse {
  flex-direction: row-reverse;
}

.uk-flex-column {
  flex-direction: column;
}

.uk-flex-column-reverse {
  flex-direction: column-reverse;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-flex-row\@s {
    flex-direction: row;
  }
  .uk-flex-column\@s {
    flex-direction: column;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-flex-row\@m {
    flex-direction: row;
  }
  .uk-flex-column\@m {
    flex-direction: column;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-flex-row\@l {
    flex-direction: row;
  }
  .uk-flex-column\@l {
    flex-direction: column;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-flex-row\@xl {
    flex-direction: row;
  }
  .uk-flex-column\@xl {
    flex-direction: column;
  }
}
/* Wrap
 ========================================================================== */
.uk-flex-nowrap {
  flex-wrap: nowrap;
}

.uk-flex-wrap {
  flex-wrap: wrap;
}

.uk-flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}

/*
 * Aligns items within the flex container when there is extra space in the cross-axis
 * Only works if there is more than one line of flex items
 */
.uk-flex-wrap-stretch {
  align-content: stretch;
}

.uk-flex-wrap-top {
  align-content: flex-start;
}

.uk-flex-wrap-middle {
  align-content: center;
}

.uk-flex-wrap-bottom {
  align-content: flex-end;
}

.uk-flex-wrap-between {
  align-content: space-between;
}

.uk-flex-wrap-around {
  align-content: space-around;
}

/* Item ordering
 ========================================================================== */
/*
 * Default is 0
 */
.uk-flex-first {
  order: -1;
}

.uk-flex-last {
  order: 99;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-flex-first\@s {
    order: -1;
  }
  .uk-flex-last\@s {
    order: 99;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-flex-first\@m {
    order: -1;
  }
  .uk-flex-last\@m {
    order: 99;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-flex-first\@l {
    order: -1;
  }
  .uk-flex-last\@l {
    order: 99;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-flex-first\@xl {
    order: -1;
  }
  .uk-flex-last\@xl {
    order: 99;
  }
}
/* Item dimensions
 ========================================================================== */
/*
 * Initial: 0 1 auto
 * Content dimensions, but shrinks
 */
.uk-flex-initial {
  flex: initial;
}

/*
 * No Flex: 0 0 auto
 * Content dimensions
 */
.uk-flex-none {
  flex: none;
}

/*
 * Relative Flex: 1 1 auto
 * Space is allocated considering content
 */
.uk-flex-auto {
  flex: auto;
}

/*
 * Absolute Flex: 1 1 0%
 * Space is allocated solely based on flex
 */
.uk-flex-1 {
  flex: 1;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-flex-initial\@s {
    flex: initial;
  }
  .uk-flex-none\@s {
    flex: none;
  }
  .uk-flex-1\@s {
    flex: 1;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-flex-initial\@m {
    flex: initial;
  }
  .uk-flex-none\@m {
    flex: none;
  }
  .uk-flex-1\@m {
    flex: 1;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-flex-initial\@l {
    flex: initial;
  }
  .uk-flex-none\@l {
    flex: none;
  }
  .uk-flex-1\@l {
    flex: 1;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-flex-initial\@xl {
    flex: initial;
  }
  .uk-flex-none\@xl {
    flex: none;
  }
  .uk-flex-1\@xl {
    flex: 1;
  }
}
/* ========================================================================
   Component: Margin
 ========================================================================== */
/*
 * Default
 */
.uk-margin {
  margin-bottom: 20px;
}

* + .uk-margin {
  margin-top: 20px !important;
}

.uk-margin-top {
  margin-top: 20px !important;
}

.uk-margin-bottom {
  margin-bottom: 20px !important;
}

.uk-margin-left {
  margin-left: 20px !important;
}

.uk-margin-right {
  margin-right: 20px !important;
}

/* XSmall
 ========================================================================== */
.uk-margin-xsmall {
  margin-bottom: 5px;
}

* + .uk-margin-xsmall {
  margin-top: 5px !important;
}

.uk-margin-xsmall-top {
  margin-top: 5px !important;
}

.uk-margin-xsmall-bottom {
  margin-bottom: 5px !important;
}

.uk-margin-xsmall-left {
  margin-left: 5px !important;
}

.uk-margin-xsmall-right {
  margin-right: 5px !important;
}

/* Small
 ========================================================================== */
.uk-margin-small {
  margin-bottom: 10px;
}

* + .uk-margin-small {
  margin-top: 10px !important;
}

.uk-margin-small-top {
  margin-top: 10px !important;
}

.uk-margin-small-bottom {
  margin-bottom: 10px !important;
}

.uk-margin-small-left {
  margin-left: 10px !important;
}

.uk-margin-small-right {
  margin-right: 10px !important;
}

/* Medium
 ========================================================================== */
.uk-margin-medium {
  margin-bottom: 40px;
}

* + .uk-margin-medium {
  margin-top: 40px !important;
}

.uk-margin-medium-top {
  margin-top: 40px !important;
}

.uk-margin-medium-bottom {
  margin-bottom: 40px !important;
}

.uk-margin-medium-left {
  margin-left: 40px !important;
}

.uk-margin-medium-right {
  margin-right: 40px !important;
}

/* Large
 ========================================================================== */
.uk-margin-large {
  margin-bottom: 40px;
}

* + .uk-margin-large {
  margin-top: 40px !important;
}

.uk-margin-large-top {
  margin-top: 40px !important;
}

.uk-margin-large-bottom {
  margin-bottom: 40px !important;
}

.uk-margin-large-left {
  margin-left: 40px !important;
}

.uk-margin-large-right {
  margin-right: 40px !important;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-margin-large {
    margin-bottom: 70px;
  }
  * + .uk-margin-large {
    margin-top: 70px !important;
  }
  .uk-margin-large-top {
    margin-top: 70px !important;
  }
  .uk-margin-large-bottom {
    margin-bottom: 70px !important;
  }
  .uk-margin-large-left {
    margin-left: 70px !important;
  }
  .uk-margin-large-right {
    margin-right: 70px !important;
  }
}
/* XLarge
 ========================================================================== */
.uk-margin-xlarge {
  margin-bottom: 70px;
}

* + .uk-margin-xlarge {
  margin-top: 70px !important;
}

.uk-margin-xlarge-top {
  margin-top: 70px !important;
}

.uk-margin-xlarge-bottom {
  margin-bottom: 70px !important;
}

.uk-margin-xlarge-left {
  margin-left: 70px !important;
}

.uk-margin-xlarge-right {
  margin-right: 70px !important;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-margin-xlarge {
    margin-bottom: 140px;
  }
  * + .uk-margin-xlarge {
    margin-top: 140px !important;
  }
  .uk-margin-xlarge-top {
    margin-top: 140px !important;
  }
  .uk-margin-xlarge-bottom {
    margin-bottom: 140px !important;
  }
  .uk-margin-xlarge-left {
    margin-left: 140px !important;
  }
  .uk-margin-xlarge-right {
    margin-right: 140px !important;
  }
}
/* Auto
 ========================================================================== */
.uk-margin-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.uk-margin-auto-top {
  margin-top: auto !important;
}

.uk-margin-auto-bottom {
  margin-bottom: auto !important;
}

.uk-margin-auto-left {
  margin-left: auto !important;
}

.uk-margin-auto-right {
  margin-right: auto !important;
}

.uk-margin-auto-vertical {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-margin-auto\@s {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .uk-margin-auto-left\@s {
    margin-left: auto !important;
  }
  .uk-margin-auto-right\@s {
    margin-right: auto !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-margin-auto\@m {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .uk-margin-auto-left\@m {
    margin-left: auto !important;
  }
  .uk-margin-auto-right\@m {
    margin-right: auto !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-margin-auto\@l {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .uk-margin-auto-left\@l {
    margin-left: auto !important;
  }
  .uk-margin-auto-right\@l {
    margin-right: auto !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-margin-auto\@xl {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .uk-margin-auto-left\@xl {
    margin-left: auto !important;
  }
  .uk-margin-auto-right\@xl {
    margin-right: auto !important;
  }
}
/* Remove
 ========================================================================== */
.uk-margin-remove {
  margin: 0 !important;
}

.uk-margin-remove-top {
  margin-top: 0 !important;
}

.uk-margin-remove-bottom {
  margin-bottom: 0 !important;
}

.uk-margin-remove-left {
  margin-left: 0 !important;
}

.uk-margin-remove-right {
  margin-right: 0 !important;
}

.uk-margin-remove-vertical {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.uk-margin-remove-adjacent + *,
.uk-margin-remove-first-child > :first-child {
  margin-top: 0 !important;
}

.uk-margin-remove-last-child > :last-child {
  margin-bottom: 0 !important;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-margin-remove-left\@s {
    margin-left: 0 !important;
  }
  .uk-margin-remove-right\@s {
    margin-right: 0 !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-margin-remove-left\@m {
    margin-left: 0 !important;
  }
  .uk-margin-remove-right\@m {
    margin-right: 0 !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-margin-remove-left\@l {
    margin-left: 0 !important;
  }
  .uk-margin-remove-right\@l {
    margin-right: 0 !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-margin-remove-left\@xl {
    margin-left: 0 !important;
  }
  .uk-margin-remove-right\@xl {
    margin-right: 0 !important;
  }
}
/* ========================================================================
   Component: Padding
 ========================================================================== */
.uk-padding {
  padding: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-padding {
    padding: 40px;
  }
}
/* Small
 ========================================================================== */
.uk-padding-small {
  padding: 15px;
}

/* Large
 ========================================================================== */
.uk-padding-large {
  padding: 40px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-padding-large {
    padding: 70px;
  }
}
/* Remove
 ========================================================================== */
.uk-padding-remove {
  padding: 0 !important;
}

.uk-padding-remove-top {
  padding-top: 0 !important;
}

.uk-padding-remove-bottom {
  padding-bottom: 0 !important;
}

.uk-padding-remove-left {
  padding-left: 0 !important;
}

.uk-padding-remove-right {
  padding-right: 0 !important;
}

.uk-padding-remove-vertical {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.uk-padding-remove-horizontal {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ========================================================================
   Component: Position
 ========================================================================== */
:root {
  --uk-position-margin-offset: 0px;
}

/* Directions
 ========================================================================== */
/*
 * 1. Prevent content overflow.
 */
[class*=uk-position-top],
[class*=uk-position-bottom],
[class*=uk-position-left],
[class*=uk-position-right],
[class*=uk-position-center] {
  position: absolute !important;
  /* 1 */
  max-width: calc(100% - (var(--uk-position-margin-offset) * 2));
  box-sizing: border-box;
}

/*
 * Edges
 * Don't use `width: 100%` because it's wrong if the parent has padding.
 */
.uk-position-top {
  top: 0;
  left: 0;
  right: 0;
}

.uk-position-bottom {
  bottom: 0;
  left: 0;
  right: 0;
}

.uk-position-left {
  top: 0;
  bottom: 0;
  left: 0;
}

.uk-position-right {
  top: 0;
  bottom: 0;
  right: 0;
}

/*
 * Corners
 */
.uk-position-top-left {
  top: 0;
  left: 0;
}

.uk-position-top-right {
  top: 0;
  right: 0;
}

.uk-position-bottom-left {
  bottom: 0;
  left: 0;
}

.uk-position-bottom-right {
  bottom: 0;
  right: 0;
}

/*
 * Center
 * 1. Fix text wrapping if content is larger than 50% of the container.
 *    Using `max-content` requires `max-width` of 100% which is set generally.
 */
.uk-position-center {
  top: calc(50% - var(--uk-position-margin-offset));
  left: calc(50% - var(--uk-position-margin-offset));
  --uk-position-translate-x: -50%;
  --uk-position-translate-y: -50%;
  transform: translate(var(--uk-position-translate-x), var(--uk-position-translate-y));
  /* 1 */
  width: -moz-max-content;
  width: max-content;
}

/* Vertical */
[class*=uk-position-center-left],
[class*=uk-position-center-right],
.uk-position-center-vertical {
  top: calc(50% - var(--uk-position-margin-offset));
  --uk-position-translate-y: -50%;
  transform: translate(0, var(--uk-position-translate-y));
}

.uk-position-center-left {
  left: 0;
}

.uk-position-center-right {
  right: 0;
}

.uk-position-center-vertical {
  left: 0;
  right: 0;
}

.uk-position-center-left-out {
  right: 100%;
  width: -moz-max-content;
  width: max-content;
}

.uk-position-center-right-out {
  left: 100%;
  width: -moz-max-content;
  width: max-content;
}

/* Horizontal */
.uk-position-top-center,
.uk-position-bottom-center,
.uk-position-center-horizontal {
  left: calc(50% - var(--uk-position-margin-offset));
  --uk-position-translate-x: -50%;
  transform: translate(var(--uk-position-translate-x), 0);
  /* 1 */
  width: -moz-max-content;
  width: max-content;
}

.uk-position-top-center {
  top: 0;
}

.uk-position-bottom-center {
  bottom: 0;
}

.uk-position-center-horizontal {
  top: 0;
  bottom: 0;
}

/*
 * Cover
 */
.uk-position-cover {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

/* Margin
 ========================================================================== */
.uk-position-small {
  margin: 15px;
  --uk-position-margin-offset: 15px;
}

.uk-position-medium {
  margin: 30px;
  --uk-position-margin-offset: 30px;
}

.uk-position-large {
  margin: 30px;
  --uk-position-margin-offset: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-position-large {
    margin: 50px;
    --uk-position-margin-offset: 50px;
  }
}
/* Schemes
 ========================================================================== */
.uk-position-relative {
  position: relative !important;
}

.uk-position-absolute {
  position: absolute !important;
}

.uk-position-fixed {
  position: fixed !important;
}

.uk-position-sticky {
  position: sticky !important;
}

/* Layer
 ========================================================================== */
.uk-position-z-index {
  z-index: 1;
}

.uk-position-z-index-zero {
  z-index: 0;
}

.uk-position-z-index-negative {
  z-index: -1;
}

.uk-position-z-index-high {
  z-index: 990;
}

/* ========================================================================
   Component: Transition
 ========================================================================== */
/* Transitions
 ========================================================================== */
/*
 * The toggle is triggered on touch devices by two methods:
 * 1. Using `:focus` and tabindex
 * 2. Using `:hover` and a `touchstart` event listener registered on the document
 *    (Doesn't work on Surface touch devices)
 */
:where(.uk-transition-fade),
:where([class*=uk-transition-scale]),
:where([class*=uk-transition-slide]) {
  --uk-position-translate-x: 0;
  --uk-position-translate-y: 0;
}

.uk-transition-fade,
[class*=uk-transition-scale],
[class*=uk-transition-slide] {
  --uk-translate-x: 0;
  --uk-translate-y: 0;
  --uk-scale-x: 1;
  --uk-scale-y: 1;
  transform: translate(var(--uk-position-translate-x), var(--uk-position-translate-y)) translate(var(--uk-translate-x), var(--uk-translate-y)) scale(var(--uk-scale-x), var(--uk-scale-y));
  transition: 0.3s ease-out;
  transition-property: opacity, transform, filter;
  opacity: 0;
}

/*
 * Fade
 */
.uk-transition-toggle:hover .uk-transition-fade,
.uk-transition-toggle:focus .uk-transition-fade,
.uk-transition-toggle:focus-within .uk-transition-fade,
.uk-transition-active.uk-active .uk-transition-fade {
  opacity: 1;
}

/*
 * Scale
 * 1. Make image rendering the same during the transition as before and after. Prefixed because of Safari.
 */
/* 1 */
[class*=uk-transition-scale] {
  -webkit-backface-visibility: hidden;
}

.uk-transition-scale-up {
  --uk-scale-x: 1;
  --uk-scale-y: 1;
}

.uk-transition-scale-down {
  --uk-scale-x: 1.03;
  --uk-scale-y: 1.03;
}

/* Show */
.uk-transition-toggle:hover .uk-transition-scale-up,
.uk-transition-toggle:focus .uk-transition-scale-up,
.uk-transition-toggle:focus-within .uk-transition-scale-up,
.uk-transition-active.uk-active .uk-transition-scale-up {
  --uk-scale-x: 1.03;
  --uk-scale-y: 1.03;
  opacity: 1;
}

.uk-transition-toggle:hover .uk-transition-scale-down,
.uk-transition-toggle:focus .uk-transition-scale-down,
.uk-transition-toggle:focus-within .uk-transition-scale-down,
.uk-transition-active.uk-active .uk-transition-scale-down {
  --uk-scale-x: 1;
  --uk-scale-y: 1;
  opacity: 1;
}

/*
 * Slide
 */
.uk-transition-slide-top {
  --uk-translate-y: -100%;
}

.uk-transition-slide-bottom {
  --uk-translate-y: 100%;
}

.uk-transition-slide-left {
  --uk-translate-x: -100%;
}

.uk-transition-slide-right {
  --uk-translate-x: 100%;
}

.uk-transition-slide-top-small {
  --uk-translate-y: calc(-1 * 10px);
}

.uk-transition-slide-bottom-small {
  --uk-translate-y: 10px;
}

.uk-transition-slide-left-small {
  --uk-translate-x: calc(-1 * 10px);
}

.uk-transition-slide-right-small {
  --uk-translate-x: 10px;
}

.uk-transition-slide-top-medium {
  --uk-translate-y: calc(-1 * 50px);
}

.uk-transition-slide-bottom-medium {
  --uk-translate-y: 50px;
}

.uk-transition-slide-left-medium {
  --uk-translate-x: calc(-1 * 50px);
}

.uk-transition-slide-right-medium {
  --uk-translate-x: 50px;
}

/* Show */
.uk-transition-toggle:hover [class*=uk-transition-slide],
.uk-transition-toggle:focus [class*=uk-transition-slide],
.uk-transition-toggle:focus-within [class*=uk-transition-slide],
.uk-transition-active.uk-active [class*=uk-transition-slide] {
  --uk-translate-x: 0;
  --uk-translate-y: 0;
  opacity: 1;
}

/* Opacity modifier
 ========================================================================== */
.uk-transition-opaque {
  opacity: 1;
}

/* Duration modifier
 ========================================================================== */
.uk-transition-slow {
  transition-duration: 0.7s;
}

/* Disable modifier
 ========================================================================== */
.uk-transition-disable,
.uk-transition-disable * {
  transition: none !important;
}

/* ========================================================================
   Component: Visibility
 ========================================================================== */
/*
 * Hidden
 * `hidden` attribute also set here to make it stronger
 */
[hidden],
.uk-hidden,
.uk-hidden-empty:empty {
  display: none !important;
}

/* Phone landscape and bigger */
@media (min-width: 320px) {
  .uk-hidden\@s {
    display: none !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 768px) {
  .uk-hidden\@m {
    display: none !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .uk-hidden\@l {
    display: none !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .uk-hidden\@xl {
    display: none !important;
  }
}
/*
 * Visible
 */
/* Phone portrait and smaller */
@media (max-width: 319px) {
  .uk-visible\@s {
    display: none !important;
  }
}
/* Phone landscape and smaller */
@media (max-width: 767px) {
  .uk-visible\@m {
    display: none !important;
  }
}
/* Tablet landscape and smaller */
@media (max-width: 1199px) {
  .uk-visible\@l {
    display: none !important;
  }
}
/* Desktop and smaller */
@media (max-width: 1599px) {
  .uk-visible\@xl {
    display: none !important;
  }
}
/* Visibility
 ========================================================================== */
.uk-invisible {
  visibility: hidden !important;
}

/* Based on the State of the Parent Element
 ========================================================================== */
/*
 * Mind that `display: none`, `visibility: hidden` and `opacity: 0`
 * remove the element from the accessibility tree and that
 * `display: none` and `visibility: hidden` are not focusable.
 *
 * The target stays visible if any element within receives focus through keyboard.
 */
/*
 * Remove space when hidden.
 * 1. Remove from document flow.
 * 2. Hide element and shrink its dimension. Current browsers and screen readers
 *    keep the element in the accessibility tree even with zero dimensions.
 *    Using `tabindex="-1"` will show the element on touch devices.
 *    Note: `clip-path` doesn't work with `tabindex` on touch devices.
 */
.uk-hidden-visually:not(:focus):not(:active):not(:focus-within),
.uk-visible-toggle:not(:hover):not(:focus) .uk-hidden-hover:not(:focus-visible):not(:has(:focus-visible)),
.uk-visible-toggle:not(:hover):not(:focus) .uk-hidden-hover:not(:focus-within) {
  /* 1 */
  position: absolute !important;
  /* 2 */
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

/*
 * Keep space when hidden.
 * Hide element without shrinking its dimension.
 * Note: `clip-path` doesn't work with hover for elements outside of the toggle box.
 */
.uk-visible-toggle:not(:hover):not(:focus) .uk-invisible-hover:not(:focus-within) {
  opacity: 0 !important;
}

/* Based on Hover Capability of the Pointing Device
 ========================================================================== */
/*
 * Hover
 */
/* Hide if primary pointing device doesn't support hover, e.g. touch screens. */
@media (hover: none) {
  .uk-hidden-touch {
    display: none !important;
  }
}
/* Hide if primary pointing device supports hover, e.g. mice. */
@media (hover) {
  .uk-hidden-notouch {
    display: none !important;
  }
}
/* ========================================================================
   Component: Inverse
 ========================================================================== */
/*
 * Implemented class depends on the general theme color
 * `uk-light` is for light colors on dark backgrounds
 * `uk-dark` is or dark colors on light backgrounds
 */
.uk-light, .uk-section-primary:not(.uk-preserve-color), .uk-section-secondary:not(.uk-preserve-color), .uk-tile-primary:not(.uk-preserve-color), .uk-tile-secondary:not(.uk-preserve-color), .uk-card-primary.uk-card-body, .uk-card-primary > :not([class*=uk-card-media]), .uk-card-secondary.uk-card-body, .uk-card-secondary > :not([class*=uk-card-media]), .uk-overlay-primary, .uk-offcanvas-bar {
  color: rgba(255, 255, 255, 0.7);
  /* Webkit */
  /* Firefox */
  /* Webkit */
  /* Firefox */
}
.uk-light .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-card-primary.uk-card-body .uk-accordion-title::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-accordion-title::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-accordion-title::before, .uk-overlay-primary .uk-accordion-title::before, .uk-offcanvas-bar .uk-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-open > .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-card-primary.uk-card-body .uk-open > .uk-accordion-title::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-open > .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-open > .uk-accordion-title::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-open > .uk-accordion-title::before, .uk-overlay-primary .uk-open > .uk-accordion-title::before, .uk-offcanvas-bar .uk-open > .uk-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-article-meta, .uk-section-primary:not(.uk-preserve-color) .uk-article-meta, .uk-section-secondary:not(.uk-preserve-color) .uk-article-meta, .uk-tile-primary:not(.uk-preserve-color) .uk-article-meta, .uk-tile-secondary:not(.uk-preserve-color) .uk-article-meta, .uk-card-primary.uk-card-body .uk-article-meta, .uk-card-primary > :not([class*=uk-card-media]) .uk-article-meta, .uk-card-secondary.uk-card-body .uk-article-meta, .uk-card-secondary > :not([class*=uk-card-media]) .uk-article-meta, .uk-overlay-primary .uk-article-meta, .uk-offcanvas-bar .uk-article-meta {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-badge, .uk-section-primary:not(.uk-preserve-color) .uk-badge, .uk-section-secondary:not(.uk-preserve-color) .uk-badge, .uk-tile-primary:not(.uk-preserve-color) .uk-badge, .uk-tile-secondary:not(.uk-preserve-color) .uk-badge, .uk-card-primary.uk-card-body .uk-badge, .uk-card-primary > :not([class*=uk-card-media]) .uk-badge, .uk-card-secondary.uk-card-body .uk-badge, .uk-card-secondary > :not([class*=uk-card-media]) .uk-badge, .uk-overlay-primary .uk-badge, .uk-offcanvas-bar .uk-badge {
  background-color: #fff;
  color: #666 !important;
}
.uk-light a, .uk-section-primary:not(.uk-preserve-color) a, .uk-section-secondary:not(.uk-preserve-color) a, .uk-tile-primary:not(.uk-preserve-color) a, .uk-tile-secondary:not(.uk-preserve-color) a, .uk-card-primary.uk-card-body a, .uk-card-primary > :not([class*=uk-card-media]) a, .uk-card-secondary.uk-card-body a, .uk-card-secondary > :not([class*=uk-card-media]) a, .uk-overlay-primary a, .uk-offcanvas-bar a,
.uk-light .uk-link,
.uk-section-primary:not(.uk-preserve-color) .uk-link,
.uk-section-secondary:not(.uk-preserve-color) .uk-link,
.uk-tile-primary:not(.uk-preserve-color) .uk-link,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link,
.uk-card-primary.uk-card-body .uk-link,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link,
.uk-card-secondary.uk-card-body .uk-link,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link,
.uk-overlay-primary .uk-link,
.uk-offcanvas-bar .uk-link {
  color: #fff;
}
.uk-light a:hover, .uk-section-primary:not(.uk-preserve-color) a:hover, .uk-section-secondary:not(.uk-preserve-color) a:hover, .uk-tile-primary:not(.uk-preserve-color) a:hover, .uk-tile-secondary:not(.uk-preserve-color) a:hover, .uk-card-primary.uk-card-body a:hover, .uk-card-primary > :not([class*=uk-card-media]) a:hover, .uk-card-secondary.uk-card-body a:hover, .uk-card-secondary > :not([class*=uk-card-media]) a:hover, .uk-overlay-primary a:hover, .uk-offcanvas-bar a:hover,
.uk-light .uk-link:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link:hover,
.uk-card-primary.uk-card-body .uk-link:hover,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link:hover,
.uk-card-secondary.uk-card-body .uk-link:hover,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link:hover,
.uk-overlay-primary .uk-link:hover,
.uk-offcanvas-bar .uk-link:hover,
.uk-light .uk-link-toggle:hover .uk-link,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link,
.uk-overlay-primary .uk-link-toggle:hover .uk-link,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link {
  color: #fff;
}
.uk-light :not(pre) > code, .uk-section-primary:not(.uk-preserve-color) :not(pre) > code, .uk-section-secondary:not(.uk-preserve-color) :not(pre) > code, .uk-tile-primary:not(.uk-preserve-color) :not(pre) > code, .uk-tile-secondary:not(.uk-preserve-color) :not(pre) > code, .uk-card-primary.uk-card-body :not(pre) > code, .uk-card-primary > :not([class*=uk-card-media]) :not(pre) > code, .uk-card-secondary.uk-card-body :not(pre) > code, .uk-card-secondary > :not([class*=uk-card-media]) :not(pre) > code, .uk-overlay-primary :not(pre) > code, .uk-offcanvas-bar :not(pre) > code,
.uk-light :not(pre) > kbd,
.uk-section-primary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-section-secondary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-tile-primary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-tile-secondary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-card-primary.uk-card-body :not(pre) > kbd,
.uk-card-primary > :not([class*=uk-card-media]) :not(pre) > kbd,
.uk-card-secondary.uk-card-body :not(pre) > kbd,
.uk-card-secondary > :not([class*=uk-card-media]) :not(pre) > kbd,
.uk-overlay-primary :not(pre) > kbd,
.uk-offcanvas-bar :not(pre) > kbd,
.uk-light :not(pre) > samp,
.uk-section-primary:not(.uk-preserve-color) :not(pre) > samp,
.uk-section-secondary:not(.uk-preserve-color) :not(pre) > samp,
.uk-tile-primary:not(.uk-preserve-color) :not(pre) > samp,
.uk-tile-secondary:not(.uk-preserve-color) :not(pre) > samp,
.uk-card-primary.uk-card-body :not(pre) > samp,
.uk-card-primary > :not([class*=uk-card-media]) :not(pre) > samp,
.uk-card-secondary.uk-card-body :not(pre) > samp,
.uk-card-secondary > :not([class*=uk-card-media]) :not(pre) > samp,
.uk-overlay-primary :not(pre) > samp,
.uk-offcanvas-bar :not(pre) > samp {
  color: rgba(255, 255, 255, 0.7);
  background-color: rgba(255, 255, 255, 0.1);
}
.uk-light em, .uk-section-primary:not(.uk-preserve-color) em, .uk-section-secondary:not(.uk-preserve-color) em, .uk-tile-primary:not(.uk-preserve-color) em, .uk-tile-secondary:not(.uk-preserve-color) em, .uk-card-primary.uk-card-body em, .uk-card-primary > :not([class*=uk-card-media]) em, .uk-card-secondary.uk-card-body em, .uk-card-secondary > :not([class*=uk-card-media]) em, .uk-overlay-primary em, .uk-offcanvas-bar em {
  color: #fff;
}
.uk-light h1, .uk-section-primary:not(.uk-preserve-color) h1, .uk-section-secondary:not(.uk-preserve-color) h1, .uk-tile-primary:not(.uk-preserve-color) h1, .uk-tile-secondary:not(.uk-preserve-color) h1, .uk-card-primary.uk-card-body h1, .uk-card-primary > :not([class*=uk-card-media]) h1, .uk-card-secondary.uk-card-body h1, .uk-card-secondary > :not([class*=uk-card-media]) h1, .uk-overlay-primary h1, .uk-offcanvas-bar h1, .uk-light .uk-h1, .uk-section-primary:not(.uk-preserve-color) .uk-h1, .uk-section-secondary:not(.uk-preserve-color) .uk-h1, .uk-tile-primary:not(.uk-preserve-color) .uk-h1, .uk-tile-secondary:not(.uk-preserve-color) .uk-h1, .uk-card-primary.uk-card-body .uk-h1, .uk-card-primary > :not([class*=uk-card-media]) .uk-h1, .uk-card-secondary.uk-card-body .uk-h1, .uk-card-secondary > :not([class*=uk-card-media]) .uk-h1, .uk-overlay-primary .uk-h1, .uk-offcanvas-bar .uk-h1,
.uk-light h2,
.uk-section-primary:not(.uk-preserve-color) h2,
.uk-section-secondary:not(.uk-preserve-color) h2,
.uk-tile-primary:not(.uk-preserve-color) h2,
.uk-tile-secondary:not(.uk-preserve-color) h2,
.uk-card-primary.uk-card-body h2,
.uk-card-primary > :not([class*=uk-card-media]) h2,
.uk-card-secondary.uk-card-body h2,
.uk-card-secondary > :not([class*=uk-card-media]) h2,
.uk-overlay-primary h2,
.uk-offcanvas-bar h2, .uk-light .uk-h2, .uk-section-primary:not(.uk-preserve-color) .uk-h2, .uk-section-secondary:not(.uk-preserve-color) .uk-h2, .uk-tile-primary:not(.uk-preserve-color) .uk-h2, .uk-tile-secondary:not(.uk-preserve-color) .uk-h2, .uk-card-primary.uk-card-body .uk-h2, .uk-card-primary > :not([class*=uk-card-media]) .uk-h2, .uk-card-secondary.uk-card-body .uk-h2, .uk-card-secondary > :not([class*=uk-card-media]) .uk-h2, .uk-overlay-primary .uk-h2, .uk-offcanvas-bar .uk-h2,
.uk-light h3,
.uk-section-primary:not(.uk-preserve-color) h3,
.uk-section-secondary:not(.uk-preserve-color) h3,
.uk-tile-primary:not(.uk-preserve-color) h3,
.uk-tile-secondary:not(.uk-preserve-color) h3,
.uk-card-primary.uk-card-body h3,
.uk-card-primary > :not([class*=uk-card-media]) h3,
.uk-card-secondary.uk-card-body h3,
.uk-card-secondary > :not([class*=uk-card-media]) h3,
.uk-overlay-primary h3,
.uk-offcanvas-bar h3, .uk-light .uk-h3, .uk-section-primary:not(.uk-preserve-color) .uk-h3, .uk-section-secondary:not(.uk-preserve-color) .uk-h3, .uk-tile-primary:not(.uk-preserve-color) .uk-h3, .uk-tile-secondary:not(.uk-preserve-color) .uk-h3, .uk-card-primary.uk-card-body .uk-h3, .uk-card-primary > :not([class*=uk-card-media]) .uk-h3, .uk-card-secondary.uk-card-body .uk-h3, .uk-card-secondary > :not([class*=uk-card-media]) .uk-h3, .uk-overlay-primary .uk-h3, .uk-offcanvas-bar .uk-h3,
.uk-light h4,
.uk-section-primary:not(.uk-preserve-color) h4,
.uk-section-secondary:not(.uk-preserve-color) h4,
.uk-tile-primary:not(.uk-preserve-color) h4,
.uk-tile-secondary:not(.uk-preserve-color) h4,
.uk-card-primary.uk-card-body h4,
.uk-card-primary > :not([class*=uk-card-media]) h4,
.uk-card-secondary.uk-card-body h4,
.uk-card-secondary > :not([class*=uk-card-media]) h4,
.uk-overlay-primary h4,
.uk-offcanvas-bar h4, .uk-light .uk-h4, .uk-section-primary:not(.uk-preserve-color) .uk-h4, .uk-section-secondary:not(.uk-preserve-color) .uk-h4, .uk-tile-primary:not(.uk-preserve-color) .uk-h4, .uk-tile-secondary:not(.uk-preserve-color) .uk-h4, .uk-card-primary.uk-card-body .uk-h4, .uk-card-primary > :not([class*=uk-card-media]) .uk-h4, .uk-card-secondary.uk-card-body .uk-h4, .uk-card-secondary > :not([class*=uk-card-media]) .uk-h4, .uk-overlay-primary .uk-h4, .uk-offcanvas-bar .uk-h4,
.uk-light h5,
.uk-section-primary:not(.uk-preserve-color) h5,
.uk-section-secondary:not(.uk-preserve-color) h5,
.uk-tile-primary:not(.uk-preserve-color) h5,
.uk-tile-secondary:not(.uk-preserve-color) h5,
.uk-card-primary.uk-card-body h5,
.uk-card-primary > :not([class*=uk-card-media]) h5,
.uk-card-secondary.uk-card-body h5,
.uk-card-secondary > :not([class*=uk-card-media]) h5,
.uk-overlay-primary h5,
.uk-offcanvas-bar h5, .uk-light .uk-h5, .uk-section-primary:not(.uk-preserve-color) .uk-h5, .uk-section-secondary:not(.uk-preserve-color) .uk-h5, .uk-tile-primary:not(.uk-preserve-color) .uk-h5, .uk-tile-secondary:not(.uk-preserve-color) .uk-h5, .uk-card-primary.uk-card-body .uk-h5, .uk-card-primary > :not([class*=uk-card-media]) .uk-h5, .uk-card-secondary.uk-card-body .uk-h5, .uk-card-secondary > :not([class*=uk-card-media]) .uk-h5, .uk-overlay-primary .uk-h5, .uk-offcanvas-bar .uk-h5,
.uk-light h6,
.uk-section-primary:not(.uk-preserve-color) h6,
.uk-section-secondary:not(.uk-preserve-color) h6,
.uk-tile-primary:not(.uk-preserve-color) h6,
.uk-tile-secondary:not(.uk-preserve-color) h6,
.uk-card-primary.uk-card-body h6,
.uk-card-primary > :not([class*=uk-card-media]) h6,
.uk-card-secondary.uk-card-body h6,
.uk-card-secondary > :not([class*=uk-card-media]) h6,
.uk-overlay-primary h6,
.uk-offcanvas-bar h6, .uk-light .uk-h6, .uk-section-primary:not(.uk-preserve-color) .uk-h6, .uk-section-secondary:not(.uk-preserve-color) .uk-h6, .uk-tile-primary:not(.uk-preserve-color) .uk-h6, .uk-tile-secondary:not(.uk-preserve-color) .uk-h6, .uk-card-primary.uk-card-body .uk-h6, .uk-card-primary > :not([class*=uk-card-media]) .uk-h6, .uk-card-secondary.uk-card-body .uk-h6, .uk-card-secondary > :not([class*=uk-card-media]) .uk-h6, .uk-overlay-primary .uk-h6, .uk-offcanvas-bar .uk-h6,
.uk-light .uk-heading-small,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-small,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-small,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-small,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-small,
.uk-card-primary.uk-card-body .uk-heading-small,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-small,
.uk-card-secondary.uk-card-body .uk-heading-small,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-small,
.uk-overlay-primary .uk-heading-small,
.uk-offcanvas-bar .uk-heading-small,
.uk-light .uk-heading-medium,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-medium,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-medium,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-medium,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-medium,
.uk-card-primary.uk-card-body .uk-heading-medium,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-medium,
.uk-card-secondary.uk-card-body .uk-heading-medium,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-medium,
.uk-overlay-primary .uk-heading-medium,
.uk-offcanvas-bar .uk-heading-medium,
.uk-light .uk-heading-large,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-large,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-large,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-large,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-large,
.uk-card-primary.uk-card-body .uk-heading-large,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-large,
.uk-card-secondary.uk-card-body .uk-heading-large,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-large,
.uk-overlay-primary .uk-heading-large,
.uk-offcanvas-bar .uk-heading-large,
.uk-light .uk-heading-xlarge,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-card-primary.uk-card-body .uk-heading-xlarge,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-xlarge,
.uk-card-secondary.uk-card-body .uk-heading-xlarge,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-xlarge,
.uk-overlay-primary .uk-heading-xlarge,
.uk-offcanvas-bar .uk-heading-xlarge,
.uk-light .uk-heading-2xlarge,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-card-primary.uk-card-body .uk-heading-2xlarge,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-2xlarge,
.uk-card-secondary.uk-card-body .uk-heading-2xlarge,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-2xlarge,
.uk-overlay-primary .uk-heading-2xlarge,
.uk-offcanvas-bar .uk-heading-2xlarge,
.uk-light .uk-heading-3xlarge,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-3xlarge,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-3xlarge,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-3xlarge,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-3xlarge,
.uk-card-primary.uk-card-body .uk-heading-3xlarge,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-3xlarge,
.uk-card-secondary.uk-card-body .uk-heading-3xlarge,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-3xlarge,
.uk-overlay-primary .uk-heading-3xlarge,
.uk-offcanvas-bar .uk-heading-3xlarge {
  color: #fff;
}
.uk-light blockquote, .uk-section-primary:not(.uk-preserve-color) blockquote, .uk-section-secondary:not(.uk-preserve-color) blockquote, .uk-tile-primary:not(.uk-preserve-color) blockquote, .uk-tile-secondary:not(.uk-preserve-color) blockquote, .uk-card-primary.uk-card-body blockquote, .uk-card-primary > :not([class*=uk-card-media]) blockquote, .uk-card-secondary.uk-card-body blockquote, .uk-card-secondary > :not([class*=uk-card-media]) blockquote, .uk-overlay-primary blockquote, .uk-offcanvas-bar blockquote {
  color: #fff;
}
.uk-light blockquote footer, .uk-section-primary:not(.uk-preserve-color) blockquote footer, .uk-section-secondary:not(.uk-preserve-color) blockquote footer, .uk-tile-primary:not(.uk-preserve-color) blockquote footer, .uk-tile-secondary:not(.uk-preserve-color) blockquote footer, .uk-card-primary.uk-card-body blockquote footer, .uk-card-primary > :not([class*=uk-card-media]) blockquote footer, .uk-card-secondary.uk-card-body blockquote footer, .uk-card-secondary > :not([class*=uk-card-media]) blockquote footer, .uk-overlay-primary blockquote footer, .uk-offcanvas-bar blockquote footer {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light hr, .uk-section-primary:not(.uk-preserve-color) hr, .uk-section-secondary:not(.uk-preserve-color) hr, .uk-tile-primary:not(.uk-preserve-color) hr, .uk-tile-secondary:not(.uk-preserve-color) hr, .uk-card-primary.uk-card-body hr, .uk-card-primary > :not([class*=uk-card-media]) hr, .uk-card-secondary.uk-card-body hr, .uk-card-secondary > :not([class*=uk-card-media]) hr, .uk-overlay-primary hr, .uk-offcanvas-bar hr, .uk-light .uk-hr, .uk-section-primary:not(.uk-preserve-color) .uk-hr, .uk-section-secondary:not(.uk-preserve-color) .uk-hr, .uk-tile-primary:not(.uk-preserve-color) .uk-hr, .uk-tile-secondary:not(.uk-preserve-color) .uk-hr, .uk-card-primary.uk-card-body .uk-hr, .uk-card-primary > :not([class*=uk-card-media]) .uk-hr, .uk-card-secondary.uk-card-body .uk-hr, .uk-card-secondary > :not([class*=uk-card-media]) .uk-hr, .uk-overlay-primary .uk-hr, .uk-offcanvas-bar .uk-hr {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light :focus-visible, .uk-section-primary:not(.uk-preserve-color) :focus-visible, .uk-section-secondary:not(.uk-preserve-color) :focus-visible, .uk-tile-primary:not(.uk-preserve-color) :focus-visible, .uk-tile-secondary:not(.uk-preserve-color) :focus-visible, .uk-card-primary.uk-card-body :focus-visible, .uk-card-primary > :not([class*=uk-card-media]) :focus-visible, .uk-card-secondary.uk-card-body :focus-visible, .uk-card-secondary > :not([class*=uk-card-media]) :focus-visible, .uk-overlay-primary :focus-visible, .uk-offcanvas-bar :focus-visible {
  outline-color: #fff;
}
.uk-light .uk-breadcrumb > * > *, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-card-primary.uk-card-body .uk-breadcrumb > * > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-breadcrumb > * > *, .uk-card-secondary.uk-card-body .uk-breadcrumb > * > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-breadcrumb > * > *, .uk-overlay-primary .uk-breadcrumb > * > *, .uk-offcanvas-bar .uk-breadcrumb > * > * {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-breadcrumb > * > :hover, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-card-primary.uk-card-body .uk-breadcrumb > * > :hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-breadcrumb > * > :hover, .uk-card-secondary.uk-card-body .uk-breadcrumb > * > :hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-breadcrumb > * > :hover, .uk-overlay-primary .uk-breadcrumb > * > :hover, .uk-offcanvas-bar .uk-breadcrumb > * > :hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-breadcrumb > :last-child > *, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-card-primary.uk-card-body .uk-breadcrumb > :last-child > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-breadcrumb > :last-child > *, .uk-card-secondary.uk-card-body .uk-breadcrumb > :last-child > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-breadcrumb > :last-child > *, .uk-overlay-primary .uk-breadcrumb > :last-child > *, .uk-offcanvas-bar .uk-breadcrumb > :last-child > * {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary.uk-card-body .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary.uk-card-body .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-overlay-primary .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-offcanvas-bar .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-button-default, .uk-section-primary:not(.uk-preserve-color) .uk-button-default, .uk-section-secondary:not(.uk-preserve-color) .uk-button-default, .uk-tile-primary:not(.uk-preserve-color) .uk-button-default, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-default, .uk-card-primary.uk-card-body .uk-button-default, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-default, .uk-card-secondary.uk-card-body .uk-button-default, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-default, .uk-overlay-primary .uk-button-default, .uk-offcanvas-bar .uk-button-default {
  background-color: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-button-default:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-default:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-default:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-default:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:hover, .uk-card-primary.uk-card-body .uk-button-default:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-default:hover, .uk-card-secondary.uk-card-body .uk-button-default:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-default:hover, .uk-overlay-primary .uk-button-default:hover, .uk-offcanvas-bar .uk-button-default:hover {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
}
.uk-light .uk-button-default:active, .uk-section-primary:not(.uk-preserve-color) .uk-button-default:active, .uk-section-secondary:not(.uk-preserve-color) .uk-button-default:active, .uk-tile-primary:not(.uk-preserve-color) .uk-button-default:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:active, .uk-card-primary.uk-card-body .uk-button-default:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-default:active, .uk-card-secondary.uk-card-body .uk-button-default:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-default:active, .uk-overlay-primary .uk-button-default:active, .uk-offcanvas-bar .uk-button-default:active,
.uk-light .uk-button-default.uk-active,
.uk-section-primary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-card-primary.uk-card-body .uk-button-default.uk-active,
.uk-card-primary > :not([class*=uk-card-media]) .uk-button-default.uk-active,
.uk-card-secondary.uk-card-body .uk-button-default.uk-active,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-button-default.uk-active,
.uk-overlay-primary .uk-button-default.uk-active,
.uk-offcanvas-bar .uk-button-default.uk-active {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
}
.uk-light .uk-button-primary, .uk-section-primary:not(.uk-preserve-color) .uk-button-primary, .uk-section-secondary:not(.uk-preserve-color) .uk-button-primary, .uk-tile-primary:not(.uk-preserve-color) .uk-button-primary, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary, .uk-card-primary.uk-card-body .uk-button-primary, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-primary, .uk-card-secondary.uk-card-body .uk-button-primary, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-primary, .uk-overlay-primary .uk-button-primary, .uk-offcanvas-bar .uk-button-primary {
  background-color: #fff;
  color: #666;
}
.uk-light .uk-button-primary:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-card-primary.uk-card-body .uk-button-primary:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-primary:hover, .uk-card-secondary.uk-card-body .uk-button-primary:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-primary:hover, .uk-overlay-primary .uk-button-primary:hover, .uk-offcanvas-bar .uk-button-primary:hover {
  background-color: rgb(242.25, 242.25, 242.25);
  color: #666;
}
.uk-light .uk-button-primary:active, .uk-section-primary:not(.uk-preserve-color) .uk-button-primary:active, .uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:active, .uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:active, .uk-card-primary.uk-card-body .uk-button-primary:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-primary:active, .uk-card-secondary.uk-card-body .uk-button-primary:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-primary:active, .uk-overlay-primary .uk-button-primary:active, .uk-offcanvas-bar .uk-button-primary:active,
.uk-light .uk-button-primary.uk-active,
.uk-section-primary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-card-primary.uk-card-body .uk-button-primary.uk-active,
.uk-card-primary > :not([class*=uk-card-media]) .uk-button-primary.uk-active,
.uk-card-secondary.uk-card-body .uk-button-primary.uk-active,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-button-primary.uk-active,
.uk-overlay-primary .uk-button-primary.uk-active,
.uk-offcanvas-bar .uk-button-primary.uk-active {
  background-color: rgb(229.5, 229.5, 229.5);
  color: #666;
}
.uk-light .uk-button-secondary, .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary, .uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary, .uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary, .uk-card-primary.uk-card-body .uk-button-secondary, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-secondary, .uk-card-secondary.uk-card-body .uk-button-secondary, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-secondary, .uk-overlay-primary .uk-button-secondary, .uk-offcanvas-bar .uk-button-secondary {
  background-color: #fff;
  color: #666;
}
.uk-light .uk-button-secondary:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-card-primary.uk-card-body .uk-button-secondary:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-secondary:hover, .uk-card-secondary.uk-card-body .uk-button-secondary:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-secondary:hover, .uk-overlay-primary .uk-button-secondary:hover, .uk-offcanvas-bar .uk-button-secondary:hover {
  background-color: rgb(242.25, 242.25, 242.25);
  color: #666;
}
.uk-light .uk-button-secondary:active, .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-card-primary.uk-card-body .uk-button-secondary:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-secondary:active, .uk-card-secondary.uk-card-body .uk-button-secondary:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-secondary:active, .uk-overlay-primary .uk-button-secondary:active, .uk-offcanvas-bar .uk-button-secondary:active,
.uk-light .uk-button-secondary.uk-active,
.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-card-primary.uk-card-body .uk-button-secondary.uk-active,
.uk-card-primary > :not([class*=uk-card-media]) .uk-button-secondary.uk-active,
.uk-card-secondary.uk-card-body .uk-button-secondary.uk-active,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-button-secondary.uk-active,
.uk-overlay-primary .uk-button-secondary.uk-active,
.uk-offcanvas-bar .uk-button-secondary.uk-active {
  background-color: rgb(229.5, 229.5, 229.5);
  color: #666;
}
.uk-light .uk-button-text, .uk-section-primary:not(.uk-preserve-color) .uk-button-text, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text, .uk-card-primary.uk-card-body .uk-button-text, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-text, .uk-card-secondary.uk-card-body .uk-button-text, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-text, .uk-overlay-primary .uk-button-text, .uk-offcanvas-bar .uk-button-text {
  color: #fff;
}
.uk-light .uk-button-text::before, .uk-section-primary:not(.uk-preserve-color) .uk-button-text::before, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text::before, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text::before, .uk-card-primary.uk-card-body .uk-button-text::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-text::before, .uk-card-secondary.uk-card-body .uk-button-text::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-text::before, .uk-overlay-primary .uk-button-text::before, .uk-offcanvas-bar .uk-button-text::before {
  border-bottom-color: #fff;
}
.uk-light .uk-button-text:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-text:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:hover, .uk-card-primary.uk-card-body .uk-button-text:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-text:hover, .uk-card-secondary.uk-card-body .uk-button-text:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-text:hover, .uk-overlay-primary .uk-button-text:hover, .uk-offcanvas-bar .uk-button-text:hover {
  color: #fff;
}
.uk-light .uk-button-text:disabled, .uk-section-primary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-card-primary.uk-card-body .uk-button-text:disabled, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-text:disabled, .uk-card-secondary.uk-card-body .uk-button-text:disabled, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-text:disabled, .uk-overlay-primary .uk-button-text:disabled, .uk-offcanvas-bar .uk-button-text:disabled {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-button-link, .uk-section-primary:not(.uk-preserve-color) .uk-button-link, .uk-section-secondary:not(.uk-preserve-color) .uk-button-link, .uk-tile-primary:not(.uk-preserve-color) .uk-button-link, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-link, .uk-card-primary.uk-card-body .uk-button-link, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-link, .uk-card-secondary.uk-card-body .uk-button-link, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-link, .uk-overlay-primary .uk-button-link, .uk-offcanvas-bar .uk-button-link {
  color: #fff;
}
.uk-light .uk-button-link:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-link:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-link:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-link:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-link:hover, .uk-card-primary.uk-card-body .uk-button-link:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-button-link:hover, .uk-card-secondary.uk-card-body .uk-button-link:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-button-link:hover, .uk-overlay-primary .uk-button-link:hover, .uk-offcanvas-bar .uk-button-link:hover {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light.uk-card-badge, .uk-card-badge.uk-section-primary:not(.uk-preserve-color), .uk-card-badge.uk-section-secondary:not(.uk-preserve-color), .uk-card-badge.uk-tile-primary:not(.uk-preserve-color), .uk-card-badge.uk-tile-secondary:not(.uk-preserve-color), .uk-card-badge.uk-card-primary.uk-card-body, .uk-card-primary > .uk-card-badge:not([class*=uk-card-media]), .uk-card-badge.uk-card-secondary.uk-card-body, .uk-card-secondary > .uk-card-badge:not([class*=uk-card-media]), .uk-card-badge.uk-overlay-primary, .uk-card-badge.uk-offcanvas-bar {
  background-color: #fff;
  color: #666;
}
.uk-light .uk-close, .uk-section-primary:not(.uk-preserve-color) .uk-close, .uk-section-secondary:not(.uk-preserve-color) .uk-close, .uk-tile-primary:not(.uk-preserve-color) .uk-close, .uk-tile-secondary:not(.uk-preserve-color) .uk-close, .uk-card-primary.uk-card-body .uk-close, .uk-card-primary > :not([class*=uk-card-media]) .uk-close, .uk-card-secondary.uk-card-body .uk-close, .uk-card-secondary > :not([class*=uk-card-media]) .uk-close, .uk-overlay-primary .uk-close, .uk-offcanvas-bar .uk-close {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-close:hover, .uk-section-primary:not(.uk-preserve-color) .uk-close:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-close:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-close:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-close:hover, .uk-card-primary.uk-card-body .uk-close:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-close:hover, .uk-card-secondary.uk-card-body .uk-close:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-close:hover, .uk-overlay-primary .uk-close:hover, .uk-offcanvas-bar .uk-close:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-column-divider, .uk-section-primary:not(.uk-preserve-color) .uk-column-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-column-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-column-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-column-divider, .uk-card-primary.uk-card-body .uk-column-divider, .uk-card-primary > :not([class*=uk-card-media]) .uk-column-divider, .uk-card-secondary.uk-card-body .uk-column-divider, .uk-card-secondary > :not([class*=uk-card-media]) .uk-column-divider, .uk-overlay-primary .uk-column-divider, .uk-offcanvas-bar .uk-column-divider {
  -moz-column-rule-color: rgba(255, 255, 255, 0.2);
       column-rule-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-divider-icon, .uk-section-primary:not(.uk-preserve-color) .uk-divider-icon, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon, .uk-card-primary.uk-card-body .uk-divider-icon, .uk-card-primary > :not([class*=uk-card-media]) .uk-divider-icon, .uk-card-secondary.uk-card-body .uk-divider-icon, .uk-card-secondary > :not([class*=uk-card-media]) .uk-divider-icon, .uk-overlay-primary .uk-divider-icon, .uk-offcanvas-bar .uk-divider-icon {
  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%22rgba(255, 255, 255, 0.2)%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");
}
.uk-light .uk-divider-icon::before, .uk-section-primary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-card-primary.uk-card-body .uk-divider-icon::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-divider-icon::before, .uk-card-secondary.uk-card-body .uk-divider-icon::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-divider-icon::before, .uk-overlay-primary .uk-divider-icon::before, .uk-offcanvas-bar .uk-divider-icon::before,
.uk-light .uk-divider-icon::after,
.uk-section-primary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-card-primary.uk-card-body .uk-divider-icon::after,
.uk-card-primary > :not([class*=uk-card-media]) .uk-divider-icon::after,
.uk-card-secondary.uk-card-body .uk-divider-icon::after,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-divider-icon::after,
.uk-overlay-primary .uk-divider-icon::after,
.uk-offcanvas-bar .uk-divider-icon::after {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-divider-small::after, .uk-section-primary:not(.uk-preserve-color) .uk-divider-small::after, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-small::after, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-small::after, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-small::after, .uk-card-primary.uk-card-body .uk-divider-small::after, .uk-card-primary > :not([class*=uk-card-media]) .uk-divider-small::after, .uk-card-secondary.uk-card-body .uk-divider-small::after, .uk-card-secondary > :not([class*=uk-card-media]) .uk-divider-small::after, .uk-overlay-primary .uk-divider-small::after, .uk-offcanvas-bar .uk-divider-small::after {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-divider-vertical, .uk-section-primary:not(.uk-preserve-color) .uk-divider-vertical, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-vertical, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-vertical, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-vertical, .uk-card-primary.uk-card-body .uk-divider-vertical, .uk-card-primary > :not([class*=uk-card-media]) .uk-divider-vertical, .uk-card-secondary.uk-card-body .uk-divider-vertical, .uk-card-secondary > :not([class*=uk-card-media]) .uk-divider-vertical, .uk-overlay-primary .uk-divider-vertical, .uk-offcanvas-bar .uk-divider-vertical {
  border-left-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-dotnav > * > *, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-card-primary.uk-card-body .uk-dotnav > * > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-dotnav > * > *, .uk-card-secondary.uk-card-body .uk-dotnav > * > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-dotnav > * > *, .uk-overlay-primary .uk-dotnav > * > *, .uk-offcanvas-bar .uk-dotnav > * > * {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.9);
}
.uk-light .uk-dotnav > * > :hover, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-card-primary.uk-card-body .uk-dotnav > * > :hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-dotnav > * > :hover, .uk-card-secondary.uk-card-body .uk-dotnav > * > :hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-dotnav > * > :hover, .uk-overlay-primary .uk-dotnav > * > :hover, .uk-offcanvas-bar .uk-dotnav > * > :hover {
  background-color: rgba(255, 255, 255, 0.9);
  border-color: transparent;
}
.uk-light .uk-dotnav > * > :active, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-card-primary.uk-card-body .uk-dotnav > * > :active, .uk-card-primary > :not([class*=uk-card-media]) .uk-dotnav > * > :active, .uk-card-secondary.uk-card-body .uk-dotnav > * > :active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-dotnav > * > :active, .uk-overlay-primary .uk-dotnav > * > :active, .uk-offcanvas-bar .uk-dotnav > * > :active {
  background-color: rgba(255, 255, 255, 0.5);
  border-color: transparent;
}
.uk-light .uk-dotnav > .uk-active > *, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-card-primary.uk-card-body .uk-dotnav > .uk-active > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-dotnav > .uk-active > *, .uk-card-secondary.uk-card-body .uk-dotnav > .uk-active > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-dotnav > .uk-active > *, .uk-overlay-primary .uk-dotnav > .uk-active > *, .uk-offcanvas-bar .uk-dotnav > .uk-active > * {
  background-color: rgba(255, 255, 255, 0.9);
  border-color: transparent;
}
.uk-light .uk-range::-webkit-slider-runnable-track, .uk-section-primary:not(.uk-preserve-color) .uk-range::-webkit-slider-runnable-track, .uk-section-secondary:not(.uk-preserve-color) .uk-range::-webkit-slider-runnable-track, .uk-tile-primary:not(.uk-preserve-color) .uk-range::-webkit-slider-runnable-track, .uk-tile-secondary:not(.uk-preserve-color) .uk-range::-webkit-slider-runnable-track, .uk-card-primary.uk-card-body .uk-range::-webkit-slider-runnable-track, .uk-card-primary > :not([class*=uk-card-media]) .uk-range::-webkit-slider-runnable-track, .uk-card-secondary.uk-card-body .uk-range::-webkit-slider-runnable-track, .uk-card-secondary > :not([class*=uk-card-media]) .uk-range::-webkit-slider-runnable-track, .uk-overlay-primary .uk-range::-webkit-slider-runnable-track, .uk-offcanvas-bar .uk-range::-webkit-slider-runnable-track {
  background: rgba(242.25, 242.25, 242.25, 0.1);
}
.uk-light .uk-range:focus::-webkit-slider-runnable-track, .uk-section-primary:not(.uk-preserve-color) .uk-range:focus::-webkit-slider-runnable-track, .uk-section-secondary:not(.uk-preserve-color) .uk-range:focus::-webkit-slider-runnable-track, .uk-tile-primary:not(.uk-preserve-color) .uk-range:focus::-webkit-slider-runnable-track, .uk-tile-secondary:not(.uk-preserve-color) .uk-range:focus::-webkit-slider-runnable-track, .uk-card-primary.uk-card-body .uk-range:focus::-webkit-slider-runnable-track, .uk-card-primary > :not([class*=uk-card-media]) .uk-range:focus::-webkit-slider-runnable-track, .uk-card-secondary.uk-card-body .uk-range:focus::-webkit-slider-runnable-track, .uk-card-secondary > :not([class*=uk-card-media]) .uk-range:focus::-webkit-slider-runnable-track, .uk-overlay-primary .uk-range:focus::-webkit-slider-runnable-track, .uk-offcanvas-bar .uk-range:focus::-webkit-slider-runnable-track,
.uk-light .uk-range:active::-webkit-slider-runnable-track,
.uk-section-primary:not(.uk-preserve-color) .uk-range:active::-webkit-slider-runnable-track,
.uk-section-secondary:not(.uk-preserve-color) .uk-range:active::-webkit-slider-runnable-track,
.uk-tile-primary:not(.uk-preserve-color) .uk-range:active::-webkit-slider-runnable-track,
.uk-tile-secondary:not(.uk-preserve-color) .uk-range:active::-webkit-slider-runnable-track,
.uk-card-primary.uk-card-body .uk-range:active::-webkit-slider-runnable-track,
.uk-card-primary > :not([class*=uk-card-media]) .uk-range:active::-webkit-slider-runnable-track,
.uk-card-secondary.uk-card-body .uk-range:active::-webkit-slider-runnable-track,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-range:active::-webkit-slider-runnable-track,
.uk-overlay-primary .uk-range:active::-webkit-slider-runnable-track,
.uk-offcanvas-bar .uk-range:active::-webkit-slider-runnable-track {
  background: rgba(242.25, 242.25, 242.25, 0.15);
}
.uk-light .uk-range::-moz-range-track, .uk-section-primary:not(.uk-preserve-color) .uk-range::-moz-range-track, .uk-section-secondary:not(.uk-preserve-color) .uk-range::-moz-range-track, .uk-tile-primary:not(.uk-preserve-color) .uk-range::-moz-range-track, .uk-tile-secondary:not(.uk-preserve-color) .uk-range::-moz-range-track, .uk-card-primary.uk-card-body .uk-range::-moz-range-track, .uk-card-primary > :not([class*=uk-card-media]) .uk-range::-moz-range-track, .uk-card-secondary.uk-card-body .uk-range::-moz-range-track, .uk-card-secondary > :not([class*=uk-card-media]) .uk-range::-moz-range-track, .uk-overlay-primary .uk-range::-moz-range-track, .uk-offcanvas-bar .uk-range::-moz-range-track {
  background: rgba(242.25, 242.25, 242.25, 0.1);
}
.uk-light .uk-range:focus::-moz-range-track, .uk-section-primary:not(.uk-preserve-color) .uk-range:focus::-moz-range-track, .uk-section-secondary:not(.uk-preserve-color) .uk-range:focus::-moz-range-track, .uk-tile-primary:not(.uk-preserve-color) .uk-range:focus::-moz-range-track, .uk-tile-secondary:not(.uk-preserve-color) .uk-range:focus::-moz-range-track, .uk-card-primary.uk-card-body .uk-range:focus::-moz-range-track, .uk-card-primary > :not([class*=uk-card-media]) .uk-range:focus::-moz-range-track, .uk-card-secondary.uk-card-body .uk-range:focus::-moz-range-track, .uk-card-secondary > :not([class*=uk-card-media]) .uk-range:focus::-moz-range-track, .uk-overlay-primary .uk-range:focus::-moz-range-track, .uk-offcanvas-bar .uk-range:focus::-moz-range-track {
  background: rgba(242.25, 242.25, 242.25, 0.15);
}
.uk-light .uk-range::-webkit-slider-thumb, .uk-section-primary:not(.uk-preserve-color) .uk-range::-webkit-slider-thumb, .uk-section-secondary:not(.uk-preserve-color) .uk-range::-webkit-slider-thumb, .uk-tile-primary:not(.uk-preserve-color) .uk-range::-webkit-slider-thumb, .uk-tile-secondary:not(.uk-preserve-color) .uk-range::-webkit-slider-thumb, .uk-card-primary.uk-card-body .uk-range::-webkit-slider-thumb, .uk-card-primary > :not([class*=uk-card-media]) .uk-range::-webkit-slider-thumb, .uk-card-secondary.uk-card-body .uk-range::-webkit-slider-thumb, .uk-card-secondary > :not([class*=uk-card-media]) .uk-range::-webkit-slider-thumb, .uk-overlay-primary .uk-range::-webkit-slider-thumb, .uk-offcanvas-bar .uk-range::-webkit-slider-thumb {
  background: rgb(127.5, 127.5, 127.5);
  border-color: rgb(229.5, 229.5, 229.5);
}
.uk-light .uk-range::-moz-range-thumb, .uk-section-primary:not(.uk-preserve-color) .uk-range::-moz-range-thumb, .uk-section-secondary:not(.uk-preserve-color) .uk-range::-moz-range-thumb, .uk-tile-primary:not(.uk-preserve-color) .uk-range::-moz-range-thumb, .uk-tile-secondary:not(.uk-preserve-color) .uk-range::-moz-range-thumb, .uk-card-primary.uk-card-body .uk-range::-moz-range-thumb, .uk-card-primary > :not([class*=uk-card-media]) .uk-range::-moz-range-thumb, .uk-card-secondary.uk-card-body .uk-range::-moz-range-thumb, .uk-card-secondary > :not([class*=uk-card-media]) .uk-range::-moz-range-thumb, .uk-overlay-primary .uk-range::-moz-range-thumb, .uk-offcanvas-bar .uk-range::-moz-range-thumb {
  background: rgb(127.5, 127.5, 127.5);
  border-color: rgb(229.5, 229.5, 229.5);
}
.uk-light .uk-input, .uk-section-primary:not(.uk-preserve-color) .uk-input, .uk-section-secondary:not(.uk-preserve-color) .uk-input, .uk-tile-primary:not(.uk-preserve-color) .uk-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-input, .uk-card-primary.uk-card-body .uk-input, .uk-card-primary > :not([class*=uk-card-media]) .uk-input, .uk-card-secondary.uk-card-body .uk-input, .uk-card-secondary > :not([class*=uk-card-media]) .uk-input, .uk-overlay-primary .uk-input, .uk-offcanvas-bar .uk-input,
.uk-light .uk-select,
.uk-section-primary:not(.uk-preserve-color) .uk-select,
.uk-section-secondary:not(.uk-preserve-color) .uk-select,
.uk-tile-primary:not(.uk-preserve-color) .uk-select,
.uk-tile-secondary:not(.uk-preserve-color) .uk-select,
.uk-card-primary.uk-card-body .uk-select,
.uk-card-primary > :not([class*=uk-card-media]) .uk-select,
.uk-card-secondary.uk-card-body .uk-select,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-select,
.uk-overlay-primary .uk-select,
.uk-offcanvas-bar .uk-select,
.uk-light .uk-textarea,
.uk-section-primary:not(.uk-preserve-color) .uk-textarea,
.uk-section-secondary:not(.uk-preserve-color) .uk-textarea,
.uk-tile-primary:not(.uk-preserve-color) .uk-textarea,
.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea,
.uk-card-primary.uk-card-body .uk-textarea,
.uk-card-primary > :not([class*=uk-card-media]) .uk-textarea,
.uk-card-secondary.uk-card-body .uk-textarea,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-textarea,
.uk-overlay-primary .uk-textarea,
.uk-offcanvas-bar .uk-textarea {
  background-color: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
  background-clip: padding-box;
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-input:focus, .uk-card-primary.uk-card-body .uk-input:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-input:focus, .uk-card-secondary.uk-card-body .uk-input:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-input:focus, .uk-overlay-primary .uk-input:focus, .uk-offcanvas-bar .uk-input:focus,
.uk-light .uk-select:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-select:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-select:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-select:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-select:focus,
.uk-card-primary.uk-card-body .uk-select:focus,
.uk-card-primary > :not([class*=uk-card-media]) .uk-select:focus,
.uk-card-secondary.uk-card-body .uk-select:focus,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-select:focus,
.uk-overlay-primary .uk-select:focus,
.uk-offcanvas-bar .uk-select:focus,
.uk-light .uk-textarea:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-card-primary.uk-card-body .uk-textarea:focus,
.uk-card-primary > :not([class*=uk-card-media]) .uk-textarea:focus,
.uk-card-secondary.uk-card-body .uk-textarea:focus,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-textarea:focus,
.uk-overlay-primary .uk-textarea:focus,
.uk-offcanvas-bar .uk-textarea:focus {
  background-color: rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.7);
  border-color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-input::-moz-placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-input::-moz-placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-input::-moz-placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-input::-moz-placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-input::-moz-placeholder, .uk-card-primary.uk-card-body .uk-input::-moz-placeholder, .uk-card-primary > :not([class*=uk-card-media]) .uk-input::-moz-placeholder, .uk-card-secondary.uk-card-body .uk-input::-moz-placeholder, .uk-card-secondary > :not([class*=uk-card-media]) .uk-input::-moz-placeholder, .uk-overlay-primary .uk-input::-moz-placeholder, .uk-offcanvas-bar .uk-input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-input::placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-input::placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-input::placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-input::placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-input::placeholder, .uk-card-primary.uk-card-body .uk-input::placeholder, .uk-card-primary > :not([class*=uk-card-media]) .uk-input::placeholder, .uk-card-secondary.uk-card-body .uk-input::placeholder, .uk-card-secondary > :not([class*=uk-card-media]) .uk-input::placeholder, .uk-overlay-primary .uk-input::placeholder, .uk-offcanvas-bar .uk-input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-textarea::-moz-placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-textarea::-moz-placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-textarea::-moz-placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-textarea::-moz-placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-textarea::-moz-placeholder, .uk-card-primary.uk-card-body .uk-textarea::-moz-placeholder, .uk-card-primary > :not([class*=uk-card-media]) .uk-textarea::-moz-placeholder, .uk-card-secondary.uk-card-body .uk-textarea::-moz-placeholder, .uk-card-secondary > :not([class*=uk-card-media]) .uk-textarea::-moz-placeholder, .uk-overlay-primary .uk-textarea::-moz-placeholder, .uk-offcanvas-bar .uk-textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-textarea::placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-card-primary.uk-card-body .uk-textarea::placeholder, .uk-card-primary > :not([class*=uk-card-media]) .uk-textarea::placeholder, .uk-card-secondary.uk-card-body .uk-textarea::placeholder, .uk-card-secondary > :not([class*=uk-card-media]) .uk-textarea::placeholder, .uk-overlay-primary .uk-textarea::placeholder, .uk-offcanvas-bar .uk-textarea::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-select:not([multiple]):not([size]), .uk-section-primary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-section-secondary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-tile-primary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-tile-secondary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-card-primary.uk-card-body .uk-select:not([multiple]):not([size]), .uk-card-primary > :not([class*=uk-card-media]) .uk-select:not([multiple]):not([size]), .uk-card-secondary.uk-card-body .uk-select:not([multiple]):not([size]), .uk-card-secondary > :not([class*=uk-card-media]) .uk-select:not([multiple]):not([size]), .uk-overlay-primary .uk-select:not([multiple]):not([size]), .uk-offcanvas-bar .uk-select:not([multiple]):not([size]) {
  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%22rgba(255, 255, 255, 0.7)%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.uk-light .uk-input[list]:hover, .uk-section-primary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-card-primary.uk-card-body .uk-input[list]:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-input[list]:hover, .uk-card-secondary.uk-card-body .uk-input[list]:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-input[list]:hover, .uk-overlay-primary .uk-input[list]:hover, .uk-offcanvas-bar .uk-input[list]:hover,
.uk-light .uk-input[list]:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-card-primary.uk-card-body .uk-input[list]:focus,
.uk-card-primary > :not([class*=uk-card-media]) .uk-input[list]:focus,
.uk-card-secondary.uk-card-body .uk-input[list]:focus,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-input[list]:focus,
.uk-overlay-primary .uk-input[list]:focus,
.uk-offcanvas-bar .uk-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%22rgba(255, 255, 255, 0.7)%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.uk-light .uk-radio, .uk-section-primary:not(.uk-preserve-color) .uk-radio, .uk-section-secondary:not(.uk-preserve-color) .uk-radio, .uk-tile-primary:not(.uk-preserve-color) .uk-radio, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio, .uk-card-primary.uk-card-body .uk-radio, .uk-card-primary > :not([class*=uk-card-media]) .uk-radio, .uk-card-secondary.uk-card-body .uk-radio, .uk-card-secondary > :not([class*=uk-card-media]) .uk-radio, .uk-overlay-primary .uk-radio, .uk-offcanvas-bar .uk-radio,
.uk-light .uk-checkbox,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox,
.uk-card-primary.uk-card-body .uk-checkbox,
.uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox,
.uk-card-secondary.uk-card-body .uk-checkbox,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox,
.uk-overlay-primary .uk-checkbox,
.uk-offcanvas-bar .uk-checkbox {
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-radio:focus, .uk-section-primary:not(.uk-preserve-color) .uk-radio:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:focus, .uk-card-primary.uk-card-body .uk-radio:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-radio:focus, .uk-card-secondary.uk-card-body .uk-radio:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-radio:focus, .uk-overlay-primary .uk-radio:focus, .uk-offcanvas-bar .uk-radio:focus,
.uk-light .uk-checkbox:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-card-primary.uk-card-body .uk-checkbox:focus,
.uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:focus,
.uk-card-secondary.uk-card-body .uk-checkbox:focus,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:focus,
.uk-overlay-primary .uk-checkbox:focus,
.uk-offcanvas-bar .uk-checkbox:focus {
  background-color: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-radio:checked, .uk-section-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-card-primary.uk-card-body .uk-radio:checked, .uk-card-primary > :not([class*=uk-card-media]) .uk-radio:checked, .uk-card-secondary.uk-card-body .uk-radio:checked, .uk-card-secondary > :not([class*=uk-card-media]) .uk-radio:checked, .uk-overlay-primary .uk-radio:checked, .uk-offcanvas-bar .uk-radio:checked,
.uk-light .uk-checkbox:checked,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-card-primary.uk-card-body .uk-checkbox:checked,
.uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:checked,
.uk-card-secondary.uk-card-body .uk-checkbox:checked,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:checked,
.uk-overlay-primary .uk-checkbox:checked,
.uk-offcanvas-bar .uk-checkbox:checked,
.uk-light .uk-checkbox:indeterminate,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-card-primary.uk-card-body .uk-checkbox:indeterminate,
.uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:indeterminate,
.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:indeterminate,
.uk-overlay-primary .uk-checkbox:indeterminate,
.uk-offcanvas-bar .uk-checkbox:indeterminate {
  background-color: #fff;
  border-color: #fff;
}
.uk-light .uk-radio:checked:focus, .uk-section-primary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-card-primary.uk-card-body .uk-radio:checked:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-radio:checked:focus, .uk-card-secondary.uk-card-body .uk-radio:checked:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-radio:checked:focus, .uk-overlay-primary .uk-radio:checked:focus, .uk-offcanvas-bar .uk-radio:checked:focus,
.uk-light .uk-checkbox:checked:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-card-primary.uk-card-body .uk-checkbox:checked:focus,
.uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:checked:focus,
.uk-card-secondary.uk-card-body .uk-checkbox:checked:focus,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:checked:focus,
.uk-overlay-primary .uk-checkbox:checked:focus,
.uk-offcanvas-bar .uk-checkbox:checked:focus,
.uk-light .uk-checkbox:indeterminate:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-card-primary.uk-card-body .uk-checkbox:indeterminate:focus,
.uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:indeterminate:focus,
.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate:focus,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:indeterminate:focus,
.uk-overlay-primary .uk-checkbox:indeterminate:focus,
.uk-offcanvas-bar .uk-checkbox:indeterminate:focus {
  background-color: white;
}
.uk-light .uk-radio:checked, .uk-section-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-card-primary.uk-card-body .uk-radio:checked, .uk-card-primary > :not([class*=uk-card-media]) .uk-radio:checked, .uk-card-secondary.uk-card-body .uk-radio:checked, .uk-card-secondary > :not([class*=uk-card-media]) .uk-radio:checked, .uk-overlay-primary .uk-radio:checked, .uk-offcanvas-bar .uk-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%23666%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-checkbox:checked, .uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked, .uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked, .uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked, .uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked, .uk-card-primary.uk-card-body .uk-checkbox:checked, .uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:checked, .uk-card-secondary.uk-card-body .uk-checkbox:checked, .uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:checked, .uk-overlay-primary .uk-checkbox:checked, .uk-offcanvas-bar .uk-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%23666%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");
}
.uk-light .uk-checkbox:indeterminate, .uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate, .uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate, .uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate, .uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate, .uk-card-primary.uk-card-body .uk-checkbox:indeterminate, .uk-card-primary > :not([class*=uk-card-media]) .uk-checkbox:indeterminate, .uk-card-secondary.uk-card-body .uk-checkbox:indeterminate, .uk-card-secondary > :not([class*=uk-card-media]) .uk-checkbox:indeterminate, .uk-overlay-primary .uk-checkbox:indeterminate, .uk-offcanvas-bar .uk-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%23666%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-form-label, .uk-section-primary:not(.uk-preserve-color) .uk-form-label, .uk-section-secondary:not(.uk-preserve-color) .uk-form-label, .uk-tile-primary:not(.uk-preserve-color) .uk-form-label, .uk-tile-secondary:not(.uk-preserve-color) .uk-form-label, .uk-card-primary.uk-card-body .uk-form-label, .uk-card-primary > :not([class*=uk-card-media]) .uk-form-label, .uk-card-secondary.uk-card-body .uk-form-label, .uk-card-secondary > :not([class*=uk-card-media]) .uk-form-label, .uk-overlay-primary .uk-form-label, .uk-offcanvas-bar .uk-form-label {
  color: #fff;
}
.uk-light .uk-form-icon, .uk-section-primary:not(.uk-preserve-color) .uk-form-icon, .uk-section-secondary:not(.uk-preserve-color) .uk-form-icon, .uk-tile-primary:not(.uk-preserve-color) .uk-form-icon, .uk-tile-secondary:not(.uk-preserve-color) .uk-form-icon, .uk-card-primary.uk-card-body .uk-form-icon, .uk-card-primary > :not([class*=uk-card-media]) .uk-form-icon, .uk-card-secondary.uk-card-body .uk-form-icon, .uk-card-secondary > :not([class*=uk-card-media]) .uk-form-icon, .uk-overlay-primary .uk-form-icon, .uk-offcanvas-bar .uk-form-icon {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-form-icon:hover, .uk-section-primary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-card-primary.uk-card-body .uk-form-icon:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-form-icon:hover, .uk-card-secondary.uk-card-body .uk-form-icon:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-form-icon:hover, .uk-overlay-primary .uk-form-icon:hover, .uk-offcanvas-bar .uk-form-icon:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-grid-divider > :not(.uk-first-column)::before, .uk-section-primary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-section-secondary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-tile-primary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-primary.uk-card-body .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-secondary.uk-card-body .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-grid-divider > :not(.uk-first-column)::before, .uk-overlay-primary .uk-grid-divider > :not(.uk-first-column)::before, .uk-offcanvas-bar .uk-grid-divider > :not(.uk-first-column)::before {
  border-left-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-section-primary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-section-secondary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-tile-primary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-primary.uk-card-body .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-secondary.uk-card-body .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-overlay-primary .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-offcanvas-bar .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-heading-divider, .uk-section-primary:not(.uk-preserve-color) .uk-heading-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-divider, .uk-card-primary.uk-card-body .uk-heading-divider, .uk-card-primary > :not([class*=uk-card-media]) .uk-heading-divider, .uk-card-secondary.uk-card-body .uk-heading-divider, .uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-divider, .uk-overlay-primary .uk-heading-divider, .uk-offcanvas-bar .uk-heading-divider {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-heading-bullet::before, .uk-section-primary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-card-primary.uk-card-body .uk-heading-bullet::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-heading-bullet::before, .uk-card-secondary.uk-card-body .uk-heading-bullet::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-bullet::before, .uk-overlay-primary .uk-heading-bullet::before, .uk-offcanvas-bar .uk-heading-bullet::before {
  border-left-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-heading-line > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-card-primary.uk-card-body .uk-heading-line > ::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-heading-line > ::before, .uk-card-secondary.uk-card-body .uk-heading-line > ::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-line > ::before, .uk-overlay-primary .uk-heading-line > ::before, .uk-offcanvas-bar .uk-heading-line > ::before,
.uk-light .uk-heading-line > ::after,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-card-primary.uk-card-body .uk-heading-line > ::after,
.uk-card-primary > :not([class*=uk-card-media]) .uk-heading-line > ::after,
.uk-card-secondary.uk-card-body .uk-heading-line > ::after,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-heading-line > ::after,
.uk-overlay-primary .uk-heading-line > ::after,
.uk-offcanvas-bar .uk-heading-line > ::after {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-icon-link, .uk-section-primary:not(.uk-preserve-color) .uk-icon-link, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-link, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-link, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link, .uk-card-primary.uk-card-body .uk-icon-link, .uk-card-primary > :not([class*=uk-card-media]) .uk-icon-link, .uk-card-secondary.uk-card-body .uk-icon-link, .uk-card-secondary > :not([class*=uk-card-media]) .uk-icon-link, .uk-overlay-primary .uk-icon-link, .uk-offcanvas-bar .uk-icon-link {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-icon-link:hover, .uk-section-primary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-card-primary.uk-card-body .uk-icon-link:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-icon-link:hover, .uk-card-secondary.uk-card-body .uk-icon-link:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-icon-link:hover, .uk-overlay-primary .uk-icon-link:hover, .uk-offcanvas-bar .uk-icon-link:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-icon-link:active, .uk-section-primary:not(.uk-preserve-color) .uk-icon-link:active, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:active, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:active, .uk-card-primary.uk-card-body .uk-icon-link:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-icon-link:active, .uk-card-secondary.uk-card-body .uk-icon-link:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-icon-link:active, .uk-overlay-primary .uk-icon-link:active, .uk-offcanvas-bar .uk-icon-link:active,
.uk-light .uk-active > .uk-icon-link,
.uk-section-primary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-section-secondary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-tile-primary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-tile-secondary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-card-primary.uk-card-body .uk-active > .uk-icon-link,
.uk-card-primary > :not([class*=uk-card-media]) .uk-active > .uk-icon-link,
.uk-card-secondary.uk-card-body .uk-active > .uk-icon-link,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-active > .uk-icon-link,
.uk-overlay-primary .uk-active > .uk-icon-link,
.uk-offcanvas-bar .uk-active > .uk-icon-link {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-icon-button, .uk-section-primary:not(.uk-preserve-color) .uk-icon-button, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-button, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-button, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button, .uk-card-primary.uk-card-body .uk-icon-button, .uk-card-primary > :not([class*=uk-card-media]) .uk-icon-button, .uk-card-secondary.uk-card-body .uk-icon-button, .uk-card-secondary > :not([class*=uk-card-media]) .uk-icon-button, .uk-overlay-primary .uk-icon-button, .uk-offcanvas-bar .uk-icon-button {
  background-color: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-icon-button:hover, .uk-section-primary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-card-primary.uk-card-body .uk-icon-button:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-icon-button:hover, .uk-card-secondary.uk-card-body .uk-icon-button:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-icon-button:hover, .uk-overlay-primary .uk-icon-button:hover, .uk-offcanvas-bar .uk-icon-button:hover {
  background-color: rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-icon-button:active, .uk-section-primary:not(.uk-preserve-color) .uk-icon-button:active, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:active, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:active, .uk-card-primary.uk-card-body .uk-icon-button:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-icon-button:active, .uk-card-secondary.uk-card-body .uk-icon-button:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-icon-button:active, .uk-overlay-primary .uk-icon-button:active, .uk-offcanvas-bar .uk-icon-button:active {
  background-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-iconnav > * > a, .uk-section-primary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-card-primary.uk-card-body .uk-iconnav > * > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-iconnav > * > a, .uk-card-secondary.uk-card-body .uk-iconnav > * > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-iconnav > * > a, .uk-overlay-primary .uk-iconnav > * > a, .uk-offcanvas-bar .uk-iconnav > * > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-iconnav > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-card-primary.uk-card-body .uk-iconnav > * > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-iconnav > * > a:hover, .uk-card-secondary.uk-card-body .uk-iconnav > * > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-iconnav > * > a:hover, .uk-overlay-primary .uk-iconnav > * > a:hover, .uk-offcanvas-bar .uk-iconnav > * > a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-iconnav > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-card-primary.uk-card-body .uk-iconnav > .uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-iconnav > .uk-active > a, .uk-card-secondary.uk-card-body .uk-iconnav > .uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-iconnav > .uk-active > a, .uk-overlay-primary .uk-iconnav > .uk-active > a, .uk-offcanvas-bar .uk-iconnav > .uk-active > a {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-label, .uk-section-primary:not(.uk-preserve-color) .uk-label, .uk-section-secondary:not(.uk-preserve-color) .uk-label, .uk-tile-primary:not(.uk-preserve-color) .uk-label, .uk-tile-secondary:not(.uk-preserve-color) .uk-label, .uk-card-primary.uk-card-body .uk-label, .uk-card-primary > :not([class*=uk-card-media]) .uk-label, .uk-card-secondary.uk-card-body .uk-label, .uk-card-secondary > :not([class*=uk-card-media]) .uk-label, .uk-overlay-primary .uk-label, .uk-offcanvas-bar .uk-label {
  background-color: #fff;
  color: #666;
}
.uk-light a.uk-link-muted, .uk-section-primary:not(.uk-preserve-color) a.uk-link-muted, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-muted, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-muted, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-muted, .uk-card-primary.uk-card-body a.uk-link-muted, .uk-card-primary > :not([class*=uk-card-media]) a.uk-link-muted, .uk-card-secondary.uk-card-body a.uk-link-muted, .uk-card-secondary > :not([class*=uk-card-media]) a.uk-link-muted, .uk-overlay-primary a.uk-link-muted, .uk-offcanvas-bar a.uk-link-muted,
.uk-light .uk-link-muted a,
.uk-section-primary:not(.uk-preserve-color) .uk-link-muted a,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-muted a,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-muted a,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-muted a,
.uk-card-primary.uk-card-body .uk-link-muted a,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-muted a,
.uk-card-secondary.uk-card-body .uk-link-muted a,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-muted a,
.uk-overlay-primary .uk-link-muted a,
.uk-offcanvas-bar .uk-link-muted a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light a.uk-link-muted:hover, .uk-section-primary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-card-primary.uk-card-body a.uk-link-muted:hover, .uk-card-primary > :not([class*=uk-card-media]) a.uk-link-muted:hover, .uk-card-secondary.uk-card-body a.uk-link-muted:hover, .uk-card-secondary > :not([class*=uk-card-media]) a.uk-link-muted:hover, .uk-overlay-primary a.uk-link-muted:hover, .uk-offcanvas-bar a.uk-link-muted:hover,
.uk-light .uk-link-muted a:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-card-primary.uk-card-body .uk-link-muted a:hover,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-muted a:hover,
.uk-card-secondary.uk-card-body .uk-link-muted a:hover,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-muted a:hover,
.uk-overlay-primary .uk-link-muted a:hover,
.uk-offcanvas-bar .uk-link-muted a:hover,
.uk-light .uk-link-toggle:hover .uk-link-muted,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link-muted,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link-muted,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link-muted,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link-muted,
.uk-overlay-primary .uk-link-toggle:hover .uk-link-muted,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link-muted {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light a.uk-link-text:hover, .uk-section-primary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-card-primary.uk-card-body a.uk-link-text:hover, .uk-card-primary > :not([class*=uk-card-media]) a.uk-link-text:hover, .uk-card-secondary.uk-card-body a.uk-link-text:hover, .uk-card-secondary > :not([class*=uk-card-media]) a.uk-link-text:hover, .uk-overlay-primary a.uk-link-text:hover, .uk-offcanvas-bar a.uk-link-text:hover,
.uk-light .uk-link-text a:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-card-primary.uk-card-body .uk-link-text a:hover,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-text a:hover,
.uk-card-secondary.uk-card-body .uk-link-text a:hover,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-text a:hover,
.uk-overlay-primary .uk-link-text a:hover,
.uk-offcanvas-bar .uk-link-text a:hover,
.uk-light .uk-link-toggle:hover .uk-link-text,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link-text,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link-text,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link-text,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link-text,
.uk-overlay-primary .uk-link-toggle:hover .uk-link-text,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link-text {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light a.uk-link-heading:hover, .uk-section-primary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-card-primary.uk-card-body a.uk-link-heading:hover, .uk-card-primary > :not([class*=uk-card-media]) a.uk-link-heading:hover, .uk-card-secondary.uk-card-body a.uk-link-heading:hover, .uk-card-secondary > :not([class*=uk-card-media]) a.uk-link-heading:hover, .uk-overlay-primary a.uk-link-heading:hover, .uk-offcanvas-bar a.uk-link-heading:hover,
.uk-light .uk-link-heading a:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-card-primary.uk-card-body .uk-link-heading a:hover,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-heading a:hover,
.uk-card-secondary.uk-card-body .uk-link-heading a:hover,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-heading a:hover,
.uk-overlay-primary .uk-link-heading a:hover,
.uk-offcanvas-bar .uk-link-heading a:hover,
.uk-light .uk-link-toggle:hover .uk-link-heading,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link-heading,
.uk-card-primary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link-heading,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link-heading,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-link-toggle:hover .uk-link-heading,
.uk-overlay-primary .uk-link-toggle:hover .uk-link-heading,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link-heading {
  color: #fff;
}
.uk-light .uk-list-muted > ::marker, .uk-section-primary:not(.uk-preserve-color) .uk-list-muted > ::marker, .uk-section-secondary:not(.uk-preserve-color) .uk-list-muted > ::marker, .uk-tile-primary:not(.uk-preserve-color) .uk-list-muted > ::marker, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-muted > ::marker, .uk-card-primary.uk-card-body .uk-list-muted > ::marker, .uk-card-primary > :not([class*=uk-card-media]) .uk-list-muted > ::marker, .uk-card-secondary.uk-card-body .uk-list-muted > ::marker, .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-muted > ::marker, .uk-overlay-primary .uk-list-muted > ::marker, .uk-offcanvas-bar .uk-list-muted > ::marker {
  color: rgba(255, 255, 255, 0.5) !important;
}
.uk-light .uk-list-emphasis > ::marker, .uk-section-primary:not(.uk-preserve-color) .uk-list-emphasis > ::marker, .uk-section-secondary:not(.uk-preserve-color) .uk-list-emphasis > ::marker, .uk-tile-primary:not(.uk-preserve-color) .uk-list-emphasis > ::marker, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-emphasis > ::marker, .uk-card-primary.uk-card-body .uk-list-emphasis > ::marker, .uk-card-primary > :not([class*=uk-card-media]) .uk-list-emphasis > ::marker, .uk-card-secondary.uk-card-body .uk-list-emphasis > ::marker, .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-emphasis > ::marker, .uk-overlay-primary .uk-list-emphasis > ::marker, .uk-offcanvas-bar .uk-list-emphasis > ::marker {
  color: #fff !important;
}
.uk-light .uk-list-primary > ::marker, .uk-section-primary:not(.uk-preserve-color) .uk-list-primary > ::marker, .uk-section-secondary:not(.uk-preserve-color) .uk-list-primary > ::marker, .uk-tile-primary:not(.uk-preserve-color) .uk-list-primary > ::marker, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-primary > ::marker, .uk-card-primary.uk-card-body .uk-list-primary > ::marker, .uk-card-primary > :not([class*=uk-card-media]) .uk-list-primary > ::marker, .uk-card-secondary.uk-card-body .uk-list-primary > ::marker, .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-primary > ::marker, .uk-overlay-primary .uk-list-primary > ::marker, .uk-offcanvas-bar .uk-list-primary > ::marker {
  color: #fff !important;
}
.uk-light .uk-list-secondary > ::marker, .uk-section-primary:not(.uk-preserve-color) .uk-list-secondary > ::marker, .uk-section-secondary:not(.uk-preserve-color) .uk-list-secondary > ::marker, .uk-tile-primary:not(.uk-preserve-color) .uk-list-secondary > ::marker, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-secondary > ::marker, .uk-card-primary.uk-card-body .uk-list-secondary > ::marker, .uk-card-primary > :not([class*=uk-card-media]) .uk-list-secondary > ::marker, .uk-card-secondary.uk-card-body .uk-list-secondary > ::marker, .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-secondary > ::marker, .uk-overlay-primary .uk-list-secondary > ::marker, .uk-offcanvas-bar .uk-list-secondary > ::marker {
  color: #fff !important;
}
.uk-light .uk-list-bullet > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-card-primary.uk-card-body .uk-list-bullet > ::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-list-bullet > ::before, .uk-card-secondary.uk-card-body .uk-list-bullet > ::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-bullet > ::before, .uk-overlay-primary .uk-list-bullet > ::before, .uk-offcanvas-bar .uk-list-bullet > ::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-list-divider > :nth-child(n+2), .uk-section-primary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-section-secondary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-tile-primary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-tile-secondary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-card-primary.uk-card-body .uk-list-divider > :nth-child(n+2), .uk-card-primary > :not([class*=uk-card-media]) .uk-list-divider > :nth-child(n+2), .uk-card-secondary.uk-card-body .uk-list-divider > :nth-child(n+2), .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-divider > :nth-child(n+2), .uk-overlay-primary .uk-list-divider > :nth-child(n+2), .uk-offcanvas-bar .uk-list-divider > :nth-child(n+2) {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-list-striped > *:nth-of-type(odd), .uk-section-primary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-section-secondary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-tile-primary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-tile-secondary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-card-primary.uk-card-body .uk-list-striped > *:nth-of-type(odd), .uk-card-primary > :not([class*=uk-card-media]) .uk-list-striped > *:nth-of-type(odd), .uk-card-secondary.uk-card-body .uk-list-striped > *:nth-of-type(odd), .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-striped > *:nth-of-type(odd), .uk-overlay-primary .uk-list-striped > *:nth-of-type(odd), .uk-offcanvas-bar .uk-list-striped > *:nth-of-type(odd) {
  border-top-color: rgba(255, 255, 255, 0.2);
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-list-striped > :nth-of-type(odd), .uk-section-primary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-section-secondary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-tile-primary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-tile-secondary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-card-primary.uk-card-body .uk-list-striped > :nth-of-type(odd), .uk-card-primary > :not([class*=uk-card-media]) .uk-list-striped > :nth-of-type(odd), .uk-card-secondary.uk-card-body .uk-list-striped > :nth-of-type(odd), .uk-card-secondary > :not([class*=uk-card-media]) .uk-list-striped > :nth-of-type(odd), .uk-overlay-primary .uk-list-striped > :nth-of-type(odd), .uk-offcanvas-bar .uk-list-striped > :nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.1);
}
.uk-light .uk-marker, .uk-section-primary:not(.uk-preserve-color) .uk-marker, .uk-section-secondary:not(.uk-preserve-color) .uk-marker, .uk-tile-primary:not(.uk-preserve-color) .uk-marker, .uk-tile-secondary:not(.uk-preserve-color) .uk-marker, .uk-card-primary.uk-card-body .uk-marker, .uk-card-primary > :not([class*=uk-card-media]) .uk-marker, .uk-card-secondary.uk-card-body .uk-marker, .uk-card-secondary > :not([class*=uk-card-media]) .uk-marker, .uk-overlay-primary .uk-marker, .uk-offcanvas-bar .uk-marker {
  background: #f8f8f8;
  color: #666;
}
.uk-light .uk-marker:hover, .uk-section-primary:not(.uk-preserve-color) .uk-marker:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-marker:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-marker:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-marker:hover, .uk-card-primary.uk-card-body .uk-marker:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-marker:hover, .uk-card-secondary.uk-card-body .uk-marker:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-marker:hover, .uk-overlay-primary .uk-marker:hover, .uk-offcanvas-bar .uk-marker:hover {
  color: #666;
}
.uk-light .uk-nav-default > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-card-primary.uk-card-body .uk-nav-default > li > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default > li > a, .uk-card-secondary.uk-card-body .uk-nav-default > li > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default > li > a, .uk-overlay-primary .uk-nav-default > li > a, .uk-offcanvas-bar .uk-nav-default > li > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-nav-default > li > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-card-primary.uk-card-body .uk-nav-default > li > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default > li > a:hover, .uk-card-secondary.uk-card-body .uk-nav-default > li > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default > li > a:hover, .uk-overlay-primary .uk-nav-default > li > a:hover, .uk-offcanvas-bar .uk-nav-default > li > a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-nav-default > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-default > li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-default > li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default > li.uk-active > a, .uk-overlay-primary .uk-nav-default > li.uk-active > a, .uk-offcanvas-bar .uk-nav-default > li.uk-active > a {
  color: #fff;
}
.uk-light .uk-nav-default .uk-nav-header, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-header, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-header, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-header, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-header, .uk-overlay-primary .uk-nav-default .uk-nav-header, .uk-offcanvas-bar .uk-nav-default .uk-nav-header {
  color: #fff;
}
.uk-light .uk-nav-default .uk-nav-divider, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-divider, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-divider, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-divider, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-divider, .uk-overlay-primary .uk-nav-default .uk-nav-divider, .uk-offcanvas-bar .uk-nav-default .uk-nav-divider {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-nav-default .uk-nav-sub a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a, .uk-overlay-primary .uk-nav-default .uk-nav-sub a, .uk-offcanvas-bar .uk-nav-default .uk-nav-sub a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-nav-default .uk-nav-sub a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a:hover, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub a:hover, .uk-overlay-primary .uk-nav-default .uk-nav-sub a:hover, .uk-offcanvas-bar .uk-nav-default .uk-nav-sub a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-overlay-primary .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-offcanvas-bar .uk-nav-default .uk-nav-sub li.uk-active > a {
  color: #fff;
}
.uk-light .uk-nav-primary > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-card-primary.uk-card-body .uk-nav-primary > li > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary > li > a, .uk-card-secondary.uk-card-body .uk-nav-primary > li > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary > li > a, .uk-overlay-primary .uk-nav-primary > li > a, .uk-offcanvas-bar .uk-nav-primary > li > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-nav-primary > li > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-card-primary.uk-card-body .uk-nav-primary > li > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary > li > a:hover, .uk-card-secondary.uk-card-body .uk-nav-primary > li > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary > li > a:hover, .uk-overlay-primary .uk-nav-primary > li > a:hover, .uk-offcanvas-bar .uk-nav-primary > li > a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-nav-primary > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-primary > li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-primary > li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary > li.uk-active > a, .uk-overlay-primary .uk-nav-primary > li.uk-active > a, .uk-offcanvas-bar .uk-nav-primary > li.uk-active > a {
  color: #fff;
}
.uk-light .uk-nav-primary .uk-nav-header, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-header, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-header, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-header, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-header, .uk-overlay-primary .uk-nav-primary .uk-nav-header, .uk-offcanvas-bar .uk-nav-primary .uk-nav-header {
  color: #fff;
}
.uk-light .uk-nav-primary .uk-nav-divider, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-divider, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-divider, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-divider, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-divider, .uk-overlay-primary .uk-nav-primary .uk-nav-divider, .uk-offcanvas-bar .uk-nav-primary .uk-nav-divider {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-nav-primary .uk-nav-sub a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a, .uk-overlay-primary .uk-nav-primary .uk-nav-sub a, .uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-nav-primary .uk-nav-sub a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a:hover, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub a:hover, .uk-overlay-primary .uk-nav-primary .uk-nav-sub a:hover, .uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-overlay-primary .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-offcanvas-bar .uk-nav-primary .uk-nav-sub li.uk-active > a {
  color: #fff;
}
.uk-light .uk-nav-secondary > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary > li > a, .uk-card-primary.uk-card-body .uk-nav-secondary > li > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary > li > a, .uk-card-secondary.uk-card-body .uk-nav-secondary > li > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary > li > a, .uk-overlay-primary .uk-nav-secondary > li > a, .uk-offcanvas-bar .uk-nav-secondary > li > a {
  color: #fff;
}
.uk-light .uk-nav-secondary > li > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover, .uk-card-primary.uk-card-body .uk-nav-secondary > li > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary > li > a:hover, .uk-card-secondary.uk-card-body .uk-nav-secondary > li > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary > li > a:hover, .uk-overlay-primary .uk-nav-secondary > li > a:hover, .uk-offcanvas-bar .uk-nav-secondary > li > a:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
}
.uk-light .uk-nav-secondary > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-secondary > li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-secondary > li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary > li.uk-active > a, .uk-overlay-primary .uk-nav-secondary > li.uk-active > a, .uk-offcanvas-bar .uk-nav-secondary > li.uk-active > a {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
}
.uk-light .uk-nav-secondary .uk-nav-subtitle, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-subtitle, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-subtitle, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-subtitle, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-subtitle, .uk-card-primary.uk-card-body .uk-nav-secondary .uk-nav-subtitle, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-subtitle, .uk-card-secondary.uk-card-body .uk-nav-secondary .uk-nav-subtitle, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-subtitle, .uk-overlay-primary .uk-nav-secondary .uk-nav-subtitle, .uk-offcanvas-bar .uk-nav-secondary .uk-nav-subtitle {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-card-primary.uk-card-body .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-card-secondary.uk-card-body .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-overlay-primary .uk-nav-secondary > li > a:hover .uk-nav-subtitle, .uk-offcanvas-bar .uk-nav-secondary > li > a:hover .uk-nav-subtitle {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-card-primary.uk-card-body .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-card-secondary.uk-card-body .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-overlay-primary .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle, .uk-offcanvas-bar .uk-nav-secondary > li.uk-active > a .uk-nav-subtitle {
  color: #fff;
}
.uk-light .uk-nav-secondary .uk-nav-header, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-header, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-header, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-header, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-header, .uk-card-primary.uk-card-body .uk-nav-secondary .uk-nav-header, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-header, .uk-card-secondary.uk-card-body .uk-nav-secondary .uk-nav-header, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-header, .uk-overlay-primary .uk-nav-secondary .uk-nav-header, .uk-offcanvas-bar .uk-nav-secondary .uk-nav-header {
  color: #fff;
}
.uk-light .uk-nav-secondary .uk-nav-divider, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-divider, .uk-card-primary.uk-card-body .uk-nav-secondary .uk-nav-divider, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-divider, .uk-card-secondary.uk-card-body .uk-nav-secondary .uk-nav-divider, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-divider, .uk-overlay-primary .uk-nav-secondary .uk-nav-divider, .uk-offcanvas-bar .uk-nav-secondary .uk-nav-divider {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-nav-secondary .uk-nav-sub a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a, .uk-card-primary.uk-card-body .uk-nav-secondary .uk-nav-sub a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-sub a, .uk-card-secondary.uk-card-body .uk-nav-secondary .uk-nav-sub a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-sub a, .uk-overlay-primary .uk-nav-secondary .uk-nav-sub a, .uk-offcanvas-bar .uk-nav-secondary .uk-nav-sub a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-nav-secondary .uk-nav-sub a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub a:hover, .uk-card-primary.uk-card-body .uk-nav-secondary .uk-nav-sub a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-sub a:hover, .uk-card-secondary.uk-card-body .uk-nav-secondary .uk-nav-sub a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-sub a:hover, .uk-overlay-primary .uk-nav-secondary .uk-nav-sub a:hover, .uk-offcanvas-bar .uk-nav-secondary .uk-nav-sub a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-overlay-primary .uk-nav-secondary .uk-nav-sub li.uk-active > a, .uk-offcanvas-bar .uk-nav-secondary .uk-nav-sub li.uk-active > a {
  color: #fff;
}
.uk-light .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-section-primary:not(.uk-preserve-color) .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-section-secondary:not(.uk-preserve-color) .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-tile-primary:not(.uk-preserve-color) .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-tile-secondary:not(.uk-preserve-color) .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-card-primary.uk-card-body .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-card-primary > :not([class*=uk-card-media]) .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-card-secondary.uk-card-body .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-card-secondary > :not([class*=uk-card-media]) .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-overlay-primary .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider), .uk-offcanvas-bar .uk-nav.uk-nav-divider > :not(.uk-nav-divider) + :not(.uk-nav-header, .uk-nav-divider) {
  border-top-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-navbar-nav > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-nav > li > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-nav > li > a, .uk-overlay-primary .uk-navbar-nav > li > a, .uk-offcanvas-bar .uk-navbar-nav > li > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-navbar-nav > li:hover > a, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li:hover > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-nav > li:hover > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li:hover > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-nav > li:hover > a, .uk-overlay-primary .uk-navbar-nav > li:hover > a, .uk-offcanvas-bar .uk-navbar-nav > li:hover > a,
.uk-light .uk-navbar-nav > li > a[aria-expanded=true],
.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a[aria-expanded=true],
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a[aria-expanded=true],
.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a[aria-expanded=true],
.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a[aria-expanded=true],
.uk-card-primary.uk-card-body .uk-navbar-nav > li > a[aria-expanded=true],
.uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-nav > li > a[aria-expanded=true],
.uk-card-secondary.uk-card-body .uk-navbar-nav > li > a[aria-expanded=true],
.uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-nav > li > a[aria-expanded=true],
.uk-overlay-primary .uk-navbar-nav > li > a[aria-expanded=true],
.uk-offcanvas-bar .uk-navbar-nav > li > a[aria-expanded=true] {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-navbar-nav > li > a:active, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-card-primary.uk-card-body .uk-navbar-nav > li > a:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-nav > li > a:active, .uk-card-secondary.uk-card-body .uk-navbar-nav > li > a:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-nav > li > a:active, .uk-overlay-primary .uk-navbar-nav > li > a:active, .uk-offcanvas-bar .uk-navbar-nav > li > a:active {
  color: #fff;
}
.uk-light .uk-navbar-nav > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li.uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-nav > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li.uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-nav > li.uk-active > a, .uk-overlay-primary .uk-navbar-nav > li.uk-active > a, .uk-offcanvas-bar .uk-navbar-nav > li.uk-active > a {
  color: #fff;
}
.uk-light .uk-navbar-item, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-item, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-item, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-item, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-item, .uk-card-primary.uk-card-body .uk-navbar-item, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-item, .uk-card-secondary.uk-card-body .uk-navbar-item, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-item, .uk-overlay-primary .uk-navbar-item, .uk-offcanvas-bar .uk-navbar-item {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-navbar-toggle, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-card-primary.uk-card-body .uk-navbar-toggle, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-toggle, .uk-card-secondary.uk-card-body .uk-navbar-toggle, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-toggle, .uk-overlay-primary .uk-navbar-toggle, .uk-offcanvas-bar .uk-navbar-toggle {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-navbar-toggle:hover, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-card-primary.uk-card-body .uk-navbar-toggle:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-toggle:hover, .uk-card-secondary.uk-card-body .uk-navbar-toggle:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-toggle:hover, .uk-overlay-primary .uk-navbar-toggle:hover, .uk-offcanvas-bar .uk-navbar-toggle:hover,
.uk-light .uk-navbar-toggle[aria-expanded=true],
.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle[aria-expanded=true],
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle[aria-expanded=true],
.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle[aria-expanded=true],
.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle[aria-expanded=true],
.uk-card-primary.uk-card-body .uk-navbar-toggle[aria-expanded=true],
.uk-card-primary > :not([class*=uk-card-media]) .uk-navbar-toggle[aria-expanded=true],
.uk-card-secondary.uk-card-body .uk-navbar-toggle[aria-expanded=true],
.uk-card-secondary > :not([class*=uk-card-media]) .uk-navbar-toggle[aria-expanded=true],
.uk-overlay-primary .uk-navbar-toggle[aria-expanded=true],
.uk-offcanvas-bar .uk-navbar-toggle[aria-expanded=true] {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-pagination > * > *, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-card-primary.uk-card-body .uk-pagination > * > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-pagination > * > *, .uk-card-secondary.uk-card-body .uk-pagination > * > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-pagination > * > *, .uk-overlay-primary .uk-pagination > * > *, .uk-offcanvas-bar .uk-pagination > * > * {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-pagination > * > :hover, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-card-primary.uk-card-body .uk-pagination > * > :hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-pagination > * > :hover, .uk-card-secondary.uk-card-body .uk-pagination > * > :hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-pagination > * > :hover, .uk-overlay-primary .uk-pagination > * > :hover, .uk-offcanvas-bar .uk-pagination > * > :hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-pagination > .uk-active > *, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-card-primary.uk-card-body .uk-pagination > .uk-active > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-pagination > .uk-active > *, .uk-card-secondary.uk-card-body .uk-pagination > .uk-active > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-pagination > .uk-active > *, .uk-overlay-primary .uk-pagination > .uk-active > *, .uk-offcanvas-bar .uk-pagination > .uk-active > * {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-pagination > .uk-disabled > *, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-card-primary.uk-card-body .uk-pagination > .uk-disabled > *, .uk-card-primary > :not([class*=uk-card-media]) .uk-pagination > .uk-disabled > *, .uk-card-secondary.uk-card-body .uk-pagination > .uk-disabled > *, .uk-card-secondary > :not([class*=uk-card-media]) .uk-pagination > .uk-disabled > *, .uk-overlay-primary .uk-pagination > .uk-disabled > *, .uk-offcanvas-bar .uk-pagination > .uk-disabled > * {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-input, .uk-card-primary.uk-card-body .uk-search-input, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-input, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-input, .uk-overlay-primary .uk-search-input, .uk-offcanvas-bar .uk-search-input {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-search-input::-moz-placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-search-input::-moz-placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-search-input::-moz-placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-search-input::-moz-placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-input::-moz-placeholder, .uk-card-primary.uk-card-body .uk-search-input::-moz-placeholder, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-input::-moz-placeholder, .uk-card-secondary.uk-card-body .uk-search-input::-moz-placeholder, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-input::-moz-placeholder, .uk-overlay-primary .uk-search-input::-moz-placeholder, .uk-offcanvas-bar .uk-search-input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-search-input::placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-card-primary.uk-card-body .uk-search-input::placeholder, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-input::placeholder, .uk-card-secondary.uk-card-body .uk-search-input::placeholder, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-input::placeholder, .uk-overlay-primary .uk-search-input::placeholder, .uk-offcanvas-bar .uk-search-input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-search .uk-search-icon, .uk-section-primary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-section-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-tile-primary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-tile-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-card-primary.uk-card-body .uk-search .uk-search-icon, .uk-card-primary > :not([class*=uk-card-media]) .uk-search .uk-search-icon, .uk-card-secondary.uk-card-body .uk-search .uk-search-icon, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search .uk-search-icon, .uk-overlay-primary .uk-search .uk-search-icon, .uk-offcanvas-bar .uk-search .uk-search-icon {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-search .uk-search-icon:hover, .uk-section-primary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-card-primary.uk-card-body .uk-search .uk-search-icon:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-search .uk-search-icon:hover, .uk-card-secondary.uk-card-body .uk-search .uk-search-icon:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search .uk-search-icon:hover, .uk-overlay-primary .uk-search .uk-search-icon:hover, .uk-offcanvas-bar .uk-search .uk-search-icon:hover {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-search-default .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-card-primary.uk-card-body .uk-search-default .uk-search-input, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-default .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-default .uk-search-input, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-default .uk-search-input, .uk-overlay-primary .uk-search-default .uk-search-input, .uk-offcanvas-bar .uk-search-default .uk-search-input {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-search-default .uk-search-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-card-primary.uk-card-body .uk-search-default .uk-search-input:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-default .uk-search-input:focus, .uk-card-secondary.uk-card-body .uk-search-default .uk-search-input:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-default .uk-search-input:focus, .uk-overlay-primary .uk-search-default .uk-search-input:focus, .uk-offcanvas-bar .uk-search-default .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0.05);
}
.uk-light .uk-search-navbar .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-card-primary.uk-card-body .uk-search-navbar .uk-search-input, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-navbar .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-navbar .uk-search-input, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-navbar .uk-search-input, .uk-overlay-primary .uk-search-navbar .uk-search-input, .uk-offcanvas-bar .uk-search-navbar .uk-search-input {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-search-navbar .uk-search-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input:focus, .uk-card-primary.uk-card-body .uk-search-navbar .uk-search-input:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-navbar .uk-search-input:focus, .uk-card-secondary.uk-card-body .uk-search-navbar .uk-search-input:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-navbar .uk-search-input:focus, .uk-overlay-primary .uk-search-navbar .uk-search-input:focus, .uk-offcanvas-bar .uk-search-navbar .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0.05);
}
.uk-light .uk-search-medium .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-medium .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-medium .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-medium .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-medium .uk-search-input, .uk-card-primary.uk-card-body .uk-search-medium .uk-search-input, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-medium .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-medium .uk-search-input, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-medium .uk-search-input, .uk-overlay-primary .uk-search-medium .uk-search-input, .uk-offcanvas-bar .uk-search-medium .uk-search-input {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-search-medium .uk-search-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-search-medium .uk-search-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-search-medium .uk-search-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-search-medium .uk-search-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-medium .uk-search-input:focus, .uk-card-primary.uk-card-body .uk-search-medium .uk-search-input:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-medium .uk-search-input:focus, .uk-card-secondary.uk-card-body .uk-search-medium .uk-search-input:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-medium .uk-search-input:focus, .uk-overlay-primary .uk-search-medium .uk-search-input:focus, .uk-offcanvas-bar .uk-search-medium .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0.05);
}
.uk-light .uk-search-large .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-card-primary.uk-card-body .uk-search-large .uk-search-input, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-large .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-large .uk-search-input, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-large .uk-search-input, .uk-overlay-primary .uk-search-large .uk-search-input, .uk-offcanvas-bar .uk-search-large .uk-search-input {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-search-large .uk-search-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input:focus, .uk-card-primary.uk-card-body .uk-search-large .uk-search-input:focus, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-large .uk-search-input:focus, .uk-card-secondary.uk-card-body .uk-search-large .uk-search-input:focus, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-large .uk-search-input:focus, .uk-overlay-primary .uk-search-large .uk-search-input:focus, .uk-offcanvas-bar .uk-search-large .uk-search-input:focus {
  background-color: rgba(0, 0, 0, 0.05);
}
.uk-light .uk-search-toggle, .uk-section-primary:not(.uk-preserve-color) .uk-search-toggle, .uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle, .uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle, .uk-card-primary.uk-card-body .uk-search-toggle, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-toggle, .uk-card-secondary.uk-card-body .uk-search-toggle, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-toggle, .uk-overlay-primary .uk-search-toggle, .uk-offcanvas-bar .uk-search-toggle {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-search-toggle:hover, .uk-section-primary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-card-primary.uk-card-body .uk-search-toggle:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-search-toggle:hover, .uk-card-secondary.uk-card-body .uk-search-toggle:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-search-toggle:hover, .uk-overlay-primary .uk-search-toggle:hover, .uk-offcanvas-bar .uk-search-toggle:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-slidenav, .uk-section-primary:not(.uk-preserve-color) .uk-slidenav, .uk-section-secondary:not(.uk-preserve-color) .uk-slidenav, .uk-tile-primary:not(.uk-preserve-color) .uk-slidenav, .uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav, .uk-card-primary.uk-card-body .uk-slidenav, .uk-card-primary > :not([class*=uk-card-media]) .uk-slidenav, .uk-card-secondary.uk-card-body .uk-slidenav, .uk-card-secondary > :not([class*=uk-card-media]) .uk-slidenav, .uk-overlay-primary .uk-slidenav, .uk-offcanvas-bar .uk-slidenav {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-slidenav:hover, .uk-section-primary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-card-primary.uk-card-body .uk-slidenav:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-slidenav:hover, .uk-card-secondary.uk-card-body .uk-slidenav:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-slidenav:hover, .uk-overlay-primary .uk-slidenav:hover, .uk-offcanvas-bar .uk-slidenav:hover {
  color: rgba(255, 255, 255, 0.95);
}
.uk-light .uk-slidenav:active, .uk-section-primary:not(.uk-preserve-color) .uk-slidenav:active, .uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:active, .uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:active, .uk-card-primary.uk-card-body .uk-slidenav:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-slidenav:active, .uk-card-secondary.uk-card-body .uk-slidenav:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-slidenav:active, .uk-overlay-primary .uk-slidenav:active, .uk-offcanvas-bar .uk-slidenav:active {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-subnav > * > :first-child, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-card-primary.uk-card-body .uk-subnav > * > :first-child, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav > * > :first-child, .uk-card-secondary.uk-card-body .uk-subnav > * > :first-child, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav > * > :first-child, .uk-overlay-primary .uk-subnav > * > :first-child, .uk-offcanvas-bar .uk-subnav > * > :first-child {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-subnav > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-card-primary.uk-card-body .uk-subnav > * > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav > * > a:hover, .uk-card-secondary.uk-card-body .uk-subnav > * > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav > * > a:hover, .uk-overlay-primary .uk-subnav > * > a:hover, .uk-offcanvas-bar .uk-subnav > * > a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-subnav > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-card-primary.uk-card-body .uk-subnav > .uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav > .uk-active > a, .uk-card-secondary.uk-card-body .uk-subnav > .uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav > .uk-active > a, .uk-overlay-primary .uk-subnav > .uk-active > a, .uk-offcanvas-bar .uk-subnav > .uk-active > a {
  color: #fff;
}
.uk-light .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary.uk-card-body .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary.uk-card-body .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-overlay-primary .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-offcanvas-bar .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before {
  border-left-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-subnav-pill > * > :first-child, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-card-primary.uk-card-body .uk-subnav-pill > * > :first-child, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav-pill > * > :first-child, .uk-card-secondary.uk-card-body .uk-subnav-pill > * > :first-child, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav-pill > * > :first-child, .uk-overlay-primary .uk-subnav-pill > * > :first-child, .uk-offcanvas-bar .uk-subnav-pill > * > :first-child {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-subnav-pill > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-card-primary.uk-card-body .uk-subnav-pill > * > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav-pill > * > a:hover, .uk-card-secondary.uk-card-body .uk-subnav-pill > * > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav-pill > * > a:hover, .uk-overlay-primary .uk-subnav-pill > * > a:hover, .uk-offcanvas-bar .uk-subnav-pill > * > a:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-subnav-pill > * > a:active, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-card-primary.uk-card-body .uk-subnav-pill > * > a:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav-pill > * > a:active, .uk-card-secondary.uk-card-body .uk-subnav-pill > * > a:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav-pill > * > a:active, .uk-overlay-primary .uk-subnav-pill > * > a:active, .uk-offcanvas-bar .uk-subnav-pill > * > a:active {
  background-color: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-subnav-pill > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-card-primary.uk-card-body .uk-subnav-pill > .uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav-pill > .uk-active > a, .uk-card-secondary.uk-card-body .uk-subnav-pill > .uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav-pill > .uk-active > a, .uk-overlay-primary .uk-subnav-pill > .uk-active > a, .uk-offcanvas-bar .uk-subnav-pill > .uk-active > a {
  background-color: #fff;
  color: #666;
}
.uk-light .uk-subnav > .uk-disabled > a, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-card-primary.uk-card-body .uk-subnav > .uk-disabled > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-subnav > .uk-disabled > a, .uk-card-secondary.uk-card-body .uk-subnav > .uk-disabled > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-subnav > .uk-disabled > a, .uk-overlay-primary .uk-subnav > .uk-disabled > a, .uk-offcanvas-bar .uk-subnav > .uk-disabled > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-tab::before, .uk-section-primary:not(.uk-preserve-color) .uk-tab::before, .uk-section-secondary:not(.uk-preserve-color) .uk-tab::before, .uk-tile-primary:not(.uk-preserve-color) .uk-tab::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab::before, .uk-card-primary.uk-card-body .uk-tab::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-tab::before, .uk-card-secondary.uk-card-body .uk-tab::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-tab::before, .uk-overlay-primary .uk-tab::before, .uk-offcanvas-bar .uk-tab::before {
  border-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-tab > * > a, .uk-section-primary:not(.uk-preserve-color) .uk-tab > * > a, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > * > a, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > * > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > * > a, .uk-card-primary.uk-card-body .uk-tab > * > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-tab > * > a, .uk-card-secondary.uk-card-body .uk-tab > * > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-tab > * > a, .uk-overlay-primary .uk-tab > * > a, .uk-offcanvas-bar .uk-tab > * > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-tab > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-card-primary.uk-card-body .uk-tab > * > a:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-tab > * > a:hover, .uk-card-secondary.uk-card-body .uk-tab > * > a:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-tab > * > a:hover, .uk-overlay-primary .uk-tab > * > a:hover, .uk-offcanvas-bar .uk-tab > * > a:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-tab > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-card-primary.uk-card-body .uk-tab > .uk-active > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-tab > .uk-active > a, .uk-card-secondary.uk-card-body .uk-tab > .uk-active > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-tab > .uk-active > a, .uk-overlay-primary .uk-tab > .uk-active > a, .uk-offcanvas-bar .uk-tab > .uk-active > a {
  color: #fff;
  border-color: #fff;
}
.uk-light .uk-tab > .uk-disabled > a, .uk-section-primary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-card-primary.uk-card-body .uk-tab > .uk-disabled > a, .uk-card-primary > :not([class*=uk-card-media]) .uk-tab > .uk-disabled > a, .uk-card-secondary.uk-card-body .uk-tab > .uk-disabled > a, .uk-card-secondary > :not([class*=uk-card-media]) .uk-tab > .uk-disabled > a, .uk-overlay-primary .uk-tab > .uk-disabled > a, .uk-offcanvas-bar .uk-tab > .uk-disabled > a {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-table-striped > tr:nth-of-type(even):last-child, .uk-section-primary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-section-secondary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-tile-primary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-tile-secondary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-primary.uk-card-body .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-primary > :not([class*=uk-card-media]) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-secondary.uk-card-body .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-secondary > :not([class*=uk-card-media]) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-overlay-primary .uk-table-striped > tr:nth-of-type(even):last-child, .uk-offcanvas-bar .uk-table-striped > tr:nth-of-type(even):last-child,
.uk-light .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-section-primary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-section-secondary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-tile-primary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-tile-secondary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-primary.uk-card-body .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-primary > :not([class*=uk-card-media]) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-secondary.uk-card-body .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-overlay-primary .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-offcanvas-bar .uk-table-striped tbody tr:nth-of-type(even):last-child {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.uk-light .uk-text-lead, .uk-section-primary:not(.uk-preserve-color) .uk-text-lead, .uk-section-secondary:not(.uk-preserve-color) .uk-text-lead, .uk-tile-primary:not(.uk-preserve-color) .uk-text-lead, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-lead, .uk-card-primary.uk-card-body .uk-text-lead, .uk-card-primary > :not([class*=uk-card-media]) .uk-text-lead, .uk-card-secondary.uk-card-body .uk-text-lead, .uk-card-secondary > :not([class*=uk-card-media]) .uk-text-lead, .uk-overlay-primary .uk-text-lead, .uk-offcanvas-bar .uk-text-lead {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-text-meta, .uk-section-primary:not(.uk-preserve-color) .uk-text-meta, .uk-section-secondary:not(.uk-preserve-color) .uk-text-meta, .uk-tile-primary:not(.uk-preserve-color) .uk-text-meta, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-meta, .uk-card-primary.uk-card-body .uk-text-meta, .uk-card-primary > :not([class*=uk-card-media]) .uk-text-meta, .uk-card-secondary.uk-card-body .uk-text-meta, .uk-card-secondary > :not([class*=uk-card-media]) .uk-text-meta, .uk-overlay-primary .uk-text-meta, .uk-offcanvas-bar .uk-text-meta {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-text-muted, .uk-section-primary:not(.uk-preserve-color) .uk-text-muted, .uk-section-secondary:not(.uk-preserve-color) .uk-text-muted, .uk-tile-primary:not(.uk-preserve-color) .uk-text-muted, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-muted, .uk-card-primary.uk-card-body .uk-text-muted, .uk-card-primary > :not([class*=uk-card-media]) .uk-text-muted, .uk-card-secondary.uk-card-body .uk-text-muted, .uk-card-secondary > :not([class*=uk-card-media]) .uk-text-muted, .uk-overlay-primary .uk-text-muted, .uk-offcanvas-bar .uk-text-muted {
  color: rgba(255, 255, 255, 0.5) !important;
}
.uk-light .uk-text-emphasis, .uk-section-primary:not(.uk-preserve-color) .uk-text-emphasis, .uk-section-secondary:not(.uk-preserve-color) .uk-text-emphasis, .uk-tile-primary:not(.uk-preserve-color) .uk-text-emphasis, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-emphasis, .uk-card-primary.uk-card-body .uk-text-emphasis, .uk-card-primary > :not([class*=uk-card-media]) .uk-text-emphasis, .uk-card-secondary.uk-card-body .uk-text-emphasis, .uk-card-secondary > :not([class*=uk-card-media]) .uk-text-emphasis, .uk-overlay-primary .uk-text-emphasis, .uk-offcanvas-bar .uk-text-emphasis {
  color: #fff !important;
}
.uk-light .uk-text-primary, .uk-section-primary:not(.uk-preserve-color) .uk-text-primary, .uk-section-secondary:not(.uk-preserve-color) .uk-text-primary, .uk-tile-primary:not(.uk-preserve-color) .uk-text-primary, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-primary, .uk-card-primary.uk-card-body .uk-text-primary, .uk-card-primary > :not([class*=uk-card-media]) .uk-text-primary, .uk-card-secondary.uk-card-body .uk-text-primary, .uk-card-secondary > :not([class*=uk-card-media]) .uk-text-primary, .uk-overlay-primary .uk-text-primary, .uk-offcanvas-bar .uk-text-primary {
  color: #fff !important;
}
.uk-light .uk-text-secondary, .uk-section-primary:not(.uk-preserve-color) .uk-text-secondary, .uk-section-secondary:not(.uk-preserve-color) .uk-text-secondary, .uk-tile-primary:not(.uk-preserve-color) .uk-text-secondary, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-secondary, .uk-card-primary.uk-card-body .uk-text-secondary, .uk-card-primary > :not([class*=uk-card-media]) .uk-text-secondary, .uk-card-secondary.uk-card-body .uk-text-secondary, .uk-card-secondary > :not([class*=uk-card-media]) .uk-text-secondary, .uk-overlay-primary .uk-text-secondary, .uk-offcanvas-bar .uk-text-secondary {
  color: #fff !important;
}
.uk-light .uk-thumbnav > * > *::after, .uk-section-primary:not(.uk-preserve-color) .uk-thumbnav > * > *::after, .uk-section-secondary:not(.uk-preserve-color) .uk-thumbnav > * > *::after, .uk-tile-primary:not(.uk-preserve-color) .uk-thumbnav > * > *::after, .uk-tile-secondary:not(.uk-preserve-color) .uk-thumbnav > * > *::after, .uk-card-primary.uk-card-body .uk-thumbnav > * > *::after, .uk-card-primary > :not([class*=uk-card-media]) .uk-thumbnav > * > *::after, .uk-card-secondary.uk-card-body .uk-thumbnav > * > *::after, .uk-card-secondary > :not([class*=uk-card-media]) .uk-thumbnav > * > *::after, .uk-overlay-primary .uk-thumbnav > * > *::after, .uk-offcanvas-bar .uk-thumbnav > * > *::after {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4));
}
.uk-light .uk-totop, .uk-section-primary:not(.uk-preserve-color) .uk-totop, .uk-section-secondary:not(.uk-preserve-color) .uk-totop, .uk-tile-primary:not(.uk-preserve-color) .uk-totop, .uk-tile-secondary:not(.uk-preserve-color) .uk-totop, .uk-card-primary.uk-card-body .uk-totop, .uk-card-primary > :not([class*=uk-card-media]) .uk-totop, .uk-card-secondary.uk-card-body .uk-totop, .uk-card-secondary > :not([class*=uk-card-media]) .uk-totop, .uk-overlay-primary .uk-totop, .uk-offcanvas-bar .uk-totop {
  color: rgba(255, 255, 255, 0.5);
}
.uk-light .uk-totop:hover, .uk-section-primary:not(.uk-preserve-color) .uk-totop:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-totop:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-totop:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-totop:hover, .uk-card-primary.uk-card-body .uk-totop:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-totop:hover, .uk-card-secondary.uk-card-body .uk-totop:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-totop:hover, .uk-overlay-primary .uk-totop:hover, .uk-offcanvas-bar .uk-totop:hover {
  color: rgba(255, 255, 255, 0.7);
}
.uk-light .uk-totop:active, .uk-section-primary:not(.uk-preserve-color) .uk-totop:active, .uk-section-secondary:not(.uk-preserve-color) .uk-totop:active, .uk-tile-primary:not(.uk-preserve-color) .uk-totop:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-totop:active, .uk-card-primary.uk-card-body .uk-totop:active, .uk-card-primary > :not([class*=uk-card-media]) .uk-totop:active, .uk-card-secondary.uk-card-body .uk-totop:active, .uk-card-secondary > :not([class*=uk-card-media]) .uk-totop:active, .uk-overlay-primary .uk-totop:active, .uk-offcanvas-bar .uk-totop:active {
  color: #fff;
}
.uk-light .uk-logo, .uk-section-primary:not(.uk-preserve-color) .uk-logo, .uk-section-secondary:not(.uk-preserve-color) .uk-logo, .uk-tile-primary:not(.uk-preserve-color) .uk-logo, .uk-tile-secondary:not(.uk-preserve-color) .uk-logo, .uk-card-primary.uk-card-body .uk-logo, .uk-card-primary > :not([class*=uk-card-media]) .uk-logo, .uk-card-secondary.uk-card-body .uk-logo, .uk-card-secondary > :not([class*=uk-card-media]) .uk-logo, .uk-overlay-primary .uk-logo, .uk-offcanvas-bar .uk-logo {
  color: #fff;
}
.uk-light .uk-logo:hover, .uk-section-primary:not(.uk-preserve-color) .uk-logo:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-logo:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-logo:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-logo:hover, .uk-card-primary.uk-card-body .uk-logo:hover, .uk-card-primary > :not([class*=uk-card-media]) .uk-logo:hover, .uk-card-secondary.uk-card-body .uk-logo:hover, .uk-card-secondary > :not([class*=uk-card-media]) .uk-logo:hover, .uk-overlay-primary .uk-logo:hover, .uk-offcanvas-bar .uk-logo:hover {
  color: #fff;
}
.uk-light .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-section-primary:not(.uk-preserve-color) .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-section-secondary:not(.uk-preserve-color) .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-tile-primary:not(.uk-preserve-color) .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-tile-secondary:not(.uk-preserve-color) .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-card-primary.uk-card-body .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-card-primary > :not([class*=uk-card-media]) .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-card-secondary.uk-card-body .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-card-secondary > :not([class*=uk-card-media]) .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-overlay-primary .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse), .uk-offcanvas-bar .uk-logo:has(.uk-logo-inverse) > :not(picture:has(.uk-logo-inverse)):not(.uk-logo-inverse) {
  display: none;
}
.uk-light .uk-logo-inverse, .uk-section-primary:not(.uk-preserve-color) .uk-logo-inverse, .uk-section-secondary:not(.uk-preserve-color) .uk-logo-inverse, .uk-tile-primary:not(.uk-preserve-color) .uk-logo-inverse, .uk-tile-secondary:not(.uk-preserve-color) .uk-logo-inverse, .uk-card-primary.uk-card-body .uk-logo-inverse, .uk-card-primary > :not([class*=uk-card-media]) .uk-logo-inverse, .uk-card-secondary.uk-card-body .uk-logo-inverse, .uk-card-secondary > :not([class*=uk-card-media]) .uk-logo-inverse, .uk-overlay-primary .uk-logo-inverse, .uk-offcanvas-bar .uk-logo-inverse {
  display: block;
}
.uk-light .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-card-primary.uk-card-body .uk-accordion-title::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-accordion-title::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-accordion-title::before, .uk-overlay-primary .uk-accordion-title::before, .uk-offcanvas-bar .uk-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-open > .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-card-primary.uk-card-body .uk-open > .uk-accordion-title::before, .uk-card-primary > :not([class*=uk-card-media]) .uk-open > .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-open > .uk-accordion-title::before, .uk-card-secondary > :not([class*=uk-card-media]) .uk-open > .uk-accordion-title::before, .uk-overlay-primary .uk-open > .uk-accordion-title::before, .uk-offcanvas-bar .uk-open > .uk-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.uk-light .uk-table-striped > tr:nth-of-type(even):last-child, .uk-section-primary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-section-secondary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-tile-primary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-tile-secondary:not(.uk-preserve-color) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-primary.uk-card-body .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-primary > :not([class*=uk-card-media]) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-secondary.uk-card-body .uk-table-striped > tr:nth-of-type(even):last-child, .uk-card-secondary > :not([class*=uk-card-media]) .uk-table-striped > tr:nth-of-type(even):last-child, .uk-overlay-primary .uk-table-striped > tr:nth-of-type(even):last-child, .uk-offcanvas-bar .uk-table-striped > tr:nth-of-type(even):last-child,
.uk-light .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-section-primary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-section-secondary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-tile-primary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-tile-secondary:not(.uk-preserve-color) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-primary.uk-card-body .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-primary > :not([class*=uk-card-media]) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-secondary.uk-card-body .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-card-secondary > :not([class*=uk-card-media]) .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-overlay-primary .uk-table-striped tbody tr:nth-of-type(even):last-child,
.uk-offcanvas-bar .uk-table-striped tbody tr:nth-of-type(even):last-child {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}

/*
 * Pass dropbar behind color to JS
 */
* {
  --uk-inverse: initial;
}

.uk-light, .uk-section-primary:not(.uk-preserve-color), .uk-section-secondary:not(.uk-preserve-color), .uk-tile-primary:not(.uk-preserve-color), .uk-tile-secondary:not(.uk-preserve-color), .uk-card-primary.uk-card-body, .uk-card-primary > :not([class*=uk-card-media]), .uk-card-secondary.uk-card-body, .uk-card-secondary > :not([class*=uk-card-media]), .uk-overlay-primary, .uk-offcanvas-bar {
  --uk-inverse: light;
}

.uk-dark, .uk-section-default:not(.uk-preserve-color), .uk-section-muted:not(.uk-preserve-color), .uk-tile-default:not(.uk-preserve-color), .uk-tile-muted:not(.uk-preserve-color), .uk-card-default.uk-card-body, .uk-card-default > :not([class*=uk-card-media]), .uk-overlay-default, .uk-dropbar, .uk-navbar-container:not(.uk-navbar-transparent), .uk-navbar-dropdown, .uk-dropdown {
  --uk-inverse: dark;
}

.uk-inverse-light {
  --uk-inverse: light !important;
}

.uk-inverse-dark {
  --uk-inverse: dark !important;
}

/* ========================================================================
   Component: Print
 ========================================================================== */
@media print {
  *,
  *::before,
  *::after {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
* {
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

html.menu-is-open {
  overflow: hidden;
}

html, body {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 30px;
  color: #000;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5 {
  font-family: "Source Sans Pro", sans-serif;
  font-style: normal;
  color: #3154A1;
}

h1 {
  font-size: 58px;
  line-height: 70px;
  font-weight: 900;
  margin-top: 0;
}

h2 {
  font-size: 51px;
  line-height: 64px;
  font-weight: 900;
}

h3 {
  font-size: 40px;
  line-height: 50px;
  font-weight: 900;
}

h4 {
  font-size: 17px;
  font-weight: 600;
  margin-top: 0;
}

h5 {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
}

.section-Homepage h4, .aboutBlock h4 {
  font-size: 30px;
  font-weight: 700;
  margin-top: 0;
}

a {
  color: #3154A1;
}

a:hover {
  color: #3154A1;
  text-decoration: none;
}

a.button,
button.button {
  padding: 20px 30px;
  background-color: #3154A1;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  position: relative;
  transition: all 0.2s;
  border: none;
  cursor: pointer;
}

a.button:hover,
button.button:hover {
  background-color: #EE674C;
}

a.button.red,
button.button.red {
  background-color: #EE674C;
}

a.button.red:hover,
button.button.red:hover {
  background-color: #3154A1;
}

em {
  color: #000;
}

*[transition] {
  cursor: pointer;
}

input,
textarea {
  width: 100%;
  background-color: #fff;
  border: none;
  height: 55px;
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 30px;
  color: #000;
  padding: 0 30px;
  box-sizing: border-box;
}

textarea {
  height: 169px;
  padding-top: 12px;
  display: block;
}

.content {
  position: relative;
}

.header {
  position: relative;
  margin-bottom: 40px;
}

.header img {
  width: 100%;
  max-height: 950px;
  -o-object-fit: cover;
     object-fit: cover;
}

.titleHolder {
  background-color: #fff;
  position: absolute;
  bottom: 0;
  z-index: 1;
  padding: 50px 20px 20px;
  left: calc(50% - 620px);
  width: 640px;
  box-sizing: border-box;
}

.titleHolder .title {
  font-size: 66px;
  line-height: 83px;
  margin: 0;
}

.titleHolder .subtitel {
  font-size: 66px;
  line-height: 83px;
  font-weight: 300;
  margin: 0;
}

.titleHolder::before {
  content: "";
  position: absolute;
  right: 0;
  width: 3000px;
  background-color: #fff;
  height: 100%;
  top: 0;
  z-index: -1;
}

.introContainer {
  max-width: 1240px;
  margin: 0 auto 100px;
  padding: 0 20px;
  box-sizing: border-box;
}

.introContainer .intro {
  background-image: url("/assets/images/home_intro_block.svg");
  background-size: 100% 100%;
  padding: 70px 100px 70px 0;
  position: relative;
  box-sizing: border-box;
  color: #fff;
  min-height: 265px;
}

.introContainer .intro::before {
  content: "";
  position: absolute;
  right: 0;
  width: 3000px;
  background-color: #3154A1;
  height: 100%;
  top: 0;
  z-index: -1;
}

.evenementenCta {
  background-image: url("/assets/images/event_block.svg");
  background-size: 100% 100%;
  padding: 65px 20px;
  position: relative;
  box-sizing: border-box;
  height: 265px;
  text-align: center;
}

.evenementenCta h4 {
  color: #fff;
}

.evenementenCta .buttonHolder {
  margin-top: 40px;
}

.evenementenCta .button {
  padding: 19px 30px 20px 90px;
  background-color: #fff;
  color: #000;
  font-weight: 600;
  font-size: 16px;
}

.evenementenCta .button .tekst {
  transition: all 0.2s;
}

.evenementenCta .button:hover .tekst {
  opacity: 0;
}

.evenementenCta .button:hover {
  background-color: #3154A1;
}

.evenementenCta .button .icon {
  width: 60px;
  height: 100%;
  background-color: #FCC71F;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  transition: all 0.2s;
}

.evenementenCta .button:hover .icon {
  left: 50%;
  transform: translateX(-50%);
  background-color: #3154A1;
}

.evenementenCta .button .icon::before {
  content: "";
  position: absolute;
  background-image: url(/assets/images/calendar_star.svg);
  top: 50%;
  left: 50%;
  background-size: 100%;
  width: 30px;
  height: 33px;
  background-repeat: no-repeat;
  transform: translate(-50%, -50%);
}

.itemColumn.hide.uk-grid-margin {
  margin-top: 0;
}

.aboutBlocksContainer {
  position: relative;
}

.aboutBlocksContainer::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 40%;
  background-color: #F5F7FB;
}

.aboutBlocks {
  position: relative;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px 100px;
  box-sizing: border-box;
}

.aboutBlocks .scroller {
  position: absolute;
  transform: rotate(-90deg);
  transform-origin: top left;
  top: 200px;
  left: -80px;
  color: #000;
  font-weight: 300;
}

.aboutBlocks .scroller::before {
  content: "";
  position: absolute;
  background-image: url(/assets/images/arrow_black.svg);
  background-size: 100%;
  width: 17px;
  height: 12px;
  background-repeat: no-repeat;
  left: -25px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  animation: bounce 1s infinite alternate;
}

@keyframes bounce {
  from {
    transform: translate(0px, -50%) rotate(90deg);
  }
  to {
    transform: translate(-10px, -50%) rotate(90deg);
  }
}
.aboutBlocksIntro {
  padding-right: 100px;
  padding-bottom: 50px;
}

.aboutBlocksRight {
  margin-top: -175px;
}

.aboutBlocks .aboutBlock {
  position: relative;
  cursor: pointer;
}

.aboutBlocks .aboutBlock::before {
  content: "";
  background-color: #3154A1;
  position: absolute;
  mix-blend-mode: multiply;
  opacity: 0;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  transition: all 0.2s;
}

.aboutBlocks .aboutBlock::after {
  content: "";
  background-image: linear-gradient(#000, transparent);
  opacity: 0.6;
  position: absolute;
  height: 200px;
  left: 0;
  top: 0;
  right: 0;
  transition: all 0.2s;
}

.aboutBlocks .aboutBlock img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.aboutBlocks .aboutBlock .aboutBlockContent {
  position: absolute;
  top: 50px;
  left: 50px;
  right: 50px;
  bottom: 50px;
  z-index: 5;
}

.aboutBlocks .aboutBlock .aboutBlockContent h4 {
  color: #fff;
}

.aboutBlocks .aboutBlock .aboutBlockContent .buttonHolder {
  position: absolute;
  bottom: 0;
}

.aboutBlocks .aboutBlock:hover::before {
  opacity: 1;
}

.aboutBlocks .aboutBlock:hover::after {
  opacity: 0;
}

.aboutBlocks .aboutBlock:hover .aboutBlockContent a.button {
  background-color: #fff;
  color: #3154A1;
}

.evenementContainer {
  background-color: #F5F7FB;
  position: relative;
}

.evenementIntroHolder {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
  text-align: center;
}

.evenementIntroHolder .evenementIntro {
  max-width: 700px;
  margin: 0 auto 65px;
}

.evenementenHolder {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
  padding-bottom: 100px;
  position: relative;
  z-index: 5;
}

.evenementenHolder .event {
  border: 1px solid #CACACA;
  cursor: pointer;
  transition: all 0.2s;
  position: relative;
}

.evenementenHolder .event .deelnemerHolder {
  font-family: "Source Sans Pro", sans-serif;
  position: absolute;
  left: 0;
  top: 0;
  padding: 8px 10px 8px 35px;
  background-color: #E73927;
  color: #fff;
  font-size: 13px;
  line-height: 20px;
}

.evenementenHolder .event .deelnemerHolder::before {
  content: "";
  background-image: url("/assets/images/kadoIconSmall.svg");
  width: 16px;
  height: 20px;
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.evenementenHolder .event .deelnemerHolder span {
  font-weight: 900;
}

.evenementenHolder .event.custom {
  border: 1px solid #fff;
}

.evenementenHolder .event .imageHolder {
  position: relative;
}

.evenementenHolder .event .imageHolder::before {
  content: "";
  background-color: #3154A1;
  position: absolute;
  mix-blend-mode: multiply;
  opacity: 0;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  transition: all 0.2s;
}

.evenementenHolder .event .imageHolder .readMore {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  opacity: 0;
  transition: all 0.2s;
}

.evenementenHolder .event:hover .imageHolder .readMore {
  opacity: 1;
}

.evenementenHolder .event:hover .imageHolder::before {
  opacity: 1;
}

.evenementenHolder .event .imageHolder img {
  max-width: calc(100% + 2px);
  width: calc(100% + 2px);
  margin-left: -1px;
  margin-top: -1px;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -1;
  position: relative;
}

.evenementenHolder .event .euroIcon img {
  width: 14px;
}

.evenementenHolder .event:hover {
  border: 1px solid #3154A1;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
}

.evenementenHolder .event:hover, .evenementenHolder .event:hover h5, .evenementenHolder .event:hover .eventCat {
  color: #3154A1;
}

.evenementenHolder .event .eventContentHolder {
  padding: 30px;
  background-color: #fff;
}

.eventContentHolder .eventCat {
  font-weight: 600;
  font-size: 18px;
  color: #828282;
  transition: all 0.2s;
}

.eventContentHolder .omschrijving {
  font-size: 15px;
  line-height: 24px;
}

.eventContentHolder h5 {
  margin: 15px 0;
  font-weight: 600;
  font-size: 20px;
  line-height: 20px;
  color: #000;
  transition: all 0.2s;
}

.eventContentHolder .date {
  font-size: 20px;
}

.eventContentHolder .eventDetail {
  border-top: 1px solid #CACACA;
  padding-top: 30px;
  margin-top: 30px;
  font-size: 16px;
  font-weight: 300;
}

.eventContentHolder .eventDetail .euroIcon {
  margin-right: 11px;
  font-weight: 600;
}

.eventContentHolder .eventDetail .clockIcon {
  width: 16px;
  margin-right: 8px;
  font-weight: 600;
  color: #3154A1;
}

.evenementenLargeCta {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.evenementenLargeCta .eventsSliderHolder {
  background-color: #3154A1;
  padding: 75px 20px 75px 0;
  font-size: 24px;
  font-weight: 300;
  color: #fff;
  position: relative;
  z-index: 5;
}

.evenementenLargeCta .eventsSliderHolder::before {
  content: "";
  position: absolute;
  right: 0;
  width: 3000px;
  background-color: #3154A1;
  height: 100%;
  top: 0;
  z-index: -1;
}

.evenementenLargeCta .allEvents {
  background-color: #273167;
  height: 100%;
  color: #fff;
  position: relative;
  transition: all 0.2s;
}

.evenementenLargeCta .allEvents:hover {
  background-color: #060E37;
}

.evenementenLargeCta .allEvents .allEventsTekst {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 24px;
  font-weight: 600;
  width: -moz-fit-content;
  width: fit-content;
}

.evenementenLargeCta .allEvents .allEventsTekst .tekst::before {
  content: "";
  position: absolute;
  background-image: url(/assets/images/pijltje.svg);
  width: 50px;
  height: 50px;
  background-repeat: no-repeat;
  right: -50px;
  background-size: 100%;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
}

/* evenement indienen */
.eventForm textarea {
  resize: vertical;
}

form .label {
  display: inline-block;
  margin-bottom: 10px;
  color: #3154A1;
  font-weight: 600;
  margin-top: 20px;
}

.algolia-places {
  font-size: 16px;
}

.algolia-places .ap-dropdown-menu .ap-footer {
  display: none;
}

.ap-input-icon {
  margin-top: 0;
}

.ap-suggestion em {
  font-weight: bold;
  font-style: normal;
  color: #66C07D;
}

.ap-input,
.ap-hint {
  padding-left: 30px;
  height: 55px;
  border: none;
  border-radius: 0;
  font-size: 17px;
}

.ap-suggestion-icon svg {
  vertical-align: top;
  margin-top: 11px;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
  margin-right: 50px !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
  font-size: 17px;
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 400;
}

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
  background: #66C07D !important;
  border-color: #66C07D !important;
}

.datepicker_holder {
  position: relative;
  display: inline-block;
  background-color: #fff;
  width: 100%;
}

.datepicker_holder input {
  background-color: transparent;
  z-index: 2;
  position: relative;
}

.datepicker_holder .uk-icon {
  position: absolute;
  right: 15px;
  top: 18px;
  color: #3154A1;
  z-index: 1;
}

.datepicker_holder.event .icon {
  position: absolute;
  right: 0;
  width: 55px;
  height: 100%;
  cursor: pointer;
  background-color: #EC674C;
  top: 0;
  transition: all 0.2s;
}

.datepicker_holder.event:hover .icon {
  background-color: #E73927;
}

.datepicker_holder.event .icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(/assets/images/calendar_white.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 23px;
  height: 27px;
}

form .label.multiple_day_item,
.multiple_day_item,
form .label.single_day_item,
.single_day_item {
  opacity: 0;
  transition: all 300ms;
  display: none;
}

form .label.multiple_day_item.active,
.multiple_day_item.active,
form .label.single_day_item.active,
.single_day_item.active {
  opacity: 1;
  display: block;
}

form .switch {
  width: 50px;
  height: 29px;
  border-radius: 30px;
  border: 2px solid #3154A1;
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  cursor: pointer;
}

form .switch .circle {
  position: absolute;
  width: 19px;
  height: 19px;
  border-radius: 25px;
  background-color: #c9c9c9;
  left: 4px;
  top: 3px;
  transition: all 200ms;
}

form .switch.active .circle {
  left: 23px;
  background-color: #3154A1;
}

.switch_label {
  font-size: 15px;
  display: inline-block;
  vertical-align: middle;
  color: #999;
}

#afbeelding-upload {
  display: none;
}

.kies_afbeelding {
  width: 100%;
  background-color: #fff;
  height: 55px;
  padding: 11px 15px 11px 30px;
  box-sizing: border-box;
  color: #999;
  cursor: pointer;
}

.kies_afbeelding .uk-icon {
  float: right;
  color: #3154A1;
  margin-top: 5px;
}

h3.gegevens_gebruiker {
  margin-top: -20px;
}

h3.gegevens_evenement {
  margin-top: 50px;
}

.error {
  border: 1px solid red;
}

.errors {
  color: red;
  margin-bottom: 35px;
}

#evenenent-formulier button.button {
  float: right;
  margin-top: 55px;
}

.wordSlider {
  display: inline-block;
  margin-left: 10px;
}

.wordSlider ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.wordSlider ul li {
  font-size: 24px;
  font-weight: 600;
}

.wordSlider {
  display: inline-block;
  height: 30px;
  margin-top: -3px;
  overflow: hidden;
  vertical-align: middle;
}

.wordSlider_words {
  display: inline-block;
  margin: 0;
  padding: 0;
  list-style: none;
  animation-name: wordSlider;
  animation-timing-function: ease-out;
  animation-iteration-count: infinite;
  animation-duration: 20s;
}

.wordSlider_word {
  display: block;
  line-height: 30px;
  text-align: left;
}

@keyframes wordSlider {
  0%, 9% {
    transform: translateY(0%);
  }
  11%, 20% {
    transform: translateY(-10%);
  }
  22%, 31% {
    transform: translateY(-20%);
  }
  33%, 42% {
    transform: translateY(-30%);
  }
  44%, 53% {
    transform: translateY(-40%);
  }
  55%, 64% {
    transform: translateY(-50%);
  }
  66%, 75% {
    transform: translateY(-60%);
  }
  77%, 86% {
    transform: translateY(-70%);
  }
  88%, 97% {
    transform: translateY(-80%);
  }
  100% {
    transform: translateY(-90%);
  }
}
.addEventCtaContainer {
  background-color: #66C07D;
  width: 100%;
  color: #000;
  text-align: center;
  padding: 15px 0;
}

.addEventCta {
  padding: 0 20px;
  box-sizing: border-box;
}

.addEventCta img {
  display: inline-block;
}

.addEventCta .tekst {
  display: inline-block;
  margin-left: 20px;
  font-size: 18px;
  font-weight: 600;
}

.addEventCta .tekst a {
  color: #000;
  text-decoration: underline;
}

.impressieHolder {
  max-width: 100%;
  margin: 100px auto;
  padding: 0;
  position: relative;
  min-height: 670px;
}

.impressieHolder .slide {
  position: absolute;
  width: 100%;
  transition: all 0.8s;
  z-index: -1;
}

.impressieHolder .slide .slideTekst {
  opacity: 0;
  transition: all 0.8s;
}

.impressieHolder .slide.active .slideTekst {
  opacity: 1;
}

.impressieHolder .slide .slideImage {
  opacity: 0;
  transition: all 0.8s;
}

.impressieHolder .slide.active .slideImage {
  opacity: 1;
}

.impressieHolder .slide.active {
  z-index: 1;
}

.slideTekstHolder {
  background-image: url(/assets/images/red_block_slider.svg);
  background-size: 100% 100%;
  padding: 115px 95px;
  position: absolute;
  left: calc(50% - 690px);
  box-sizing: border-box;
  min-height: 500px;
  width: 770px;
  color: #fff;
  font-size: 34px;
  line-height: 50px;
  font-weight: 300;
  margin-top: 80px;
  z-index: 1;
}

.slideImageHolder {
  position: absolute;
  left: calc(50% - 80px);
  top: 0;
  max-height: 670px;
  max-width: 1040px;
}

.progressContainer {
  position: absolute;
  bottom: 0px;
  left: calc(50% - 710px);
  padding: 0 20px;
  box-sizing: border-box;
}

.progressContainer .itemCount {
  display: inline-block;
}

.progressLineContainer {
  position: relative;
  width: 150px;
  display: inline-block;
  margin: 0 20px;
  vertical-align: middle;
}

.progressLineContainer .line {
  width: 100%;
  height: 2px;
  background-color: #bbb;
}

.impressieHolder .progressContainer .progress {
  width: 0;
  height: 2px;
  background-color: #000;
  margin-top: -1px;
  overflow: visible !important;
  position: absolute;
  top: 1px;
  transition: all 500ms;
}

.arrowHolder {
  position: relative;
  display: inline-block;
}

.arrowHolder img {
  cursor: pointer;
}

.arrowHolder .arrowNext img {
  transform: rotate(-90deg);
  position: relative;
}

.arrowHolder .arrowPrev img {
  transform: rotate(90deg);
  position: relative;
}

/* Landingspagina  */
.landingsHeaderContainer {
  background-color: #F5F7FB;
  padding-bottom: 100px;
  margin-bottom: 160px;
}

.landingsHeader {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
}

.landingsHeader .introHolder {
  margin-top: 80px;
  margin-left: 100px;
}

.landingsHeader .introHolder p {
  font-size: 20px;
  line-height: 28px;
  margin-top: 45px;
  padding-right: 20px;
}

.landingsHeaderContainer .buttonHolder {
  margin-top: 40px;
}

.landingsHeader .imageHolder {
  position: relative;
  margin-top: 30px;
}

.landingsHeader .imageHolder img {
  position: absolute;
  left: 0;
  top: 0;
}

/* Geen header */
.landingsHeader.geen_header {
  max-width: 1240px;
}

.landingsHeaderContainer.geen_header {
  background-color: #fff;
  position: relative;
  margin-bottom: 100px;
}

.landingsHeaderContainer.geen_header::before {
  content: "";
  background-image: url("/assets/images/landing_header.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  height: 100%;
  padding-top: 140px;
  top: -140px;
  right: 0;
  left: calc(50% - 550px);
}

.landingsHeaderContainer.geen_header .landingsTitleHolder {
  margin-top: 80px;
}

.landingsHeaderContainer.geen_header .introHolder {
  margin-top: 80px;
  margin-right: 100px;
  margin-left: 0;
}

/* Call to action */
.callToActionHolder {
  max-width: 1440px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
}

.callToActionHolder .imageHolder {
  margin-top: 100px;
}

.callToActionHolder .imageHolder img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.callToActionTekstHolder {
  background-color: #EC674C;
  padding: 100px 100px 100px 30px;
  position: relative;
  color: #fff;
  font-size: 18px;
  line-height: 27px;
}

.callToActionTekstHolder h3 {
  color: #fff !important;
}

.callToActionTekstHolder::before {
  content: "";
  background-color: #EC674C;
  width: 70px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -70px;
}

.callToActionTekstHolder .callToActionTekst {
  margin-bottom: 80px;
}

.callToActionTekstHolder .button {
  font-size: 16px;
  line-height: 27px;
}

.callToActionTekstHolder .button:hover {
  background-color: #273167;
}

.header_twee_kolommen {
  max-width: 1440px;
  margin: 30px auto;
  padding: 0 20px;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}

.header_twee_kolommen .head_tekst {
  padding: 0 20px 200px 100px;
}

.header_twee_kolommen .head_tekst h1 {
  font-size: 48px;
  line-height: 55px;
}

.header_twee_kolommen .image_column img {
  width: 100%;
}

.header_twee_kolommen a.back, .landingsHeader a.back {
  display: inline-block;
  text-decoration: underline;
  position: relative;
  padding-left: 30px;
}

.header_twee_kolommen a.back::before, .landingsHeader a.back::before {
  content: "";
  position: absolute;
  background-image: url("/assets/images/blue_arrow.svg");
  background-size: 100%;
  width: 16px;
  height: 16px;
  left: 0px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transition: all 0.2s;
}

.header_twee_kolommen a.back:hover::before, .landingsHeader a.back:hover::before {
  left: -3px;
  background-image: url("/assets/images/black_arrow.svg");
}

.header_twee_kolommen a.back:hover, .landingsHeader a.back:hover {
  color: #000;
}

.header_twee_kolommen .details_block {
  position: absolute;
  bottom: -60px;
  left: 40px;
  width: 50%;
  padding: 50px 80px;
  min-height: 210px;
  background-color: #3054A0;
  color: #fff;
  box-sizing: border-box;
  background-image: url(/assets/images/blue_wave.svg);
  background-repeat: no-repeat;
  background-position: top right;
  background-size: auto 100%;
}
.header_twee_kolommen .details_block.event {
  position: relative;
  margin: -140px 0 -80px 20px;
  bottom: unset;
  left: unset;
}

.header_twee_kolommen .details_block.red {
  background-color: #EC674C;
  background-image: url(/assets/images/red_intro_wave.svg);
}

.header_twee_kolommen .details_block.green {
  background-color: #66C07D;
  background-image: url(/assets/images/green_block_wave.svg);
}

.header_twee_kolommen .details_block span.label {
  font-weight: 600;
  display: inline-block;
  width: 100px;
  vertical-align: top;
}

.header_twee_kolommen .details_block span.value {
  display: inline-block;
  width: calc(100% - 110px);
  font-weight: 400;
}

.header_twee_kolommen .details_block.winkel span.label {
  width: 110px;
}

.header_twee_kolommen .details_block.winkel span.value {
  width: calc(100% - 120px);
}

.header_intro_tekst {
  max-width: 1240px;
  margin: 50px auto;
  padding: 0px 20px;
  box-sizing: border-box;
}

.header_intro_tekst > * {
  max-width: 600px;
}

.header_twee_kolommen.breed .imageHolder {
  min-height: 600px;
}

.header_twee_kolommen.breed .imageHolder img {
  position: absolute;
  width: unset;
}

.header_twee_kolommen.breed .details_block {
  width: 57%;
  bottom: 50px;
  background-color: #EC674C;
  background-image: url(/assets/images/red_wave.svg);
}

.header_twee_kolommen.breed h1 {
  margin: 0;
}

.header_twee_kolommen.breed .subtitel {
  font-weight: 300;
  margin: 0;
  font-size: 58px;
}

.header_twee_kolommen.breed .head_tekst {
  padding: 55px 50px 0 100px;
}

.header_twee_kolommen.breed .details_block_intro {
  max-width: 445px;
}

.header_twee_kolommen.breed .details_block .icoon {
  position: absolute;
  width: 57px;
  height: 57px;
  right: 119px;
  top: -56px;
}

.header_twee_kolommen.detail {
  margin-bottom: 150px;
}

.aboutBlocksContainer.custom {
  margin: 100px 0 0;
}

.uitgelichteWinkelHolder {
  position: relative;
  padding-bottom: 100px;
}

.uitgelichteWinkelHolder::before {
  content: "";
  background-color: #F5F7FB;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
}

.callToActionTekstHolder.winkel::after {
  content: "";
  background-image: url(/assets/images/winkel_red_wave.svg);
  background-size: 100% 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  top: 120px;
  left: -70px;
  z-index: 3;
}

.callToActionTekstHolder.winkel {
  min-height: 320px;
}

.callToActionTekstHolder.winkel .button:hover {
  background-color: #273167;
}

.callToActionTekstHolder.winkel .callToActionTekst {
  position: relative;
  z-index: 5;
}

.callToActionTekstHolder.winkel h5 {
  color: #fff;
}

.callToActionTekstHolder.winkel h3 {
  margin-top: 0;
}

.callToActionTekstHolder.winkel .buttons {
  position: absolute;
  z-index: 5;
  bottom: 100px;
}

.callToActionTekstHolder.winkel .overviewButton {
  color: #fff;
  text-decoration: underline;
  margin: 30px 20px 0 20px;
  display: inline-block;
}

.header_twee_kolommen.breed .details_block.green {
  background-color: #66C07D;
  background-image: url(/assets/images/green_wave.svg);
  color: #000;
}

.largeBackground .aboutBlocksContainer::before {
  height: 70%;
}

.newsContainer {
  margin: 100px 0 0;
  position: relative;
}

.newsIntroContainer {
  max-width: 1240px;
  padding: 0 20px;
  box-sizing: border-box;
  margin: 0 auto;
}

.newsContainer.watTeDoen {
  margin-bottom: 100px;
}

.filterContainer {
  max-width: 1400px;
  margin: 40px auto 60px;
  padding: 0 20px;
  box-sizing: border-box;
}

.filterHolder {
  padding: 65px 80px;
  background-repeat: no-repeat;
  background-position: top right;
  background-size: auto 100%;
}

.filterContainer input {
  outline: none !important;
}

.filterHolder .nice-select {
  height: 55px;
  line-height: 55px;
}

.filterHolder .nice-select {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-weight: 300;
}

.filterHolder .nice-select .option {
  line-height: 50px;
  min-height: 50px;
  font-weight: 300;
}

.filterHolder .nice-select::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  right: 23px;
}

.filterHolder .nice-select.categorie::before {
  content: "";
  position: absolute;
  right: 0;
  width: 55px;
  height: 100%;
  background-color: #3154A1;
  transition: all 0.2s;
}

.filterHolder .nice-select.categorie:hover::before {
  background-color: #273167;
}

.filterHolder input {
  padding: 0 55px 0 20px;
}

.filterHolder .inputSearch {
  position: relative;
}

.filterHolder .inputSearch .search {
  position: absolute;
  right: 0;
  width: 55px;
  height: 100%;
  cursor: pointer;
  background-color: #3154A1;
  top: 0;
  background-image: none;
  transition: all 0.2s;
}

.filterHolder .inputSearch:hover .search {
  background-color: #273167;
}

.filterHolder .inputSearch .search::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(/assets/images/search_icon_white.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 24px;
  height: 29px;
}

.filterHolder .inputSearch .search.red {
  background-color: #EC674C;
}

.filterHolder .inputSearch:hover .search.red {
  background-color: #E73927;
}

.filterHolder.green {
  background-color: #66C07D;
  background-image: url(/assets/images/green_filter_wave.svg);
}

.filterHolder.green .option.active {
  color: #66C07D;
  font-weight: 600;
}

.filterHolder.blue {
  background-color: #3154A1;
  background-image: url(/assets/images/blue_filter_wave.svg);
}

.filterHolder.blue .option.active {
  color: #3154A1;
  font-weight: 600;
}

.filterHolder.red {
  background-color: #EC674C;
  background-image: url(/assets/images/red_filter_wave.svg);
}

.filterHolder.red .option.active {
  color: #EC674C;
  font-weight: 600;
}

.filterHolder.blue .nice-select.categorie::before {
  background-color: #EC674C;
  transition: all 0.2s;
}

.filterHolder.blue .nice-select.categorie:hover::before {
  background-color: #E73927;
}

.datepicker_holder .uk-icon.date_clear {
  right: 58px;
  top: 19px;
  z-index: 4;
  cursor: pointer;
  visibility: hidden;
}

.datepicker_holder .uk-icon.date_clear.active {
  visibility: visible;
}

.newsContainer.topOffset {
  margin: 80px 0;
}

.eventDetail .location {
  display: inline-flex;
}

.eventDetail .location.winkel {
  font-size: 18px;
  font-weight: 600;
  text-decoration: underline;
}

.evenementenHolder.news {
  padding-bottom: 25px;
}

.locationIcon {
  margin-right: 8px;
  margin-left: -3px;
  color: #3154A1;
}

.locationIcon.black {
  color: #000;
}

.evenementenHolder .event:hover .locationIcon.black {
  color: #3154A1;
}

.eventContentHolder .eventDetail .euroIcon.parking {
  margin-right: 12px;
}

.eventContentHolder .eventDetail .euroIcon.watTeDoen {
  margin-right: 12px;
}

.eventContentHolder .eventDetail .parkingIcon {
  position: relative;
  padding-left: 28px;
}

.eventContentHolder .eventDetail .parkingIcon::before {
  content: "";
  position: absolute;
  background-image: url(/assets/images/parkeren_blue.svg);
  background-size: 100%;
  width: 14px;
  height: 14px;
  left: 0;
  background-repeat: no-repeat;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.2s;
}

.header_twee_kolommen .details_block.parking span.label {
  width: 150px;
}

.header_twee_kolommen .details_block.parking span.value {
  width: calc(100% - 160px);
}

.itemColumn {
  transition: all 0.5s;
  opacity: 1;
  height: auto;
  z-index: 1;
}

.itemColumn.hide {
  height: 0;
  opacity: 0;
  z-index: -1;
  visibility: hidden;
}

.loadMoreButtonHolder {
  text-align: center;
}

.loadMoreButtonHolder .laad_meer {
  color: #3154A1;
  cursor: pointer;
  position: relative;
}

.loadMoreButtonContainer.hide {
  display: none;
}

.loadMoreButtonHolder .laad_meer::before {
  content: "";
  position: absolute;
  background-image: url("/assets/images/blue_arrow.svg");
  background-size: 100%;
  width: 16px;
  height: 16px;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
}

.loadMoreButtonHolder .laad_meer:hover {
  text-decoration: underline;
}

.filterContainer.eventFilter .buttonHolder {
  text-align: center;
}

.section-evenementenOverzicht .flatpickr-day.selected {
  background: #EC674C !important;
  border-color: #EC674C !important;
}

.button.filterButton {
  background-color: #EC674C;
  height: 55px;
  line-height: 55px;
  display: inline-block;
  color: #fff;
  cursor: pointer;
  width: 100%;
  font-size: 16px;
  text-align: center;
  font-weight: 600;
  transition: all 0.2s;
}

.button.filterButton:hover {
  background-color: #E73927;
}

.zoeksuggesties {
  color: #fff;
  font-size: 18px;
}

.zoeksuggesties .label {
  font-weight: 600;
  margin-right: 20px;
  color: #fff;
  margin-top: 5px;
  margin-bottom: 0;
}

.zoeksuggesties .value {
  font-weight: 300;
  margin-right: 15px;
  cursor: pointer;
  transition: all 0.2s;
}

.zoeksuggesties .value:hover {
  color: #EC674C;
}

.shareContainer {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
  margin-bottom: 50px;
}

.content_grey_holder {
  max-width: 1400px;
  margin: 0px auto;
  padding: 95px 0px;
  box-sizing: border-box;
  position: relative;
  background-color: #F6F7FB;
}

.content_grey_holder::before {
  content: "";
  position: absolute;
  width: 1000px;
  height: 100%;
  right: 100%;
  top: 0;
  background-color: #F6F7FB;
}

.content_grey {
  max-width: 1240px;
  margin: 0px auto;
  padding: 0px 20px;
  box-sizing: border-box;
}

.content_grey .content_block {
  max-width: 700px;
}

.content_grey .content_block .openingsTitel {
  margin: 0;
}

.content_grey .content_block .openingstijdenTabel {
  border-spacing: 0;
}

.content_grey .content_block .openingstijdenTabel .column_right {
  padding-left: 10px;
}

.small_text {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 20px;
  color: #999;
}

.small_text.custom {
  margin-bottom: 7px;
}

.small_text strong {
  color: #000;
}

.side_block {
  padding: 30px 30px;
  background-color: #fff;
  margin-bottom: 30px;
  color: #000;
  position: relative;
  font-weight: 300;
  font-size: 16px;
}

.side_block p {
  margin-bottom: 0;
}

.side_block .block_indicator {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #64C17C;
  width: 45px;
  height: 45px;
  box-sizing: border-box;
  text-align: center;
  padding-top: 7px;
  color: #fff;
  font-size: 24px;
  font-weight: 300;
}

.side_block.kado .block_indicator {
  background-color: #E73927;
}

.side_block.kado .block_indicator .icoon {
  margin-top: -5px;
}

.side_block.kado a:hover {
  text-decoration: underline;
}

.side_block .block_indicator .icoon {
  width: 22px;
  height: 22px;
}

.side_block .block_indicator .icoon.euro {
  width: 17px;
  height: 17px;
}

.side_block .block_table_idicator {
  position: absolute;
  top: 0;
  right: 0;
}

.side_block .block_table_idicator .icoon {
  width: 45px;
  height: 45px;
}

.side_block .block_indicator .uk-icon {
  color: #fff;
  margin-right: 0;
  margin-top: 3px;
  display: inline-flex;
}

.side_block .uk-icon {
  margin-right: 10px;
  color: #3154A1;
}

.side_block .social_icons {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid #e4e4e4;
}

.side_block .social_icons .uk-icon-button {
  width: 45px;
  height: 45px;
  border-radius: 0;
  background: #FEC633;
  color: #fff;
  transition: all 300ms;
}

.side_block .social_icons .uk-icon-button:hover {
  background: #3054A0;
}

.side_block .column_right {
  padding-left: 20px;
}

.side_block tr {
  line-height: 28px;
  font-size: 18px;
}

.red_buttons {
  margin-top: 40px;
}

.red_buttons a.button {
  margin-left: 30px;
  vertical-align: middle;
  background-color: #EE674C;
}

.red_buttons a.button:hover {
  background-color: #E63A28;
}

.red_buttons .nice-select {
  width: 175px;
  color: #fff;
  background-color: #EE674C;
  padding-left: 25px;
  height: 62px;
  line-height: 62px;
  font-size: 17px;
  vertical-align: middle;
  transition: all 300ms;
}

.red_buttons .nice-select:hover {
  background-color: #E63A28;
}

.red_buttons .nice-select::after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  height: 9px;
  right: 25px;
  top: 42%;
  width: 9px;
}

.red_buttons .nice-select .uk-icon {
  float: right;
  margin-top: 9px;
}

.red_buttons .nice-select .list {
  background-color: #EE674C;
  box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
  margin-top: 0px;
}

.red_buttons .nice-select .option {
  padding-left: 25px;
  padding-right: 20px;
}

.red_buttons .nice-select:active,
.red_buttons .nice-select.open,
.red_buttons .nice-select:focus {
  background-color: #E63A28;
}

.red_buttons .nice-select .option:hover,
.red_buttons .nice-select .option.focus,
.red_buttons .nice-select .option.selected.focus {
  background-color: #E63A28;
}

.footer_container {
  background-color: #3154A1;
  padding: 115px 0 0;
  position: relative;
}

.footer_container .twenteLogo {
  position: absolute;
  right: 0;
}

.footer {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px 100px;
  box-sizing: border-box;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  position: relative;
  z-index: 5;
}

.footer .footerTitel {
  font-family: "Roboto", sans-serif;
  font-size: 26px;
  font-weight: 700;
  color: #fff;
}

.footer a {
  color: #fff;
  position: relative;
}

.footer a::before {
  content: "";
  position: absolute;
  width: 0%;
  height: 2px;
  background-color: #fff;
  left: 50%;
  bottom: -5px;
  transition: all 300ms;
}

.footer a:hover::before {
  width: 100%;
  left: 0%;
}

.footer ul {
  padding-left: 15px;
}

.footer strong {
  font-weight: 700;
}

.footer .contactIcon {
  margin-right: 10px;
}

.footerBottom {
  max-width: 1240px;
  margin: 0 auto;
  padding: 80px 20px 20px;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
  color: #fff;
}

.disclaimer_holder {
  display: flex;
  align-item: center;
}

.copyright {
  display: inline-block;
  margin-right: 100px;
}

.disclaimer_menu {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-block;
}

.disclaimer_menu li {
  display: inline-block;
  padding: 0 20px;
  border-left: 1px solid #fff;
}

.disclaimer_menu li:first-child {
  padding: 0 20px 0 0;
  border-left: none;
}

.disclaimer_menu li a {
  color: #fff;
  position: relative;
}

.disclaimer_menu li a::before {
  content: "";
  position: absolute;
  width: 0%;
  height: 2px;
  background-color: #fff;
  left: 50%;
  bottom: -5px;
  transition: all 300ms;
}

.disclaimer_menu li a:hover::before {
  width: 100%;
  left: 0%;
}

.facebook {
  margin-right: 20px;
}

.footerBottomContainer {
  position: relative;
}

.footerBottomContainer::before {
  content: "";
  background-image: url("/assets/images/footer_wave.svg");
  background-size: 100% 100%;
  position: absolute;
  bottom: 0;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.footerBottom .socials {
  text-align: right;
}

.footerBottom .socialIcon {
  transition: all 0.2s;
}

.footerBottom .socialIcon:hover {
  transform: scale(1.15);
}

.footerBottom .socialIcon.linkedin {
  height: 28px;
  margin-left: 20px;
}

.stickyScroller {
  width: 64px !important;
  height: 64px;
  background-color: #3154A1;
  position: fixed;
  right: -150px;
  bottom: 50px;
  cursor: pointer;
  transition: all 0.2s;
  z-index: 10000;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
  transition: all 500ms;
  overflow: hidden;
}

.stickyScroller.active {
  right: 30px;
}

.stickyScroller::before {
  content: "";
  background-image: url("/assets/images/pijltje.svg");
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  width: 23px;
  height: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.2s;
}

.footer .snelMenu .listItem {
  width: calc(100% + 10px);
}

.stickyScroller:hover::before {
  transform: translate(-50%, -50%) scale(1.25);
}

.section-watTeDoen .content_block .component:first-child {
  margin-top: 0;
}

.buttonsTabletDown {
  display: none;
}

.datepicker_holder.event input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
}

.toggleFilter {
  width: 200px;
  font-size: 16px;
  color: #fff;
  font-weight: 600;
  background-color: #EC674C;
  position: relative;
  padding: 12px;
  display: none;
}

.footerDisclaimerHolder {
  background-color: #273167;
  opacity: 0.8;
  padding: 0 0 20px;
}

.footerDisclaimer {
  max-width: 1240px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  position: relative;
  text-align: left;
}

.footerDisclaimer a {
  color: #fff;
  font-weight: 100;
  position: relative;
}

.footerDisclaimer img {
  height: 12px;
  margin-left: 70px;
  margin-top: -3px;
}

.footerDisclaimer .disclaimerHolder {
  position: relative;
  text-align: center;
}

.footerDisclaimer .disclaimerTekst {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.popup {
  position: fixed;
  top: 50%;
  right: -100%;
  transform: translateY(-50%);
  background-color: #fff;
  padding: 40px 30px 50px;
  transition: all 0.3s;
  max-width: 420px;
  box-sizing: border-box;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
}

.popup.show {
  right: 0;
  z-index: 99999;
}

.popup_close {
  position: absolute;
  top: 25px;
  right: 25px;
}

.popup h2 {
  margin-top: 0;
  font-size: 34px;
  line-height: 36px;
}

.popup .tekst {
  margin-bottom: 50px;
}

.file_size_error {
  opacity: 0;
  color: #f00;
  transition: all 0.2s;
}

.file_size_error.active {
  opacity: 1;
}

.due_notification {
  padding: 7px 15px 9px;
  border: 1px solid #E63A28;
  font-style: italic;
  margin-bottom: 10px;
}

.due_notification p {
  margin-bottom: 0;
  line-height: 25px;
}

.resultaten {
  max-width: 1240px;
  margin: 0 auto 100px;
  padding: 0 20px;
  box-sizing: border-box;
}

.resultaten .button {
  display: block;
  max-width: 80px;
  padding: 10px 20px;
  margin-top: 20px;
}

.resultaten .search_item {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #3154A1;
}

.nieuwsbriefHolder {
  background-color: #273167;
  padding: 90px 0;
}

.nieuwsbriefContainer {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.nieuwsbriefContainer .tekstHolder {
  text-align: center;
  font-size: 20px;
  color: #fff;
}

.nieuwsbriefContainer .tekstHolder h2 {
  font-size: 40px;
  color: #fff;
  line-height: 46px;
}

.nieuwsbriefContainer .inputHolder {
  max-width: 570px;
  margin: 40px auto 0;
  position: relative;
}

.nieuwsbriefContainer .inputHolder input {
  outline: none;
  padding: 0 185px 0 30px;
}

.nieuwsbriefContainer .inputHolder button {
  font-family: "Source Sans Pro", sans-serif;
  width: 165px;
  position: absolute;
  top: 0;
  height: 55px;
  right: 0;
  background-color: #3154A1;
  border: none;
  outline: none;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  transition: all 0.4s;
  cursor: pointer;
}

.nieuwsbriefContainer .inputHolder button:hover {
  background-color: #EC674C;
}

.upload_form {
  max-width: 1240px;
  margin: 0px auto 100px;
  width: 100%;
  padding: 0px 20px;
  box-sizing: border-box;
}

#foto-upload {
  display: none;
}

.upload_form .filename {
  display: block;
  text-align: left;
  color: #EE674C;
}

.upload_form .button.upload.foto_upload {
  margin-bottom: 10px;
}

.upload_form .button.upload.foto_upload.hide {
  display: none;
}

#submit-foto {
  display: none;
}

#submit-foto.active {
  display: block;
}

.mobileHeaderCta {
  display: block;
  width: 50%;
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  right: 20px;
  z-index: 5;
  padding-left: 10px;
}
.mobileHeaderCta .button {
  padding: 13px 9px;
  box-sizing: border-box;
  font-size: 10px;
  background-image: url("/assets/images/event_block.svg");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: block;
  text-align: center;
}
.mobileHeaderCta .icon {
  width: auto;
  float: right;
}

.ui-widget {
  list-style: none;
  background-color: #fff;
  box-sizing: border-box;
  margin-top: 20px;
  padding: 0;
  width: 100%;
  z-index: 99;
  max-width: 300px;
}

.ui-widget li {
  color: #000;
  cursor: pointer;
  padding-top: 6px;
  box-sizing: border-box;
  font-weight: 400;
  line-height: 40px;
  list-style: none;
  min-height: 50px;
  outline: none;
  padding-left: 18px;
  padding-right: 29px;
  text-align: left;
  transition: all 0.2s;
}

.ui-widget li:hover {
  background-color: #f1f1f1;
}

.content_grey_holder .disclaimer {
  font-size: 14px;
  line-height: 24px;
  max-width: 470px;
  margin-bottom: 50px;
}

.language-selector {
  margin-left: 45px;
}

.language-selector a {
  color: #fff;
  opacity: 0.6;
  font-weight: 400;
}
.language-selector a.active {
  opacity: 1;
  font-weight: 700;
  pointer-events: none;
}

.language-selector span {
  color: #fff;
  opacity: 0.6;
  margin: 0 7px 0 6px;
}

.language-selector.mobile-language-selector {
  margin-left: 45px;
  position: absolute;
  right: 139px;
  top: 24px;
  display: none;
  z-index: 1;
}

.language-selector.mobile-language-selector a {
  color: #3154A1;
}

.language-selector.mobile-language-selector span {
  color: #3154A1;
}

.nieuwsbriefContainer label {
  display: none;
}

.adventskalenderContainer {
  padding: 0;
  background-color: #273167;
  color: #fff;
  position: relative;
}

.adventsHeader {
  position: absolute;
  top: 5.5vw;
  left: 0;
  width: 100%;
}

.adventskalenderContainer h1 {
  color: #fff;
}

.adventskalenderContainer .intro {
  max-width: 470px;
  float: right;
}

.adventsNieuwsbriefcontainer {
  color: #fff;
}

.adventsNieuwsbriefcontainer.nieuwsbriefContainer .inputHolder {
  margin-top: 15px;
  max-width: 470px;
  float: right;
}

.adventsNieuwsbriefcontainer.nieuwsbriefContainer .inputHolder button {
  position: relative;
  margin-top: 20px;
}

.adventsNieuwsbriefcontainer.nieuwsbriefContainer .tekstHolder {
  text-align: left;
}

.adventsNieuwsbriefcontainer.nieuwsbriefContainer .fui-type-email {
  margin-bottom: 25px;
}

.adventsNieuwsbriefcontainer.nieuwsbriefContainer .fui-checkbox-label {
  margin-bottom: 10px;
}

.adventskalenderContainer svg.kalenderboom {
  width: 100%;
}

.advent {
  pointer-events: none;
  opacity: 0.6;
}
.advent.active {
  pointer-events: auto;
  opacity: 1;
  cursor: pointer;
  transition: all 500ms;
}
.advent.active:hover {
  transform: translateZ(0);
  filter: drop-shadow(0px 0px 20px rgba(255, 255, 255, 0.3));
}
.advent .kras {
  opacity: 0;
  transition: all 300ms;
}
.advent.clicked {
  opacity: 1;
  pointer-events: none;
}
.advent.clicked .kras {
  opacity: 1;
}

.flake {
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.flake[y="88"] {
  animation-name: flake88;
  animation-duration: 15.1s;
}

.flake[y="496"] {
  animation-name: flake496;
  animation-duration: 16s;
}

.flake[y="104"] {
  animation-name: flake104;
  animation-duration: 17s;
}

.flake[y="319"] {
  animation-name: flake319;
  animation-duration: 15.5s;
}

.flake[y="223"] {
  animation-name: flake223;
  animation-duration: 16.7s;
}

.flake[y="810"] {
  animation-name: flake810;
  animation-duration: 17.2s;
}

.flake[y="537"] {
  animation-name: flake537;
  animation-duration: 15.3s;
}

.flake[y="870"] {
  animation-name: flake870;
  animation-duration: 16.5s;
}

.flake[y="1054"] {
  animation-name: flake1054;
  animation-duration: 17.4s;
}

.flake[y="646"] {
  animation-name: flake646;
  animation-duration: 15.9s;
}

.flake[y="720"] {
  animation-name: flake720;
  animation-duration: 16.3s;
}

.flake[y="644"] {
  animation-name: flake644;
  animation-duration: 17.2s;
}

.flake[y="1019"] {
  animation-name: flake1019;
  animation-duration: 15.25s;
}

.flake[y="1212"] {
  animation-name: flake1212;
  animation-duration: 16.8s;
}

.flake[y="919"] {
  animation-name: flake919;
  animation-duration: 17.77s;
}

.flake[y="751"] {
  animation-name: flake751;
  animation-duration: 15.13s;
}

.flake[y="684"] {
  animation-name: flake684;
  animation-duration: 16.56s;
}

.flake[y="572"] {
  animation-name: flake572;
  animation-duration: 17.7s;
}

.flake[y="305"] {
  animation-name: flake305;
  animation-duration: 15.05s;
}

.flake[y="467"] {
  animation-name: flake467;
  animation-duration: 16.85s;
}

.flake[y="866"] {
  animation-name: flake866;
  animation-duration: 17.15s;
}

.flake[y="918"] {
  animation-name: flake918;
  animation-duration: 15.8s;
}

.flake[y="476"] {
  animation-name: flake476;
  animation-duration: 16.55s;
}

.flake[y="308"] {
  animation-name: flake308;
  animation-duration: 17.95s;
}

.flake[y="155"] {
  animation-name: flake155;
  animation-duration: 15.33s;
}

.flake[y="493"] {
  animation-name: flake493;
  animation-duration: 16.66s;
}

.flake[y="1183"] {
  animation-name: flake1183;
  animation-duration: 17.46s;
}

@keyframes flake496 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  65% {
    transform: translateY(974px);
    opacity: 1;
    visibility: visible;
  }
  66% {
    transform: translateY(995px);
    opacity: 0;
    visibility: hidden;
  }
  67% {
    transform: translateY(-496px);
    opacity: 0;
    visibility: hidden;
  }
  68% {
    transform: translateY(-475px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake88 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  93% {
    transform: translateY(1387px);
    opacity: 1;
    visibility: visible;
  }
  94% {
    transform: translateY(1403px);
    opacity: 0;
    visibility: hidden;
  }
  95% {
    transform: translateY(-88px);
    opacity: 0;
    visibility: hidden;
  }
  96% {
    transform: translateY(-71px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake104 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  92% {
    transform: translateY(1371px);
    opacity: 1;
    visibility: visible;
  }
  93% {
    transform: translateY(1387px);
    opacity: 0;
    visibility: hidden;
  }
  94% {
    transform: translateY(-104px);
    opacity: 0;
    visibility: hidden;
  }
  95% {
    transform: translateY(-88px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake319 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  78% {
    transform: translateY(1157px);
    opacity: 1;
    visibility: visible;
  }
  79% {
    transform: translateY(1172px);
    opacity: 0;
    visibility: hidden;
  }
  80% {
    transform: translateY(-319px);
    opacity: 0;
    visibility: hidden;
  }
  81% {
    transform: translateY(-304px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake223 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  84% {
    transform: translateY(1252px);
    opacity: 1;
    visibility: visible;
  }
  85% {
    transform: translateY(1268px);
    opacity: 0;
    visibility: hidden;
  }
  86% {
    transform: translateY(-223px);
    opacity: 0;
    visibility: hidden;
  }
  87% {
    transform: translateY(-207px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake810 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  44% {
    transform: translateY(666px);
    opacity: 1;
    visibility: visible;
  }
  45% {
    transform: translateY(681px);
    opacity: 0;
    visibility: hidden;
  }
  46% {
    transform: translateY(-810px);
    opacity: 0;
    visibility: hidden;
  }
  47% {
    transform: translateY(-795px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake537 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  63% {
    transform: translateY(938px);
    opacity: 1;
    visibility: visible;
  }
  64% {
    transform: translateY(954px);
    opacity: 0;
    visibility: hidden;
  }
  65% {
    transform: translateY(-537px);
    opacity: 0;
    visibility: hidden;
  }
  66% {
    transform: translateY(-521px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake870 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  40% {
    transform: translateY(605px);
    opacity: 1;
    visibility: visible;
  }
  41% {
    transform: translateY(621px);
    opacity: 0;
    visibility: hidden;
  }
  42% {
    transform: translateY(-870px);
    opacity: 0;
    visibility: hidden;
  }
  43% {
    transform: translateY(-854px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake1054 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  28% {
    transform: translateY(421px);
    opacity: 1;
    visibility: visible;
  }
  29% {
    transform: translateY(437px);
    opacity: 0;
    visibility: hidden;
  }
  30% {
    transform: translateY(-1054px);
    opacity: 0;
    visibility: hidden;
  }
  31% {
    transform: translateY(-1038px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake646 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  56% {
    transform: translateY(829px);
    opacity: 1;
    visibility: visible;
  }
  57% {
    transform: translateY(845px);
    opacity: 0;
    visibility: hidden;
  }
  58% {
    transform: translateY(-646px);
    opacity: 0;
    visibility: hidden;
  }
  59% {
    transform: translateY(-630px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake720 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  51% {
    transform: translateY(754px);
    opacity: 1;
    visibility: visible;
  }
  52% {
    transform: translateY(771px);
    opacity: 0;
    visibility: hidden;
  }
  53% {
    transform: translateY(-720px);
    opacity: 0;
    visibility: hidden;
  }
  54% {
    transform: translateY(-704px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake644 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  56% {
    transform: translateY(831px);
    opacity: 1;
    visibility: visible;
  }
  57% {
    transform: translateY(847px);
    opacity: 0;
    visibility: hidden;
  }
  58% {
    transform: translateY(-644px);
    opacity: 0;
    visibility: hidden;
  }
  59% {
    transform: translateY(-628px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake1019 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  30% {
    transform: translateY(456px);
    opacity: 1;
    visibility: visible;
  }
  31% {
    transform: translateY(472px);
    opacity: 0;
    visibility: hidden;
  }
  32% {
    transform: translateY(-1019px);
    opacity: 0;
    visibility: hidden;
  }
  33% {
    transform: translateY(-1003px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake1212 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  18% {
    transform: translateY(263px);
    opacity: 1;
    visibility: visible;
  }
  19% {
    transform: translateY(279px);
    opacity: 0;
    visibility: hidden;
  }
  20% {
    transform: translateY(-1212px);
    opacity: 0;
    visibility: hidden;
  }
  21% {
    transform: translateY(-1196px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake919 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  37% {
    transform: translateY(556px);
    opacity: 1;
    visibility: visible;
  }
  38% {
    transform: translateY(572px);
    opacity: 0;
    visibility: hidden;
  }
  39% {
    transform: translateY(-919px);
    opacity: 0;
    visibility: hidden;
  }
  40% {
    transform: translateY(-903px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake751 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  48% {
    transform: translateY(723px);
    opacity: 1;
    visibility: visible;
  }
  49% {
    transform: translateY(740px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    transform: translateY(-751px);
    opacity: 0;
    visibility: hidden;
  }
  51% {
    transform: translateY(-735px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake684 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  53% {
    transform: translateY(790px);
    opacity: 1;
    visibility: visible;
  }
  54% {
    transform: translateY(807px);
    opacity: 0;
    visibility: hidden;
  }
  55% {
    transform: translateY(-684px);
    opacity: 0;
    visibility: hidden;
  }
  56% {
    transform: translateY(-668px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake572 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  60% {
    transform: translateY(903px);
    opacity: 1;
    visibility: visible;
  }
  61% {
    transform: translateY(919px);
    opacity: 0;
    visibility: hidden;
  }
  62% {
    transform: translateY(-572px);
    opacity: 0;
    visibility: hidden;
  }
  63% {
    transform: translateY(-556px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake305 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  79% {
    transform: translateY(1169px);
    opacity: 1;
    visibility: visible;
  }
  80% {
    transform: translateY(1186px);
    opacity: 0;
    visibility: hidden;
  }
  81% {
    transform: translateY(-305px);
    opacity: 0;
    visibility: hidden;
  }
  82% {
    transform: translateY(-289px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake467 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  67% {
    transform: translateY(1000px);
    opacity: 1;
    visibility: visible;
  }
  68% {
    transform: translateY(1016px);
    opacity: 0;
    visibility: hidden;
  }
  69% {
    transform: translateY(-467px);
    opacity: 0;
    visibility: hidden;
  }
  70% {
    transform: translateY(-451px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake866 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  40% {
    transform: translateY(609px);
    opacity: 1;
    visibility: visible;
  }
  41% {
    transform: translateY(625px);
    opacity: 0;
    visibility: hidden;
  }
  42% {
    transform: translateY(-866px);
    opacity: 0;
    visibility: hidden;
  }
  43% {
    transform: translateY(-850px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake918 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  37% {
    transform: translateY(557px);
    opacity: 1;
    visibility: visible;
  }
  38% {
    transform: translateY(573px);
    opacity: 0;
    visibility: hidden;
  }
  39% {
    transform: translateY(-918px);
    opacity: 0;
    visibility: hidden;
  }
  40% {
    transform: translateY(-902px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake476 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  67% {
    transform: translateY(1000px);
    opacity: 1;
    visibility: visible;
  }
  68% {
    transform: translateY(1016px);
    opacity: 0;
    visibility: hidden;
  }
  69% {
    transform: translateY(-476px);
    opacity: 0;
    visibility: hidden;
  }
  70% {
    transform: translateY(-460px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake308 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  78% {
    transform: translateY(1166px);
    opacity: 1;
    visibility: visible;
  }
  79% {
    transform: translateY(1183px);
    opacity: 0;
    visibility: hidden;
  }
  80% {
    transform: translateY(-308px);
    opacity: 0;
    visibility: hidden;
  }
  81% {
    transform: translateY(-292px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake155 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  89% {
    transform: translateY(1319px);
    opacity: 1;
    visibility: visible;
  }
  90% {
    transform: translateY(1336px);
    opacity: 0;
    visibility: hidden;
  }
  91% {
    transform: translateY(-155px);
    opacity: 0;
    visibility: hidden;
  }
  92% {
    transform: translateY(-139px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake493 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  66% {
    transform: translateY(981px);
    opacity: 1;
    visibility: visible;
  }
  67% {
    transform: translateY(998px);
    opacity: 0;
    visibility: hidden;
  }
  68% {
    transform: translateY(-493px);
    opacity: 0;
    visibility: hidden;
  }
  69% {
    transform: translateY(-477px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes flake1183 {
  0% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  20% {
    transform: translateY(292px);
    opacity: 1;
    visibility: visible;
  }
  21% {
    transform: translateY(308px);
    opacity: 0;
    visibility: hidden;
  }
  22% {
    transform: translateY(-1183px);
    opacity: 0;
    visibility: hidden;
  }
  23% {
    transform: translateY(-1167px);
    opacity: 1;
    visibility: visible;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
.site-hengeloPromotieDe .menuRechtsContainer::before {
  display: none;
}
.site-hengeloPromotieDe .menu_container {
  background-color: #F5F7FB;
}
.site-hengeloPromotieDe .landingsHeader .introHolder {
  margin-top: 40px;
}
.site-hengeloPromotieDe .footer_container {
  background-color: transparent;
}
.site-hengeloPromotieDe .footerBottomContainer::before {
  background-image: url("/assets/images/footer_wave-solid.svg");
}
.site-hengeloPromotieDe .home-blocks {
  max-width: 1240px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 0 20px;
  position: relative;
}
.site-hengeloPromotieDe .home-blocks::before {
  content: "";
  position: absolute;
  width: 6000px;
  left: -1000px;
  top: 0;
  height: 460px;
  background-color: #F5F7FB;
}
.site-hengeloPromotieDe .home-blocks .blok.first-item {
  padding-top: 205px;
}
.site-hengeloPromotieDe .home-blocks .blok img {
  width: 100%;
}
.site-hengeloPromotieDe.section-homepageDe .landingsHeaderContainer {
  margin-bottom: -205px;
}
.site-hengeloPromotieDe .blok-items {
  padding: 25px 30px 85px 30px;
  background-image: url(/assets/images/bottom-green.svg);
  background-size: 100% auto;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-color: #66C07D;
  color: #fff;
}
.site-hengeloPromotieDe .blok-items.items-0 {
  background-color: #66C07D;
  background-image: url(/assets/images/bottom-green.svg);
}
.site-hengeloPromotieDe .blok-items.items-1 {
  background-color: #3154A1;
  color: #fff;
  background-image: url(/assets/images/bottom-blue.svg);
}
.site-hengeloPromotieDe .blok-items.items-1 h4, .site-hengeloPromotieDe .blok-items.items-1 a {
  color: #fff;
}
.site-hengeloPromotieDe .blok-items.items-3 {
  background-color: #EC674C;
  background-image: url(/assets/images/bottom-red.svg);
  padding-bottom: 60px;
  margin-top: 30px;
  padding-top: 40px;
}
.site-hengeloPromotieDe .blok-items.items-3 h4 {
  color: #fff;
}
.site-hengeloPromotieDe .blok-items h4 {
  font-size: 30px;
  font-weight: 700;
  line-height: 38px;
  color: #000;
  margin-top: 5px;
}
.site-hengeloPromotieDe .blok-items ul {
  padding-left: 0;
  list-style: none;
}
.site-hengeloPromotieDe .blok-items li {
  padding-left: 17px;
  background-image: url(/assets/images/lijst-pijl-black.svg);
  background-repeat: no-repeat;
  background-position: top 8px left;
  margin-bottom: 8px;
}
.site-hengeloPromotieDe .blok-items.items-1 li {
  background-image: url(/assets/images/lijst-pijl.svg);
}
.site-hengeloPromotieDe .blok-items li a {
  color: #000;
  padding-right: 28px;
  background-repeat: no-repeat;
  background-position: right center;
}
.site-hengeloPromotieDe .blok-items li a.url {
  background-image: url(/assets/images/externe-link-black.svg);
}
.site-hengeloPromotieDe .blok-items li a.entry {
  background-image: url(/assets/images/interne-link-black.svg);
}
.site-hengeloPromotieDe .blok-items.items-1 li a.url {
  background-image: url(/assets/images/externe-link.svg);
}
.site-hengeloPromotieDe .blok-items.items-1 li a.entry {
  background-image: url(/assets/images/interne-link.svg);
}
.site-hengeloPromotieDe .blok-items .buttonHolder {
  margin-top: 40px;
}
.site-hengeloPromotieDe .blok-items .button {
  padding: 19px 30px 20px 90px;
  background-color: #fff;
  color: #000;
  font-weight: 600;
  font-size: 16px;
}
.site-hengeloPromotieDe .blok-items .button .tekst {
  transition: all 0.2s;
}
.site-hengeloPromotieDe .blok-items .button:hover .tekst {
  opacity: 0;
}
.site-hengeloPromotieDe .blok-items .button:hover {
  background-color: #3154A1;
}
.site-hengeloPromotieDe .blok-items .button .icon {
  width: 60px;
  height: 100%;
  background-color: #FCC71F;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  transition: all 0.2s;
}
.site-hengeloPromotieDe .blok-items .button:hover .icon {
  left: 50%;
  transform: translateX(-50%);
  background-color: #3154A1;
}
.site-hengeloPromotieDe .blok-items .button .icon::before {
  content: "";
  position: absolute;
  background-image: url(/assets/images/calendar_star.svg);
  top: 50%;
  left: 50%;
  background-size: 100%;
  width: 30px;
  height: 33px;
  background-repeat: no-repeat;
  transform: translate(-50%, -50%);
}
.site-hengeloPromotieDe .language-selector.mobile-language-selector {
  right: 20px;
  top: 19px;
}
@media only screen and (max-width: 1100px) {
  .site-hengeloPromotieDe .blok-items {
    padding: 15px 20px 50px 20px;
  }
  .site-hengeloPromotieDe .blok-items h4 {
    font-size: 24px;
    line-height: 32px;
  }
  .site-hengeloPromotieDe .blok-items.items-3 {
    padding-bottom: 45px;
    padding-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .site-hengeloPromotieDe .landingsHeader .introHolder {
    margin-top: 0;
  }
}

.component {
  margin: 70px 0;
}

.component ul,
.component ol {
  padding-left: 17px;
}

.component ul li,
.component ol li {
  margin-bottom: 3px;
}

.component_grid {
  max-width: 1240px;
  margin: 0px auto;
  width: 100%;
  padding: 0px 20px;
  box-sizing: border-box;
}

.component_grid.full {
  max-width: 1440px;
}

.component_grid .imageTitle {
  font-weight: 600;
  color: #65B32E;
}

.component_grid .text_one_column {
  max-width: 984px;
  margin: 0px auto;
  width: 100%;
  box-sizing: border-box;
}

.component_grid .text_one_column p:last-child {
  margin-bottom: 0;
}

.component.button {
  background: none;
}

.component.button .component_grid {
  text-align: left;
}

.extra_top_margin {
  margin-top: 30px;
}

button.extra_top_margin {
  margin-top: 20px;
}

.quote span {
  color: #000;
}

.plyr button::after {
  display: none;
}

.gallery .component_grid p {
  margin-top: 5px;
  font-size: 16px;
}

.component h3 {
  color: #3154A1;
}

.component.tekst .button {
  background-color: #004982;
}

.component.tekst .button:hover {
  background-color: #65B32E;
}

.component.quote {
  margin: -50px 0 100px;
}

.component.formulier form {
  padding: 50px 80px;
  background-color: #e9f6fe;
  max-width: 985px;
  margin: 0 auto;
  box-sizing: border-box;
}

.component.formulier input,
.component.formulier textarea,
.component.formulier .nice-select {
  margin-bottom: 15px;
}

.component.formulier textarea {
  height: 125px;
}

.component.formulier input[type=radio],
.component.formulier input[type=checkbox] {
  width: auto;
  margin-bottom: 10px;
}

.component.formulier .multi_options {
  margin-bottom: 15px;
}

.quoteHolder {
  max-width: 480px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
  text-align: center;
  font-size: 34px;
  line-height: 50px;
  font-weight: 600;
  font-style: italic;
}

@media only screen and (max-width: 1100px) {
  .cta {
    padding: 50px 50px;
    color: #fff;
    background-color: #000;
  }
}
@media only screen and (max-width: 1024px) {
  .component.quote {
    margin: -50px 0 75px;
  }
}
@media only screen and (max-width: 850px) {
  .component {
    margin: 50px 0;
  }
}
@media only screen and (max-width: 767px) {
  .component {
    margin: 25px 0;
  }
  .cta {
    padding: 25px 20px;
  }
  .cta .cta_title {
    text-align: left;
    margin-bottom: -30px;
  }
  .component.quote {
    margin: 25px 0 75px;
  }
  .quoteHolder {
    font-size: 24px;
    line-height: 34px;
  }
}
@media only screen and (max-width: 640px) {
  .component.formulier form {
    padding: 20px;
  }
  .component h3 {
    font-size: 25px;
    line-height: 34px;
  }
}
.nice-select {
  -webkit-tap-highlight-color: transparent;
  background-color: #fff;
  border-radius: 0px;
  border: none;
  color: #000;
  box-sizing: border-box;
  clear: both;
  cursor: pointer;
  display: inline-block;
  font-family: "Muli", sans-serif;
  font-size: 15px;
  font-weight: normal;
  height: 65px;
  line-height: 65px;
  outline: none;
  padding-left: 15px;
  padding-right: 50px;
  position: relative;
  text-align: left !important;
  transition: all 0.2s ease-in-out;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  white-space: nowrap;
  width: 100%;
}

.nice-select:hover {
  border-color: #dbdbdb;
}

.nice-select:active, .nice-select.open, .nice-select:focus {
  border-color: #999;
}

.nice-select:after {
  border-bottom: 2px solid #000;
  border-right: 2px solid #000;
  content: "";
  display: block;
  height: 13px;
  margin-top: -3px;
  pointer-events: none;
  position: absolute;
  right: 25px;
  top: 39%;
  transform-origin: 66% 66%;
  transform: rotate(45deg);
  transition: all 0.15s ease-in-out;
  width: 13px;
}

.nice-select.open:after {
  transform: rotate(-135deg);
}

.nice-select.open .list {
  opacity: 1;
  width: 100%;
  pointer-events: auto;
  transform: scale(1) translateY(0);
}

.nice-select.disabled {
  border-color: #ededed;
  color: #999;
  pointer-events: none;
}

.nice-select.disabled:after {
  border-color: #cccccc;
}

.nice-select.wide {
  width: 100%;
}

.nice-select.wide .list {
  left: 0 !important;
  right: 0 !important;
}

.nice-select.right {
  float: right;
}

.nice-select.right .list {
  left: auto;
  right: 0;
}

.nice-select.small {
  font-size: 12px;
  height: 36px;
  line-height: 34px;
}

.nice-select.small:after {
  height: 4px;
  width: 4px;
}

.nice-select.small .option {
  line-height: 34px;
  min-height: 34px;
}

.nice-select .list {
  background-color: #fff;
  border-radius: 0px;
  box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
  box-sizing: border-box;
  margin-top: 4px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  left: 0;
  transform-origin: 50% 0;
  transform: scale(0.75) translateY(-21px);
  transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
  z-index: 9;
}

.nice-select .list:hover .option:not(:hover) {
  background-color: transparent !important;
}

.nice-select .option {
  cursor: pointer;
  font-weight: 400;
  line-height: 40px;
  list-style: none;
  min-height: 40px;
  outline: none;
  padding-left: 18px;
  padding-right: 29px;
  text-align: left;
  transition: all 0.2s;
}

.nice-select .option:hover, .nice-select .option.focus, .nice-select .option.selected.focus {
  background-color: #f1f1f1;
}

.nice-select .option.selected {
  font-weight: 600;
}

.nice-select .option.disabled {
  background-color: transparent;
  color: #999;
  cursor: default;
}

.no-csspointerevents .nice-select .list {
  display: none;
}

.no-csspointerevents .nice-select.open .list {
  display: block;
}

html.no_overflow {
  overflow: hidden;
}

.fixed_holder {
  z-index: 999 !important;
  position: relative;
  height: 182px;
}

/*#page-wrapper > .uk-sticky-placeholder {
    height: 120px !important;
}*/
.menu_container {
  width: 100%;
  padding: 20px 0;
}

.menu_holder {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
  position: relative;
  height: 80px;
}

.fixed_holder.uk-active .menu_container {
  padding: 10px 0;
}

.fixed_holder.uk-active .stick_container {
  height: 100%;
  padding: 0 20px;
  background-color: #F5F7FB;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
}

.fixed_holder.uk-active .stick_container a img {
  height: 50px;
}

.fixed_holder.uk-active .stick_container .menu_toggle {
  right: 10px;
}

.menu_holder.fixed {
  position: fixed;
  top: 0;
}

.menu_holder .logo {
  position: absolute;
  z-index: 2;
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
  margin-right: 45px;
  top: 50%;
  transform: translateY(-50%);
}

.menu_holder .logo_mobile {
  position: absolute;
  z-index: 2;
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
  margin-right: 45px;
  top: 50%;
  transform: translateY(-50%);
}

.menu_holder .logo a {
  display: inline-block;
  vertical-align: middle;
}

.menu {
  display: inline-block;
  padding: 24px 20px;
  background-color: #F5F7FB;
  position: absolute;
  right: 20px;
}

.menu ul {
  margin: 0;
  padding: 0 50px;
}

.menu ul li {
  display: inline-block;
  margin: 0 75px;
  font-family: "Roboto", sans-serif;
}

.menu ul li:first-child {
  margin: 0;
  margin-right: 75px;
}

.menu a {
  color: #273167;
}

.menu > ul > li > a {
  cursor: default;
}

.menu_toggle {
  width: 64px;
  height: 64px;
  background-color: #3154A1;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  transition: all 0.2s;
}

.menu_toggle::before {
  content: "";
  background-image: url("/assets/images/pijltje.svg");
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  width: 23px;
  height: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(180deg);
  transition: all 0.2s;
}

/* custom menu kleuren landingspagina */
.section-landingspagina .fixed_holder {
  background-color: #F5F7FB;
}

.section-landingspagina .menu {
  background-color: #fff;
}

.section-landingspagina .fixed_holder.geen_header .menu_container .menu {
  background-color: #F5F7FB;
}

.section-landingspagina .fixed_holder.uk-active {
  background-color: transparent;
}

.section-landingspagina .fixed_holder.uk-active .stick_container, .section-landingspagina .fixed_holder.geen_header.uk-active .stick_container .menu {
  background-color: #fff;
}

.section-landingspagina .fixed_holder.geen_header {
  background-color: transparent;
}

.menu_background {
  position: absolute;
  top: 100%;
  left: calc(414px - 50vw);
  height: 186px;
  width: 100vw;
  background-image: url(/assets/images/menu_wave.svg);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center bottom;
  background-color: #3154A1;
  visibility: hidden;
  opacity: 0;
  cursor: default;
  transition: all 300ms;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
}

.menu:hover .menu_background,
.menu.active .menu_background {
  visibility: visible;
  opacity: 1;
}

.menu.toggleClose .menu_background {
  visibility: hidden;
  opacity: 0;
}

.menu.toggleClose ul .submenu {
  visibility: hidden !important;
  opacity: 0 !important;
}

.menu.toggleClose .menu_toggle::before {
  transform: translate(-50%, -50%) rotate(180deg) !important;
}

.menu_li {
  position: relative;
}

.menu ul .submenu {
  cursor: default;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 100%;
  left: 0;
  padding: 0;
  width: 300px;
  padding-top: 60px;
  padding-bottom: 50px;
  transition: all 300ms;
}

.menu:hover ul .submenu {
  visibility: visible;
  opacity: 1;
}

.menu:hover .menu_toggle::before,
.menu.active .menu_toggle::before {
  transform: translate(-50%, -50%) rotate(0deg);
}

.menu > ul > li::after {
  content: "";
  position: absolute;
  width: 0%;
  height: 3px;
  background-color: #273167;
  left: 50%;
  bottom: -25px;
  transition: all 300ms;
}

.menu > ul > li:hover::after {
  width: 100%;
  left: 0%;
}

.menu ul .submenu li {
  margin: 0;
  display: block;
  margin-bottom: 10px;
}

.menu ul .submenu li a {
  color: #fff;
  position: relative;
}

.menu ul .submenu li a::after {
  content: "";
  position: absolute;
  width: 0%;
  height: 2px;
  background-color: #fff;
  left: 50%;
  bottom: -5px;
  transition: all 300ms;
}

.menu ul .submenu li a:hover::after {
  width: 100%;
  left: 0%;
}

.menu ul .activeTop > a {
  font-weight: 600;
  color: #3154A1;
  transition: all 0.2s;
}

.menu:hover ul .activeTop > a {
  font-weight: 600;
  color: #273167;
}

.menu ul .activeTop::before {
  content: "";
  width: 100%;
  position: absolute;
  bottom: -25px;
  height: 5px;
  background-color: #3154A1;
  transition: all 0.2s;
}

.menu:hover ul .activeTop::before {
  background-color: #273167;
}

.menu ul .active a::before {
  content: "";
  width: 100%;
  position: absolute;
  bottom: -5px;
  height: 2px;
  background-color: #fff;
}

.hamburger_holder {
  display: none;
  position: absolute;
  top: calc(50% - 25px);
  right: 0px;
  vertical-align: top;
  z-index: 5;
  cursor: pointer;
  background-color: #3154A1;
}

.hamburger {
  width: 34px;
  height: 30px;
  margin: 10px;
  position: relative;
}

.hamburger .line {
  position: absolute;
  width: 100%;
  height: 3px;
  border-radius: 3px;
  left: 0px;
  background-color: #fff;
}

.hamburger .line.line_top {
  top: 3px;
  transition: all 500ms;
}

.menu.active .hamburger .line.line_top {
  transform: rotate(-45deg);
  top: 13px;
}

.hamburger .line.line_middle {
  top: calc(50% - 2px);
  transition: all 500ms;
}

.hamburger .line.line_bottom {
  bottom: 4px;
  transition: all 500ms;
}

.menu.active .hamburger .line.line_bottom {
  transform: rotate(45deg);
  bottom: 14px;
}

.menu.active .hamburger .line.line_middle {
  width: 0;
  left: 15px;
  opacity: 0;
}

.topMenuHolder {
  background-color: #4664aa;
  width: 100%;
  transition: all 0.4s;
  overflow: hidden;
  height: 62px;
  padding: 15px 0;
  box-sizing: border-box;
}

.fixed_holder.uk-active .topMenuHolder.uk-active {
  padding: 15px 0;
  height: auto;
  overflow: hidden;
  transition: all 0.3s ease;
}

.fixed_holder.uk-active .topMenuHolder {
  padding: 0;
  height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}

/*.topMenuHolder.hide {
    opacity: 0;
    visibility: hidden;
    height: 0;
    overflow: hidden;
}*/
.topMenuContainer {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.menuZoekenHolder {
  width: 100%;
}

.menuZoekenHolder input {
  font-family: "Roboto", sans-serif;
  background-color: #4664aa;
  padding: 0 85px 0 25px;
  margin-left: 60px;
  border-left: 2px solid #A2B1D4;
  height: 32px;
  -webkit-box-shadow: 0 0 0 30px #4664aa inset !important;
  outline: none;
  color: #fff;
  transition: all 0.6s;
}

.menuZoekenHolder input::-moz-placeholder {
  color: #A2B1D4;
}

.menuZoekenHolder input::placeholder {
  color: #A2B1D4;
}

.menuZoekenHolder .input_holder {
  position: relative;
}

.menuZoekenHolder .input_holder .searchIcon,
.menuZoekenHolder .input_holder .search {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  left: 0;
  height: 22px;
  transition: all 0.6s;
  cursor: pointer;
}

.menuZoekenHolder .input_holder.focus .searchIcon,
.menuZoekenHolder .input_holder.focus .search {
  left: calc(100% - 30px);
}

.menuZoekenHolder .input_holder.focus input {
  margin-left: 0;
  border: none;
  padding-left: 0;
}

.menuZoekenHolder .input_holder .searchIcon img {
  vertical-align: baseline;
}

.menuZoekenHolder .input_holder .search img {
  vertical-align: baseline;
}

.menuZoekenHolder .input_holder .close {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.6s;
  cursor: pointer;
}

.menuZoekenHolder .input_holder .close img {
  width: 17px;
}

.menuZoekenHolder .input_holder.focus .close {
  right: -20px;
}

.menuRechts {
  z-index: 1;
  display: inline-block;
  height: 100%;
  float: right;
  padding-right: 10px;
}

.menuRechtsContainer {
  position: relative;
  z-index: 1;
}

.menuRechtsContainer::before {
  content: "";
  background-color: #3154A1;
  position: absolute;
  left: 0;
  width: 6000px;
  top: -15px;
  height: 62px;
  z-index: -1;
}

.menuRechts ul {
  list-style: none;
  display: inline-block;
  padding-left: 30px;
  margin: 0;
}

.menuRechts ul li {
  display: inline-block;
}

.menuRechts ul li:not(:last-child) {
  margin-right: 40px;
}

.menuRechts ul li a {
  color: #fff;
}

.mobielMenuZoeken {
  display: none;
  visibility: hidden;
  opacity: 0;
  transition: all 0.4s;
}

.topMenu {
  display: none;
}

.button-holder-menu {
  display: none;
}

@media only screen and (max-width: 1440px) {
  .menu_container {
    padding: 20px 0;
  }
}
@media only screen and (max-width: 1250px) {
  .menu {
    width: calc(100% - 209px);
  }
  .menu ul li:first-child {
    margin-right: 83px;
  }
  .menu ul li {
    margin: 0 55px;
  }
  .menu_background {
    left: -150px;
  }
}
@media only screen and (max-width: 1100px) {
  .menu ul li {
    margin: 0 45px;
  }
}
@media only screen and (max-width: 1023px) {
  .topMenuHolder {
    display: none;
  }
  .topMenu {
    display: block;
  }
  .menu {
    padding: 0;
    height: 80px;
    background-color: #fff;
    width: 100%;
  }
  .menu > ul {
    margin-top: 20px;
    margin-left: 27px;
    opacity: 0;
    visibility: hidden;
    transition: all 500ms;
  }
  .menu_container.active {
    background-color: #3154A1;
    color: #fff;
  }
  .menu_container.active .menu > ul {
    opacity: 1;
    visibility: visible;
  }
  .menu ul li {
    display: block;
    margin: 0;
  }
  .menu_holder .logo_mobile img {
    max-width: 85px;
  }
  .fixed_holder.uk-active .menu_holder .logo img {
    max-width: 65px;
  }
  .menu_container {
    padding: 10px 0;
    background-color: #fff;
    height: 80px;
    transition: height 500ms;
  }
  .menu_container.active {
    height: 100vh;
    position: fixed;
    top: 0;
    z-index: 10001;
    overflow-y: scroll;
    box-sizing: border-box;
  }
  .menu_toggle {
    display: none;
  }
  .hamburger_holder {
    display: block;
  }
  .menu:hover ul .submenu {
    visibility: hidden;
    opacity: 0;
  }
  .menu_background {
    display: none;
  }
  .menu > ul > li,
  .menu > ul > li:first-child {
    margin-bottom: 8px;
    line-height: 20px;
  }
  .menu > ul > li::after {
    display: none;
  }
  .menu ul .activeTop > a {
    color: #fff;
  }
  .menu:hover ul .activeTop > a {
    color: #fff;
  }
  .menu ul .submenu {
    visibility: hidden;
    opacity: 0;
    position: relative;
    padding-top: 5px;
    padding-bottom: 5px;
    height: 0;
    transition: all 0.4s;
  }
  .menu ul .has_sub.activeSub .submenu {
    visibility: visible;
    opacity: 1;
    height: auto;
  }
  .menu ul .has_sub > a {
    position: relative;
  }
  .menu ul .has_sub > a::before {
    content: "";
    background-image: url("/assets/images/arrow_white.svg");
    width: 19px;
    height: 10px;
    top: 4px;
    right: -30px;
    position: absolute;
    transition: all 0.2s;
    background-repeat: no-repeat;
  }
  .menu ul .has_sub.activeSub > a::before {
    transform: rotate(-180deg);
  }
  .menu ul .submenu li a::after {
    display: none;
  }
  .menu ul .submenu li a {
    color: #fff;
    padding-left: 10px;
  }
  .menu ul .submenu li {
    margin-bottom: 5px;
  }
  .fixed_holder.uk-active .stick_container {
    background-color: #fff;
    box-shadow: none;
    padding: 0;
  }
  .menu ul .activeTop::before {
    display: none;
  }
  .menu > ul > li > a {
    font-weight: 600;
    color: #fff;
  }
  .menu_container, .menu_holder, .menu {
    height: 75px;
  }
  .fixed_holder.uk-active .menu_container {
    padding: 0;
  }
  .fixed_holder.uk-active {
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
  }
  .menu_container.active .menu_holder {
    background-color: #fff;
  }
  .menu_container.active {
    padding: 0;
  }
  .menu_container.active .menu_holder, .menu_container.active .menu {
    height: 95px;
  }
  .fixed_holder.uk-active .menu_container.active .menu_holder, .fixed_holder.uk-active .menu_container.active .menu {
    height: 75px;
  }
  .menu.active .mobielMenuZoeken {
    display: block;
    visibility: visible;
    opacity: 1;
  }
  .mobielMenuZoeken {
    margin-top: 120px;
    margin-left: 77px;
  }
  .mobielMenuZoeken input {
    font-family: "Roboto", sans-serif;
    background-color: #4664aa;
    padding: 0 85px 0 25px;
    height: 32px;
    -webkit-box-shadow: 0 0 0 30px #4664aa inset !important;
    outline: none;
    color: #fff;
    transition: all 0.6s;
    min-height: 50px;
  }
  .mobielMenuZoeken input::-moz-placeholder {
    color: #fff;
  }
  .mobielMenuZoeken input::placeholder {
    color: #fff;
  }
  .mobielMenuZoeken .input_holder {
    position: relative;
  }
  .mobielMenuZoeken .input_holder .search {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
  }
  .mobielMenuZoeken .input_holder .search img {
    width: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .menu > ul > li, .menu > ul > li:first-child {
    margin-right: 0;
    margin-bottom: 25px;
  }
  .menu > ul > li > a {
    font-size: 22px;
  }
  .menu ul .has_sub > a {
    width: 100%;
    display: block;
  }
  .menu ul .has_sub > a::before {
    right: 0;
  }
  .menu_holder .menu ul {
    padding: 0 0 0 15px;
  }
  .menu_holder .menu ul.mobileHoofdMenu {
    margin-top: 140px;
  }
  .menu ul .has_sub.activeSub .submenu {
    padding-top: 10px;
  }
  .menu_container:before {
    content: "";
    background-image: url("/assets/images/menubackground.svg");
    background-size: 100%;
    width: 100%;
    height: 210px;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
    transition: all 500ms;
    transition-delay: 200ms;
    opacity: 0;
  }
  .menu_container.active:before {
    opacity: 1;
  }
  .menu_container.active .menu_holder {
    z-index: 5;
  }
  .button-holder-menu {
    display: block;
    margin-top: 60px !important;
    /*&::before {
        content: "";
        background-image: url(/assets/images/menubackground.svg);
        background-size: 100%;
        width: 100%;
        height: 210px;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: -1;
        transition: all 500ms;
        transition-delay: 200ms;
        opacity: 1;
    }*/
  }
  a.menu-button {
    position: relative;
    left: 0;
    width: calc(100% - 40px);
    bottom: 0;
    transition: all 500ms;
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    box-sizing: border-box;
    background-color: #fff;
    color: #000;
    padding: 17px 20px 17px 70px !important;
    text-align: center;
    display: block;
  }
  a.menu-button::before {
    content: "";
    background-image: url("/assets/images/cadeauIcon.svg");
    width: 56px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
  }
  .menu_container.active a.menu-button {
    opacity: 1;
    visibility: visible;
    z-index: 1;
  }
  .menuSearchIcon {
    position: absolute;
    right: 80px;
    vertical-align: top;
    top: calc(50% - 15px);
  }
  .fixed_holder.uk-active {
    height: 75px;
  }
}
@keyframes plyr-progress {
  to {
    background-position: 25px 0;
  }
}
@keyframes plyr-popup {
  0% {
    opacity: 0.5;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes plyr-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.plyr {
  -moz-osx-font-smoothing: auto;
  -webkit-font-smoothing: subpixel-antialiased;
  direction: ltr;
  font-family: Avenir, "Avenir Next", "Helvetica Neue", "Segoe UI", Helvetica, Arial, sans-serif;
  font-variant-numeric: tabular-nums;
  font-weight: 500;
  line-height: 1.7;
  max-width: 100%;
  min-width: 200px;
  position: relative;
  text-shadow: none;
  transition: box-shadow 0.3s ease;
}

.plyr audio, .plyr video {
  border-radius: inherit;
  height: auto;
  vertical-align: middle;
  width: 100%;
}

.plyr button {
  font: inherit;
  line-height: inherit;
  width: auto;
  height: auto;
}

.plyr button::before {
  display: none;
}

.plyr:focus {
  outline: 0;
}

.plyr--full-ui {
  box-sizing: border-box;
}

.plyr--full-ui *, .plyr--full-ui ::after, .plyr--full-ui ::before {
  box-sizing: inherit;
}

.plyr--full-ui a, .plyr--full-ui button, .plyr--full-ui input, .plyr--full-ui label {
  touch-action: manipulation;
}

.plyr__badge {
  background: #4f5b5f;
  border-radius: 2px;
  color: #fff;
  font-size: 9px;
  line-height: 1;
  padding: 3px 4px;
}

.plyr--full-ui ::-webkit-media-text-track-container {
  display: none;
}

.plyr__captions {
  animation: plyr-fade-in 0.3s ease;
  bottom: 0;
  color: #fff;
  display: none;
  font-size: 14px;
  left: 0;
  padding: 10px;
  position: absolute;
  text-align: center;
  transition: transform 0.4s ease-in-out;
  width: 100%;
}

.plyr__captions .plyr__caption {
  background: rgba(0, 0, 0, 0.8);
  border-radius: 2px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  line-height: 185%;
  padding: 0.2em 0.5em;
  white-space: pre-wrap;
}

.plyr__captions .plyr__caption div {
  display: inline;
}

.plyr__captions span:empty {
  display: none;
}

@media (min-width: 480px) {
  .plyr__captions {
    font-size: 16px;
    padding: 20px;
  }
}
@media (min-width: 768px) {
  .plyr__captions {
    font-size: 18px;
  }
}
.plyr--captions-active .plyr__captions {
  display: block;
}

.plyr:not(.plyr--hide-controls) .plyr__controls:not(:empty) ~ .plyr__captions {
  transform: translateY(-40px);
}

.plyr__control {
  background: 0 0;
  border: 0;
  border-radius: 3px;
  color: inherit;
  cursor: pointer;
  flex-shrink: 0;
  overflow: visible;
  padding: 7px;
  position: relative;
  transition: all 0.3s ease;
}

.plyr__control svg {
  display: block;
  fill: currentColor;
  height: 18px;
  pointer-events: none;
  width: 18px;
}

.plyr__control:focus {
  outline: 0;
}

.plyr__control.plyr__tab-focus {
  outline: 0;
}

a.plyr__control {
  text-decoration: none;
}

a.plyr__control::after, a.plyr__control::before {
  display: none;
}

.plyr__control.plyr__control--pressed .icon--not-pressed, .plyr__control.plyr__control--pressed .label--not-pressed, .plyr__control:not(.plyr__control--pressed) .icon--pressed, .plyr__control:not(.plyr__control--pressed) .label--pressed {
  display: none;
}

.plyr--audio .plyr__control.plyr__tab-focus, .plyr--audio .plyr__control:hover, .plyr--audio .plyr__control[aria-expanded=true] {
  background: #EC674C;
  color: #fff;
}

.plyr--video .plyr__control svg {
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.15));
}

.plyr--video .plyr__control.plyr__tab-focus, .plyr--video .plyr__control:hover, .plyr--video .plyr__control[aria-expanded=true] {
  background: #EC674C;
  color: #fff;
}

.plyr__control--overlaid {
  background: #EC674C;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
  color: #fff;
  display: none;
  left: 50%;
  padding: 15px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}

.plyr__control--overlaid svg {
  left: 2px;
  position: relative;
}

.plyr__control--overlaid:focus, .plyr__control--overlaid:hover {
  background: #EC674C;
}

.plyr--playing .plyr__control--overlaid {
  opacity: 0;
  visibility: hidden;
}

.plyr--full-ui.plyr--video .plyr__control--overlaid {
  display: block;
}

.plyr--full-ui ::-webkit-media-controls {
  display: none;
}

.plyr__controls {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  text-align: center;
}

.plyr__controls .plyr__menu, .plyr__controls .plyr__progress, .plyr__controls .plyr__time, .plyr__controls .plyr__volume, .plyr__controls > .plyr__control {
  margin-left: 5px;
}

.plyr__controls .plyr__menu + .plyr__control, .plyr__controls .plyr__progress + .plyr__control, .plyr__controls > .plyr__control + .plyr__control, .plyr__controls > .plyr__control + .plyr__menu {
  margin-left: 2px;
}

.plyr__controls > .plyr__control:first-child, .plyr__controls > .plyr__control:first-child + [data-plyr=pause] {
  margin-left: 0;
  margin-right: auto;
}

.plyr__controls:empty {
  display: none;
}

@media (min-width: 480px) {
  .plyr__controls .plyr__menu, .plyr__controls .plyr__progress, .plyr__controls .plyr__time, .plyr__controls .plyr__volume, .plyr__controls > .plyr__control {
    margin-left: 10px;
  }
}
.plyr--audio .plyr__controls {
  background: #fff;
  border-radius: inherit;
  color: #4f5b5f;
  padding: 10px;
}

.plyr--video .plyr__controls {
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7));
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
  bottom: 0;
  color: #fff;
  left: 0;
  padding: 20px 5px 5px;
  position: absolute;
  right: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
  z-index: 3;
}

@media (min-width: 480px) {
  .plyr--video .plyr__controls {
    padding: 35px 10px 10px;
  }
}
.plyr--video.plyr--hide-controls .plyr__controls {
  opacity: 0;
  pointer-events: none;
  transform: translateY(100%);
}

.plyr [data-plyr=airplay], .plyr [data-plyr=captions], .plyr [data-plyr=fullscreen], .plyr [data-plyr=pip] {
  display: none;
}

.plyr--airplay-supported [data-plyr=airplay], .plyr--captions-enabled [data-plyr=captions], .plyr--fullscreen-enabled [data-plyr=fullscreen], .plyr--pip-supported [data-plyr=pip] {
  display: inline-block;
}

.plyr__video-embed {
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
}

.plyr__video-embed iframe {
  border: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  width: 100%;
}

.plyr--full-ui .plyr__video-embed > .plyr__video-embed__container {
  padding-bottom: 240%;
  position: relative;
  transform: translateY(-38.28125%);
}

.plyr__menu {
  display: flex;
  position: relative;
}

.plyr__menu .plyr__control svg {
  transition: transform 0.3s ease;
}

.plyr__menu .plyr__control[aria-expanded=true] svg {
  transform: rotate(90deg);
}

.plyr__menu .plyr__control[aria-expanded=true] .plyr__tooltip {
  display: none;
}

.plyr__menu__container {
  animation: plyr-popup 0.2s ease;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 4px;
  bottom: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  color: #4f5b5f;
  font-size: 16px;
  margin-bottom: 10px;
  position: absolute;
  right: -3px;
  text-align: left;
  white-space: nowrap;
  z-index: 3;
}

.plyr__menu__container > div {
  overflow: hidden;
  transition: height 0.35s cubic-bezier(0.4, 0, 0.2, 1), width 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.plyr__menu__container::after {
  border: 4px solid transparent;
  border-top-color: rgba(255, 255, 255, 0.9);
  content: "";
  height: 0;
  position: absolute;
  right: 15px;
  top: 100%;
  width: 0;
}

.plyr__menu__container [role=menu] {
  padding: 7px;
}

.plyr__menu__container [role=menuitem], .plyr__menu__container [role=menuitemradio] {
  margin-top: 2px;
}

.plyr__menu__container [role=menuitem]:first-child, .plyr__menu__container [role=menuitemradio]:first-child {
  margin-top: 0;
}

.plyr__menu__container .plyr__control {
  align-items: center;
  color: #4f5b5f;
  display: flex;
  font-size: 14px;
  padding: 4px 11px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  width: 100%;
}

.plyr__menu__container .plyr__control > span {
  align-items: inherit;
  display: flex;
  width: 100%;
}

.plyr__menu__container .plyr__control::after {
  border: 4px solid transparent;
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.plyr__menu__container .plyr__control--forward {
  padding-right: 28px;
}

.plyr__menu__container .plyr__control--forward::after {
  border-left-color: rgba(79, 91, 95, 0.8);
  right: 5px;
}

.plyr__menu__container .plyr__control--forward.plyr__tab-focus::after, .plyr__menu__container .plyr__control--forward:hover::after {
  border-left-color: currentColor;
}

.plyr__menu__container .plyr__control--back {
  font-weight: 500;
  margin: 7px;
  margin-bottom: 3px;
  padding-left: 28px;
  position: relative;
  width: calc(100% - 14px);
}

.plyr__menu__container .plyr__control--back::after {
  border-right-color: rgba(79, 91, 95, 0.8);
  left: 7px;
}

.plyr__menu__container .plyr__control--back::before {
  background: #b7c5cd;
  box-shadow: 0 1px 0 #fff;
  content: "";
  height: 1px;
  left: 0;
  margin-top: 4px;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 100%;
}

.plyr__menu__container .plyr__control--back.plyr__tab-focus::after, .plyr__menu__container .plyr__control--back:hover::after {
  border-right-color: currentColor;
}

.plyr__menu__container .plyr__control[role=menuitemradio] {
  padding-left: 7px;
}

.plyr__menu__container .plyr__control[role=menuitemradio]::after, .plyr__menu__container .plyr__control[role=menuitemradio]::before {
  border-radius: 100%;
}

.plyr__menu__container .plyr__control[role=menuitemradio]::before {
  background: rgba(0, 0, 0, 0.1);
  content: "";
  display: block;
  flex-shrink: 0;
  height: 16px;
  margin-right: 10px;
  transition: all 0.3s ease;
  width: 16px;
}

.plyr__menu__container .plyr__control[role=menuitemradio]::after {
  background: #fff;
  border: 0;
  height: 6px;
  left: 12px;
  opacity: 0;
  top: 50%;
  transform: translateY(-50%) scale(0);
  transition: transform 0.3s ease, opacity 0.3s ease;
  width: 6px;
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
  background: #EC674C;
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::after {
  opacity: 1;
  transform: translateY(-50%) scale(1);
}

.plyr__menu__container .plyr__control[role=menuitemradio].plyr__tab-focus::before, .plyr__menu__container .plyr__control[role=menuitemradio]:hover::before {
  background: rgba(0, 0, 0, 0.1);
}

.plyr__menu__container .plyr__menu__value {
  align-items: center;
  display: flex;
  margin-left: auto;
  margin-right: -5px;
  overflow: hidden;
  padding-left: 25px;
  pointer-events: none;
}

.plyr--full-ui input[type=range] {
  -webkit-appearance: none;
  background: 0 0;
  border: 0;
  border-radius: 28px;
  color: #EC674C;
  display: block;
  height: 20px;
  margin: 0;
  padding: 0;
  transition: box-shadow 0.3s ease;
  width: 100%;
}

.plyr--full-ui input[type=range]::-webkit-slider-runnable-track {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -webkit-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  -webkit-user-select: none;
  user-select: none;
  background-image: linear-gradient(to right, currentColor var(--value, 0), transparent var(--value, 0));
}

.plyr--full-ui input[type=range]::-webkit-slider-thumb {
  background: #fff;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2);
  height: 14px;
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 14px;
  -webkit-appearance: none;
  margin-top: -5px;
}

.plyr--full-ui input[type=range]::-moz-range-track {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -moz-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  -moz-user-select: none;
  user-select: none;
}

.plyr--full-ui input[type=range]::-moz-range-thumb {
  background: #fff;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2);
  height: 14px;
  position: relative;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 14px;
}

.plyr--full-ui input[type=range]::-moz-range-progress {
  background: currentColor;
  border-radius: 2px;
  height: 4px;
}

.plyr--full-ui input[type=range]::-ms-track {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -ms-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  user-select: none;
  color: transparent;
}

.plyr--full-ui input[type=range]::-ms-fill-upper {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -ms-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  user-select: none;
}

.plyr--full-ui input[type=range]::-ms-fill-lower {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -ms-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  user-select: none;
  background: currentColor;
}

.plyr--full-ui input[type=range]::-ms-thumb {
  background: #fff;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2);
  height: 14px;
  position: relative;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 14px;
  margin-top: 0;
}

.plyr--full-ui input[type=range]::-ms-tooltip {
  display: none;
}

.plyr--full-ui input[type=range]:focus {
  outline: 0;
}

.plyr--full-ui input[type=range]::-moz-focus-outer {
  border: 0;
}

.plyr--full-ui input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  box-shadow: 0 0 0 5px rgba(26, 175, 255, 0.5);
  outline: 0;
}

.plyr--full-ui input[type=range].plyr__tab-focus::-moz-range-track {
  box-shadow: 0 0 0 5px rgba(26, 175, 255, 0.5);
  outline: 0;
}

.plyr--full-ui input[type=range].plyr__tab-focus::-ms-track {
  box-shadow: 0 0 0 5px rgba(26, 175, 255, 0.5);
  outline: 0;
}

.plyr--full-ui.plyr--video input[type=range]::-webkit-slider-runnable-track {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--full-ui.plyr--video input[type=range]::-moz-range-track {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--full-ui.plyr--video input[type=range]::-ms-track {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--full-ui.plyr--video input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.plyr--full-ui.plyr--video input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.plyr--full-ui.plyr--video input[type=range]:active::-ms-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.plyr--full-ui.plyr--audio input[type=range]::-webkit-slider-runnable-track {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr--full-ui.plyr--audio input[type=range]::-moz-range-track {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr--full-ui.plyr--audio input[type=range]::-ms-track {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr--full-ui.plyr--audio input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.plyr--full-ui.plyr--audio input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.plyr--full-ui.plyr--audio input[type=range]:active::-ms-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.plyr__poster {
  background-color: #000;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.2s ease;
  width: 100%;
  z-index: 1;
}

.plyr--stopped.plyr__poster-enabled .plyr__poster {
  opacity: 1;
}

.plyr__time {
  font-size: 14px;
}

.plyr__time + .plyr__time::before {
  content: "⁄";
  margin-right: 10px;
}

@media (max-width: 767px) {
  .plyr__time + .plyr__time {
    display: none;
  }
}
.plyr--video .plyr__time {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
}

.plyr__tooltip {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 3px;
  bottom: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  color: #4f5b5f;
  font-size: 14px;
  font-weight: 500;
  left: 50%;
  line-height: 1.3;
  margin-bottom: 10px;
  opacity: 0;
  padding: 5px 7.5px;
  pointer-events: none;
  position: absolute;
  transform: translate(-50%, 10px) scale(0.8);
  transform-origin: 50% 100%;
  transition: transform 0.2s 0.1s ease, opacity 0.2s 0.1s ease;
  white-space: nowrap;
  z-index: 2;
}

.plyr__tooltip::before {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(255, 255, 255, 0.9);
  bottom: -4px;
  content: "";
  height: 0;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 0;
  z-index: 2;
}

.plyr .plyr__control.plyr__tab-focus .plyr__tooltip, .plyr .plyr__control:hover .plyr__tooltip, .plyr__tooltip--visible {
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
}

.plyr .plyr__control:hover .plyr__tooltip {
  z-index: 3;
}

.plyr__controls > .plyr__control:first-child .plyr__tooltip, .plyr__controls > .plyr__control:first-child + .plyr__control .plyr__tooltip {
  left: 0;
  transform: translate(0, 10px) scale(0.8);
  transform-origin: 0 100%;
}

.plyr__controls > .plyr__control:first-child .plyr__tooltip::before, .plyr__controls > .plyr__control:first-child + .plyr__control .plyr__tooltip::before {
  left: 16px;
}

.plyr__controls > .plyr__control:last-child .plyr__tooltip {
  left: auto;
  right: 0;
  transform: translate(0, 10px) scale(0.8);
  transform-origin: 100% 100%;
}

.plyr__controls > .plyr__control:last-child .plyr__tooltip::before {
  left: auto;
  right: 16px;
  transform: translateX(50%);
}

.plyr__controls > .plyr__control:first-child .plyr__tooltip--visible, .plyr__controls > .plyr__control:first-child + .plyr__control .plyr__tooltip--visible, .plyr__controls > .plyr__control:first-child + .plyr__control.plyr__tab-focus .plyr__tooltip, .plyr__controls > .plyr__control:first-child + .plyr__control:hover .plyr__tooltip, .plyr__controls > .plyr__control:first-child.plyr__tab-focus .plyr__tooltip, .plyr__controls > .plyr__control:first-child:hover .plyr__tooltip, .plyr__controls > .plyr__control:last-child .plyr__tooltip--visible, .plyr__controls > .plyr__control:last-child.plyr__tab-focus .plyr__tooltip, .plyr__controls > .plyr__control:last-child:hover .plyr__tooltip {
  transform: translate(0, 0) scale(1);
}

.plyr--video {
  background: #000;
  overflow: hidden;
}

.plyr--video.plyr--menu-open {
  overflow: visible;
}

.plyr__video-wrapper {
  background: #000;
  border-radius: inherit;
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.plyr__progress {
  flex: 1;
  left: 7px;
  margin-right: 14px;
  position: relative;
}

.plyr__progress input[type=range], .plyr__progress__buffer {
  margin-left: -7px;
  margin-right: -7px;
  width: calc(100% + 14px);
}

.plyr__progress input[type=range] {
  position: relative;
  z-index: 2;
}

.plyr__progress .plyr__tooltip {
  font-size: 14px;
  left: 0;
}

.plyr__progress__buffer {
  -webkit-appearance: none;
  background: 0 0;
  border: 0;
  border-radius: 100px;
  height: 4px;
  left: 0;
  margin-top: -2px;
  padding: 0;
  position: absolute;
  top: 50%;
}

.plyr__progress__buffer::-webkit-prog .plyr__control[role=menuitemradio]::after, .plyr__menu__container .plyr__control[role=menuitemradio]::before {
  border-radius: 100%;
}

.plyr__menu__container .plyr__control[role=menuitemradio]::before {
  background: rgba(0, 0, 0, 0.1);
  content: "";
  display: block;
  flex-shrink: 0;
  height: 16px;
  margin-right: 10px;
  transition: all 0.3s ease;
  width: 16px;
}

.plyr__menu__container .plyr__control[role=menuitemradio]::after {
  background: #fff;
  border: 0;
  height: 6px;
  left: 12px;
  opacity: 0;
  top: 50%;
  transform: translateY(-50%) scale(0);
  transition: transform 0.3s ease, opacity 0.3s ease;
  width: 6px;
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
  background: #EC674C;
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::after {
  opacity: 1;
  transform: translateY(-50%) scale(1);
}

.plyr__menu__container .plyr__control[role=menuitemradio].plyr__tab-focus::before, .plyr__menu__container .plyr__control[role=menuitemradio]:hover::before {
  background: rgba(0, 0, 0, 0.1);
}

.plyr__menu__container .plyr__menu__value {
  align-items: center;
  display: flex;
  margin-left: auto;
  margin-right: -5px;
  overflow: hidden;
  padding-left: 25px;
  pointer-events: none;
}

.plyr--full-ui input[type=range] {
  -webkit-appearance: none;
  background: 0 0;
  border: 0;
  border-radius: 28px;
  color: #EC674C;
  display: block;
  height: 20px;
  margin: 0;
  padding: 0;
  transition: box-shadow 0.3s ease;
  width: 100%;
}

.plyr--full-ui input[type=range]::-webkit-slider-runnable-track {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -webkit-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  -webkit-user-select: none;
  user-select: none;
  background-image: linear-gradient(to right, currentColor var(--value, 0), transparent var(--value, 0));
}

.plyr--full-ui input[type=range]::-webkit-slider-thumb {
  background: #fff;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2);
  height: 14px;
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 14px;
  -webkit-appearance: none;
  margin-top: -5px;
}

.plyr--full-ui input[type=range]::-moz-range-track {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -moz-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  -moz-user-select: none;
  user-select: none;
}

.plyr--full-ui input[type=range]::-moz-range-thumb {
  background: #fff;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2);
  height: 14px;
  position: relative;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 14px;
}

.plyr--full-ui input[type=range]::-moz-range-progress {
  background: currentColor;
  border-radius: 2px;
  height: 4px;
}

.plyr--full-ui input[type=range]::-ms-track {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -ms-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  user-select: none;
  color: transparent;
}

.plyr--full-ui input[type=range]::-ms-fill-upper {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -ms-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  user-select: none;
}

.plyr--full-ui input[type=range]::-ms-fill-lower {
  background: 0 0;
  border: 0;
  border-radius: 2px;
  height: 4px;
  -ms-transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  user-select: none;
  background: currentColor;
}

.plyr--full-ui input[type=range]::-ms-thumb {
  background: #fff;
  border: 0;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2);
  height: 14px;
  position: relative;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 14px;
  margin-top: 0;
}

.plyr--full-ui input[type=range]::-ms-tooltip {
  display: none;
}

.plyr--full-ui input[type=range]:focus {
  outline: 0;
}

.plyr--full-ui input[type=range]::-moz-focus-outer {
  border: 0;
}

.plyr--full-ui input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  box-shadow: 0 0 0 5px rgba(26, 175, 255, 0.5);
  outline: 0;
}

.plyr--full-ui input[type=range].plyr__tab-focus::-moz-range-track {
  box-shadow: 0 0 0 5px rgba(26, 175, 255, 0.5);
  outline: 0;
}

.plyr--full-ui input[type=range].plyr__tab-focus::-ms-track {
  box-shadow: 0 0 0 5px rgba(26, 175, 255, 0.5);
  outline: 0;
}

.plyr--full-ui.plyr--video input[type=range]::-webkit-slider-runnable-track {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--full-ui.plyr--video input[type=range]::-moz-range-track {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--full-ui.plyr--video input[type=range]::-ms-track {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--full-ui.plyr--video input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.plyr--full-ui.plyr--video input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.plyr--full-ui.plyr--video input[type=range]:active::-ms-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(255, 255, 255, 0.5);
}

.plyr--full-ui.plyr--audio input[type=range]::-webkit-slider-runnable-track {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr--full-ui.plyr--audio input[type=range]::-moz-range-track {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr--full-ui.plyr--audio input[type=range]::-ms-track {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr--full-ui.plyr--audio input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.plyr--full-ui.plyr--audio input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.plyr--full-ui.plyr--audio input[type=range]:active::-ms-thumb {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(47, 52, 61, 0.2), 0 0 0 3px rgba(0, 0, 0, 0.1);
}

.plyr__poster {
  background-color: #000;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.2s ease;
  width: 100%;
  z-index: 1;
}

.plyr--stopped.plyr__poster-enabled .plyr__poster {
  opacity: 1;
  background-size: cover;
}

.plyr__time {
  font-size: 14px;
}

.plyr__time + .plyr__time::before {
  content: "⁄";
  margin-right: 10px;
}

@media (max-width: 767px) {
  .plyr__time + .plyr__time {
    display: none;
  }
}
.plyr--video .plyr__time {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
}

.plyr__tooltip {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 3px;
  bottom: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  color: #4f5b5f;
  font-size: 14px;
  font-weight: 500;
  left: 50%;
  line-height: 1.3;
  margin-bottom: 10px;
  opacity: 0;
  padding: 5px 7.5px;
  pointer-events: none;
  position: absolute;
  transform: translate(-50%, 10px) scale(0.8);
  transform-origin: 50% 100%;
  transition: transform 0.2s 0.1s ease, opacity 0.2s 0.1s ease;
  white-space: nowrap;
  z-index: 2;
}

.plyr__tooltip::before {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(255, 255, 255, 0.9);
  bottom: -4px;
  content: "";
  height: 0;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 0;
  z-index: 2;
}

.plyr .plyr__control.plyr__tab-focus .plyr__tooltip, .plyr .plyr__control:hover .plyr__tooltip, .plyr__tooltip--visible {
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
}

.plyr .plyr__control:hover .plyr__tooltip {
  z-index: 3;
}

.plyr__controls > .plyr__control:first-child .plyr__tooltip, .plyr__controls > .plyr__control:first-child + .plyr__control .plyr__tooltip {
  left: 0;
  transform: translate(0, 10px) scale(0.8);
  transform-origin: 0 100%;
}

.plyr__controls > .plyr__control:first-child .plyr__tooltip::before, .plyr__controls > .plyr__control:first-child + .plyr__control .plyr__tooltip::before {
  left: 16px;
}

.plyr__controls > .plyr__control:last-child .plyr__tooltip {
  left: auto;
  right: 0;
  transform: translate(0, 10px) scale(0.8);
  transform-origin: 100% 100%;
}

.plyr__controls > .plyr__control:last-child .plyr__tooltip::before {
  left: auto;
  right: 16px;
  transform: translateX(50%);
}

.plyr__controls > .plyr__control:first-child .plyr__tooltip--visible, .plyr__controls > .plyr__control:first-child + .plyr__control .plyr__tooltip--visible, .plyr__controls > .plyr__control:first-child + .plyr__control.plyr__tab-focus .plyr__tooltip, .plyr__controls > .plyr__control:first-child + .plyr__control:hover .plyr__tooltip, .plyr__controls > .plyr__control:first-child.plyr__tab-focus .plyr__tooltip, .plyr__controls > .plyr__control:first-child:hover .plyr__tooltip, .plyr__controls > .plyr__control:last-child .plyr__tooltip--visible, .plyr__controls > .plyr__control:last-child.plyr__tab-focus .plyr__tooltip, .plyr__controls > .plyr__control:last-child:hover .plyr__tooltip {
  transform: translate(0, 0) scale(1);
}

.plyr--video {
  background: #000;
  overflow: hidden;
}

.plyr--video.plyr--menu-open {
  overflow: visible;
}

.plyr__video-wrapper {
  background: #000;
  border-radius: inherit;
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.plyr__progress {
  flex: 1;
  left: 7px;
  margin-right: 14px;
  position: relative;
}

.plyr__progress input[type=range], .plyr__progress__buffer {
  margin-left: -7px;
  margin-right: -7px;
  width: calc(100% + 14px);
}

.plyr__progress input[type=range] {
  position: relative;
  z-index: 2;
}

.plyr__progress .plyr__tooltip {
  font-size: 14px;
  left: 0;
}

.plyr__progress__buffer {
  -webkit-appearance: none;
  background: 0 0;
  border: 0;
  border-radius: 100px;
  height: 4px;
  left: 0;
  margin-top: -2px;
  padding: 0;
  position: absolute;
  top: 50%;
}

.plyr__progress__buffer::-webkit-progress-bar {
  background: 0 0;
  -webkit-transition: width 0.2s ease;
  transition: width 0.2s ease;
}

.plyr__progress__buffer::-webkit-progress-value {
  background: currentColor;
  border-radius: 100px;
  min-width: 4px;
}

.plyr__progress__buffer::-moz-progress-bar {
  background: currentColor;
  border-radius: 100px;
  min-width: 4px;
  -moz-transition: width 0.2s ease;
  transition: width 0.2s ease;
}

.plyr__progress__buffer::-ms-fill {
  border-radius: 100px;
  -ms-transition: width 0.2s ease;
  transition: width 0.2s ease;
}

.plyr--video .plyr__progress__buffer {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
  color: rgba(255, 255, 255, 0.25);
}

.plyr--audio .plyr__progress__buffer {
  color: rgba(183, 197, 205, 0.66);
}

.plyr--loading .plyr__progress__buffer {
  animation: plyr-progress 1s linear infinite;
  background-image: linear-gradient(-45deg, rgba(47, 52, 61, 0.6) 25%, transparent 25%, transparent 50%, rgba(47, 52, 61, 0.6) 50%, rgba(47, 52, 61, 0.6) 75%, transparent 75%, transparent);
  background-repeat: repeat-x;
  background-size: 25px 25px;
  color: transparent;
}

.plyr--video.plyr--loading .plyr__progress__buffer {
  background-color: rgba(255, 255, 255, 0.25);
}

.plyr--audio.plyr--loading .plyr__progress__buffer {
  background-color: rgba(183, 197, 205, 0.66);
}

.plyr__volume {
  align-items: center;
  display: flex;
  flex: 1;
  position: relative;
}

.plyr__volume input[type=range] {
  margin-left: 5px;
  position: relative;
  z-index: 2;
}

@media (min-width: 480px) {
  .plyr__volume {
    max-width: 90px;
  }
}
@media (min-width: 768px) {
  .plyr__volume {
    max-width: 110px;
  }
}
.plyr--is-ios .plyr__volume {
  display: none !important;
}

.plyr--is-ios.plyr--vimeo [data-plyr=mute] {
  display: none !important;
}

.plyr:fullscreen {
  background: #000;
  border-radius: 0 !important;
  height: 100%;
  margin: 0;
  width: 100%;
}

.plyr:fullscreen video {
  height: 100%;
}

.plyr:fullscreen .plyr__video-wrapper {
  height: 100%;
  width: 100%;
}

.plyr:fullscreen .plyr__video-embed {
  overflow: visible;
}

.plyr:fullscreen.plyr--vimeo .plyr__video-wrapper {
  height: 0;
  top: 50%;
  transform: translateY(-50%);
}

.plyr:fullscreen .plyr__control .icon--exit-fullscreen {
  display: block;
}

.plyr:fullscreen .plyr__control .icon--exit-fullscreen + svg {
  display: none;
}

.plyr:fullscreen.plyr--hide-controls {
  cursor: none;
}

@media (min-width: 1024px) {
  .plyr:fullscreen .plyr__captions {
    font-size: 21px;
  }
}
.plyr:-webkit-full-screen {
  background: #000;
  border-radius: 0 !important;
  height: 100%;
  margin: 0;
  width: 100%;
}

.plyr:-webkit-full-screen video {
  height: 100%;
}

.plyr:-webkit-full-screen .plyr__video-wrapper {
  height: 100%;
  width: 100%;
}

.plyr:-webkit-full-screen .plyr__video-embed {
  overflow: visible;
}

.plyr:-webkit-full-screen.plyr--vimeo .plyr__video-wrapper {
  height: 0;
  top: 50%;
  transform: translateY(-50%);
}

.plyr:-webkit-full-screen .plyr__control .icon--exit-fullscreen {
  display: block;
}

.plyr:-webkit-full-screen .plyr__control .icon--exit-fullscreen + svg {
  display: none;
}

.plyr:-webkit-full-screen.plyr--hide-controls {
  cursor: none;
}

@media (min-width: 1024px) {
  .plyr:-webkit-full-screen .plyr__captions {
    font-size: 21px;
  }
}
.plyr:-moz-full-screen {
  background: #000;
  border-radius: 0 !important;
  height: 100%;
  margin: 0;
  width: 100%;
}

.plyr:-moz-full-screen video {
  height: 100%;
}

.plyr:-moz-full-screen .plyr__video-wrapper {
  height: 100%;
  width: 100%;
}

.plyr:-moz-full-screen .plyr__video-embed {
  overflow: visible;
}

.plyr:-moz-full-screen.plyr--vimeo .plyr__video-wrapper {
  height: 0;
  top: 50%;
  transform: translateY(-50%);
}

.plyr:-moz-full-screen .plyr__control .icon--exit-fullscreen {
  display: block;
}

.plyr:-moz-full-screen .plyr__control .icon--exit-fullscreen + svg {
  display: none;
}

.plyr:-moz-full-screen.plyr--hide-controls {
  cursor: none;
}

@media (min-width: 1024px) {
  .plyr:-moz-full-screen .plyr__captions {
    font-size: 21px;
  }
}
.plyr:-ms-fullscreen {
  background: #000;
  border-radius: 0 !important;
  height: 100%;
  margin: 0;
  width: 100%;
}

.plyr:-ms-fullscreen video {
  height: 100%;
}

.plyr:-ms-fullscreen .plyr__video-wrapper {
  height: 100%;
  width: 100%;
}

.plyr:-ms-fullscreen .plyr__video-embed {
  overflow: visible;
}

.plyr:-ms-fullscreen.plyr--vimeo .plyr__video-wrapper {
  height: 0;
  top: 50%;
  transform: translateY(-50%);
}

.plyr:-ms-fullscreen .plyr__control .icon--exit-fullscreen {
  display: block;
}

.plyr:-ms-fullscreen .plyr__control .icon--exit-fullscreen + svg {
  display: none;
}

.plyr:-ms-fullscreen.plyr--hide-controls {
  cursor: none;
}

@media (min-width: 1024px) {
  .plyr:-ms-fullscreen .plyr__captions {
    font-size: 21px;
  }
}
.plyr--fullscreen-fallback {
  background: #000;
  border-radius: 0 !important;
  height: 100%;
  margin: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 10000000;
}

.plyr--fullscreen-fallback video {
  height: 100%;
}

.plyr--fullscreen-fallback .plyr__video-wrapper {
  height: 100%;
  width: 100%;
}

.plyr--fullscreen-fallback .plyr__video-embed {
  overflow: visible;
}

.plyr--fullscreen-fallback.plyr--vimeo .plyr__video-wrapper {
  height: 0;
  top: 50%;
  transform: translateY(-50%);
}

.plyr--fullscreen-fallback .plyr__control .icon--exit-fullscreen {
  display: block;
}

.plyr--fullscreen-fallback .plyr__control .icon--exit-fullscreen + svg {
  display: none;
}

.plyr--fullscreen-fallback.plyr--hide-controls {
  cursor: none;
}

@media (min-width: 1024px) {
  .plyr--fullscreen-fallback .plyr__captions {
    font-size: 21px;
  }
}
.plyr__ads {
  border-radius: inherit;
  bottom: 0;
  cursor: pointer;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}

.plyr__ads > div, .plyr__ads > div iframe {
  height: 100%;
  position: absolute;
  width: 100%;
}

.plyr__ads::after {
  background: rgba(47, 52, 61, 0.8);
  border-radius: 2px;
  bottom: 10px;
  color: #fff;
  content: attr(data-badge-text);
  font-size: 11px;
  padding: 2px 6px;
  pointer-events: none;
  position: absolute;
  right: 10px;
  z-index: 3;
}

.plyr__ads::after:empty {
  display: none;
}

.plyr__cues {
  background: currentColor;
  display: block;
  height: 4px;
  left: 0;
  margin: -2px 0 0;
  opacity: 0.8;
  position: absolute;
  top: 50%;
  width: 3px;
  z-index: 3;
}

.plyr--no-transition {
  transition: none !important;
}

.plyr__sr-only {
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  border: 0 !important;
  height: 1px !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
}

.plyr [hidden] {
  display: none !important;
}

#page-wrapper {
  overflow: hidden;
}

#loader {
  width: 100%;
  height: 200vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
  background-color: #fff;
  transition: all 0.7s cubic-bezier(0.75, 0, 0.38, 0.98);
  opacity: 1;
  visibility: visible;
  box-sizing: border-box;
}

#loader.load {
  opacity: 0;
  visibility: hidden;
}

#loader.load.loaded {
  top: 100%;
}

#loader.loaded.visible {
  opacity: 1;
}

#loader.unloadpage {
  top: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media only screen and (max-width: 1920px) {
  .slideImageHolder {
    position: absolute;
    right: 0;
    top: 0;
    left: unset;
  }
}
@media only screen and (max-width: 1800px) {
  .header_twee_kolommen.breed .imageHolder img {
    position: absolute;
    width: 900px;
  }
}
@media only screen and (max-width: 1650px) {
  .slideTekstHolder {
    min-height: 490px;
    width: 700px;
  }
  .header_twee_kolommen.breed .imageHolder img {
    position: absolute;
    width: 820px;
  }
}
@media only screen and (max-width: 1650px) {
  .slideImageHolder {
    max-height: 600px;
  }
}
@media only screen and (max-width: 1440px) {
  h1 {
    font-size: 48px;
    line-height: 55px;
    font-weight: 900;
    margin-top: 0;
  }
  .titleHolder .subtitel, .titleHolder .title {
    font-size: 56px;
    line-height: 63px;
  }
  .header img {
    max-height: 550px;
  }
  .newsContainer.topOffset {
    margin: 30px 0;
  }
  .aboutBlocksContainer.custom {
    margin: 50px 0 0;
  }
  .header_twee_kolommen.breed .imageHolder img {
    position: relative;
  }
  .header_twee_kolommen.breed .details_block .icoon {
    right: 0px;
    top: 0px;
  }
  .slideTekstHolder {
    padding: 65px;
    font-size: 30px;
    line-height: 45px;
    margin-top: 50px;
    min-height: 375px;
  }
  .slideImageHolder img {
    height: 500px;
  }
  .impressieHolder {
    min-height: 550px;
  }
  .landingsHeaderContainer {
    margin-bottom: 100px;
  }
}
@media only screen and (max-width: 1439px) {
  .header_twee_kolommen .head_tekst {
    padding: 0 20px 200px 60px;
  }
  .header_twee_kolommen.breed .head_tekst {
    padding: 55px 50px 0 60px;
  }
  .landingsHeader .introHolder {
    margin-left: 60px;
  }
}
@media only screen and (max-width: 1400px) {
  .progressContainer {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0 20px;
    box-sizing: border-box;
  }
  .callToActionTekstHolder {
    padding: 75px 75px 75px 0;
  }
  .aboutBlocks .scroller {
    display: none;
  }
}
@media only screen and (max-width: 1380px) {
  .slideTekstHolder {
    left: 0;
    padding: 50px 50px 100px;
    min-height: 450px;
    width: 600px;
    font-size: 28px;
    line-height: 40px;
  }
}
@media only screen and (max-width: 1366px) {
  .header_twee_kolommen .head_tekst h1, h1 {
    font-size: 46px;
    line-height: 56px;
  }
  .header_twee_kolommen.breed .subtitel {
    font-size: 46px;
    line-height: 56px;
  }
  .header_twee_kolommen .details_block {
    padding: 50px 42px;
  }
  .landingsHeader .introHolder {
    margin-left: 42px;
  }
}
@media only screen and (max-width: 1350px) {
  .progressContainer {
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
  }
  .landingsHeaderContainer {
    margin-bottom: 120px;
  }
  .header_twee_kolommen.breed .imageHolder {
    min-height: 550px;
  }
  .filterHolder {
    padding: 65px 50px;
  }
  .newsContainer.topOffset {
    margin: 30px 0 80px;
  }
}
@media only screen and (max-width: 1280px) {
  .header_twee_kolommen .head_tekst {
    padding: 0 20px 0 20px;
  }
  .header_twee_kolommen.breed .head_tekst {
    padding: 55px 50px 0 20px;
  }
  .landingsHeader .introHolder {
    margin-left: 60px;
  }
  .landingsHeaderContainer {
    margin-bottom: 100px;
  }
}
@media only screen and (max-width: 1240px) {
  .titleHolder {
    left: 0;
  }
  .stickyScroller {
    width: 54px !important;
    height: 54px;
    right: 20px;
    bottom: 20px;
  }
  .introContainer .intro {
    padding-left: 20px;
  }
  .introContainer .intro::before {
    left: 0px;
    width: 100%;
    height: 100%;
    top: 0;
  }
  .aboutBlocks .scroller {
    display: none;
  }
  .header_twee_kolommen .details_block {
    left: 20px;
  }
  .header_twee_kolommen .details_block.event {
    margin: -120px 0 -80px 0px;
  }
  .header_twee_kolommen .head_tekst {
    padding: 0 0 150px 0;
  }
  .header_twee_kolommen .details_block {
    bottom: -93px;
  }
  .landingsHeader .introHolder {
    margin-left: 0px;
  }
  .header_twee_kolommen.breed .head_tekst {
    padding: 55px 50px 0 0px;
  }
  .evenementenLargeCta {
    padding: 0 0 0 20px;
  }
  .adventskalenderContainer .intro {
    max-width: 39vw;
  }
}
@media only screen and (max-width: 1200px) {
  .footer_container {
    padding: 50px 0 0;
  }
  .introContainer .intro {
    padding: 50px 20px;
  }
  .evenementenCta {
    padding: 50px 20px;
  }
  .aboutBlocksIntro {
    padding-right: 20px;
  }
  .slideTekstHolder {
    min-height: 450px;
    width: 500px;
    margin-top: 40px;
  }
  .slideImageHolder img {
    height: 550px;
  }
  .impressieHolder {
    min-height: 570px;
  }
  .landingsHeader .introHolder {
    margin-top: 30px;
  }
  .header_twee_kolommen.breed .imageHolder {
    min-height: unset;
  }
  .header_twee_kolommen.breed {
    min-height: 500px;
  }
  .header_twee_kolommen.breed .head_tekst {
    padding: 55px 0px 0 0px;
  }
  .header_twee_kolommen.breed .details_block {
    bottom: 0px;
  }
  .callToActionTekstHolder h3 {
    color: #fff !important;
    font-size: 32px;
    line-height: 40px;
  }
  .newsContainer {
    margin: 75px 0 0;
  }
  .filterContainer {
    margin: 40px auto;
  }
  .filterContainer.eventFilter .buttonHolder {
    text-align: left;
  }
  .footerBottom .socialIcon {
    height: 25px;
  }
  .footerBottom .socialIcon.linkedin {
    height: 20px;
    margin-left: 15px;
  }
  .facebook {
    margin-right: 15px;
  }
  .footerBottom .socials {
    width: 160px;
  }
}
@media only screen and (max-width: 1150px) {
  .titleHolder {
    padding: 30px 20px 20px;
    width: 550px;
  }
  .titleHolder .title, .titleHolder .subtitel {
    font-size: 50px;
    line-height: 60px;
  }
  .section-Homepage h4 {
    font-size: 24px;
  }
  .aboutBlocks .aboutBlock .aboutBlockContent h4 {
    color: #fff;
    font-size: 24px;
  }
}
@media only screen and (max-width: 1100px) {
  .header_twee_kolommen .head_tekst h1, h1 {
    font-size: 40px;
    line-height: 49px;
  }
  .header_twee_kolommen.breed .subtitel {
    font-size: 40px;
    line-height: 49px;
  }
  h3 {
    font-size: 35px;
    line-height: 45px;
  }
  .evenementenLargeCta .eventsSliderHolder {
    padding: 40px 20px 40px 0;
    font-size: 20px;
  }
  .evenementenLargeCta .allEvents .allEventsTekst {
    font-size: 20px;
  }
  .evenementenLargeCta .allEvents .allEventsTekst .tekst::before {
    width: 35px;
    height: 25px;
    right: -35px;
  }
  .header_twee_kolommen a.back {
    margin-top: -10px;
  }
  .header_twee_kolommen h4 {
    margin-bottom: 10px;
  }
  .slideImageHolder img {
    height: 480px;
    margin-top: 60px;
  }
  .slideTekstHolder {
    margin-top: 0;
    min-height: 380px;
  }
  .wordSlider {
    height: 33px;
  }
  .wordSlider ul li {
    font-size: 20px;
  }
}
@media only screen and (max-width: 1050px) {
  .landingsHeaderContainer {
    margin-bottom: 75px;
  }
}
@media only screen and (max-width: 1024px) {
  .callToActionTekstHolder {
    padding: 50px 50px 50px 0;
  }
  .introContainer {
    margin: 0 auto 50px;
  }
  .popup {
    padding: 40px 30px 50px;
  }
  .menu ul .submenu {
    line-height: 22px;
    width: 168px;
  }
  .menu ul .submenu li a {
    font-size: 16px;
  }
}
@media only screen and (max-width: 1023px) {
  .introContainer {
    margin: 0 auto 50px;
  }
  .copyright {
    margin-right: 50px;
  }
  .header_twee_kolommen.breed .details_block_intro {
    max-width: 400px;
  }
  .callToActionTekstHolder.winkel .buttons {
    bottom: 50px;
  }
  .wordSlider {
    margin-left: 0;
    display: block;
    margin-top: 6px;
  }
  .stickyScroller {
    display: none;
  }
  .menu ul .submenu {
    line-height: 30px;
    width: 300px;
  }
  .menu ul .submenu li a {
    font-size: 17px;
  }
  .fixed_holder {
    height: 75px;
  }
  .language-selector.mobile-language-selector {
    display: block;
  }
}
@media only screen and (max-width: 950px) {
  .header_twee_kolommen .head_tekst h1, h1 {
    font-size: 36px;
    line-height: 41px;
  }
  .header_twee_kolommen.breed .subtitel {
    font-size: 36px;
    line-height: 41px;
  }
  h3 {
    font-size: 30px;
    line-height: 42px;
  }
  .aboutBlocks .aboutBlock .aboutBlockContent {
    position: absolute;
    top: 30px;
    left: 30px;
    right: 30px;
    bottom: 50px;
  }
  .header_twee_kolommen a.back {
    display: none;
  }
  .impressieHolder {
    min-height: 500px;
  }
  .slideTekstHolder {
    font-size: 23px;
    line-height: 34px;
    min-height: 320px;
  }
  .slideImageHolder img {
    height: 410px;
  }
  .landingsHeaderContainer {
    padding-bottom: 40px;
  }
  .callToActionTekstHolder h3 {
    font-size: 28px;
    line-height: 33px;
  }
  .callToActionTekstHolder .callToActionTekst {
    margin-bottom: 50px;
  }
  .red_buttons .nice-select {
    height: 52px;
    line-height: 52px;
    width: 139px;
    padding-left: 20px;
  }
  .red_buttons a.button {
    margin-left: 8px;
    padding: 15px 20px;
  }
  .red_buttons .nice-select .option {
    padding-left: 20px;
    padding-right: 13px;
  }
}
@media only screen and (max-width: 900px) {
  .header_twee_kolommen .details_block {
    padding: 30px 20px;
  }
  .filterHolder {
    padding: 65px 35px;
  }
}
@media only screen and (max-width: 850px) {
  .disclaimer_menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: inline-block;
  }
  .disclaimer_menu li {
    display: block;
    padding: 0;
    border: none;
  }
  .header_twee_kolommen.breed .details_block {
    width: calc(100% - 40px);
  }
  .header_twee_kolommen.breed .details_block_intro {
    max-width: 540px;
  }
  .callToActionTekstHolder {
    padding: 30px 30px 40px 0;
  }
  .callToActionTekstHolder::before {
    width: 40px;
    left: -40px;
  }
  .callToActionTekstHolder.winkel::after {
    left: -40px;
  }
}
@media only screen and (max-width: 768px) {
  .header_twee_kolommen .head_tekst h1, h1 {
    font-size: 28px;
    line-height: 34px;
  }
  h2 {
    font-size: 28px;
    line-height: 33px;
  }
  h3 {
    font-size: 24px;
    line-height: 30px;
  }
  h5 {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
  }
  .titleHolder .title, .titleHolder .subtitel {
    font-size: 42px;
    line-height: 48px;
  }
  .titleHolder {
    width: 400px;
  }
  .popup h2 {
    margin-top: 0;
    font-size: 28px;
    line-height: 32px;
  }
  .popup .tekst {
    font-size: 15px;
    margin-bottom: 30px;
    line-height: 22px;
  }
  .landingsHeader .introHolder p {
    font-size: 18px;
    line-height: 26px;
    margin-top: 30px;
    padding-right: 0;
  }
  .aboutBlocks {
    padding: 0 20px 50px;
  }
  .evenementenHolder {
    padding-bottom: 50px;
  }
  .slideTekstHolder {
    min-height: 280px;
    padding: 40px 40px 80px;
    width: 400px;
    box-sizing: border-box;
  }
  .impressieHolder {
    margin: 80px auto;
  }
  .footer .footerTitel {
    font-size: 22px;
    line-height: 28px;
  }
  .header_twee_kolommen h1 {
    font-size: 30px;
  }
  .header_twee_kolommen.breed .subtitel {
    font-size: 30px;
  }
  .evenementenHolder .event .eventContentHolder {
    padding: 20px;
  }
  .wordSlider {
    margin-left: 3px;
    display: inline-block;
    margin-top: -1px;
  }
  .callToActionTekstHolder h3 {
    font-size: 24px;
    line-height: 33px;
  }
  .quoteHolder {
    font-size: 28px;
    line-height: 40px;
  }
  .callToActionTekstHolder .callToActionTekst {
    font-size: 16px;
    line-height: 24px;
  }
  a.button, button.button {
    padding: 15px 20px;
  }
  .aboutBlocks .aboutBlock .aboutBlockContent h4 {
    color: #fff;
    font-size: 24px;
  }
  .nieuwsbriefHolder {
    padding: 60px 0;
  }
  .nieuwsbriefContainer .tekstHolder h2 {
    font-size: 28px;
    line-height: 38px;
  }
  .nieuwsbriefContainer .tekstHolder {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .header_twee_kolommen .head_tekst h1, h1 {
    font-size: 28px;
    line-height: 34px;
  }
  .header_twee_kolommen .head_tekst {
    padding: 0;
  }
  .eventContentHolder h5 {
    margin: 10px 0 5px;
    font-size: 18px;
  }
  .eventContentHolder .date {
    font-size: 17px;
    position: absolute;
    top: 20px;
    right: 20px;
  }
  .header_twee_kolommen.breed .subtitel {
    font-size: 28px;
    line-height: 34px;
  }
  .header_twee_kolommen {
    margin: 5px auto 30px;
  }
  .header_twee_kolommen h1 {
    margin-bottom: 0;
  }
  .header_twee_kolommen .details_block {
    width: calc(100% - 80px);
    left: 40px;
    padding: 30px 20px;
    min-height: 126px;
  }
  .header_twee_kolommen.breed .details_block {
    width: 100%;
    position: relative;
    left: 0;
  }
  .header_twee_kolommen.breed .details_block .icoon {
    top: -57px;
  }
  .header {
    position: relative;
    margin-bottom: 20px;
  }
  .titleHolder {
    position: relative;
  }
  .aboutBlocksRight {
    margin-top: 0;
  }
  .evenementenLargeCta {
    padding: 0 20px;
  }
  .evenementenHolder {
    padding-bottom: 50px;
  }
  .evenementenLargeCta .eventsSliderHolder::before {
    display: none;
  }
  .evenementenLargeCta .eventsSliderHolder {
    padding: 40px 20px;
  }
  .evenementenLargeCta .allEvents {
    height: 120px;
  }
  .addEventCtaContainer {
    margin: 0 20px;
    width: auto;
  }
  .footer {
    padding: 0 20px 50px;
  }
  .logoContainer {
    order: 1;
  }
  .disclaimerContainer {
    order: 2;
  }
  .copyrightHolder {
    order: 3;
  }
  .socialContainer {
    order: 4;
  }
  .footerBottomContainer::before {
    background-size: cover;
  }
  .copyright {
    position: relative;
    font-size: 14px;
    bottom: 0;
    margin-right: 0;
    line-height: 20px;
  }
  .disclaimer_menu {
    margin-bottom: 0;
  }
  .footerBottom .socials {
    position: absolute;
    bottom: 25px;
    right: 20px;
  }
  .footerBottom .facebook {
    margin-right: 8px;
  }
  .footerBottom .socialIcon.linkedin {
    margin-left: 5px;
  }
  .footerBottom .socialIcon {
    height: 20px;
  }
  .callToActionTekstHolder.winkel {
    min-height: 220px;
  }
  .red_buttons {
    margin-bottom: 30px !important;
  }
  .red_buttons a.button {
    margin-left: 10px;
  }
  .slideTekstHolder {
    max-width: unset;
    width: 100%;
    top: 100%;
  }
  .slideImageHolder {
    position: relative;
    right: unset;
    top: 0;
  }
  .slideImageHolder img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    margin-top: 0;
  }
  .impressieHolder .slide {
    min-height: 370px;
    height: unset;
  }
  .impressieHolder {
    min-height: 750px;
    margin: 50px auto 100px;
  }
  .progressContainer {
    width: 300px;
  }
  .slideTekstHolder {
    max-width: unset;
    width: 100%;
    top: 100%;
    min-height: 320px;
    padding: 50px 20px 100px;
  }
  .landingsHeader .imageHolder img {
    position: relative;
  }
  .landingsHeader .imageHolder {
    margin-top: 0;
  }
  .callToActionTekstHolder::before {
    display: none;
  }
  .callToActionTekstHolder {
    padding: 50px;
  }
  .callToActionHolder .imageHolder {
    margin-top: 0;
  }
  .callToActionTekstHolder.winkel::after {
    left: 0px;
  }
  .footerBottom .socials {
    width: unset;
  }
  .filterHolder {
    padding: 40px 20px;
  }
  .filterHolder .uk-grid-margin {
    margin-top: 15px;
  }
  form .label {
    margin-top: 15px;
  }
  .buttonsTabletDown {
    display: flex;
  }
  .buttonsTabletDown .button.tomorrow {
    margin: 0 10px;
  }
  /*.mobileToggleFilter {
      opacity: 0;
      height: 0;
      transition: all .2s;
      visibility: hidden;
  }

  .mobileToggleFilter.active {
      margin-top: 20px;
      opacity: 1;
      height: 100%;
      visibility: visible;
  }*/
  .toggleFilter {
    display: block;
  }
  .toggleFilter.active::before {
    transform: translateY(-50%) rotate(0deg);
  }
  .toggleFilter::before {
    content: "";
    background-image: url(/assets/images/pijltje.svg);
    position: absolute;
    background-size: 100%;
    background-repeat: no-repeat;
    width: 20px;
    height: 14px;
    top: 50%;
    right: 12px;
    transform: translateY(-50%) rotate(180deg);
    transition: all 0.2s;
  }
  .nieuwsbriefContainer .inputHolder button {
    width: 110px;
    font-size: 14px;
  }
  .nieuwsbriefContainer .inputHolder input {
    font-size: 14px;
    padding: 0 125px 0 15px;
  }
  .nieuwsbriefContainer .tekstHolder h2 {
    font-size: 24px;
    line-height: 32px;
  }
  .popup .button {
    padding: 10px 15px;
    font-size: 15px;
  }
  .landingsHeaderContainer.geen_header .introHolder {
    margin-top: 0;
    margin-right: 0px;
  }
  .landingsHeader .introHolder {
    margin-top: 50px;
  }
  .landingsHeaderContainer.geen_header .landingsTitleHolder {
    margin-top: 50px;
  }
  .titleHolder {
    width: 50%;
    margin-top: -20px;
    display: inline-block;
  }
  .introContainer .intro {
    padding: 30px 20px 35px 0;
  }
  .aboutBlocks .uk-slider-container {
    overflow: unset;
    width: calc(100% - 40px);
  }
  .aboutBlocksSlider .aboutBlock .aboutBlockContent {
    left: 25px;
    right: 25px;
  }
  .aboutBlocksSlider .aboutBlock .aboutBlockContent .button {
    font-size: 15px;
  }
  .evenementenLargeCta .allEvents .allEventsTekst .tekst::before {
    width: 17px;
    right: 20px;
  }
  .evenementenLargeCta .allEvents .allEventsTekst {
    width: calc(100% - 40px);
  }
  .evenementenLargeCta {
    margin-bottom: 30px;
  }
  .mobileFooter {
    color: #fff;
    padding: 0 20px;
  }
  .mobileFooter a {
    color: #fff;
  }
  .mobileFooter .toggleItem {
    font-family: "Roboto", sans-serif;
    font-size: 19px;
    color: #fff;
    margin-bottom: 0;
    position: relative;
    padding-right: 40px;
  }
  .mobileFooter .toggleItem::before {
    content: "";
    background-image: url(/assets/images/arrow_white.svg);
    width: 19px;
    height: 10px;
    top: 8px;
    right: 10px;
    position: absolute;
    transition: all 0.4s;
    background-repeat: no-repeat;
  }
  .mobileFooter .active .toggleItem::before {
    transform: rotate(180deg);
  }
  .mobileFooter .collapseItemHolder {
    position: relative;
    padding: 17px 0;
  }
  .mobileFooter .collapseItemHolder::before {
    content: "";
    background-color: rgba(255, 255, 255, 0.3);
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    top: 0;
  }
  .mobileFooter .collapseItemHolder.last {
    margin-bottom: 40px;
  }
  .mobileFooter .collapseItemHolder.last::after {
    content: "";
    background-color: rgba(255, 255, 255, 0.3);
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .mobileFooter .collapseItem {
    position: relative;
    height: auto;
    max-height: 0;
    overflow: hidden;
    transition: all 0.4s;
    opacity: 0;
    visibility: hidden;
  }
  .mobileFooter .active .collapseItem {
    height: auto;
    position: relative;
    opacity: 1;
    visibility: visible;
    max-height: 400px;
    padding-top: 10px;
  }
  .mobileFooter .collapseItem ul {
    margin: 0;
  }
  .footer_container .twenteLogo {
    bottom: 150px;
    z-index: 5;
  }
  .filterZoekenHolder {
    display: none;
  }
  .fitypercentHolder {
    width: 50%;
  }
  .eventContentHolder .eventDetail {
    border-top: none;
    margin-top: 0;
    padding-top: 20px;
  }
  .eventContentHolder > * {
    max-width: calc(100% - 70px);
  }
  .eventContentHolder::before {
    content: "";
    background-image: url("/assets/images/blockDoorverwijzing.svg");
    width: 45px;
    height: 45px;
    right: 20px;
    bottom: 20px;
    position: absolute;
    z-index: 0;
  }
  .fixed_holder {
    height: 95px;
  }
  .header_twee_kolommen .textContainer {
    order: 2;
  }
  .header_twee_kolommen .textContainer .head_tekst {
    max-width: 78vw;
    margin-top: -50px;
    z-index: 5;
    position: relative;
    padding: 20px 40px 30px 20px !important;
    background-color: #fff;
    box-sizing: border-box;
  }
  .header_twee_kolommen .imageContainer {
    order: 1;
  }
  .newsIntroContainer h3.customMargin {
    text-align: center;
    margin-bottom: 30px;
  }
  .evenementenHolder .event .imageHolder.mobileBlog {
    height: 100%;
  }
  .evenementenHolder .event .imageHolder.mobileBlog img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    margin-top: 0;
  }
  .evenementenHolder .event .eventContentHolder.mobileBlog {
    padding: 20px 20px 80px;
    height: 100%;
    box-sizing: border-box;
  }
  .evenementenHolder .event .eventContentHolder.mobileBlog h5 {
    margin: 5px 0 5px;
    font-size: 16px;
  }
  .evenementenHolder .event .eventContentHolder.mobileBlog > * {
    max-width: 100%;
  }
  .evenementenHolder .event .eventContentHolder.mobileBlog .omschrijving, .evenementenHolder .event .eventContentHolder .omschrijving {
    margin: 0;
    display: block;
    display: -webkit-box;
    max-width: 100%;
    max-height: 70px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .evenementenHolder .event {
    border: none;
    box-shadow: 0 1px 13px 0 rgb(0 0 0/10%);
  }
  .header_twee_kolommen {
    margin: 5px auto 0;
  }
  .newsContainer.blueBackground {
    background-color: #F5F7FB;
    margin: 0;
    padding: 40px 0 0;
  }
  .newsContainer.topOffset {
    margin: 30px 0 0;
  }
  .filterContainer {
    padding: 0;
  }
  .holderWithBackground {
    background-color: #F5F7FB;
  }
  .holderWithBackground.overnachten {
    margin-top: 30px;
    padding-top: 30px;
  }
  .newsContainer.watTeDoen {
    margin-bottom: 0;
  }
  .footerDisclaimer img {
    margin-left: 78px;
    margin-top: 0px;
  }
  .mobileFooter .collapseItem .contactIcon {
    margin-right: 10px;
  }
  .header_twee_kolommen .details_block.event {
    margin: -75px 0 -50px 20px;
  }
  .adventsHeader {
    position: relative;
    top: 0;
    padding-top: 35px;
    padding-bottom: 20px;
  }
  .adventskalenderContainer h1 {
    margin-bottom: -20px;
  }
  .adventskalenderContainer .intro {
    max-width: 100%;
  }
  .adventskalenderContainer svg.kalenderboom {
    width: 160%;
    max-width: 160%;
    margin-left: -30vw;
  }
}
@media only screen and (max-width: 640px) {
  h3 {
    font-size: 24px;
    line-height: 30px;
  }
  .popup {
    padding: 30px 20px 30px;
    max-width: 320px;
  }
  .popup h2 {
    font-size: 24px;
    line-height: 28px;
  }
  .titleHolder .title, .titleHolder .subtitel {
    font-size: 46px;
    line-height: 53px;
  }
  .menu_container {
    padding: 10px 0;
  }
  .header_twee_kolommen {
    padding: 0;
  }
  .header_twee_kolommen .head_tekst {
    padding: 0 20px;
  }
  .header_twee_kolommen .details_block {
    width: calc(100% - 40px);
    left: 20px;
  }
  .header_twee_kolommen .details_block span.label {
    width: 70px;
  }
  .header_twee_kolommen .details_block span.value {
    width: calc(100% - 90px);
  }
  .header_twee_kolommen.breed .head_tekst {
    padding: 0px 20px 0 20px;
  }
  .red_buttons .nice-select {
    width: 100%;
  }
  .red_buttons a.button {
    margin-left: 0;
    margin-top: 10px;
    width: 100%;
    display: inline-block;
    box-sizing: border-box;
    padding: 16px 30px;
  }
  .side_block {
    padding: 25px 20px;
  }
  .callToActionTekstHolder {
    padding: 30px 20px;
  }
  .aboutBlocksContainer.custom {
    margin: 50px 0 0;
  }
  .aboutBlocksIntro {
    padding-bottom: 0;
  }
  .aboutBlocks {
    padding: 0 20px 50px;
  }
  .uitgelichteWinkelHolder {
    position: relative;
    padding-bottom: 50px;
  }
  .footer .footerTitel {
    font-size: 18px;
    line-height: 24px;
  }
  .addEventCta img {
    display: none;
  }
  .addEventCta .tekst {
    margin-left: 0px;
  }
  .aboutBlocks .aboutBlock .aboutBlockContent h4 {
    font-size: 20px;
  }
  .eventContentHolder .eventCat {
    font-size: 15px;
  }
  .introContainer .intro, .evenementenCta {
    padding: 30px 20px 55px;
    height: auto;
    min-height: auto;
  }
  .introContainer .intro {
    padding: 30px 20px 35px 0;
  }
  .introContainer .intro::before {
    left: -20px;
    width: calc(100% + 20px);
  }
  .red_buttons a.button {
    padding: 10px 20px;
  }
  .callToActionTekstHolder .callToActionTekst {
    margin-bottom: 90px;
  }
}
@media only screen and (max-width: 480px) {
  .menu ul {
    padding: 0 15px;
  }
  .titleHolder .title, .titleHolder .subtitel {
    font-size: 26px;
    line-height: 30px;
  }
  .section-Homepage h4 {
    font-size: 22px;
  }
  .addEventCtaContainer {
    padding: 20px 0;
  }
  .addEventCta .tekst {
    font-size: 16px;
  }
  .evenementenLargeCta .allEvents {
    height: 80px;
  }
  .callToActionTekstHolder h3 {
    font-size: 22px;
    line-height: 26px;
  }
  .callToActionTekstHolder.winkel .overviewButton {
    margin: 20px 20px 0 15px;
    font-size: 18px;
  }
  .evenementenCta .button {
    padding: 19px 20px 20px 78px;
  }
  .evenementenLargeCta .allEvents .allEventsTekst {
    left: 20px;
    top: 30%;
    transform: translate(0%, 0%);
    font-size: 20px;
  }
  .buttonsTabletDown {
    display: flex;
  }
  .toggleFilter {
    width: 100%;
  }
  .callToActionTekstHolder .callToActionTekst {
    margin-bottom: 100px;
  }
  .mobielMenuZoeken {
    margin-left: 40px;
  }
}
@media only screen and (max-width: 370px) {
  .wordSlider {
    margin-left: 0;
    display: block;
    margin-top: 1px;
  }
  .footer_container .twenteLogo {
    width: 60px;
  }
}
.logo .short {
  transition: all 1000ms;
}

.fixed_holder.uk-active .logo .short {
  transition: all 1000ms;
  transition-delay: 1000ms;
}

.logo .long {
  transition: all 1500ms;
  transition-delay: 1000ms;
  opacity: 1;
}

.fixed_holder.uk-active .logo #letter_e {
  transition-delay: 300ms;
}

.fixed_holder.uk-active .logo #letter_n {
  transition-delay: 320ms;
}

.fixed_holder.uk-active .logo #letter_g {
  transition-delay: 340ms;
}

.fixed_holder.uk-active .logo #letter_e2 {
  transition-delay: 340ms;
}

.fixed_holder.uk-active .logo #letter_l {
  transition-delay: 335ms;
}

.fixed_holder.uk-active .logo #letter_o {
  transition-delay: 340ms;
}

.logo #letter_e {
  transition-delay: 380ms;
}

.logo #letter_n {
  transition-delay: 360ms;
}

.logo #letter_g {
  transition-delay: 340ms;
}

.logo #letter_e2 {
  transition-delay: 320ms;
}

.logo #letter_l {
  transition-delay: 300ms;
}

.logo #letter_o {
  transition-delay: 300ms;
}

.fixed_holder.uk-active .logo .long {
  transform: translateX(-200px);
  opacity: 0;
}

.logo_mobile {
  opacity: 0;
}

.fixed_holder.uk-active .logo {
  height: 60px;
  transform: translateY(calc(50% - 55px));
}

.fixed_holder.uk-active .logo .bracket {
  transition: all 1000ms;
  transition-delay: 1s;
}

.logo .bracket {
  transition: all 1000ms;
}

.fixed_holder.uk-active .logo .bracket {
  transform: translateY(-10px);
}

.fixed_holder.uk-active .logo .short {
  transform: translateX(48px);
}

.logo_mobile .stickyLogo {
  display: none;
}

.fixed_holder.uk-active .logo_mobile .stickyLogo {
  display: block;
}

.fixed_holder.uk-active .logo_mobile .staticLogo {
  display: none;
}

@media only screen and (max-width: 768px) {
  .logo_mobile {
    opacity: 1;
  }
  .logo {
    display: none !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzaGVldHMvYXBwLmNzcyIsIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUN5QmhCOzs2RUFBQTtBQUlBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0Esa01DeUNpQjtFRHhDakIsZUMyQ2U7RUQxQ2YsbUJDeUNvQjtFRHhDcEIsZ0JDMkNpQjtFRDFDakI7RUFDQTtFQUNBO0VBQ0EsZ0JDZ0JnQjtFRGZoQixXQ3RDVztBRmFmOztBQzZCQTs7RUFBQTtBQUlBO0VBQU87QUQxQlA7O0FDNkJBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTs7RUFFSSxjQ3FCZ0I7RURwQmhCLHFCQ3NCd0I7RURyQnhCO0FENUJKOztBQ2dDQTs7O0VBR0ksY0Nlc0I7RURkdEIsMEJDZ0I4QjtBRjdDbEM7O0FDa0NBOzZFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDSTtFQUNBO1VBQUE7RUFDQTtFQUNBO0FEakNKOztBQ29DQTs7RUFBQTtBQUlBOztFQUNTLG1CQ1JpQjtBRnpCMUI7O0FDbUNBOzs7O0VBQUE7QUFNQTs7O0VBR0k7RUFDQSx3Q0NsQm9CO0VEbUJwQjtFQUNBLG1CQzdEcUI7RUQ4RHJCO0VBQ0EsY0NwRnVCO0VEcUZ2QjtFRU1BO0VBQ0EsbUJEMUdzQjtBRm9FMUI7O0FDbUNBOztFQUFBO0FBSUE7RUFBSyxjQzdGc0I7QUY2RDNCOztBQ2tDQTs7RUFBQTtBQUlBO0VBQ0ksZ0JDbkNrQjtFRG9DbEIsV0M5SFc7RUQrSFg7QURoQ0o7O0FDbUNBOztFQUFBO0FBSUE7RUFDSSxnQkMzQ21CO0VENENuQixXQ3hJVztBRnVHZjs7QUNvQ0E7O0VBQUE7QUFJQTtFQUFJLGtCQ2pEb0I7QUZnQnhCOztBQ21DQTs7RUFBQTtBQUlBO0VBQVEsY0N0RGU7QUZzQnZCOztBQ2tDQTs7RUFBQTtBQUlBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0FEaENKOztBQ21DQTtFQUFNO0FEL0JOOztBQ2dDQTtFQUFNO0FENUJOOztBQytCQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7Ozs7OztFQUtRO0FEN0JSOztBQytCQTs7OztFQUFBO0FBTUE7Ozs7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUQ3Qko7O0FDZ0NBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FEOUJKOztBQ2lDQTs7O0VBQUE7QUFLQTtFQUFTO0FEOUJUOztBQ2lDQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7Ozs7Ozs7O0VBT1M7QUQvQlQ7O0FDaUNBO0FBQ0E7Ozs7Ozs7O0VBT2EsZ0JDM1BHO0FGOE5oQjs7QUNnQ0E7NkVBQUE7QUFHQTs7Ozs7Ozs7Ozs7O0VBWUk7RUFDQSxrTUNoTWlCO0VEaU1qQixtQkN0S3VCO0VEdUt2QixXQzNRb0I7RUQ0UXBCLG9CQ3RLMEI7QUZ3STlCOztBQ2tDQTtBQUNBOzs7Ozs7Ozs7Ozs7RUFXMEIsZ0JDckxIO0FGdUp2Qjs7QUNnQ0E7O0VBQUE7QUFJQTtFQUNJLHFCQ3pMZ0I7RUQwTGhCLGdCQ3pMa0I7QUYySnRCOztBQ2tDQTtFQUNJLGlCQzNMZ0I7RUQ0TGhCLGdCQzNMa0I7QUY0SnRCOztBQ21DQTtFQUNJLGlCQy9McUI7RURnTXJCLGdCQzlMa0I7QUY4SnRCOztBQ29DQTtFQUNJLGtCQ3hUc0I7RUR5VHRCLGdCQ2xNa0I7QUZpS3RCOztBQ3FDQTtFQUNJLGVDL09lO0VEZ1BmLGdCQ3RNa0I7QUZvS3RCOztBQ3NDQTtFQUNJLG1CQ2pScUI7RURrUnJCLGdCQzFNa0I7QUZ1S3RCOztBQ3VDQTtBQUNBO0VBRUk7SUFBYSxtQkM3UlU7RUZ5UHpCO0VDcUNFO0lBQWEsZUM5TlM7RUY0THhCO0FBQ0Y7QUNzQ0E7NkVBQUE7QUFHQTs7RUFDSyxrQkMxTm9CO0FGc0x6Qjs7QUNzQ0E7O0VBQUE7QUFJQTs7OztFQUdlO0FEbkNmOztBQ3NDQTs2RUFBQTtBQUdBO0VBQUs7QURuQ0w7O0FDb0NBO0VBQUs7QURoQ0w7O0FDbUNBOzZFQUFBO0FBR0E7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRGxDSjs7QUNzQ0E7QUFDQTs7RUFDYSxnQkNsWUc7QUZnV2hCOztBQ3FDQTs2RUFBQTtBQUdBO0VBQVU7QURsQ1Y7O0FDcUNBOzZFQUFBO0FBR0E7RUFDSTtFQUNBLGtCQzlZc0I7RUQrWXRCLGdCQzVRMEI7RUQ2UTFCLGtCQzVReUI7RUNDekIsV0RsSW9CO0FGMld4Qjs7QUNzQ0E7QUFDQTtFQUFpQixnQkN2WkQ7QUZxWGhCOztBQ29DQTs7RUFBQTtBQUlBO0VBQTRCO0FEakM1Qjs7QUNtQ0E7RUFDSSxnQkN4UmtCO0VEeVJsQixtQkM1V3FCO0VENldyQixnQkN2UmlDO0VDQWpDLFdEcElXO0FGNFhmO0FHdFBJO0VBQVk7QUh5UGhCOztBQ2lDQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtFQUNBLFdDemFXO0VEMGFYO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7RUVuU0EsYURvaUNlO0VDbmlDZjtFQUNBLGtCRHNpQ3FCO0VDcmlDckIsZ0JEeEZnQjtBRjRWcEI7O0FDZ0NBO0VBQVcsd0NDMVZhO0FGOFR4Qjs7QUMrQkE7NkVBQUE7QUFHQTtFQUFTO0FENUJUOztBQzhCQTtFQUFpQjtBRDFCakI7O0FDNkJBOzZFQUFBO0FBR0E7RUFDSSxnQkNuVHdCO0VEb1R4QixXQzlibUI7RUQrYm5CO0FEM0JKO0FDd0JBO0VBQ0ksZ0JDblR3QjtFRG9UeEIsV0M5Ym1CO0VEK2JuQjtBRDNCSjs7QUMrQkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtPQUNPO0VBQ0g7QUQ5Qko7O0FDaUNBOztFQUFBO0FBSUE7RUFBVTtBRDlCVjs7QUNnQ0E7O0VBQUE7QUFJQTtFQUFXO0FEN0JYOztBQ2dDQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBRC9CSjs7QUkvYkE7OzZFQUFBO0FBS0E7NkVBQUE7QUFHQTs7O0VBR0ksV0Z5QmlCO0FGc2FyQjs7QUkzYkE7OztFQUdJLFdGL0JXO0FGNmRmOztBSXpiQTs2RUFBQTtBQUdBOzs7RUFHSTtBSjJiSjs7QUl2YkE7OztFQUdJO0FKMGJKOztBSXJiQTs2RUFBQTtBQUdBOzs7RUFHSTtBSnViSjs7QUluYkE7OztFQUdJLGNGbkR3QjtFRW9EeEIscUJGcWlCaUM7QUYvR3JDOztBSWpiQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7O0VBRUk7RUFDQTtBSmtiSjs7QUk3YUE7NkVBQUE7QUFHQTtFQUNJO0VBQ0E7QUorYUo7O0FLM2VBOzs2RUFBQTtBQUlBO0VBQ0ksaUJIa2RzQjtFR2pkdEIsZ0JIZ2V3QjtBRmE1Qjs7QUt6ZUE7RUFDSSxvQkg4Y3VCO0VHN2N2QixnQkgyZHlCO0FGaUI3Qjs7QUt4ZUE7RUFDSSxpQkgwY3NCO0VHemN0QixnQkhzZHdCO0FGcUI1Qjs7QUt2ZUE7RUFDSSxlSDhieUI7RUc3YnpCLGNIaWR5QjtBRnlCN0I7O0FLdGVBO0VBQ0ksZUhnY3dCO0VHL2J4QixjSDRjMEI7QUY2QjlCOztBS3JlQTtFQUNJLGVINmJ5QjtFRzViekIsY0h1YzBCO0FGaUM5Qjs7QUtwZUE7QUFDQTtFQUVJO0lBQW9CLGtCSDJhSTtFRjREMUI7RUt0ZUU7SUFBcUIsaUJINGFJO0VGNkQzQjtFS3hlRTtJQUFvQixlSHdhSztFRm1FM0I7RUsxZUU7SUFBcUIsZUgrYUc7RUY4RDFCO0VLNWVFO0lBQXNCLGVIaWJHO0VGOEQzQjtFSzllRTtJQUFzQixnQkhtYkk7RUY4RDVCO0FBQ0Y7QUs5ZUE7QUFDQTtFQUVJO0lBQXFCLGVIOFpJO0VGa0YzQjtFSy9lRTtJQUFvQixlSHFhSTtFRjZFMUI7RUtqZkU7SUFBcUIsZUh1YUk7RUY2RTNCO0VLbmZFO0lBQXNCLGdCSHlhSTtFRjZFNUI7RUtyZkU7SUFBc0IsZ0JIMGFJO0VGOEU1QjtBQUNGO0FLcGZBOzs2RUFBQTtBQWtCQTtBQVNBO0FBYUE7OzZFQUFBO0FBa0JBO0FBWUE7QUFhQTs2RUFBQTtBQUdBO0VBQ0ksaUNIcVY2QjtFR3BWN0I7QUw0YUo7O0FLdmFBOzZFQUFBO0FBR0E7RUFBcUI7QUwwYXJCOztBS3hhQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUJIaVVpQjtFR2hVakI7RUFDQTtFQUNBLHlCSCtUb0I7RUc5VHBCLCtCSCtUMEI7RUc5VDFCO0FMMGFKOztBS3JhQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFBbUI7QUx1YW5COztBS3JhQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBTHVhSjs7QUtwYUE7Ozs7RUFBQTtBQU1BOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhSGdTaUI7RUcvUmpCO0VBQ0E7QUxzYUo7O0FLbGFBO0VBQ0k7RUFDQSwrQkgwUjZCO0FGMklqQzs7QUtuYUE7RUFDSTtFQUNBLDhCSHNSNkI7QUZnSmpDOztBTTlwQkE7OzZFQUFBO0FBSUE7OztFQUFBO0FBS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQSxtQkpoQ1k7QUYrckJoQjs7QU01cEJBO0FBQ0E7RUFBNEIsZ0JKcENaO0FGb3NCaEI7O0FNN3BCQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQSxZSnFTa0I7RUtuVGxCO0VEZ0JBO0VBQ0E7QU4rcEJKOztBTTNwQkE7O0VBRUk7RUFDQTtFQUNBLFFKNFJvQjtFSTNScEI7RUFDQTtBTjhwQko7O0FNMXBCQTtFQUNJO0VBQ0EsV0pxUnNCO0FGd1kxQjs7QU16cEJBO0VBQ0k7RUFDQSxXSitRc0I7QUY2WTFCOztBTXZwQkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtBQUNBO0VBQW9CO0FOeXBCcEI7O0FNdnBCQTtBQUNBO0VBQ0k7RUFDQTtFQUNBLFlKK1BrQjtFSTlQbEI7RUFDQTtFQUNBO0FOMHBCSjs7QU1ycEJBOzZFQUFBO0FBR0E7RUFDSTtFQUFBO0VBQ0EsYUpxUHNCO0VJcFB0QjtFQUNBO0VBQ0E7QU51cEJKOztBUTV0QkE7OzZFQUFBO0FBSUE7RUFDSTtFQUNBO0FSOHRCSjs7QVEzdEJBOztFQUFBO0FBSUE7RUFBZTtPQUFBO0FSOHRCZjs7QVE1dEJBOztFQUFBO0FBSUE7RUFBNkI7QVIrdEI3Qjs7QVE3dEJBOztFQUFBO0FBSUE7O0VBQ29CLGdCTjBFRTtBRnNwQnRCOztBUTd0QkE7NkVBQUE7QUFHQTs7Ozs7RUFJa0Isa0JOOGlCRTtBRmtMcEI7O0FROXRCQTtFQUFnQjtBUmt1QmhCOztBUWp1QkE7RUFBa0I7QVJxdUJsQjs7QVFwdUJBO0VBQWtCO0FSd3VCbEI7O0FRdnVCQTtFQUFtQjtBUjJ1Qm5COztBUTF1QkE7RUFBa0I7QVI4dUJsQjs7QVE1dUJBOztFQUFBO0FBSUE7RUFBNEI7QVIrdUI1Qjs7QVE5dUJBO0VBQStCO0FSa3ZCL0I7O0FRanZCQTtFQUE4QjtBUnF2QjlCOztBUXB2QkE7RUFBZ0M7QVJ3dkJoQzs7QVFydkJBOzZFQUFBO0FBR0E7RUFDSTtFQUNBLGtCTnVoQmdCO0FGZ09wQjs7QVFwdkJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXTitnQmdCO0VNOWdCaEI7RUQxRUE7RUM0RUE7RUFDQTtBUnV2Qko7O0FRbnZCQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSSxnQk5pQmtCO0VNaEJsQixpQk5nQmtCO0VNZmxCO0FSb3ZCSjs7QVFodkJBOztFQUFBO0FBSUE7RUFDSTtBUmt2Qko7QUc4V0k7RUFDSTtFQUNBO0FINVdSOztBUWx2QkE7RUFBdUMsbUJOcEhiO0FGMDJCMUI7O0FRcHZCQTtFQUFxQztBUnd2QnJDOztBUXJ2QkE7NkVBQUE7QUFHQTs7RUFDMEIsZ0JOL0lWO0FGdTRCaEI7O0FRdHZCQTs7RUFDNkI7QVIwdkI3Qjs7QVF4dkJBOztFQUFBO0FBSUE7RUFDSSxnQk56Slk7RU0wSlosaUJOMUpZO0FGbzVCaEI7O0FRdnZCQTtFQUNJO0VBQ0E7QVIwdkJKOztBUXZ2QkE7O0VBQUE7QUFJQTtFQUFxQztBUjB2QnJDOztBUXh2QkE7RUFDSTtFQUNBO0FSMnZCSjs7QVF4dkJBOztFQUNzRDtBUjR2QnREOztBUzE1QkE7OzZFQUFBO0FBSUE7O0VBQUE7QUFJQTtFQUNJLFdQcEJvQjtFQ3lzQnBCLG1CRHpwQnFCO0VDMHBCckIsbUJEb2dCZ0M7RUNuZ0JoQyx5QkRvZ0JtQztBRjdSdkM7O0FTMTVCQTtFQUNJLGdCUDlCWTtBRjI3QmhCOztBUzE1QkE7O0VBQUE7QUFTQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSSxnQlBsRFk7RU9tRFosaUJQbkRZO0VPb0RaO0FUcTVCSjs7QVVwNkJBOzs2RUFBQTtBQUlBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CUnREWTtBRjI5QmhCOztBVWo2QkE7QUFDQTtFQUFnQixnQlIzREE7QUZnK0JoQjs7QVVsNkJBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJSckJxQjtFUXNCckIsbUJSODlCNEI7RVE3OUI1QixXUnBCaUI7RUM0OERZO0FIcGhDakM7O0FVLzVCQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtBVmk2Qko7O0FVNzVCQTs7RUFBQTtBQUlBO0VBQTZCO0FWZzZCN0I7O0FVNzVCQTs2RUFBQTtBQUdBO0VBQ0ksbUJSaERxQjtBRis4QnpCOztBVTE1QkE7NkVBQUE7QUFHQTtFQUNJLG1CUnpEcUI7RVEwRHJCO0VBQ0EsV1J4RGlCO0FGbzlCckI7O0FVdjVCQTs2RUFBQTtBQUdBOztFQUNzQjtBVjA1QnRCOztBVXY1QkE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBOzs7RUFHSTtBVnc1Qko7O0FVcDVCQTs7RUFBQTtBQUlBOztFQUVJLG1CUjlIc0I7RUN3L0R0QjtFQUNBO0FIbitCSjs7QVVwNUJBOztFQUFBO0FBSUE7O0VBRUksZ0JSbzVCMEI7QUZFOUI7O0FVajVCQTs2RUFBQTtBQUdBOztFQUVJLGdCUjA0QjBCO0FGUzlCOztBVS80QkE7NkVBQUE7QUFHQTs7RUFFSTtBVmk1Qko7O0FVNzRCQTs7RUFFSTtBVmc1Qko7O0FVMzRCQTs2RUFBQTtBQUdBOztFQUNtQztBVjg0Qm5DOztBVTU0QkE7O0VBQ2tDO0FWZzVCbEM7O0FVNzRCQTs2RUFBQTtBQUdBO0VBQW1CO0FWZzVCbkI7O0FVLzRCQTtFQUFtQixnQlJpM0JNO0FGa0N6Qjs7QVVoNUJBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUFpQjtBVms1QmpCOztBVWg1QkE7RUFDSTtFQUNBO0FWbTVCSjs7QVVoNUJBO0VBQXFDO0FWbzVCckM7O0FVajVCQTs2RUFBQTtBQUlBO0FBQ0E7RUFFSTs7Ozs7SUFJMEI7RVZrNUI1QjtFVWg1QkU7SUFBNkI7RVZtNUIvQjtFVWo1QkU7O0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFVm01Qk47RVVoNUJFOzs7SUFFNEQ7RVZtNUI5RDtFVWo1QkU7OztJQUUyRDtFVm81QjdEO0VVbDVCRTs7SUFFSTtJQUNBO0VWbzVCTjtBQUNGO0FHaTRCSTtFQUFxQjtBSDkzQnpCOztBR2c0Qkk7O0VBQzBEO0FINTNCOUQ7O0FXbm9DQTs7NkVBQUE7QUFJQTs7Ozs7Ozs7Ozs7O0VBQUE7QUFjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYb29DSjs7QVdqb0NBO0FBQ0E7RUFBZ0M7QVhxb0NoQzs7QVdub0NBOztFQUFBO0FBSUE7RUFDSTtFQUNBO0FYcW9DSjs7QVdsb0NBOztFQUFBO0FBSUE7RUFBMkQ7QVhxb0MzRDs7QVdwb0NBO0VBQTZEO0FYd29DN0Q7O0FXdG9DQTs7RUFBQTtBQUlBO0VBQWU7QVh5b0NmOztBV3RvQ0E7NkVBQUE7QUFHQTs7OztFQUFBO0FBTUE7RUFDSSxXVDZjYztFUzVjZCxZVDRjYztFUzNjZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QVh1b0NKOztBV25vQ0E7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNJLFdUcEVpQjtFU3FFakI7RUFDQTtBWG9vQ0o7O0FXaG9DQTtFQUNJLFdUNUhXO0FGK3ZDZjs7QVcvbkNBO0FBQ0E7O0VBRUksK0JUNGFxQjtBRnN0QnpCOztBVzluQ0E7OztFQUFBO0FBS0E7RUFDSTtFQUNBLFdUa2FlO0VTamFmLFlUaWFlO0VTaGFmLG9CVGlhd0I7RVNoYXhCLG1CVHRJc0I7RVN1SXRCLFdUakdpQjtFU2tHakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFUmc2QkE7RUFDQTtBSGlPSjs7QVc5bkNBO0FBQ0E7RUFDSSw2Q1R1WjJCO0VTdFozQixXVDlKVztBRit4Q2Y7O0FXN25DQTtBQUNBOztFQUVJLDBDVGlaNEI7RVNoWjVCLFdUdEtXO0FGc3lDZjs7QVkveENBOzs2RUFBQTtBQUlBOzs7Ozs7OztFQUFBO0FBVUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaZ3lDSjs7QVk1eENBO0FBQ0E7RUFBa0I7QVpneUNsQjs7QVkveENBO0VBQThCO0FabXlDOUI7O0FZanlDQTs7RUFBQTtBQUlBO0VBQWlEO0Fab3lDakQ7O0FZbnlDQTtFQUE2QztBWnV5QzdDOztBWXB5Q0E7OztFQUFBO0FBS0E7QUFDQTtFQUNJLFdWMFZzQjtFVXpWdEIsdUNWMFYwQjtFQ3FaRSxvQkQrYUM7QUZ5SWpDOztBWW55Q0E7O0VBR0ksb0NWb1ZnQztBRmk5QnBDOztBWWp5Q0E7QUFDQTtFQUNJLFdWNFVzQjtFVTNVdEIsdUNWNFUwQjtFQ3FaRSxvQkQrYUM7QUZxSmpDOztBWWp5Q0E7RUFDSSxvQ1Z3VWdDO0FGNDlCcEM7O0FZaHlDQTs7OztFQUFBO0FBTUE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWVZ5VHNCO0VVeFR0QixXVndUc0I7RVV2VHRCLG9CVnlUNkI7RVV4VDdCLGdCVjVDZ0I7RUN1dkJZO0FId2xCaEM7O0FZL3hDQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsWVY2U3NCO0VVNVN0QixXVjRTc0I7RVUzU3RCO0VBQ0Esb0JWNFM2QjtFVTNTN0IsZ0JWekRnQjtFQ3V2Qlk7QUhxbUJoQzs7QWE3MUNBOzs2RUFBQTtBQUlBOzs7Ozs7Ozs7RUFBQTtBQVdBOzs7OztFQUtJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWI4MUNKOztBYTMxQ0E7O0VBQUE7QUFJQTtFQUFZO0FiODFDWjs7QWE1MUNBOztFQUFBO0FBSUE7RUFBYTtBYisxQ2I7O0FhNzFDQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBYisxQ0o7O0FhNTFDQTs7RUFBQTtBQUlBO0VBQWU7QWIrMUNmOztBYTcxQ0E7O0VBQUE7QUFJQTs7RUFDc0Q7QWJnMkN0RDs7QWE5MUNBOztFQUFBO0FBSUE7O0VBQ3NEO0FiaTJDdEQ7O0FhLzFDQTs7RUFBQTtBQUlBOzs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtBYmkyQ0o7O0FhOTFDQTs7RUFBQTtBQUlBOztFQUNpQztBYmkyQ2pDOztBYS8xQ0E7O0VBQUE7QUFJQTs7RUFDOEI7QWJrMkM5Qjs7QWFoMkNBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYmsyQ0o7O0FhOTFDQTs7Ozs2RUFBQTtBQU1BOztFQUFBO0FBSUE7O0VBQ2U7QWJnMkNmOztBYTkxQ0E7Ozs7O0VBQUE7QUFPQTs7O0VBR0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCWGxKZ0I7RVdtSmhCLFdYeE1XO0VDdzFCWDtFQUNBO0VBQ0E7QUhpdEJKOztBYS8xQ0E7Ozs7O0VBQUE7QUFPQTs7RUFFSSxZWGhEb0I7RVdpRHBCO0VBQ0E7RUFDQTtBYmkyQ0o7O0FhNzFDQTtBQUNBOztFQUN5QixpQlhtTU47QUY4cENuQjs7QWEvMUNBOztFQUFBO0FBSUE7OztFQUdJLGdCWDRMb0I7RVczTHBCLG1CWDJMb0I7RVcxTHBCO0FiaTJDSjs7QWE3MUNBOztFQUNtQjtBYmkyQ25COztBYS8xQ0E7QUFDQTs7O0VBR0k7RUFDQSxzQlhoTWdCO0VXaU1oQixXWHRQVztFQzgxQlcscUJEOTBCRTtBRnlrRDVCOztBYS8xQ0E7QUFDQTs7O0VBR0kseUJYblBzQjtFV29QdEIsV1g5TWlCO0VDOHlCUSxxQkRwdUJiO0FGdStDaEI7O0FhLzFDQTs7RUFBQTtBQUlBO0VBQXlCLFdYdE5KO0FGd2pEckI7QWFsMkNBO0VBQXlCLFdYdE5KO0FGd2pEckI7O0FhaDJDQTtFQUE0QixXWHhOUDtBRjRqRHJCOztBYXAyQ0E7RUFBNEIsV1h4TlA7QUY0akRyQjs7QWFqMkNBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUFpQixtQlhyT1E7QUZ3a0R6Qjs7QWFqMkNBO0FBQ0E7RUFDSSxZWC9HMEI7RVdnSDFCLGlCWG9KNEI7RVduSjVCLGtCWG1KNEI7QUZpdENoQzs7QWFqMkNBO0FBQ0E7OztFQUV1QjtBYnEyQ3ZCOztBYW4yQ0E7RUFBc0QsaUJYNkk3QjtBRjB0Q3pCOztBYXIyQ0E7O0VBQUE7QUFJQTtFQUFpQixrQlg1U1M7QUZvcEQxQjs7QWF0MkNBO0FBQ0E7RUFDSSxZWGpJMEI7RVdrSTFCLGtCWHFJNEI7RVdwSTVCLG1CWG9JNEI7QUZxdUNoQzs7QWF0MkNBO0FBQ0E7OztFQUV1QjtBYjAyQ3ZCOztBYXgyQ0E7RUFBc0QsaUJYOEg3QjtBRjh1Q3pCOztBYXoyQ0E7NkVBQUE7QUFHQTs7RUFBQTtBQUlBOztFQUVJLGNYeFN1QjtFQ3UwQkEscUJEdjBCQTtBRm1wRDNCOztBYXYyQ0E7O0VBQUE7QUFJQTs7RUFFSSxjWHhUd0I7RUM4MEJBLHFCRDkwQkE7QUZrcUQ1Qjs7QWF0MkNBOztFQUFBO0FBSUE7RUFDSTtFVjhnQnNCO0FIMjFCMUI7O0FhcjJDQTtFVjRnQkkscUJEenVCWTtFQzB1QlosbUJEOFg0QjtBRitkaEM7O0FhcjJDQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQTZCLFdYa0ZUO0FGcXhDcEI7O0FhcjJDQTtFQUE4QjtBYnkyQzlCOztBYXYyQ0E7RUFBdUIsWVgrRUo7QUY0eENuQjs7QWF6MkNBO0VBQXdCLFlYOEVKO0FGK3hDcEI7O0FhMzJDQTtFQUF1QixZWDZFSjtBRmt5Q25COztBYTUyQ0E7NkVBQUE7QUFHQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CWDZEd0I7RUtwYXhCO0VNeVdBO0VBQ0E7QWI2MkNKOztBYTEyQ0E7QUFDQTtFQUFnRCxXWHJZakM7QUZtdkRmOztBYTUyQ0E7O0VBQUE7QUFJQTtFTnBYSTtBUG11REo7O0FhNTJDQTs2RUFBQTtBQUdBOztFQUFBO0FBSUM7RUFDRyxtQlh5QzBCO0VXeEMxQjtFQUNBO0FiNjJDSjs7QWExMkNBOztFTnBZSTtBUG12REo7O0FhNTJDQTtBQUNBO0VBQXFEO0FiZzNDckQ7O0FhNzJDQTs2RUFBQTtBQUdBOzs7Ozs7O0VBQUE7QUFTQTs7RUFFSTtFQUNBO0VBQ0EsWVhlYztFV2RkLFdYY2M7RVdiZDtFQUNBO0VBQ0E7RUFDQSxnQlhXb0I7RVdWcEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZCWE1vQjtFV0xwQjtFQUNBO0VBQ0E7RVZ3YUE7RUFDQTtFQUNBO0FIdThCSjs7QWE3MkNBO0VBQVk7QWJpM0NaOztBYS8yQ0E7QUFDQTs7RUFFSSxrQ1hMMEI7RVdNMUI7RVZrYTRCLHFCRDUxQko7QUY2eUQ1Qjs7QWEvMkNBOztFQUFBO0FBSUE7OztFQUdJLHlCWHJjd0I7RUM2MUJNLHlCRDBYTjtBRmdtQjVCOztBYTkyQ0E7QUFDQTs7O0VBR0ksK0NYdEJrQztBRnU0Q3RDOztBYTcyQ0E7O0VBQUE7QUFJQTtFTjljSTtBUDh6REo7O0FhLzJDQTtFTi9jSTtBUGswREo7O0FhbDNDQTtFTmhkSTtBUHMwREo7O0FhcDNDQTs7RUFBQTtBQUlBOztFQUVJLHlCWHBlc0I7RUNvMkJTLHFCRHB2Qm5CO0FGMnVEaEI7O0FhbjNDQTtFTjVkSTtBUG0xREo7O0FhdDNDQTtFTjdkSTtBUHUxREo7O0FhejNDQTtFTjlkSTtBUDIxREo7O0FhMTNDQTs2RUFBQTtBQUdBOzs7Ozs7RUFBQTtBQVFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQlg3WnFCO0VXOFpyQixnQlhqRXNCO0FGNDdDMUI7O0FhdDNDQTs2RUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FidTNDSjs7QWFwM0NBOzs7Ozs7O0VBQUE7QUFTQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYnMzQ0o7O0FhbjNDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FiczNDSjs7QWFsM0NBOzZFQUFBO0FBR0E7RVZ1U0ksV0RwM0JvQjtFQ3EzQnBCLG1CRHIwQnFCO0FGbTVEekI7O0FhajNDQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtFQUNBLGtCWDdJeUI7QUYrL0M3Qjs7QWE5MkNBOztFQUFBO0FBSUE7QUFDQTtFQUVJO0VBQ0E7SUFDSTtJQUNBLGtCWDNKcUI7RUYwZ0QzQjtBQUNGO0FhMTJDQTtBQUNBO0VBRUk7SUFDSSxZWHBLc0I7SVdxS3RCLGVYcEsyQjtJV3FLM0I7RWIyMkNOO0VhdjJDRTtJQUF3QyxrQlh4S0w7RUZraERyQztFYXgyQ0U7RUFDQTtJQUE2QyxnQlgxS0w7RUZxaEQxQztBQUNGO0FhdjJDQTs2RUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXWDNlb0I7RVc0ZXBCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXWHJtQmlCO0FGNDhEckI7O0FhbjJDQTs7RUFBQTtBQUlBO0VBQXNCLFdYOXBCUDtBRm9nRWY7O0FhcDJDQTs7RUFBQTtBQUlBO0VBQThDO0FidTJDOUM7O0FhcjJDQTs7RUFBQTtBQUlBO0VBQW9EO0FidzJDcEQ7O0FhdDJDQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBYncyQ0o7O0FhcjJDQTtFQUFpQztBYnkyQ2pDOztBY2xnRUE7OzZFQUFBO0FBSUE7Ozs7Ozs7Ozs7OztFQUFBO0FBY0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CWnBCcUI7RVlxQnJCO0VBQ0EsaUJabUdpQjtFWWxHakI7RUFDQTtFQUNBO0VBQ0E7RVhxUEEseUJEdzNCb0I7RUN2M0JwQjtFQUNBO0FIK3dESjs7QWNsZ0VBO0VBQTRCO0Fkc2dFNUI7O0FjcGdFQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBZHNnRUo7O0FjbmdFQTtBQUNBO0VBQ0k7RUFDQTtBZHNnRUo7O0FjbGdFQTtBQU9BOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJLDZCWnNFd0I7RVlyRXhCLFdaaEhvQjtFQ3FVTTtBSHl5RDlCOztBYzEvREE7QUFDQTtFQUNJLDZCWmlFOEI7RVloRTlCLFdadkhvQjtFQ3NVWSxxQkRtM0JOO0FGNDdCOUI7O0FjMS9EQTtBQUNBOztFQUVJLDZCWjJEK0I7RVkxRC9CLFdaL0hvQjtFQ3VVYSxzQ0RtM0JOO0FGbThCL0I7O0FjMS9EQTs7RUFBQTtBQUlBO0VBQ0kseUJadEh3QjtFWXVIeEIsV1pwSW1CO0VDbVVPO0FIOHpEOUI7O0Fjei9EQTtBQUNBO0VBQ0ksa0RaOEM4QjtFWTdDOUIsV1ozSW1CO0FGdW9FdkI7O0FjeC9EQTtBQUNBOztFQUVJLCtDWndDK0I7RVl2Qy9CLFdabkptQjtBRjhvRXZCOztBY3YvREE7O0VBQUE7QUFJQTtFQUNJLHNCWnRHMEI7RVl1RzFCLFdaN0ptQjtFQ3NVUztBSGkxRGhDOztBY3QvREE7QUFDQTtFQUNJLDBDWjJCZ0M7RVkxQmhDLFdacEttQjtBRjZwRXZCOztBY3IvREE7QUFDQTs7RUFFSSxvQ1pxQmlDO0VZcEJqQyxXWjVLbUI7QUZvcUV2Qjs7QWNwL0RBOztFQUFBO0FBSUE7RUFDSSx5QlovSnVCO0VZZ0t2QixXWnRMbUI7RUN5VU07QUhvMkQ3Qjs7QWNuL0RBO0FBQ0E7RUFDSSxtRVpRNkI7RVlQN0IsV1o3TG1CO0FGbXJFdkI7O0FjbC9EQTtBQUNBOztFQUVJLG1FWkU4QjtFWUQ5QixXWnJNbUI7QUYwckV2Qjs7QWNqL0RBOzs7RUFBQTtBQUtBOzs7O0VBSUksNkJaVnlCO0VZV3pCLFdacktpQjtFQzhSVSxxQkRwTmY7QUYra0VoQjs7QWMvK0RBOzZFQUFBO0FBR0E7RUFDSTtFQUNBLGlCWnZEdUI7RVl3RHZCLG1CWm5McUI7QUZvcUV6Qjs7QWM3K0RBO0VBQ0k7RUFDQSxpQlo1RHVCO0VZNkR2QixtQloxTHFCO0FGMHFFekI7O0FjMytEQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQSxnQlo3S2lCO0VZOEtqQjtFQUNBO0VBQ0EsV1o5UG9CO0VDc1ZwQjtBSHE1REo7QUduNURJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhxNURSOztBY2wvREE7QUFDQTtFQUNJLFdacFFvQjtBRnl2RXhCO0FHcDVESTtFQUFZO0FIdTVEaEI7O0FjcC9EQTtBQUNBO0VBQ0ksV1p2TmlCO0FGOHNFckI7QUd2NURJO0VBQVk7QUgwNURoQjs7QWN0L0RBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQSxnQlp6TWlCO0VZME1qQjtFQUNBO0VBQ0EsV1oxUm9CO0FGa3hFeEI7O0FjcC9EQTtBQUNBO0VBQ0ksV1o3T2lCO0VZOE9qQixxQlozRWdDO0FGa2tFcEM7O0FjcC9EQTtBQUNBO0VBQ0ksV1puUGlCO0VZb1BqQjtBZHUvREo7O0Fjbi9EQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZG8vREo7O0FHOTdESTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7O0VBQ21EO0FIZzhEdkQ7O0FHOTdESTs7Ozs7RUFBQTtBQU9BOzs7O0VBSUk7RUFDQTtBSGc4RFI7O0FlN3pFQTs7NkVBQUE7QUFJQTs7Ozs7O0VBQUE7QUFRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmJqQnNCO0Vha0J0QjtFQUNBLG1CYnJDWTtFYXNDWixZYm8zQmM7RUMwd0JkLG9CRHZacUI7RUN3WnJCO0FIaXNCSjs7QWU1ekVBO0FBQ0E7RUFBbUIsZ0JiM0NIO0FGMjJFaEI7O0FlOXpFQTs7RUFBQTtBQUlDO0VBQXFDO0FmaTBFdEM7O0FlL3pFQTs7OztFQUFBO0FBTUE7RUFDSSx5QmJuQ3dCO0Vhb0N4QjtFQUFBO0FmaTBFSjs7QWU3ekVBO0VBQ0kseUJiekN3QjtFYTBDeEI7RUFDQTtFQUFBO0FmZzBFSjs7QWdCajJFQTs7NkVBQUE7QUFJQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBLGlCZGdFbUI7RWMvRG5CLG9CZCtEbUI7QUZteUV2Qjs7QWdCOTFFQTtBQUNBO0VBRUk7SUFDSSxpQmROYztJY09kLG9CZFBjO0VGdTJFcEI7QUFDRjtBZ0I1MUVBOztFQUFBO0FBSUE7RUFBNEI7QWhCODFFNUI7O0FnQjMxRUE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0ksaUJkMUVZO0VjMkVaLG9CZDNFWTtBRnU2RWhCOztBZ0J6MUVBOztFQUFBO0FBSUE7RUFDSSxpQmR5Qm1CO0VjeEJuQixvQmR3Qm1CO0FGbTBFdkI7O0FnQngxRUE7O0VBQUE7QUFJQTtFQUNJLGlCZDdDa0I7RWM4Q2xCLG9CZDlDa0I7QUZ3NEV0Qjs7QWdCdjFFQTtBQUNBO0VBRUk7SUFDSSxrQmRrakJlO0ljampCZixxQmRpakJlO0VGd3lEckI7QUFDRjtBZ0JyMUVBOztFQUFBO0FBSUE7RUFDSSxrQmR1aUJtQjtFY3RpQm5CLHFCZHNpQm1CO0FGZ3pEdkI7O0FnQm4xRUE7QUFDQTtFQUVJO0lBQ0ksa0JkODFCNEI7SWM3MUI1QixxQmQ2MUI0QjtFRncvQ2xDO0FBQ0Y7QWdCaDFFQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtFQUNBLGdCZDNFZ0I7QUYyNUVwQjs7QWdCejBFQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQSxtQmRsSXNCO0FGNjhFMUI7O0FnQm4wRUE7O0VBQUE7QUFJQTtFQUNJO0VBQ0EsbUJkM0l3QjtBRmc5RTVCOztBZ0I5ekVBOztFQUFBO0FBSUE7RUFDSTtFQUNBLGdCZC9HMEI7QUYrNkU5Qjs7QWdCeHpFQTs2RUFBQTtBQUdBOzs7RUFBQTtBQ3BLQTs7NkVBQUE7QUFJQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGlCZnVSa0I7RWV0UmxCO0VBQ0E7RUFDQSxrQmZ5UjJCO0VleFIzQixtQmZ3UjJCO0FGd3NFL0I7O0FpQjc5RUE7QUFDQTtFQUVJO0lBQ0ksa0JmWFE7SWVZUixtQmZaUTtFRjIrRWQ7QUFDRjtBaUIzOUVBO0FBQ0E7RUFFSTtJQUNJLGtCZmxCZTtJZW1CZixtQmZuQmU7RUYrK0VyQjtBQUNGO0FpQng5RUE7O0VBQUE7QUFJQTtFQUE4QjtBakIwOUU5Qjs7QWlCeDlFQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBakIwOUVKOztBaUJ0OUVBOzZFQUFBO0FBR0E7RUFBdUIsZ0JmME9NO0FGK3VFN0I7O0FpQnY5RUE7RUFBc0IsZ0JmeU9NO0FGa3ZFNUI7O0FpQno5RUE7RUFBc0IsaUJmd09NO0FGcXZFNUI7O0FpQjM5RUE7RUFBdUIsaUJmdU9NO0FGd3ZFN0I7O0FpQjc5RUE7RUFBdUI7QWpCaStFdkI7O0FpQjk5RUE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQTRCO0FqQmcrRTVCOztBaUIvOUVBO0VBQTZCO0FqQm0rRTdCOztBaUJqK0VBO0FBQ0E7RUFFSTs7SUFDaUQ7RWpCbytFbkQ7RWlCbCtFRTs7SUFDZ0Q7RWpCcStFbEQ7QUFDRjtBaUJsK0VBO0FBQ0E7RUFFSTs7SUFDNkI7RWpCbytFL0I7RWlCbCtFRTs7SUFDaUQ7RWpCcStFbkQ7RWlCbitFRTs7SUFDZ0Q7RWpCcytFbEQ7RWlCcCtFRTs7SUFDZ0Q7RWpCdStFbEQ7RWlCcitFRTs7SUFDaUQ7RWpCdytFbkQ7QUFDRjtBaUJwK0VBOzZFQUFBO0FBR0E7OztFQUFBO0FBS0E7O0VBQzBDO0FqQnErRTFDOztBaUJuK0VBO0VBQXlDO0FqQnUrRXpDOztBaUJ0K0VBO0VBQTBDO0FqQjArRTFDOztBaUJ4K0VBO0FBQ0E7RUFFSTs7SUFDMEM7RWpCMitFNUM7RWlCeitFRTtJQUF5QztFakI0K0UzQztFaUIzK0VFO0lBQTBDO0VqQjgrRTVDO0FBQ0Y7QWlCMytFQTtBQUNBO0VBRUk7O0lBQzBDO0VqQjYrRTVDO0VpQjMrRUU7SUFBeUM7RWpCOCtFM0M7RWlCNytFRTtJQUEwQztFakJnL0U1QztBQUNGO0FrQnZuRkE7OzZFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQSxrQmhCaWpDc0I7RWdCaGpDdEIsbUJoQmdqQ3NCO0VnQi9pQ3RCLGlCaEJrRW1CO0VnQmpFbkIsb0JoQmlFbUI7QUZ1akZ2Qjs7QWtCcG5GQTtBQUNBO0VBRUk7SUFDSSxrQmhCaEJRO0lnQmlCUixtQmhCakJRO0VGdW9GZDtBQUNGO0FrQmxuRkE7QUFDQTtFQUVJO0lBQ0ksa0JoQnZCZTtJZ0J3QmYsbUJoQnhCZTtJZ0J5QmYsaUJoQmhCYztJZ0JpQmQsb0JoQmpCYztFRm9vRnBCO0FBQ0Y7QWtCL21GQTs7RUFBQTtBQUlBO0VBQXlCO0FsQmluRnpCOztBa0I5bUZBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJLGlCaEJwRlk7RWdCcUZaLG9CaEJyRlk7QUZvc0ZoQjs7QWtCNW1GQTs7RUFBQTtBQUlBO0VBQ0ksaUJoQmVtQjtFZ0JkbkIsb0JoQmNtQjtBRmdtRnZCOztBa0IzbUZBOztFQUFBO0FBSUE7RUFDSSxpQmhCdkRrQjtFZ0J3RGxCLG9CaEJ4RGtCO0FGcXFGdEI7O0FrQjFtRkE7QUFDQTtFQUVJO0lBQ0ksa0JoQndpQmU7SWdCdmlCZixxQmhCdWlCZTtFRnFrRXJCO0FBQ0Y7QWtCdm1GQTs7RUFBQTtBQUlBO0VBQ0ksa0JoQjRoQm1CO0VnQjNoQm5CLHFCaEIyaEJtQjtBRjZrRXZCOztBa0JybUZBO0FBQ0E7RUFFSTtJQUNJLGtCaEJpK0J5QjtJZ0JoK0J6QixxQmhCZytCeUI7RUZ1b0QvQjtBQUNGO0FrQmxtRkE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQSxzQmhCdEZnQjtBRndyRnBCOztBa0J0bEZBOztFQUFBO0FBSUE7RUFDSTtFQUNBLHlCaEJsSnNCO0FGMHVGMUI7O0FrQjVrRkE7O0VBQUE7QUFJQTtFQUNJO0VBQ0EseUJoQi9Kd0I7QUY2dUY1Qjs7QWtCbGtGQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQSxzQmhCeEkwQjtBRjRzRjlCOztBbUJsdUZBOzs2RUFBQTtBQUlBO0VBQ0k7RUFDQTtFaEJvZGdCO0FIaXhFcEI7O0FtQmh1RkE7NkVBQUE7QUFHQTtFQUNJO0VBQ0E7QW5Ca3VGSjs7QW1COXRGQTtFQUNJO0VBQ0E7QW5CaXVGSjs7QW1CN3RGQTtFQUNJO0VBQ0E7QW5CZ3VGSjs7QW1CNXRGQTtBQUNBO0VBRUk7SUFBZ0I7RW5CK3RGbEI7RW1CN3RGRTtJQUFrQjtFbkJndUZwQjtFbUI5dEZFO0lBQWtCO0VuQml1RnBCO0FBQ0Y7QW1COXRGQTs7RUFBQTtBQUlBOzs7RUFFZ0M7QW5CZ3VGaEM7O0FtQjd0RkE7NkVBQUE7QUFHQTs7O0VBQUE7QUE0QkE7NkVBQUE7QUFHQTtFQUNJLGlCakJacUI7RWlCYXJCLGdCakIrSHFCO0FGdWtGekI7O0FtQmpzRkE7NkVBQUE7QUFHQTs7Ozs7RUFBQTtBQU9BO0VBQ0k7RUFDQTtFQUNBLFNqQjhHYTtFaUI3R2IsV2pCOEdlO0VpQjdHZjtFQUNBO0VBQ0EsWWpCNEdnQjtFaUIzR2hCO0VBQ0E7RUFDQSxtQmpCcEl3QjtFaUJxSXhCLFdqQmxKbUI7RWlCbUpuQixtQmpCeEdxQjtFaUJ5R3JCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhCNldBLGtCRG9yQnVCO0VDbnJCdkIseUJEb3JCd0I7QUZrcUQ1Qjs7QW1CaHNGQTs7RUFBQTtBQUlBO0VBQWlDO0FuQm1zRmpDOztBbUJoc0ZBOzZFQUFBO0FBR0E7RUFDSSxzQmpCckhnQjtFQ3NkTSwyQ0Qrb0JBO0FGbXREMUI7O0FtQjlyRkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0Esc0JqQnBJZ0I7RWlCcUloQixXakIxTFc7RUM0Z0JhLDBDRDZvQkQ7QUZpdUQzQjs7QW1CNXJGQTtFQUNJLFdqQmpNb0I7QUZnNEZ4Qjs7QW1CM3JGQTtFQUNJLHNCakIvSWdCO0VDeWRjLDJDRDRvQlI7QUZ5dUQxQjs7QW1CM3JGQTtFaEJ1VW1DO0FIdzNFbkM7O0FtQjNyRkE7RWhCb1VtQztBSDIzRW5DOztBbUJyckZBOztFQUFBO0FBSUE7RUFDSTtFQUNBLHlCakI1TXdCO0VpQjZNeEIsV2pCMU5tQjtFQzhnQkssMENEd29CRDtBRjR2RDNCOztBbUJwckZBO0VBQ0ksV2pCL05tQjtBRnM1RnZCOztBbUJuckZBO0VBQ0kseUJqQnZOd0I7RUNtZ0JNLDJDRHVvQlI7QUZvd0QxQjs7QW1CN3FGQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQSxzQmpCOUwwQjtFaUIrTDFCLFdqQnJQbUI7RUNpaEJPLDBDRHFvQkg7QUYrd0QzQjs7QW1CNXFGQTtFQUNJLFdqQjFQbUI7QUZ5NkZ2Qjs7QW1CM3FGQTtFQUNJLHNCakJ6TTBCO0VDNmRNLDJDRG9vQlY7QUZ1eEQxQjs7QW1CcHFGQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7O0VBQytCO0FuQnNxRi9COztBbUJwcUZBO0VBQWlDO0FuQndxRmpDOztBbUJ2cUZBO0VBQWlDO0FuQjJxRmpDOztBbUJ6cUZBOztFQUFBO0FBSUE7QUFDQTtFQUVJOztJQUMrQjtFbkIycUZqQztFbUJ6cUZFO0lBQWlDO0VuQjRxRm5DO0VtQjNxRkU7SUFBaUM7RW5COHFGbkM7QUFDRjtBRzM3RUk7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7QUg0N0VSOztBRzE3RUk7RUFDSTtFQUNBO0FINjdFUjs7QUcxN0VJOzs7RUFHSSxrQkQ3Z0JRO0VDOGdCUixtQkQ5Z0JRO0FGMjhGaEI7O0FHMTdFSTtFQUE4QztBSDg3RWxEOztBRzM3RUk7QUFDQTtFQUVJO0lBQ0k7SUFDQTtFSDY3RVY7RUczN0VNO0lBQ0k7SUFDQTtFSDY3RVY7RUcxN0VNOzs7SUFHSSxrQkRoaUJXO0lDaWlCWCxtQkRqaUJXO0VGNjlGckI7RUd6N0VNO0lBQThDO0VINDdFcEQ7QUFDRjtBR3o3RUk7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7QUgwN0VSOztBR3g3RUk7RUFDSTtFQUNBO0FIMjdFUjs7QUd4N0VJOzs7RUFHSSxrQkQ5bEJRO0VDK2xCUixtQkQvbEJRO0FGMGhHaEI7O0FHeDdFSTtFQUErQztBSDQ3RW5EOztBRzE3RUk7O0VBQUE7QUFJQTtBQUNBO0VBRUk7SUFBbUM7RUg0N0V6QztFRzM3RU07SUFBOEM7RUg4N0VwRDtFRzU3RU07OztJQUdJO0lBQ0E7RUg4N0VWO0VHMzdFTTtJQUErQyxrQkQ4RXJCO0VGZzNFaEM7QUFDRjtBb0J2aUdBOzs2RUFBQTtBQUlBOztFQUFBO0FBSUE7RUFDSSxXbEJrQ2lCO0VDNmtCakI7RUFDQTtBSHk3RUo7O0FvQnJpR0E7QUFDQTtFQUNJLFdsQnJCVztBRjZqR2Y7O0FxQnRqR0E7OzZFQUFBO0FBSUE7O0VBQUE7QUFTQTs2RUFBQTtBQUdBO0VBQWtCO0FyQmtqR2xCOztBcUJoakdBO0VBQ0k7SUFBSztFckJvakdQO0VxQm5qR0U7SUFBTztFckJzakdUO0FBQ0Y7QXFCcGpHQTs7RUFBQTtBQUlBO0VBQ0ksc0JuQnc4Qm9CO0VtQnY4QnBCO0VBQ0E7RUFDQTtFQUNBLGVuQms4Qm1CO0VtQmo4Qm5CO0FyQnFqR0o7O0FxQmxqR0E7RUFDSTtJQUFLLHVCbkIrN0JlO0VGdW5FdEI7RXFCcmpHRTtJQUNJO0lBQ0E7RXJCdWpHTjtFcUJyakdFO0lBQ0ksdUJuQnk3QmdCO0ltQng3QmhCO0VyQnVqR047QUFDRjtBc0JubUdBOzs2RUFBQTtBQUlBOztFQUFBO0FBSUE7RUFDSSxZcEI2bENZO0VvQjVsQ1osV3BCK0JpQjtFQ3lrRUE7QUg0L0JyQjs7QXNCaG1HQTtBQUNBO0VBQ0ksV3BCeEJXO0FGMm5HZjs7QXNCL2xHQTtBQUNBO0VBQ0ksV3BCaENvQjtBRmtvR3hCOztBdUJ6bkdBOzs2RUFBQTtBQUlBOztFQUFBO0FBSUE7RUFDSSxZckJpb0JhO0VxQmhvQmIsZ0JyQndDMEI7RXFCdkMxQixXckJmbUI7RUNpd0NuQjtBSHk0REo7O0F1QnZuR0E7QUFDQTtFQUNJLFdyQnJCbUI7QUYrb0d2Qjs7QXdCaG9HQTs7NkVBQUE7QUFJQTtFQUNJO0VBQ0EsbUJ0Qi9CWTtFc0JnQ1o7RUFDQSxtQnRCZnNCO0VzQmdCdEIsV3RCM0JXO0FGNnBHZjs7QXdCOW5HQTtBQUNBO0VBQWdCLGdCdEJ2Q0E7QUZ5cUdoQjs7QXdCaG9HQTs7RUFBQTtBQUlBO0VBQTBCO0F4Qm1vRzFCOztBd0Job0dBOzs2RUFBQTtBQUlBO0VBQ0k7RUFDQSxTdEJqQ2M7RXNCa0NkLFd0QnZDWTtFQ21CWjtFQUNBLFlEd29Da0I7QUYrZ0V0Qjs7QXdCaG9HQTs7RUFBQTtBQUlBO0VBQWtDO0F4Qm1vR2xDOztBd0Jqb0dBOztFQUFBO0FBSUE7RXJCOUJJO0VBQ0EsWURxb0N3QjtBRjZoRTVCOztBd0Job0dBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJLHNDdEIxRHVCO0VzQjJEdkIsY3RCNUR3QjtBRjZyRzVCOztBd0I3bkdBOztFQUFBO0FBSUE7RUFDSSx1Q3RCakV1QjtFc0JrRXZCLGN0Qm5Fd0I7QUZrc0c1Qjs7QXdCM25HQTs7RUFBQTtBQUlBO0VBQ0ksb0N0QnhFdUI7RXNCeUV2QixjdEIxRXdCO0FGdXNHNUI7O0F3QnpuR0E7O0VBQUE7QUFJQTtFQUNJLCtEdEIvRXNCO0VzQmdGdEIsY3RCakZ1QjtBRjRzRzNCOztBRzVyR0k7O0VBQUE7QUFJQTs7Ozs7O0VBS2U7QUgrckduQjs7QUc3ckdJO0VBQ0k7RUFDQTtBSGdzR1I7O0FHN3JHSTtFQUNJO0VBQ0E7QUhnc0dSOztBeUJydkdBOzs2RUFBQTtBQUlBO0VBQ0ksbUJ2QmxCWTtFdUJtQlo7RUFDQSx1QnZCaTRCcUI7RUMwd0JFO0FINm1EM0I7O0F5QnB2R0E7QUFDQTtFQUFzQixnQnZCekJOO0FGaXhHaEI7O0F5QnR2R0E7O0VBQUE7QUFJQTtFQUFnQztBekJ5dkdoQzs7QTBCM3dHQTs7NkVBQUE7QUFJQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0EsZXhCMENTO0V3QnpDVCxZeEJ5Q1M7RXdCeENUO0VBQ0Esb0J4QjBDa0I7RXdCekNsQjtFQUNBO0VBQ0EsbUJ4QlB3QjtFd0JReEI7RUFDQSxleEJ3Q2M7RXdCdkNkO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCNHdHSjs7QTBCeHdHQTs7RUFBQTtBQUlBO0VBQ0k7QTFCMHdHSjs7QTJCdHlHQTs7NkVBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQSxtQnpCRndCO0V5Qkd4QixnQnpCeURpQjtFeUJ4RGpCLG1CekIwQnFCO0V5QnpCckIsV3pCbEJtQjtFeUJtQm5CO0VBQ0E7RXhCd25DQSxrQkQ4RmtCO0VDN0ZsQix5QkQ4Rm1CO0FGbWxFdkI7O0EyQnJ5R0E7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0kseUJ6QmpCd0I7RXlCa0J4QixXekJsQ21CO0FGdzBHdkI7O0EyQmx5R0E7O0VBQUE7QUFJQTtFQUNJLHlCekJ4QndCO0V5QnlCeEIsV3pCNUNtQjtBRmcxR3ZCOztBMkJoeUdBOztFQUFBO0FBSUE7RUFDSSx5QnpCL0J1QjtFeUJnQ3ZCLFd6QnREbUI7QUZ3MUd2Qjs7QTRCOTBHQTs7NkVBQUE7QUFJQTtFQUNJO0E1QmcxR0o7O0E0QjUwR0E7O0VBQUE7QUFJQTtFQUE0QjtBNUIrMEc1Qjs7QTRCNTBHQTs2RUFBQTtBQVFBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJO0VBQ0Esb0MxQncwQnlCO0FGKy9FN0I7O0E0Qi96R0E7O0VBQUE7QUFJQTtFQUNJO0VBQ0EsaUMxQjR6QnlCO0FGcWdGN0I7O0E2QmwzR0E7OzZFQUFBO0FBSUE7RUFDSTtBN0JvM0dKOztBNkJoM0dBOztFQUFBO0FBSUE7RUFBNEI7QTdCbTNHNUI7O0E2QmgzR0E7NkVBQUE7QUFHQTtFQUNJLGdCM0JTa0I7QUZ5Mkd0Qjs7QTZCNzJHQTs2RUFBQTtBQUdBO0VBQ0kscUIzQklzQjtFMkJIdEIsZ0IzQkl3QjtBRjIyRzVCOztBNkIzMkdBO0FBQ0E7RUFFSTtJQUFvQixtQjNCTkc7RUZvM0d6QjtBQUNGO0E2QjEyR0E7NkVBQUE7QUFHQTtFQUNJLG1CM0JYcUI7RTJCWXJCLGdCM0JWdUI7RTJCV3ZCLFczQlZpQjtBRnEzR3JCO0FHaDJHSTtFQUFJLFdEckJhO0FGdzNHckI7QUdqMkdJO0VBQ0ksV0R6RU87RUMwRVA7QUhtMkdSOztBOEIzNUdBOzs2RUFBQTtBQVNBOzZFQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7QTlCdTVHSjs7QThCbjVHQTtFQUNJO0VBQ0EsbUI1QjlDWTtBRm84R2hCOztBOEJsNUdBOztFQUFBO0FBSUE7O0VBQ21DO0E5QnE1R25DOztBOEJsNUdBOzZFQUFBO0FBR0E7RUFDSSxrQjVCNURzQjtFNEI2RHRCLGdCNUJvUHdCO0FGZ3FHNUI7O0E4Qi80R0E7NkVBQUE7QUFHQTtFQUNJLG1CNUJuQnFCO0U0Qm9CckIsZ0I1QjRPdUI7RTRCM092QixXNUJsQmlCO0FGbTZHckI7O0E4QjU0R0E7NkVBQUE7QUFRQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtBOUJ3NEdKOztBOEJyNEdBO0FBQ0E7RUFDSSxnQjVCbERrQjtBRjA3R3RCOztBOEJwNEdBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQSxrQjVCNE13QjtFNEIzTXhCO0E5QnM0R0o7O0E4Qmw0R0E7QUFDQTtFQUVJO0lBQW9DLG1CNUJxTVY7RUZnc0c1QjtBQUNGO0E4Qmw0R0E7QUFDQTtFQUNJLGdCNUIzRWtCO0FGKzhHdEI7O0E4Qi8zR0E7NkVBQUE7QUFHQTtFM0J1aUJJLGFEdG9CWTtFQ3VvQloseUJEeHBCc0I7QUZtL0cxQjs7QStCcCtHQTs7NkVBQUE7QUFJQTs7Ozs7RUFBQTtBQU9BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0JxK0dKOztBK0JqK0dBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTs7RUFDOEM7QS9CbStHOUM7O0ErQmorR0E7O0VBQUE7QUFJQTtFQUFxQztBL0JvK0dyQzs7QStCbCtHQTs7Ozs7Ozs7OztFQUFBO0FBWUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXN0JoR1c7QUZva0hmOztBK0JoK0dBO0VBQXlCO0EvQm8rR3pCOztBK0JsK0dBO0FBQ0E7RUFBZ0MsVzdCdERYO0FGNGhIckI7QStCdCtHQTtFQUFnQyxXN0J0RFg7QUY0aEhyQjs7QStCbitHQTs2RUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFc3QjlFaUI7QUZrakhyQjs7QStCaCtHQTs7RUFBQTtBQUlBO0VBQW1DLFc3QnRGZDtBRnlqSHJCOztBK0JqK0dBOztFQUFBO0FBSUE7RUFBMkQ7QS9CbytHM0Q7O0ErQmwrR0E7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7QS9CbytHSjs7QStCaCtHQTs2RUFBQTtBQUdBO0VBQXFCLFk3Qjh2QkU7QUZxdUZ2Qjs7QStCaitHQTs7RUFBQTtBQUlBO0VBQ0ksWTdCRW9CO0U2QkRwQixrQjdCd3ZCZ0M7RTZCdnZCaEMsbUI3QnV2QmdDO0U2QnR2QmhDLHVCN0J1dkJ3QjtFQ3V3QlE7QUhzK0RwQzs7QStCaCtHQTtBQUNBO0VBQ0ksa0M3Qmt2QjhCO0VDdXdCUSxxQkRycERkO0FGZ29INUI7O0ErQmgrR0E7O0VBQUE7QUFJQTtFQUNJLGtCN0J1dUJnQztFNkJ0dUJoQyxtQjdCc3VCZ0M7QUY0dkZwQzs7QStCLzlHQTtFQUFxRjtBL0JtK0dyRjs7QStCbCtHQTtFQUFnRTtBL0JzK0doRTs7QStCbitHQTs2RUFBQTtBQUdBO0VBQW9CLFk3Qml1QkU7QUZxd0Z0Qjs7QStCcCtHQTs7RUFBQTtBQUlBO0VBQ0ksWTdCbENvQjtFNkJtQ3BCLGtCN0IydEIrQjtFNkIxdEIvQixtQjdCMHRCK0I7RTZCenRCL0IsZ0I3QnJKZ0I7RUNpbkRlO0FIMmdFbkM7O0ErQm4rR0E7QUFDQTtFQUNJLHNCN0IzSmdCO0VDa25EcUIscUJEdnBEYjtBRnVxSDVCOztBK0JuK0dBOztFQUFBO0FBSUE7RUFDSSxrQjdCMHNCK0I7RTZCenNCL0IsbUI3QnlzQitCO0FGNHhGbkM7O0ErQmwrR0E7RUFBb0Y7QS9CcytHcEY7O0ErQnIrR0E7RUFBK0Q7QS9CeStHL0Q7O0ErQnQrR0E7NkVBQUE7QUFHQTtFQUFvQixZN0Jvc0JFO0FGcXlGdEI7O0ErQnYrR0E7O0VBQUE7QUFJQTtFQUNJLFk3QmpFMEI7RTZCa0UxQixrQjdCOHJCK0I7RTZCN3JCL0IsbUI3QjZyQitCO0U2QjVyQi9CLHVCN0I2ckJ1QjtFNkI1ckJ2QixpQjdCaklxQjtFQzBqRFU7QUhpakVuQzs7QStCdCtHQTtBQUNBO0VBQ0ksa0M3QndyQjZCO0VDNHZCUSxxQkR6cERiO0FGK3NINUI7O0ErQnQrR0E7O0VBQUE7QUFJQTtFQUNJLGtCN0I0cUIrQjtFNkIzcUIvQixtQjdCMnFCK0I7QUY2ekZuQzs7QStCcitHQTtFQUFvRjtBL0J5K0dwRjs7QStCeCtHQTtFQUErRDtBL0I0K0cvRDs7QStCeitHQTs2RUFBQTtBQUdBO0VBQW1CLFk3QnVxQkU7QUZxMEZyQjs7QStCMStHQTs7RUFBQTtBQUlBO0VBQ0ksWTdCaXFCa0I7RTZCaHFCbEIsa0I3QmlxQjhCO0U2QmhxQjlCLG1CN0JncUI4QjtFNkIvcEI5Qix1QjdCZ3FCc0I7RTZCL3BCdEIsbUI3QjFPdUI7RUNnb0RPO0FIdWxFbEM7O0ErQnorR0E7QUFDQTtFQUNJLGtDN0JtcEI2QjtFQzh2Qk8scUJEM3BEWjtBRnV2SDVCOztBK0J6K0dBOztFQUFBO0FBSUE7RUFDSSxrQjdCK29COEI7RTZCOW9COUIsbUI3QjhvQjhCO0FGNjFGbEM7O0ErQngrR0E7RUFBbUY7QS9CNCtHbkY7O0ErQjMrR0E7RUFBOEQ7QS9CKytHOUQ7O0ErQjUrR0E7NkVBQUE7QUFHQTtFQUNJLFc3QjlQaUI7QUY0dUhyQjs7QStCMStHQTtBQUNBO0VBQ0ksVzdCclRXO0FGa3lIZjs7QWdDcnhIQTs7NkVBQUE7QUFJQTtFQUNJO0VBQ0E7QWhDdXhISjs7QWdDbHhIQTs2RUFBQTtBQU9BO0VBQWtDLGdCOUJ0Q2xCO0FGdXpIaEI7O0FnQzl3SEE7NkVBQUE7QUFHQTtFQUNJO0VBQ0Esa0I5QjVDc0I7RThCNkN0QixnQjlCM0MwQjtFOEI0QzFCLFc5QjNDb0I7RUNEcEI7QUg2ekhKO0FHM3pISTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGlCRDhwQ3FCO0VDN3BDckI7RUltQko7RUpqQkk7RUFDQTtBSDZ6SFI7QUcxekhJO0VJYUE7QVBnekhKOztBZ0MxeEhBO0FBQ0E7RUFDSSxXOUIvQ1c7RThCZ0RYO0FoQzZ4SEo7O0FnQ3h4SEE7NkVBQUE7QUFHQTtFQUNJO0VBQ0EsZ0I5QmpFWTtBRjIxSGhCOztBZ0N0eEhBOztFQUFBO0FBSUM7RUFBc0M7QWhDeXhIdkM7O0FpQzMwSEE7OzZFQUFBO0FBSUE7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhL0IwVVc7RStCelVYO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWS9Cd1VTO0FGb2dIYjs7QWlDejBIQTtBQUNBO0VBQW1CO0FqQzYwSG5COztBaUMxMEhBOzZFQUFBO0FBR0E7RUFBbUM7QWpDNjBIbkM7O0FpQzEwSEE7NkVBQUE7QUFHQTtFQUNJLG1CL0J3VDJCO0UrQnZUM0I7QWpDNDBISjs7QWlDejBIQTtFQUFnRDtBakM2MEhoRDs7QWtDejNIQTs7NkVBQUE7QUFJQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JoQ3FCZ0I7RWdDcEJoQixXaENqQ1c7QUYyNUhmOztBa0N0M0hBOztFQUFBO0FBSUE7RUFBNEI7QWxDeTNINUI7O0FrQ3YzSEE7QUFDQTtFQUVJO0lBQ0ksa0JoQ25CUTtJZ0NvQlIsbUJoQ3BCUTtFRjY0SGQ7QUFDRjtBa0NyM0hBO0FBQ0E7RUFFSTtJQUNJLGtCaEMxQmU7SWdDMkJmLG1CaEMzQmU7RUZpNUhyQjtBQUNGO0FrQzcySEE7RUFDSTtBbEMrMkhKOztBa0MxMkhBOzZFQUFBO0FBR0E7RUFDSSxpQmhDMFN3QjtFZ0N6U3hCLG9CaEN5U3dCO0FGbWtINUI7O0FrQ3gySEE7NkVBQUE7QUFHQTtFL0Jrc0IyQiwrQ0QyYkY7QUY4dUZ6Qjs7QWtDdjJIQTtFL0IrckI4QixnREQyYkY7QUZpdkY1Qjs7QWtDdjJIQTtFL0I0ckI0QiwrQ0QyYkY7QUZvdkYxQjs7QWtDdjJIQTtFL0J5ckI2QixnREQyYkY7QUZ1dkYzQjs7QW1DcjhIQTs7NkVBQUE7QUFHQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0EsWWpDK1hzQjtFaUM5WHRCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DdThISjs7QW9DaDhIQTs7NkVBQUE7QUFJQTs7Ozs7OztFQUFBO0FBU0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWxDa21CWTtFa0NqbUJaO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw4QmxDNmxCZTtFa0M1bEJmO0VBQ0E7RUFDQTtBcENpOEhKOztBb0M3N0hBO0FBQ0E7RUFFSTtJQUFZO0VwQ2c4SGQ7QUFDRjtBb0M3N0hBO0FBQ0E7RUFFSTtJQUNJLGtCbEMvQ2U7SWtDZ0RmLG1CbENoRGU7RUY4K0hyQjtBQUNGO0FvQzE3SEE7O0VBQUE7QUFJQTtFQUFvQjtBcEM0N0hwQjs7QW9DejdIQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFBaUI7QXBDMjdIakI7O0FvQ3g3SEE7NkVBQUE7QUFHQTs7Ozs7O0VBQUE7QUFRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZbEN5aUJpQjtFa0N4aUJqQjtFQUNBO0VBQ0E7RUFDQSxnQmxDckVnQjtFa0NzRWhCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDeTdISjs7QW9DcjdIQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBcEN1N0hKOztBb0NuN0hBOzZFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFBdUMsYWxDNGdCZjtBRnk2R3hCOztBb0NuN0hBOzs7O0VBQUE7QUFNQTtBQUNBO0VBQ0k7RUFDQTtBcENxN0hKOztBb0NsN0hBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcENxN0hKOztBb0NoN0hBOzZFQUFBO0FBR0E7RUFDSTtFQUNBO0FwQ2s3SEo7O0FvQzk2SEE7RUFDSTtFQUNBO0VBQ0EsZ0JsQ3BJZ0I7RUN1dUNRO0FIKzBGNUI7O0FvQzk2SEE7RUFDSTtFQUNBO0VBQ0EsZ0JsQzNJZ0I7RUN3dUNRO0FIcTFGNUI7O0FvQzk2SEE7QUFDQTtFQUVJO0lBQWlCO0VwQ2k3SG5CO0VvQ2g3SEU7SUFBbUI7RXBDbTdIckI7RW9DbDdIRTtJQUFtQjtFcENxN0hyQjtBQUNGO0FvQ2w3SEE7O0VBQUE7QUFJQTs7O0VBRWlDO0FwQ283SGpDOztBb0NqN0hBOzZFQUFBO0FBR0E7RUFDSSxlbENoSHNCO0VrQ2lIdEIsZ0JsQ3Nkc0I7QUY2OUcxQjs7QW9DOTZIQTs7NkVBQUE7QUFJQTtFQUNJO0VBQ0EsYWxDa2JZO0VrQ2piWixTbEN0R2tCO0VrQ3VHbEIsV2xDdkdrQjtFa0N3R2xCLFlsQzBja0I7QUZzK0d0Qjs7QW9DNTZIQTs7RUFBQTtBQUlBO0VBQTZDO0FwQys2SDdDOztBb0M3NkhBOztFQUFBO0FBUUE7O0VBQUE7QUFZQTs7O0VBQUE7QUFLQTtFQUNJLE1sQ3VhMkI7RWtDdGEzQjtFQUNBO0VBQ0E7RUFDQSxZbENxYXdCO0FGNC9HNUI7O0FvQzc1SEE7RUFDSSxXbENuUm1CO0FGbXJJdkI7O0FvQzU1SEE7QUFDQTtFQUVJO0VBQ0E7SUFDSSxRbENxWnVCO0lrQ3BadkI7RXBDODVITjtBQUNGO0FvQzE1SEE7O0VBQUE7QUFJQTtFakM2L0JJO0VBQ0E7RUFDQSxhRG5EdUI7RUNvRHZCLGdCRHB2Q2dCO0FGbXBJcEI7O0FHMTVGSTtBQUNBO0VBRUk7SUFDSSxhRHp6Q0k7RUZxdElkO0FBQ0Y7QXFDMXNJQTs7NkVBQUE7QUFJQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBckMwc0lKOztBcUNyc0lBOzZFQUFBO0FBR0E7Ozs7OztFQUFBO0FBUUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckNzc0lKOztBcUNsc0lBOzZFQUFBO0FBR0E7Ozs7O0VBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDbXNJSjs7QXFDaHNJQTs7RUFBQTtBQUlBO0VBQXlDO0FyQ21zSXpDOztBc0Nwd0lBOzs2RUFBQTtBQUlBOztFQUFBO0FBSUE7RUFDSTtFQUNBO0F0Q3F3SUo7O0FzQ2h3SUE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0Q2l3SUo7O0FzQzl2SUE7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7QXRDZ3dJSjs7QXNDN3ZJQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEM4dklKOztBc0MzdklBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRDNnZJSjs7QXNDMXZJQTtFQUEyQjtBdEM4dkkzQjs7QXNDM3ZJQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEM0dklKOztBdUN0MUlBOzs2RUFBQTtBQUlBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQSxZckNtOUJhO0VxQ2w5QmI7RUFDQTtBdkN1MUlKOztBdUNwMUlBO0VBQW1CO0F2Q3cxSW5COztBdUN0MUlBOztFQUFBO0FBSUE7RUFBcUMsd0JyQ3k4QlQ7QUZnNUc1Qjs7QXVDdjFJQTtFQUFrQyx3QnJDdzhCRTtBRm01R3BDOztBdUN6MUlBOzs7RUFBQTtBQUtBO0VBQXlCO0F2QzQxSXpCOztBd0NqM0lBOzs2RUFBQTtBQUlBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhdEM4VGE7QUZvaklqQjs7QXdDLzJJQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBeENpM0lKOztBd0M3MklBOzZFQUFBO0FBR0E7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFl0Qyt4QmtCO0VzQzl4QmxCO0VBQ0EsZ0J0Q2xCMEI7RXNDbUIxQjtFQUNBO0F4QzgySUo7O0F3QzEySUE7QUFDQTtFQUVJO0lBQ0k7SUFDQSxZdEN1eEJnQjtJc0N0eEJoQjtFeEM0MklOO0FBQ0Y7QXdDcDJJQTtBQUNBO0VBQ0k7RUFDQTtBeENzMklKOztBd0NuMklBO0FBQ0E7RUFFSTtJQUF1QztFeENzMkl6QztBQUNGO0F3Q24ySUE7O0VBQUE7QUFJQTtFQUErQjtBeENxMkkvQjs7QXdDcDJJQTtFQUNJO0VBQ0E7QXhDdTJJSjs7QXdDcDJJQTs7RUFBQTtBQUlBO0VBQThCO0F4Q3UySTlCOztBd0N0MklBO0VBQWlEO0F4QzAySWpEOztBd0N4MklBOzs7Ozs7RUFBQTtBQVFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDMDJJSjs7QXdDdjJJQTtFQUNJO0VBQ0E7QXhDMDJJSjs7QXdDdjJJQTtFQUNJO0VBQ0E7RUFDQTtBeEMwMklKOztBd0N2MklBO0VBQWtDLFl0QzBzQlo7QUZpcUh0Qjs7QXdDejJJQTtBQUNBO0VBRUk7SUFBa0MsWXRDMHNCZDtFRmtxSHRCO0FBQ0Y7QXdDejJJQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtBeEMwMklKOztBd0N0MklBOzs2RUFBQTtBQUlBO0VBQ0k7RUFDQSxhdENpTGE7RXNDaExiLFF0Q3dyQnVCO0VzQ3ZyQnZCLFV0Q3VyQnVCO0VzQ3RyQnZCLFl0Q3VyQnNCO0FGaXJIMUI7O0F3Q3AySUE7QUFDQTtFQUVJO0lBQ0ksU3RDZ3JCcUI7SXNDL3FCckIsV3RDK3FCcUI7RUZ1ckgzQjtBQUNGO0F3Q2wySUE7O0VBQUE7QUFJQTtFQUFzQztBeENvMkl0Qzs7QXdDajJJQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F4Q2sySUo7O0F3Qy8xSUE7OztFQUFBO0FBS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDhCdEN1b0IyQjtFc0N0b0IzQjtFQUNBO0VBQ0E7QXhDaTJJSjs7QXdDNzFJQTtFQUF3QztBeENpMkl4Qzs7QXdDOTFJQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTs7RUFFSTtFQUNBO0VBQ0E7QXhDKzFJSjs7QXdDMzFJQTs2RUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDNDFJSjs7QXdDejFJQTs7RUFBQTtBQUlBO0VBQTRELFd0QzBrQnRDO0FGa3hIdEI7O0F3QzExSUE7RUFBc0Q7QXhDODFJdEQ7O0F3QzUxSUE7QUFDQTtFQUVJO0lBQTRELFd0Q3drQnhDO0VGdXhIdEI7RXdDNzFJRTtJQUFzRDtFeENnMkl4RDtBQUNGO0F5Q3JvSkE7OzZFQUFBO0FBSUE7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtBekNxb0pKOztBeUNqb0pBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUFrQztBekNtb0psQzs7QXlDam9KQTs7RUFBQTtBQUlBO0VBQWlDO0F6Q29vSmpDOztBMEM3cEpBOzs2RUFBQTtBQUlBO0VBQWE7QTFDZ3FKYjs7QTBDOXBKQTs7Ozs7RUFBQTtBQU9BO0VBQ0k7RUFDQTtFQUNBLGlCeEMwSmtCO0V3Q3pKbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQ2dxSko7O0EwQzVwSkE7O0VBQUE7QUFJQTtFQUF3QztBMUMrcEp4Qzs7QTBDN3BKQTs7RUFBQTtBQUlBO0VBQVE7QTFDZ3FKUjs7QTJDbnJKQTs7NkVBQUE7QUFJQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQSxTekNxekJvQjtFeUNwekJwQixVekNvekJvQjtFeUNuekJwQixhekNvekJtQjtFeUNuekJuQjtFQUNBO0VBQ0EsWXpDa3pCaUI7QUZrNEhyQjs7QTJDL3FKQTs0RUFBQTtBQUdBOztFQUVJO0VBQ0EsV3pDcXlCb0I7QUY0NEh4Qjs7QTJDOXFKQTs7RUFFSTtFQUNBO0EzQ2lySko7O0EyQzlxSkE7OztFQUdJO0VBQ0EsWXpDd3hCb0I7QUZ5NUh4Qjs7QTJDN3FKQTs0RUFBQTtBQUdBO0FBQ0E7RUFFSTtJQUNJLFV6QzZ3QmdCO0l5QzV3QmhCLFd6QzR3QmdCO0l5QzN3QmhCO0lBQ0E7RTNDOHFKTjtBQUNGO0EyQ3pxSkE7NEVBQUE7QUFHQTtFQUNJO0VBQ0EsYXpDdUZrQjtFeUN0RmxCLG1CekMvRXNCO0V5Q2dGdEIsV3pDM0ZXO0V5QzRGWCxrQnpDakdzQjtFeUNrR3RCLGdCekNtd0IrQjtFeUNsd0IvQjtBM0MwcUpKOztBMkN0cUpBO0VBQStCLGdCekN5dkJHO0FGaTdIbEM7O0EyQ3ZxSkE7OzZFQUFBO0FBSUE7RUFDSTtFQUNBO0VBQ0EsU3pDcXZCcUI7RXlDcHZCckIsV3pDbUVrQjtBRnNtSnRCOztBMkNycUpBO0VBQXdEO0EzQ3lxSnhEOztBMkN0cUpBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJLGN6QzVHd0I7QUZteEo1Qjs7QTJDbnFKQTs7RUFBQTtBQUlBO0VBQ0ksY3pDbEh3QjtBRnV4SjVCOztBMkNqcUpBOztFQUFBO0FBSUE7RUFDSSxjekN4SHdCO0FGMnhKNUI7O0EyQy9wSkE7O0VBQUE7QUFJQTtFQUNJLGN6QzlIdUI7QUYreEozQjs7QTRDdHlKQTs7NkVBQUE7QUFJQTs7Ozs7O0VBQUE7QUFRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTFDa2tDYztFMENqa0NkO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCMUM2akNnQjtFMEM1akNoQjtFQUNBO0VBQ0EsZ0IxQzZqQ2lCO0UwQzVqQ2pCLGtCMUM2akNvQjtFMEM1akNwQixXMUM1Q21CO0UwQzZDbkIsZTFDNmpDZ0I7QUYwdUhwQjs7QTRDbnlKQTtBQUNBO0VBQXdCO0E1Q3V5SnhCOztBNkM1MEpBOzs2RUFBQTtBQUlBO0VBQ0k7QTdDODBKSjs7QTZDMTBKQTs7RUFBQTtBQUlBO0VBQTZCO0E3QzYwSjdCOztBNkMxMEpBOzZFQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7QTdDNDBKSjs7QTZDdjBKQTs2RUFBQTtBQUdBO0VBQ0ksVTNDdTdCMkI7RTJDdDdCM0I7QTdDeTBKSjs7QTZDcDBKQTs2RUFBQTtBQUdBO0VBQ0ksZ0IzQzg2Qm9CO0FGdzVIeEI7O0E2Q2owSkE7NkVBQUE7QUFHQTtBQUNBO0VBQTRCO0E3Q28wSjVCOztBOENyM0pBOzs2RUFBQTtBQVNBOzZFQUFBO0FBU0E7NkVBQUE7QUFJQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGU1QzRReUI7RTRDM1F6QixnQjVDMFEyQjtBRjhsSi9COztBOENwMkpBO0FBQ0E7RUFFSTtJQUF1QixlNUNxUUk7RUZrbUo3QjtBQUNGO0E4Q3AySkE7QUFDQTtFQUVJO0lBQXVCLGU1QytQSTtFRnVtSjdCO0FBQ0Y7QThDbDJKQTs2RUFBQTtBQUdBO0VBQ0ksZTVDd1A0QjtFNEN2UDVCLGdCNUNzUDhCO0FGNm1KbEM7O0E4Qy8xSkE7QUFDQTtFQUVJO0lBQTBCLGU1Q2lQSTtFRmluSmhDO0FBQ0Y7QThDLzFKQTtBQUNBO0VBRUk7SUFBMEIsZTVDMk9JO0VGc25KaEM7QUFDRjtBOEM3MUpBOzZFQUFBO0FDbEZBOzs2RUFBQTtBQUlBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0NpN0pKOztBK0M3NkpBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQSxrQjdDd2lDeUI7QUZ1NEg3Qjs7QStDMzZKQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtFNUNpaEVBO0FINDVGSjtBRzE1Rkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwyRkQ5eUJpQjtFQyt5QmpCO0FINDVGUjs7QStDbjdKQTtBNUM0aEVJO0VBQVcsVURuekJlO0FGK3NIOUI7O0ErQ243SkE7QTVDMGhFSTtFQUFXLFVEcnpCZ0I7QUZtdEgvQjs7QStDbDdKQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0NtN0pKOztBK0NoN0pBO0FBQ0E7RUFDSTtFQUNBLGlCN0MwL0J5QjtBRnk3SDdCOztBZ0Q1L0pBOzs2RUFBQTtBQUlBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEQ2L0pKOztBZ0R6L0pBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQSxrQjlDc0ZrQjtBRnE2SnRCOztBZ0R2L0pBOzZFQUFBO0FBR0E7Ozs7Ozs7RUFBQTtBQVNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzlDbkJpQjtFOENvQmpCO0VBQ0E7RTdDNGlDQSxtQkRwa0NxQjtFQ3FrQ3JCO0VBQ0E7QUg2OEhKOztBZ0R2L0pBO0FBQ0E7RUFDSSxXOUM1RVc7QUZza0tmOztBZ0R0L0pBO0FBQ0E7RUFDSSxXOUNsRlc7QUYya0tmOztBZ0RwL0pBOzZFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRHEvSko7O0FnRGwvSkE7QUFDQTtFQUNJO0VBQ0EsaUI5Q3VCa0I7QUY4OUp0Qjs7QWlEcGtLQTs7NkVBQUE7QUFJQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRHFrS0o7O0FpRGxrS0E7Ozs7RUFBQTtBQU1BO0VBQWU7QWpEcWtLZjs7QWlEbmtLQTs7RUFBQTtBQUlBO0VBQTZCO0FqRHNrSzdCOztBaURua0tBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtBQUNBO0VBQVc7QWpEcWtLWDs7QWlEcGtLQTtFQUFlLGtCL0MxQ0M7QUZrbktoQjs7QWlEdGtLQTtBQUNBOzs7RUFFc0IsZ0IvQy9DTjtBRnluS2hCOztBaUR4a0tBO0FBQ0E7RUFFSTtFQUNBO0lBQVc7RWpEMmtLYjtFaUQxa0tFO0lBQWUsa0IvQ25ESTtFRmdvS3JCO0VpRDNrS0U7RUFDQTs7O0lBRXNCLGdCL0N4REg7RUZzb0tyQjtBQUNGO0FpRDNrS0E7O0VBQUE7QUFJQTtBQUNBOztFQUN3QjtBakQ2a0t4Qjs7QWlENWtLQTs7RUFDNEIsa0IvQzZFTjtBRm1nS3RCOztBaUQ5a0tBO0FBQ0E7Ozs7O0VBSTRCLGdCL0NzRU47QUY0Z0t0Qjs7QWlEaGxLQTs7RUFBQTtBQUlBO0FBQ0E7O0VBQ3lCO0FqRG1sS3pCOztBaURsbEtBOztFQUM2QixrQi9DeEZiO0FGOHFLaEI7O0FpRHBsS0E7QUFDQTs7Ozs7RUFJNkIsZ0IvQy9GYjtBRnVyS2hCOztBaUR0bEtBOztFQUFBO0FBSUE7QUFDQTs7RUFDd0I7QWpEeWxLeEI7O0FpRHhsS0E7O0VBQzRCLGtCL0N0R0w7QUZrc0t2Qjs7QWlEMWxLQTtBQUNBOzs7OztFQUk0QixnQi9DN0dMO0FGMnNLdkI7O0FpRDVsS0E7QUFDQTtFQUVJO0VBQ0E7O0lBQ3dCO0VqRCtsSzFCO0VpRDlsS0U7O0lBQzRCLGtCL0NtSVY7RUY4OUpwQjtFaUQvbEtFO0VBQ0E7Ozs7O0lBSTRCLGdCL0M0SFY7RUZzK0pwQjtBQUNGO0FpRC9sS0E7O0VBQUE7QUFJQTtBQUNBOztFQUMyQjtBakRpbUszQjs7QWlEaG1LQTs7RUFDK0I7QWpEb21LL0I7O0FpRGxtS0E7QUFDQTs7OztFQUcwQztBakRzbUsxQzs7QWlEbm1LQTs2RUFBQTtBQUdBO0VBQXVCO0FqRHNtS3ZCOztBaURwbUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakR1bUtKOztBaURubUtBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRHNtS0o7O0FpRGxtS0E7O0VBQUE7QUFJQTtBQUNBO0VBQW1CO0FqRHFtS25COztBaURwbUtBO0VBQXVCO0FqRHdtS3ZCOztBaUR0bUtBO0VBQW9ELFUvQ3JMcEM7QUYreEtoQjs7QWlEeG1LQTtBQUNBO0VBQW1EO0FqRDRtS25EOztBaUQxbUtBO0VBQ0k7RUFDQTtBakQ2bUtKOztBaUQxbUtBO0FBQ0E7RUFFSTtFQUNBO0lBQW1CO0VqRDZtS3JCO0VpRDVtS0U7SUFBdUI7RWpEK21LekI7RWlEN21LRTtJQUFvRCxVL0NuTWpDO0VGbXpLckI7RWlEOW1LRTtFQUNBO0lBQW1EO0VqRGluS3JEO0VpRC9tS0U7SUFDSTtJQUNBO0VqRGluS047QUFDRjtBaUQ3bUtBOztFQUFBO0FBSUE7QUFDQTs7RUFDd0M7QWpEK21LeEM7O0FpRDltS0E7O0VBQzRDO0FqRGtuSzVDOztBaURobktBOztFQUN5RSxVL0N6RW5EO0FGNnJLdEI7O0FpRGxuS0E7QUFDQTs7RUFDcUU7QWpEc25LckU7O0FpRHBuS0E7RUFDSTtFQUNBO0FqRHVuS0o7O0FpRHBuS0E7RUFBNkU7QWpEd25LN0U7O0FpRHZuS0E7RUFBZ0Y7QWpEMm5LaEY7O0FpRHpuS0E7O0VBQUE7QUFJQTtBQUNBOztFQUN5QztBakQ0bkt6Qzs7QWlEM25LQTs7RUFDNkM7QWpEK25LN0M7O0FpRDduS0E7O0VBQzBFLFUvQ3RQMUQ7QUZ1M0toQjs7QWlEL25LQTtBQUNBOztFQUNzRTtBakRtb0t0RTs7QWlEam9LQTtFQUNJO0VBQ0E7QWpEb29LSjs7QWlEam9LQTtFQUE4RTtBakRxb0s5RTs7QWlEcG9LQTtFQUFpRjtBakR3b0tqRjs7QWlEdG9LQTs7RUFBQTtBQUlBO0FBQ0E7O0VBQ3dDO0FqRHlvS3hDOztBaUR4b0tBOztFQUM0QztBakQ0b0s1Qzs7QWlEMW9LQTs7RUFDeUUsVS9DNVFsRDtBRjA1S3ZCOztBaUQ1b0tBO0FBQ0E7O0VBQ3FFO0FqRGdwS3JFOztBaUQ5b0tBO0VBQ0k7RUFDQTtBakRpcEtKOztBaUQ5b0tBO0VBQTZFO0FqRGtwSzdFOztBaURqcEtBO0VBQWdGO0FqRHFwS2hGOztBaURucEtBO0FBQ0E7RUFFSTtFQUNBOztJQUN3QztFakRzcEsxQztFaURycEtFOztJQUM0QztFakR3cEs5QztFaUR0cEtFOztJQUN5RSxVL0MzQ3ZEO0VGb3NLcEI7RWlEdnBLRTtFQUNBOztJQUNxRTtFakQwcEt2RTtFaUR4cEtFO0lBQ0k7SUFDQTtFakQwcEtOO0VpRHZwS0U7SUFBNkU7RWpEMHBLL0U7RWlEenBLRTtJQUFnRjtFakQ0cEtsRjtBQUNGO0FpRHhwS0E7NkVBQUE7QUFHQTs7Ozs7RUFBQTtBQU9BOztFQUVJO0VBQ0E7RUFDQTtBakR3cEtKOztBaURycEtBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEd3BLSjs7QWtEcjlLQTs7NkVBQUE7QUFJQTs7RUFBQTtBQUlBOztFQUVJO0VBQ0E7RUFDQTtBbERzOUtKOztBa0RuOUtBOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7T0FBQTtFQUNBO0VBQ0E7QWxEcTlLSjs7QWtEbDlLQTs7O0VBQUE7QUFLQTtFQUFtQjtBbERxOUtuQjs7QWtEbDlLQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0k7QWxEbTlLSjs7QWtELzhLQTs7RUFBQTtBQUlBO0VBQWlCLGtCaERzbEJpQjtBRjQzSmxDOztBa0RoOUtBOztFQUFBO0FBSUE7RUFBZ0I7QWxEbTlLaEI7O0FrRGg5S0E7NkVBQUE7QUFHQTtFQUNJO0VBQ0E7QWxEazlLSjs7QWtELzhLQTtFQUErQztBbERtOUsvQzs7QWtEaDlLQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQSx5QmhEbWtCd0I7RWdEbGtCeEIsbUJoRGxGcUI7QUZvaUx6Qjs7QWtEOThLQTtFQUFtQyxnQmhEM0luQjtBRjZsTGhCOztBa0QvOEtBOzZFQUFBO0FBR0E7RUFDSTtBbERpOUtKOztBa0Q1OEtBOzZFQUFBO0FBR0E7RUFDSSxtQmhEdEdxQjtFZ0R1R3JCLGdCaER6RWlCO0FGdWhMckI7O0FrRDE4S0E7O0VBQUE7QUFJQTtFQUNJLFdoRDdHaUI7QUZ5akxyQjs7QWtEeDhLQTtBQUNBO0VBQ0ksV2hEcEtXO0FGK21MZjs7QWtEdjhLQTtBQUNBO0VBQ0ksV2hENUtvQjtBRnNuTHhCOztBa0R0OEtBOztFQUFBO0FBSUE7RUFDSSxlaER3aEI2QjtBRmc3SmpDOztBa0RwOEtBOztFQUFBO0FBSUE7RUFDSSxXaEQ5TG9CO0FGb29MeEI7O0FrRGw4S0E7O0VBQUE7QUFJQTtFQUNJO0FsRG84S0o7O0FrRGg4S0E7O0VBQUE7QUFJQTtFQUNJLG1CaERoS3FCO0VnRGlLckIsZ0JoRG5JaUI7QUZxa0xyQjs7QWtELzdLQTtFQUFnQyxXaERqS1g7QUZvbUxyQjs7QWtEajhLQTtFQUFzQyxXaERwTnZCO0FGeXBMZjs7QWtEbjhLQTtFQUErQyxXaER4TnZCO0FGK3BMeEI7O0FrRHA4S0E7NkVBQUE7QUFHQTtFQUNJLGlCaEQvR3FCO0VnRGdIckIsZ0JoRGxKaUI7QUZ3bExyQjs7QWtEbDhLQTs7RUFBQTtBQUlBO0VBQ0ksV2hEdExpQjtBRjBuTHJCOztBa0RoOEtBO0FBQ0E7RUFDSSxXaEQ3T1c7QUZnckxmOztBa0QvN0tBO0FBQ0E7RUFDSSxXaERyUG9CO0FGdXJMeEI7O0FrRDk3S0E7O0VBQUE7QUFJQTtFQUNJLGtCaERqUXNCO0FGaXNMMUI7O0FrRDU3S0E7O0VBQUE7QUFJQTtFQUNJLFdoRHZRb0I7QUZxc0x4Qjs7QWtEMTdLQTs7RUFBQTtBQUlBO0VBQ0k7QWxENDdLSjs7QWtEeDdLQTs7RUFBQTtBQUlBO0VBQ0ksa0JoRDVSc0I7RWdENlJ0QixnQmhENU1pQjtBRnNvTHJCOztBa0R2N0tBO0VBQWdDLFdoRDFPWDtBRnFxTHJCOztBa0R6N0tBO0VBQXNDLFdoRDdSdkI7QUYwdExmOztBa0QzN0tBO0VBQStDLFdoRGpTdkI7QUZndUx4Qjs7QWtENTdLQTs2RUFBQTtBQUdBO0VBQ0ksZWhENU5lO0VnRDZOZixnQmhEM05pQjtBRnlwTHJCO0FHMzVJSTtFQUFtRSxhRGxGNUM7QUZnL0kzQjs7QWtENzdLQTs7RUFBQTtBQUlBO0VBRUksV2hEblRvQjtFQzgwQ1U7QUhvNklsQzs7QWtEMzdLQTtBQUNBO0VBQ0ksV2hEelRvQjtFQyswQ2dCLHlCRGwwQ2Q7QUYydUwxQjs7QWtEMzdLQTtBQUNBO0VBQ0ksV2hEL1RvQjtFQ2cxQ2lCLHlCRG4wQ2Y7QUZpdkwxQjs7QWtEMzdLQTs7RUFBQTtBQUlBO0VBQ0ksbUJoRHhScUI7RWdEeVJyQixXaER0UmlCO0FGbXRMckI7O0FrRHo3S0E7QUFDQTtFQUNJLFdoRDdVVztBRnl3TGY7O0FrRHg3S0E7QUFDQTtFQUNJLFdoRHJWb0I7QUZneEx4Qjs7QWtEdjdLQTs7RUFBQTtBQUlBO0VBQ0ksV2hEOVZvQjtBRnV4THhCOztBa0RyN0tBOztFQUFBO0FBSUE7RUFDSTtBbER1N0tKOztBa0RuN0tBOztFQUFBO0FBSUE7RUFDSSxtQmhEaFVxQjtFZ0RpVXJCLGdCaERuU2lCO0FGd3RMckI7O0FrRGw3S0E7RUFBa0MsV2hEalViO0FGdXZMckI7O0FrRHA3S0E7RUFBd0MsV2hEcFh6QjtBRjR5TGY7O0FrRHQ3S0E7RUFBaUQsV2hEeFh6QjtBRmt6THhCOztBa0R2N0tBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJLG9CaERxWG1CO0VnRHBYbkIsY2hEaVhxQjtBRnVrS3pCOztBa0RwN0tBO0VBQ0ksaUJoRGtYa0I7RWdEalhsQixjaEQrV29CO0FGd2tLeEI7O0FrRG43S0E7RUFDSSxlaEQrV21CO0VnRDlXbkIsY2hENldxQjtBRnlrS3pCOztBa0RsN0tBO0FBQ0E7RUFFSTtJQUFpQixpQmhEZ1dJO0VGcWxLdkI7RWtEcDdLRTtJQUFnQixlaERrV0k7RUZxbEt0QjtFa0R0N0tFO0lBQWlCLGVoRHNXSTtFRm1sS3ZCO0FBQ0Y7QWtEdDdLQTtBQUNBO0VBRUk7SUFBaUIsZWhEc1ZJO0VGa21LdkI7RWtEdjdLRTtJQUFnQixlaEQyVkk7RUYrbEt0QjtFa0R6N0tFO0lBQWlCLGVoRDhWSTtFRjhsS3ZCO0FBQ0Y7QWtEeDdLQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtDO0FBQ0Q7RUFBaUI7QWxEeTdLakI7O0FrRHg3S0M7QUFDRDtFQUF3QjtBbEQ0N0t4Qjs7QWtEMTdLQTtBQUNBOztFQUNnQztBbEQ4N0toQzs7QWtENTdLQTtBQUNBO0VBQXFDLG1CaER1UVA7QUZ5cks5Qjs7QWtENzdLQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0ksZWhENFRzQjtFZ0QzVHRCLGdCaEQyVHNCO0VnRDFUdEI7QWxEODdLSjs7QW1EdjFMQTs7NkVBQUE7QUFJQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0FuRHcxTEo7O0FtRG4xTEE7NkVBQUE7QUFHQTtFQUNJLG1CakRyRHNCO0FGMDRMMUI7O0FtRDUwTEE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBOzs7RUFHSTtFQUNBLFNqRDJzQlM7RWlEMXNCVDtFQUNBO0FuRDYwTEo7O0FtRDEwTEE7Ozs7Ozs7RUFBQTtBQVNBO0VBQW1CO0FuRDYwTG5COztBbUQzMExBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5EODBMSjs7QW1EMzBMQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0FuRDgwTEo7O0FtRDMwTEE7QUFDQTs7RUFFRztFQUNBO0FuRDgwTEg7O0FtRDMwTEE7RUFBeUI7QW5EKzBMekI7O0FtRDkwTEE7RUFBMEI7QW5EazFMMUI7O0FtRGgxTEE7RUFDSTtFQUFBO0VBQ0E7QW5EbTFMSjs7QW1ELzBMQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtFQUNBLFNqRGlwQmE7RWlEaHBCYjtFQUNBO0VBQ0E7RUFDQTtBbkRnMUxKOztBbUQ3MExBOzs7RUFBQTtBQUtBOzs7RUFFK0I7QW5EZzFML0I7O0FtRDkwTEE7Ozs7Ozs7RUFBQTtBQVNBOzs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7T0FBQTtFQUNBO0VBQ0E7RUFDQSxnQmpEOG1CcUI7RWlEN21CckI7RUFDQSxtQmpEeElxQjtFaUR5SXJCLGtNakRoSGlCO0VpRGlIakI7RUFDQTtBbkRnMUxKOztBbUQ3MExBOztFQUFBO0FBSUE7RUFDSTtFQUNBLFdqRGpKaUI7RUNrOENqQix5QkRsUDZCO0VDbVA3QjtFQUNBO0FIK2hKSjs7QW1EOTBMQTs7O0VBQUE7QUFLQTs7RUFFSSxXakQ3TVc7QUY2aE1mOztBbUQ1MExBO0FBQ0E7RUFDSSxXakRyTm9CO0FGb2lNeEI7O0FtRDMwTEE7QUFDQTtFQUNJLFdqRDNOb0I7QUZ5aU14Qjs7QW1EejBMQTs2RUFBQTtBQUdBO0VBQ0ksZ0JqRHdrQjZCO0VpRHZrQjdCO0FuRDIwTEo7O0FtRHgwTEE7RUFBdUU7QW5ENDBMdkU7O0FtRHowTEE7NkVBQUE7QUFHQTtFQUNJO0VBQ0EsV2pEOU9XO0FGeWpNZjs7QW1EdjBMQTs7RUFBQTtBQUlBO0VBQWdDO0FuRDAwTGhDOztBbUR2MExBOzZFQUFBO0FBR0E7RUFDSTtFQUNBLFdqRDdNaUI7QUZzaE1yQjs7QW1EcjBMQTs7RUFFSSxXakRwUVc7RWlEcVFYO0FuRHcwTEo7O0FtRHAwTEE7OztFQUFBO0FBU0E7QUFNQTs2RUFBQTtBQUdBO0VBQ0ksbUJqRDlPcUI7QUYwaU16Qjs7QW1EdnpMQTs2RUFBQTtBQUdBOzs7Ozs7RUFLdUM7QW5EMHpMdkM7O0FtRHZ6TEE7NkVBQUE7QUFnQkE7NkVBQUE7QUFHQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWWpEd2VvQjtFaUR2ZXBCO0VBQ0EsYWpEdWVzQjtFaUR0ZXRCLGdCakR6UmdCO0VpRDBSaEIsV2pEL1VXO0VDbWdEZ0IsMENEaFFGO0FGdTNKN0I7O0FtRHZ5TEE7O0VBQUE7QUFJQTtFQUFvQztBbkQweUxwQzs7QW1EbnlMQTtFQUNJO0FuRHN5TEo7O0FtRGx5TEE7OztFQUFBO0FBS0E7QUFDQTtFQUFvQztBbkRxeUxwQzs7QW1EcHlMQTtFQUF3QyxrQmpEOVV4QjtBRnNuTWhCOztBbUR0eUxBO0FBQ0E7RUFBc0QsZ0JqRGpWdEM7QUYybk1oQjs7QW1EeHlMQTs7RUFBQTtBQUlBO0VBQWtEO0FuRDJ5TGxEOztBbUQxeUxBO0VBQWtEO0FuRDh5TGxEOztBbUQ3eUxBO0VBQWtEO0FuRGl6TGxEOztBbURoekxBO0VBQWtEO0FuRG96TGxEOztBbURsekxBOztFQUFBO0FBSUE7RUFDSTtFQUNBLGFqRDhiNEI7QUZzM0toQzs7QW1EaHpMQTs7Ozs7RUFBQTtBQU9BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoRG1uQ21DO0FIZ3NKdkM7O0FtRC95TEE7QUFDQTtFQUVJO0lBQThCO0VuRGt6TGhDO0FBQ0Y7QW1EL3lMQTtBQUNBO0VBRUk7SUFBOEI7RW5EaXpMaEM7QUFDRjtBbUQ5eUxBO0VBQ0k7RUFDQSxpQmpEc1o0QjtFaURyWjVCLG9CakRxWjRCO0FGMjVLaEM7O0FtRDN5TEE7OzZFQUFBO0FBSUE7RWhEdWxDbUMsbUJEejlDVjtBRmdyTXpCOztBbUQxeUxBOztFQUFBO0FBSUE7RUFDSSxXakR4WWlCO0FGb3JNckI7O0FtRHh5TEE7QUFDQTtFQUNJLFdqRC9iVztBRjB1TWY7O0FtRHZ5TEE7QUFDQTtFQUNJLFdqRHZjb0I7QUZpdk14Qjs7QW1EdHlMQTs7RUFBQTtBQUlBO0VBQ0ksZWpENFhxQztBRjQ2S3pDOztBbURweUxBOztFQUFBO0FBSUE7RUFDSSxXakR6ZG9CO0FGK3ZNeEI7O0FtRGx5TEE7O0VBQUE7QUFJQTtFQUNJO0FuRG95TEo7O0FtRGh5TEE7O0VBQUE7QUFJQTtFQUF3QyxXakR2Ym5CO0FGMHRNckI7O0FtRGp5TEE7RUFBOEMsV2pEMWUvQjtBRit3TWY7O0FtRG55TEE7RUFBdUQsV2pEOWUvQjtBRnF4TXhCOztBbURweUxBOzZFQUFBO0FBR0E7O0VBQUE7QWhEK2hDSTtFQUNJO0VBQ0E7QUgwd0pSOztBR3Z3Skk7QUFDQTtFQUVJOzs7SUFFOEIsU0Q1UnZCO0VGc2lLYjtFR3h3Sk07SUFBeUI7RUgyd0ovQjtFRzF3Sk07SUFBMEI7RUg2d0poQztBQUNGO0FHMXdKSTtBQUNBO0VBRUk7SUFBaUIsU0RyU047RUZpaktqQjtBQUNGO0FvRGx5TUE7OzZFQUFBO0FBSUE7Ozs7O0VBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRGt5TUo7O0FvRDl4TUE7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0Esa0JsRDY3QnVCO0VrRDU3QnZCO0VBQ0E7QXBEZ3lNSjs7QW9ENXhNQTs2RUFBQTtBQUdBOzs7Ozs7RUFBQTtBQVFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtPQUFBO0VBQ0E7RUFDQSxXbEQxQmlCO0VDc3dEakIsbUJEendEcUI7RUMwd0RyQix5QkRyaUJ5QjtFQ3NpQnpCO0VBQ0E7QUhrakpKOztBb0Q3eE1BO0FBQ0E7RUFDSSxXbERqRlc7RWtEa0ZYLHFCbERpNkJnQztBRiszS3BDOztBb0Q1eE1BO0FBQ0E7RUFDSSxXbEQxRm9CO0FGeTNNeEI7O0FvRDF4TUE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQXFCO0FwRDR4TXJCOztBb0QxeE1BOztFQUFBO0FBSUE7RUFDSTtFQUNBO0FwRDR4TUo7O0FvRHp4TUE7OztFQUFBO0FBS0E7RUFDSTtFQUNBLGFsRGc0QjJCO0VrRC8zQjNCO0VBQ0Esa0JsRHczQnVCO0VrRHYzQnZCO0FwRDJ4TUo7O0FvRHh4TUE7QUFDQTtFQUNJLDBCbERIWTtBRjh4TWhCOztBb0R0eE1BOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUFrQjtBcER3eE1sQjs7QW9EdnhNQTtFQUFzQixrQmxEcTJCSztBRnM3SzNCOztBb0R6eE1BO0VBQ0k7RUFDQSx1QmxENjJCMEI7RWtENTJCMUIsV2xEL0ZpQjtBRjIzTXJCOztBb0R4eE1BO0FBQ0E7RUFDSSx5QmxEM0lzQjtFa0Q0SXRCLFdsRHZKVztBRms3TWY7O0FvRHZ4TUE7QUFDQTtFQUNJLHlCbERsSnNCO0VrRG1KdEIsV2xEOUpXO0FGdzdNZjs7QW9EdHhNQTtBQUNBO0VBQ0kseUJsRHBKd0I7RWtEcUp4QixXbERsS21CO0FGMjdNdkI7O0FvRHB4TUE7OzZFQUFBO0FBSUE7RUFDSSxXbEQ5SGlCO0FGbzVNckI7O0FxRDU3TUE7OzZFQUFBO0FBSUE7OztFQUFBO0FBS0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRDY3TUo7O0FxRHo3TUE7O0VBQUE7QUFJQTtFQUFxQjtBckQ0N01yQjs7QXFEejdNQTs2RUFBQTtBQUdBO0VBQ0ksbUJuRFFxQjtFbURQckIsV25EVWlCO0FGaTdNckI7O0FxRHY3TUE7QUFDQTtFQUNJLFduRDdDVztFbUQ4Q1gscUJuRDZHb0M7QUY2ME14Qzs7QXFEdDdNQTtBQUtBO0FBQ0E7O0VBRUksV25EMURXO0FGKytNZjs7QXFEajdNQTs7Ozs7RUFBQTtBQU9BO0VBQ0ksWW5EdUZpQjtFbUR0RmpCO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJuRDdCcUI7RW1EOEJyQixXbkQzQmlCO0FGODhNckI7O0FzRGwvTUE7OzZFQUFBO0FBSUE7Ozs7O0VBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RG0vTUo7O0FzRC8rTUE7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsZXBEKzBCMkI7RW9EOTBCM0I7RUFDQTtBdERpL01KOztBc0Q3K01BOzZFQUFBO0FBR0E7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtPQUFBO0VBQ0E7RUFDQTtFQUNBLFdwRHRCaUI7RUN1a0RVO0FIODdKL0I7O0FzRDMrTUE7QUFDQTtFQUNJLFdwRDdFVztFb0Q4RVgscUJwRHN6Qm9DO0FGd3JMeEM7O0FzRDErTUE7QUFDQTtFQUNJLFdwRHBGVztBRmlrTmY7O0FzRHorTUE7QUFDQTtFQUNJLFdwRHpDaUI7QUZxaE5yQjs7QXVEeGpOQTs7NkVBQUE7QUFJQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VwRGszREE7QUh3c0pKO0FHdHNKSTtFQUNJO0VBQ0E7RUFDQTtFQUNBLFVEdDRCZ0I7RUN1NEJoQjtFQUNBO0FId3NKUjs7QXVEOWpOQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQSxrQnJEbytCb0I7RXFEbitCcEI7RUFDQTtBdkRna05KOztBdUQ1ak5BOzZFQUFBO0FBR0E7Ozs7OztFQUFBO0FBUUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO09BQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdyRHhCaUI7RUM4MkRqQjtFQUNBLG1CRGwzRHFCO0VDbTNEckIseUJEem9Cc0I7RUMwb0J0QjtBSHd1Sko7O0F1RDdqTkE7QUFDQTtFQUNJLFdyRC9FVztFcURnRlgscUJyRHU4QjZCO0FGeW5MakM7O0F1RDVqTkE7QUFDQTtFQUNJLFdyRHhGb0I7RUN1NkRPLHFCRHI1REg7QUZzb041Qjs7QXVENWpOQTtBQUNBO0VBQ0ksV3JEM0NpQjtBRjBtTnJCOztBdUQxak5BOzZFQUFBO0FBR0E7O0VBQUE7QXBEcTBESTtFQUNJO0VBQ0E7QUgwdkpSOztBdUR6ak5BO0VwRG8wREk7RUFDQTtBSHl2Sko7O0F1RDFqTkE7OztFQUFBO0FBS0E7O0VBRUk7RUFDQTtFQUNBO0F2RDRqTko7O0F1RHpqTkE7QUFDQTs7RUFDb0I7QXZENmpOcEI7O0FHdHdKSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHl3SlI7O0FHbndKSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHN3SlI7O0F1RHJrTkE7RUFDSTtFcERtMERBO0VBQ0E7QUhzd0pKOztBdUR0a05BO0VBQ0k7RXBEazBEQTtFQUNBO0FId3dKSjs7QUdwd0pJO0VBQXVCO0FId3dKM0I7O0F3RC9zTkE7OzZFQUFBO0FBSUE7O0VBQUE7QUFJQTtFQUNJO0VBQ0EsK0J0RGk4QmE7RUNtekJPO0FINjlKeEI7O0F3RDdzTkE7QUFDQTtFQUNJLCtCdEQ0N0JtQjtBRm94THZCOztBd0Q1c05BO0FBQ0E7RUFDSSwrQnREdTdCb0I7QUZ3eEx4Qjs7QXdEMXNOQTs2RUFBQTtBQUdBOztFQUFBO0FBUUE7O0VBQUE7QUFTQTs2RUFBQTtBQUdBO0VBQ0k7QXhEZ3NOSjs7QXdEM3JOQTs2RUFBQTtBQUdBO0VBQ0k7QXhENnJOSjs7QXlEM3ZOQTs7NkVBQUE7QUFJQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpENHZOSjs7QXlEeHZOQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGtCdkQrU3VCO0FGMjhNM0I7O0F5RHR2TkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQSxXdkRrU2dCO0V1RGpTaEIsWXZEaVNnQjtFdURoU2hCLGtCdkRrU3dCO0V1RGpTeEIsdUJ2RGtTcUI7RXVEalNyQjtFQUNBO0VBQ0E7RUFDQTtFdERpckJBO0VBQ0E7RUFDQTtBSHVrTUo7O0F5RHR2TkE7QUFDQTtFQUNJLDBDdkR5UjJCO0VDc1pFLHlCRHlkTjtBRmtuTDNCOztBeUR0dk5BO0FBQ0E7RUFDSSwwQ3ZEb1I2QjtFQ3NaRSx5QkR5ZE47QUZ1bkw3Qjs7QXlEdHZOQTtBQUNBO0VBQ0ksMEN2RCtRNEI7RUNzWkUseUJEeWROO0FGNG5MNUI7O0F5RHJ2TkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpEc3ZOSjs7QXlEbnZOQTtBQUNBO0VBQ0k7RUFDQSxpQnZEK091QjtBRnVnTjNCOztBMERsMU5BOzs2RUFBQTtBQUlBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnhEMFZpQjtFd0R6VmpCO0VBQ0EsYXhEeVZlO0V3RHhWZixnQnhEZ0JnQjtFd0RmaEIsV3hEdENXO0VDNnhCUywwQ0QyYkY7QUZrcUx0Qjs7QTBEaDFOQTs7RUFBQTtBQUlBO0VBQTZCO0ExRG0xTjdCOztBMEQ1ME5BO0VBQ0k7QTFEKzBOSjs7QTBEMTBOQTs2RUFBQTtBQUdBO0VBQXFCLGF4RG9VSTtBRnlnTnpCOztBMEQxME5BOzZFQUFBO0FBR0E7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFdkQ0c0I0QjtBSGdvTWhDOztBMER4ME5BO0FBQ0E7RUFFSTtJQUF1QjtFMUQyME56QjtBQUNGO0EwRHgwTkE7QUFDQTtFQUVJO0lBQXVCO0UxRDAwTnpCO0FBQ0Y7QTBEdjBOQTtFQUNJLGlCeEQ2UnFCO0V3RDVSckIsb0J4RDRScUI7QUY2aU56Qjs7QTBEcDBOQTs7NkVBQUE7QUFJQTtFdkRpckI0QixtQkRsdkJIO0FGdzROekI7O0EwRG4wTkE7O0VBQUE7QUFJQTtFQUNJLFd4RHZFaUI7QUY0NE5yQjs7QTBEajBOQTtBQUNBOztFQUVJLFd4RC9IVztBRm04TmY7O0EwRGgwTkE7O0VBQUE7QUFJQTtFQUNJLGV4RHFROEI7QUY2ak5sQzs7QTBEOXpOQTs7RUFBQTtBQUlBO0VBQ0ksV3hEbkpvQjtBRm05TnhCOztBMEQ1ek5BOztFQUFBO0FBSUE7RUFDSTtBMUQ4ek5KOztBMEQxek5BOztFQUFBO0FBSUE7RUFBaUMsV3hEakhaO0FGODZOckI7O0EwRDN6TkE7O0VBQ2dELFd4RHJLakM7QUZvK05mOztBMkQ3OE5BOzs2RUFBQTtBQUlBOzs7Ozs7OztFQUFBO0FBVUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhekQwaUJlO0V5RHppQmY7RUFDQSxnQnpEeWlCa0I7RXlEeGlCbEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Q4OE5KOztBMkQxOE5BOzs7O0VBQUE7QUFNQTtFQUNJO0VBQ0E7RUFDQTtBM0Q0OE5KOztBMkR6OE5BOztFQUFBO0FBSUE7RUFBOEIsdUN6RGtoQkw7QUYwN016Qjs7QTJEejhOQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFBb0I7QTNEMjhOcEI7O0EyRHg4TkE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0EzRHk4Tko7O0EyRHQ4TkE7Ozs7OztFQUFBO0FBUUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRHc4Tko7O0EyRHA4TkE7QUFDQTtFQUFrQztBM0R3OE5sQzs7QTJEdDhOQTtFQUE2QjtBM0QwOE43Qjs7QTJEeDhOQTtBQUNBO0VBQ0ksZ0J6RHdkc0I7RXlEdmR0QixpQnpEd2R1QjtBRm0vTTNCOztBMkR4OE5BO0VBQ0k7RUFDQTtBM0QyOE5KOztBMkR4OE5BO0FBQ0E7RUFBbUU7QTNENDhObkU7O0EyRDM4TkE7RUFBeUU7QTNEKzhOekU7O0EyRDU4TkE7NkVBQUE7QUFHQTtFQUFvRCxnQnpEeWNqQjtBRnNnTm5DOztBMkQ5OE5BO0VBQStFLGlCekR5Y3BEO0FGeWdOM0I7O0EyRGg5TkE7O0VBQzRCO0EzRG85TjVCOztBMkRqOU5BOzZFQUFBO0FBR0E7RUFBNkI7QTNEbzlON0I7O0EyRGw5TkE7RUFDSTtFQUNBLDhCekQrYjBCO0V5RDliMUIsK0J6RCticUI7QUZzaE56Qjs7QTJEajlOQTtFQUEyQiwrQnpEMmJGO0FGMGhOekI7O0EyRGw5TkE7NkVBQUE7QUFHQTtFQUE2QjtBM0RxOU43Qjs7QTJEbDlOQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtBM0RvOU5KOztBNERubk9BOzs2RUFBQTtBQUlBO0VBQTJCO0E1RHNuTzNCOztBNERubk9BOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJO0VBQ0Esd0IxRE5zQjtFMERPdEI7QTVEb25PSjs7QTREam5PQTs7RUFBQTtBQUlBO0VBQXlCO0E1RG9uT3pCOztBNERubk9BO0VBQTJCO0E1RHVuTzNCOztBNERybk9BOztFQUFBO0FBSUE7RUFBMEI7QTVEd25PMUI7O0E0RHZuT0E7RUFBNkI7QTVEMm5PN0I7O0E0RDFuT0E7RUFBMkI7QTVEOG5PM0I7O0E0RDduT0E7RUFBNEI7QTVEaW9PNUI7O0E0RC9uT0E7O0VBQUE7QUFJQTtFQUFnQztBNURrb09oQzs7QTREam9PQTtFQUFtQztBNURxb09uQzs7QTREcG9PQTtFQUFpQztBNUR3b09qQzs7QTREdm9PQTtFQUFrQztBNUQyb09sQzs7QTREem9PQTs7RUFBQTtBQUlBO0VBQWlDO0E1RDRvT2pDOztBNEQzb09BO0VBQW9DO0E1RCtvT3BDOztBNEQ5b09BO0VBQWtDO0E1RGtwT2xDOztBNERqcE9BO0VBQW1DO0E1RHFwT25DOztBNERucE9BOztFQUFBO0FBSUE7RUFDSTtFQUNBLHVCMURoRDBCO0FGcXNPOUI7O0E0RGxwT0E7O0VBQUE7QUFJQTtFQUFzQjtBNURxcE90Qjs7QTREbnBPQTs7Ozs7O0VBQUE7QUFRQTtFQUNJO0VBQ0Esc0IxRHBFd0I7RTBEcUV4QjtBNURxcE9KOztBNERqcE9BOzZFQUFBO0FBR0E7RUFDSTtFQUNBO0E1RG1wT0o7O0E0RC9vT0E7NkVBQUE7QUFHQTtFQUFxQix3QjFEbkZLO0FGcXVPMUI7O0E0RC9vT0E7NkVBQUE7QUFHQTtFQUF3RTtBNURrcE94RTs7QTREL29PQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtJQUFLO0U1RGlwT1A7RTREaHBPRTtJQUFPO0U1RG1wT1Q7QUFDRjtBNERqcE9BOztFQUFBO0FBSUE7RUFDSTtJQUFLO0U1RG1wT1A7RTREbHBPRTtJQUFPO0U1RHFwT1Q7QUFDRjtBNERucE9BO0VBQ0k7SUFBSztFNURzcE9QO0U0RHJwT0U7SUFBTztFNUR3cE9UO0FBQ0Y7QTREdHBPQTs7RUFBQTtBQUlBO0VBQ0k7SUFBSztFNUR3cE9QO0U0RHZwT0U7SUFBTztFNUQwcE9UO0FBQ0Y7QTREeHBPQTtFQUNJO0lBQUs7RTVEMnBPUDtFNEQxcE9FO0lBQU87RTVENnBPVDtBQUNGO0E0RDNwT0E7RUFDSTtJQUFLO0U1RDhwT1A7RTREN3BPRTtJQUFPO0U1RGdxT1Q7QUFDRjtBNEQ5cE9BO0VBQ0k7SUFBSztFNURpcU9QO0U0RGhxT0U7SUFBTztFNURtcU9UO0FBQ0Y7QTREanFPQTs7RUFBQTtBQUlBO0VBQ0k7SUFBSztFNURtcU9QO0U0RGxxT0U7SUFBTztFNURxcU9UO0FBQ0Y7QTREbnFPQTtFQUNJO0lBQUs7RTVEc3FPUDtFNERycU9FO0lBQU87RTVEd3FPVDtBQUNGO0E0RHRxT0E7RUFDSTtJQUFLO0U1RHlxT1A7RTREeHFPRTtJQUFPO0U1RDJxT1Q7QUFDRjtBNER6cU9BO0VBQ0k7SUFBSztFNUQ0cU9QO0U0RDNxT0U7SUFBTztFNUQ4cU9UO0FBQ0Y7QTRENXFPQTs7RUFBQTtBQUlBO0VBQ0k7SUFBSztFNUQ4cU9QO0U0RDdxT0U7SUFBTztFNURnck9UO0FBQ0Y7QTREOXFPQTtFQUNJO0lBQUs7RTVEaXJPUDtFNERock9FO0lBQU87RTVEbXJPVDtBQUNGO0E0RGpyT0E7RUFDSTtJQUFLO0U1RG9yT1A7RTREbnJPRTtJQUFPO0U1RHNyT1Q7QUFDRjtBNERwck9BO0VBQ0k7SUFBSztFNUR1ck9QO0U0RHRyT0U7SUFBTztFNUR5ck9UO0FBQ0Y7QTREdnJPQTs7RUFBQTtBQUlBO0VBQ0k7SUFBSztFNUR5ck9QO0U0RHhyT0U7SUFBTztFNUQyck9UO0FBQ0Y7QTREenJPQTs7RUFBQTtBQUlBO0VBQ0k7SUFBVztFNUQyck9iO0U0RDFyT0U7SUFBTTtFNUQ2ck9SO0U0RDVyT0U7SUFBTTtFNUQrck9SO0U0RDlyT0U7SUFBTTtFNURpc09SO0U0RGhzT0U7SUFBTTtFNURtc09SO0U0RGxzT0U7SUFBTTtFNURxc09SO0U0RHBzT0U7SUFBTTtFNUR1c09SO0U0RHRzT0U7SUFBTTtFNUR5c09SO0U0RHhzT0U7SUFBTTtFNUQyc09SO0U0RDFzT0U7SUFBTTtFNUQ2c09SO0FBQ0Y7QTREM3NPQTs7RUFBQTtBQUlDO0VBQ0c7SUFBSztFNUQ2c09QO0U0RDVzT0U7SUFBTztFNUQrc09UO0FBQ0Y7QTZENThPQTs7NkVBQUE7QUFLQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtBN0QyOE9KOztBNkR4OE9BO0VBQTBCO0E3RDQ4TzFCOztBNkQzOE9BO0VBQTBCO0E3RCs4TzFCOztBNkQ5OE9BO0VBQTBCO0E3RGs5TzFCOztBNkRqOU9BO0VBQTBCO0E3RHE5TzFCOztBNkRwOU9BO0VBQTBCO0E3RHc5TzFCOztBNkR0OU9BO0VBQTJCO0E3RDA5TzNCOztBNkR4OU9BOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7QTdEMDlPSjs7QTZEdjlPQTtBQUNBO0VBRUk7SUFBNkI7RTdEMDlPL0I7RTZEejlPRTtJQUE2QjtFN0Q0OU8vQjtFNkQzOU9FO0lBQTZCO0U3RDg5Ty9CO0U2RDc5T0U7SUFBNkI7RTdEZytPL0I7RTZELzlPRTtJQUE2QjtFN0RrK08vQjtFNkRqK09FO0lBQTZCO0U3RG8rTy9CO0U2RGwrT0U7SUFBOEI7RTdEcStPaEM7RTZEcCtPRTtJQUNJO0lBQ0E7RTdEcytPTjtFNkRuK09FO0VBQ0E7Ozs7Ozs7SUFNc0Q7RTdEcytPeEQ7QUFDRjtBNkRuK09BO0FBQ0E7RUFFSTtJQUE2QjtFN0RxK08vQjtFNkRwK09FO0lBQTZCO0U3RHUrTy9CO0U2RHQrT0U7SUFBNkI7RTdEeStPL0I7RTZEeCtPRTtJQUE2QjtFN0QyK08vQjtFNkQxK09FO0lBQTZCO0U3RDYrTy9CO0U2RDUrT0U7SUFBNkI7RTdEKytPL0I7RTZENytPRTtJQUE4QjtFN0RnL09oQztFNkQvK09FO0lBQ0k7SUFDQTtFN0RpL09OO0U2RDkrT0U7RUFDQTs7Ozs7OztJQU1zRDtFN0RpL094RDtBQUNGO0E2RDkrT0E7QUFDQTtFQUVJO0lBQTZCO0U3RGcvTy9CO0U2RC8rT0U7SUFBNkI7RTdEay9PL0I7RTZEai9PRTtJQUE2QjtFN0RvL08vQjtFNkRuL09FO0lBQTZCO0U3RHMvTy9CO0U2RHIvT0U7SUFBNkI7RTdEdy9PL0I7RTZEdi9PRTtJQUE2QjtFN0QwL08vQjtFNkR4L09FO0lBQThCO0U3RDIvT2hDO0U2RDEvT0U7SUFDSTtJQUNBO0U3RDQvT047RTZEei9PRTtFQUNBOzs7Ozs7O0lBTXNEO0U3RDQvT3hEO0FBQ0Y7QTZEei9PQTtBQUNBO0VBRUk7SUFBOEI7RTdEMi9PaEM7RTZEMS9PRTtJQUE4QjtFN0Q2L09oQztFNkQ1L09FO0lBQThCO0U3RCsvT2hDO0U2RDkvT0U7SUFBOEI7RTdEaWdQaEM7RTZEaGdQRTtJQUE4QjtFN0RtZ1BoQztFNkRsZ1BFO0lBQThCO0U3RHFnUGhDO0U2RG5nUEU7SUFBK0I7RTdEc2dQakM7RTZEcmdQRTtJQUNJO0lBQ0E7RTdEdWdQTjtFNkRwZ1BFO0VBQ0E7Ozs7Ozs7SUFNdUQ7RTdEdWdQekQ7QUFDRjtBNkRuZ1BBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RG1nUEo7O0E2RGhnUEE7QUFDQTtFQUFnQjtBN0RvZ1BoQjs7QTZEbGdQQTtBQUNBO0VBQWdCO0E3RHNnUGhCOztBNkRyZ1BBO0VBQWdCO0E3RHlnUGhCOztBNkR2Z1BBO0FBQ0E7RUFBZ0I7QTdEMmdQaEI7O0E2RDFnUEE7RUFBZ0I7QTdEOGdQaEI7O0E2RDVnUEE7QUFDQTtFQUFnQjtBN0RnaFBoQjs7QTZEL2dQQTtFQUFnQjtBN0RtaFBoQjs7QTZEbGhQQTtFQUFnQjtBN0RzaFBoQjs7QTZEcmhQQTtFQUFnQjtBN0R5aFBoQjs7QTZEdmhQQTtBQUNBO0VBQWdCO0E3RDJoUGhCOztBNkQxaFBBO0VBQWdCO0E3RDhoUGhCOztBNkQ1aFBBO0FBQ0E7RUFBa0IsWTNEaytCRTtBRjhqTnBCOztBNkQvaFBBO0VBQW1CLFkzRGsrQkU7QUZpa05yQjs7QTZEbGlQQTtFQUFrQixZM0RrK0JFO0FGb2tOcEI7O0E2RHJpUEE7RUFBbUIsWTNEaytCRTtBRnVrTnJCOztBNkR4aVBBO0VBQW9CLFkzRGsrQkU7QUYwa050Qjs7QTZEdmlQQTtBQUNBO0VBQWlCO0E3RDJpUGpCOztBNkR6aVBBO0FBQ0E7RUFDSTtFQUNBO0E3RDRpUEo7O0E2RHppUEE7QUFDQTtFQUVJO0VBQ0E7SUFBbUI7RTdENGlQckI7RTZEMWlQRTtFQUNBO0lBQW1CO0U3RDZpUHJCO0U2RDNpUEU7RUFDQTtJQUFtQjtFN0Q4aVByQjtFNkQ3aVBFO0lBQW1CO0U3RGdqUHJCO0U2RDlpUEU7RUFDQTtJQUFtQjtFN0RpalByQjtFNkRoalBFO0lBQW1CO0U3RG1qUHJCO0U2RGpqUEU7RUFDQTtJQUFtQjtFN0RvalByQjtFNkRualBFO0lBQW1CO0U3RHNqUHJCO0U2RHJqUEU7SUFBbUI7RTdEd2pQckI7RTZEdmpQRTtJQUFtQjtFN0QwalByQjtFNkR4alBFO0VBQ0E7SUFBbUI7RTdEMmpQckI7RTZEMWpQRTtJQUFtQjtFN0Q2alByQjtFNkQzalBFO0VBQ0E7SUFBcUIsWTNEbzdCTDtFRjBvTmxCO0U2RDdqUEU7SUFBc0IsWTNEbzdCTDtFRjRvTm5CO0U2RC9qUEU7SUFBcUIsWTNEbzdCTDtFRjhvTmxCO0U2RGprUEU7SUFBc0IsWTNEbzdCTDtFRmdwTm5CO0U2RG5rUEU7SUFBdUIsWTNEbzdCTDtFRmtwTnBCO0U2RGprUEU7RUFDQTtJQUFvQjtFN0Rva1B0QjtFNkRsa1BFO0VBQ0E7SUFDSTtJQUNBO0U3RG9rUE47RTZEamtQRTtFQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFpQm9CO0U3RG9rUHRCO0FBQ0Y7QTZEamtQQTtBQUNBO0VBRUk7RUFDQTtJQUFtQjtFN0Rta1ByQjtFNkRqa1BFO0VBQ0E7SUFBbUI7RTdEb2tQckI7RTZEbGtQRTtFQUNBO0lBQW1CO0U3RHFrUHJCO0U2RHBrUEU7SUFBbUI7RTdEdWtQckI7RTZEcmtQRTtFQUNBO0lBQW1CO0U3RHdrUHJCO0U2RHZrUEU7SUFBbUI7RTdEMGtQckI7RTZEeGtQRTtFQUNBO0lBQW1CO0U3RDJrUHJCO0U2RDFrUEU7SUFBbUI7RTdENmtQckI7RTZENWtQRTtJQUFtQjtFN0Qra1ByQjtFNkQ5a1BFO0lBQW1CO0U3RGlsUHJCO0U2RC9rUEU7RUFDQTtJQUFtQjtFN0RrbFByQjtFNkRqbFBFO0lBQW1CO0U3RG9sUHJCO0U2RGxsUEU7RUFDQTtJQUFxQixZM0RnM0JMO0VGcXVObEI7RTZEcGxQRTtJQUFzQixZM0RnM0JMO0VGdXVObkI7RTZEdGxQRTtJQUFxQixZM0RnM0JMO0VGeXVObEI7RTZEeGxQRTtJQUFzQixZM0RnM0JMO0VGMnVObkI7RTZEMWxQRTtJQUF1QixZM0RnM0JMO0VGNnVOcEI7RTZEeGxQRztFQUNEO0lBQW9CO0U3RDJsUHRCO0U2RHpsUEU7RUFDQTtJQUNJO0lBQ0E7RTdEMmxQTjtFNkR4bFBFO0VBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWlCb0I7RTdEMmxQdEI7QUFDRjtBNkR4bFBBO0FBQ0E7RUFFSTtFQUNBO0lBQW1CO0U3RDBsUHJCO0U2RHhsUEU7RUFDQTtJQUFtQjtFN0QybFByQjtFNkR6bFBFO0VBQ0E7SUFBbUI7RTdENGxQckI7RTZEM2xQRTtJQUFtQjtFN0Q4bFByQjtFNkQ1bFBFO0VBQ0E7SUFBbUI7RTdEK2xQckI7RTZEOWxQRTtJQUFtQjtFN0RpbVByQjtFNkQvbFBFO0VBQ0E7SUFBbUI7RTdEa21QckI7RTZEam1QRTtJQUFtQjtFN0RvbVByQjtFNkRubVBFO0lBQW1CO0U3RHNtUHJCO0U2RHJtUEU7SUFBbUI7RTdEd21QckI7RTZEdG1QRTtFQUNBO0lBQW1CO0U3RHltUHJCO0U2RHhtUEU7SUFBbUI7RTdEMm1QckI7RTZEem1QRTtFQUNBO0lBQXFCLFkzRDR5Qkw7RUZnME5sQjtFNkQzbVBFO0lBQXNCLFkzRDR5Qkw7RUZrME5uQjtFNkQ3bVBFO0lBQXFCLFkzRDR5Qkw7RUZvME5sQjtFNkQvbVBFO0lBQXNCLFkzRDR5Qkw7RUZzME5uQjtFNkRqblBFO0lBQXVCLFkzRDR5Qkw7RUZ3ME5wQjtFNkQvbVBFO0VBQ0E7SUFBb0I7RTdEa25QdEI7RTZEaG5QRTtFQUNBO0lBQ0k7SUFDQTtFN0RrblBOO0U2RC9tUEU7RUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBaUJvQjtFN0RrblB0QjtBQUNGO0E2RC9tUEE7QUFDQTtFQUVJO0VBQ0E7SUFBb0I7RTdEaW5QdEI7RTZEL21QRTtFQUNBO0lBQW9CO0U3RGtuUHRCO0U2RGhuUEU7RUFDQTtJQUFvQjtFN0RtblB0QjtFNkRsblBFO0lBQW9CO0U3RHFuUHRCO0U2RG5uUEU7RUFDQTtJQUFvQjtFN0RzblB0QjtFNkRyblBFO0lBQW9CO0U3RHduUHRCO0U2RHRuUEU7RUFDQTtJQUFvQjtFN0R5blB0QjtFNkR4blBFO0lBQW9CO0U3RDJuUHRCO0U2RDFuUEU7SUFBb0I7RTdENm5QdEI7RTZENW5QRTtJQUFvQjtFN0QrblB0QjtFNkQ3blBFO0VBQ0E7SUFBb0I7RTdEZ29QdEI7RTZEL25QRTtJQUFvQjtFN0Rrb1B0QjtFNkRob1BFO0VBQ0E7SUFBc0IsWTNEd3VCTjtFRjI1TmxCO0U2RGxvUEU7SUFBdUIsWTNEd3VCTjtFRjY1Tm5CO0U2RHBvUEU7SUFBc0IsWTNEd3VCTjtFRis1TmxCO0U2RHRvUEU7SUFBdUIsWTNEd3VCTjtFRmk2Tm5CO0U2RHhvUEU7SUFBd0IsWTNEd3VCTjtFRm02TnBCO0U2RHRvUEU7RUFDQTtJQUFxQjtFN0R5b1B2QjtFNkR2b1BFO0VBQ0E7SUFDSTtJQUNBO0U3RHlvUE47RTZEdG9QRTtFQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFpQnFCO0U3RHlvUHZCO0FBQ0Y7QTZEdG9QQTs2RUFBQTtBQUdBO0VBQXdCO0VBQUE7QTdEd29QeEI7O0E2RHRvUEE7RUFBd0I7RUFBQTtBN0Qwb1B4Qjs7QThEcm1RQTs7NkVBQUE7QUFJQTtFQUF1QjtBOUR3bVF2Qjs7QThEdG1RQTs7RUFBQTtBQUlBO0VBQWlCO0E5RHltUWpCOztBOER2bVFBOztFQUFBO0FBSUE7RUFBc0I7QTlEMG1RdEI7O0E4RHptUUE7RUFBd0I7QTlENm1ReEI7O0E4RDVtUUE7RUFBd0I7QTlEZ25ReEI7O0E4RC9tUUE7RUFBd0I7QTlEbW5ReEI7O0E4RGpuUUE7OztFQUFBO0FBS0E7RUFBbUIsYTVEeWdCRztBRjJtUHRCOztBOERublFBO0VBQW9CLGE1RHlnQkc7QUY4bVB2Qjs7QThEdG5RQTtFQUFtQixhNUR5Z0JHO0FGaW5QdEI7O0E4RHhuUUE7RUFBdUIsaUI1RHFnQkQ7QUZ1blB0Qjs7QThEM25RQTtFQUF3QixpQjVEcWdCRDtBRjBuUHZCOztBOEQ5blFBO0VBQXVCLGlCNURxZ0JEO0FGNm5QdEI7O0ErRDVwUUE7OzZFQUFBO0FBS0E7NkVBQUE7QUFHQTtFQUNJLGlCN0R5RnFCO0U2RHhGckIsZ0I3RGtpQ29CO0U2RGppQ3BCLFc3RHpCb0I7QUZxclF4Qjs7QStEeHBRQTtFQUNJLG1CN0RrQnFCO0U2RGpCckIsZ0I3RDhoQ29CO0U2RDdoQ3BCLFc3RG1CaUI7QUZ3b1FyQjtBR3ZwTUk7RUFBTSxXRGovRFc7QUYyb1FyQjtBR3hwTUk7RUFDSSxXRHJpRU87RUNzaUVQO0FIMHBNUjs7QStEN3BRQTs2RUFBQTtBQUdBO0VBQ0ksbUI3RE9xQjtFNkROckIsZ0I3RHNoQ3FCO0FGeW9PekI7O0ErRDNwUUE7RUFDSSxpQjdEaUVxQjtFNkRoRXJCLGdCN0RraENxQjtBRjRvT3pCOztBK0QxcFFBO0VBQ0ksZTdEdUJlO0U2RHRCZixnQjdEd0JpQjtBRnFvUXJCOztBK0R6cFFBOzZFQUFBO0FBR0E7RUFBaUI7QS9ENHBRakI7O0ErRDNwUUE7RUFBa0I7QS9EK3BRbEI7O0ErRDlwUUE7RUFBZ0I7QS9Ea3FRaEI7O0ErRGhxUUE7RUFBbUI7QS9Eb3FRbkI7O0ErRG5xUUE7RUFBa0I7QS9EdXFRbEI7O0ErRHBxUUE7NkVBQUE7QUFHQTtFQUFrQjtBL0R1cVFsQjs7QStEcHFRQTs2RUFBQTtBQUdBO0VBQXNCO0EvRHVxUXRCOztBK0R0cVFBO0VBQXFCO0EvRDBxUXJCOztBK0R6cVFBO0VBQXFCO0EvRDZxUXJCOztBK0QxcVFBOzZFQUFBO0FBR0E7RUFBMkI7QS9ENnFRM0I7O0ErRDFxUUE7NkVBQUE7QUFHQTtFQUFpQjtBL0Q2cVFqQjs7QStENXFRQTtFQUFvQjtBL0RnclFwQjs7QStEL3FRQTtFQUFtQjtBL0RtclFuQjs7QStEbHJRQTtFQUFxQjtBL0RzclFyQjs7QStEcnJRQTtFQUFtQjtBL0R5clFuQjs7QStEeHJRQTtFQUFtQjtBL0Q0clFuQjs7QStEM3JRQTtFQUFrQjtBL0QrclFsQjs7QStENXJRQTs2RUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCN0RyR3dCO0VDNGhFRyxrRUQ3d0JXO0FGb2hPMUM7O0ErRHpyUUE7NkVBQUE7QUFHQTtFQUFnQjtBL0Q0clFoQjs7QStEM3JRQTtFQUFpQjtBL0QrclFqQjs7QStEOXJRQTtFQUFrQjtBL0Rrc1FsQjs7QStEanNRQTtFQUFtQjtBL0Rxc1FuQjs7QStEbnNRQTtBQUNBO0VBRUk7SUFBbUI7RS9Ec3NRckI7RStEcnNRRTtJQUFvQjtFL0R3c1F0QjtFK0R2c1FFO0lBQXFCO0UvRDBzUXZCO0FBQ0Y7QStEdnNRQTtBQUNBO0VBRUk7SUFBbUI7RS9EeXNRckI7RStEeHNRRTtJQUFvQjtFL0Qyc1F0QjtFK0Qxc1FFO0lBQXFCO0UvRDZzUXZCO0FBQ0Y7QStEMXNRQTtBQUNBO0VBRUk7SUFBbUI7RS9ENHNRckI7RStEM3NRRTtJQUFvQjtFL0Q4c1F0QjtFK0Q3c1FFO0lBQXFCO0UvRGd0UXZCO0FBQ0Y7QStEN3NRQTtBQUNBO0VBRUk7SUFBb0I7RS9EK3NRdEI7RStEOXNRRTtJQUFxQjtFL0RpdFF2QjtFK0RodFFFO0lBQXNCO0UvRG10UXhCO0FBQ0Y7QStEaHRRQTs7RUFBQTtBQUlBO0VBQWU7QS9Ea3RRZjs7QStEanRRQTtFQUFrQjtBL0RxdFFsQjs7QStEcHRRQTtFQUFrQjtBL0R3dFFsQjs7QStEdnRRQTtFQUFvQjtBL0QydFFwQjs7QStEeHRRQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFBa0I7QS9EMHRRbEI7O0ErRHh0UUE7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRDB0UUo7O0ErRHZ0UUE7QUFDQTs7RUFDc0I7QS9EMnRRdEI7O0ErRHp0UUE7Ozs7RUFBQTtBQU1DO0VBQWlCO0EvRDR0UWxCOztBK0QxdFFDO0FBQ0E7O0VBQ21CO0EvRDh0UXBCOztBK0QzdFFBOzZFQUFBO0FBR0E7RUFDSSwwQzdENDJCc0I7RTZEMzJCdEI7QS9ENnRRSjs7QWdFaDdRQTs7NkVBQUE7QUFJQTtFQUF3QixxQjlEYVI7TzhEYlEsZ0I5RGFSO0FGczZRaEI7O0FnRWo3UUE7QUFDQTtFQUVJO0lBQXdCLHFCOURXTDtTOERYSyxnQjlEV0w7RUZ5NlFyQjtBQUNGO0FnRWo3UUE7O0VBQUE7QUFJQTtFQUE0QjtBaEVtN1E1Qjs7QWdFaDdRQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDSTtPQUFBO0VBQ0E7RUFDQTtPQUFBO0FoRWk3UUo7O0FnRTk2UUE7QUFDQTtFQUVJO0lBQ0k7U0FBQTtFaEVnN1FOO0FBQ0Y7QWdFMzZRQTs2RUFBQTtBQUdBO0VBQWlCO09BQUE7QWhFNjZRakI7O0FnRTU2UUE7RUFBaUI7T0FBQTtBaEVnN1FqQjs7QWdFLzZRQTtFQUFpQjtPQUFBO0FoRW03UWpCOztBZ0VsN1FBO0VBQWlCO09BQUE7QWhFczdRakI7O0FnRXI3UUE7RUFBaUI7T0FBQTtBaEV5N1FqQjs7QWdFdjdRQTtBQUNBO0VBRUk7SUFBb0I7U0FBQTtFaEUwN1F0QjtFZ0V6N1FFO0lBQW9CO1NBQUE7RWhFNDdRdEI7RWdFMzdRRTtJQUFvQjtTQUFBO0VoRTg3UXRCO0VnRTc3UUU7SUFBb0I7U0FBQTtFaEVnOFF0QjtFZ0UvN1FFO0lBQW9CO1NBQUE7RWhFazhRdEI7QUFDRjtBZ0UvN1FBO0FBQ0E7RUFFSTtJQUFvQjtTQUFBO0VoRWk4UXRCO0VnRWg4UUU7SUFBb0I7U0FBQTtFaEVtOFF0QjtFZ0VsOFFFO0lBQW9CO1NBQUE7RWhFcThRdEI7RWdFcDhRRTtJQUFvQjtTQUFBO0VoRXU4UXRCO0VnRXQ4UUU7SUFBb0I7U0FBQTtFaEV5OFF0QjtBQUNGO0FnRXQ4UUE7QUFDQTtFQUVJO0lBQW9CO1NBQUE7RWhFdzhRdEI7RWdFdjhRRTtJQUFvQjtTQUFBO0VoRTA4UXRCO0VnRXo4UUU7SUFBb0I7U0FBQTtFaEU0OFF0QjtFZ0UzOFFFO0lBQW9CO1NBQUE7RWhFODhRdEI7RWdFNzhRRTtJQUFvQjtTQUFBO0VoRWc5UXRCO0FBQ0Y7QWdFNzhRQTtBQUNBO0VBRUk7SUFBcUI7U0FBQTtFaEUrOFF2QjtFZ0U5OFFFO0lBQXFCO1NBQUE7RWhFaTlRdkI7RWdFaDlRRTtJQUFxQjtTQUFBO0VoRW05UXZCO0VnRWw5UUU7SUFBcUI7U0FBQTtFaEVxOVF2QjtFZ0VwOVFFO0lBQXFCO1NBQUE7RWhFdTlRdkI7QUFDRjtBZ0VwOVFBOzs2RUFBQTtBQUlBO0VBQWtCO09BQUE7QWhFczlRbEI7O0FpRWxrUkE7OzZFQUFBO0FBSUE7Ozs7Ozs7RUFBQTtBQVNBO0FBQ0E7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRW1rUko7O0FpRWhrUkE7O0VBQ3dCO0FqRW9rUnhCOztBaUVsa1JBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0tBQUE7QWpFcWtSSjs7QWlFamtSQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWpFa2tSSjs7QWtFdm5SQTs7NkVBQUE7QUFLQTs2RUFBQTtBQUdBO0VBQXlCLHNCaEV1Q0w7QUZpbFJwQjs7QWtFdm5SQTtFQUF1Qix5QmhFSkc7QUYrblIxQjs7QWtFMW5SQTtFQUF5QjtBbEU4blJ6Qjs7QWtFN25SQTtFQUEyQixzQmhFd0NHO0FGeWxSOUI7O0FrRTluUkE7NkVBQUE7QUFHQTs7OztFQUlJO0VBQ0E7QWxFZ29SSjs7QWtFN25SQTtFQUF1QjtBbEVpb1J2Qjs7QWtFaG9SQTtFQUF5QjtBbEVvb1J6Qjs7QWtFbm9SQTtFQUEyQjtBbEV1b1IzQjs7QWtFdG9SQTtFQUE0QjtBbEUwb1I1Qjs7QWtFdm9SQTs2RUFBQTtBQUdBO0VBQTBCO0FsRTBvUjFCOztBa0V6b1JBO0VBQTRCO0FsRTZvUjVCOztBa0U1b1JBO0VBQTJCO0FsRWdwUjNCOztBa0Uvb1JBO0VBQTZCO0FsRW1wUjdCOztBa0VscFJBO0VBQStCO0FsRXNwUi9COztBa0VycFJBO0VBQThCO0FsRXlwUjlCOztBa0V4cFJBO0VBQTZCO0FsRTRwUjdCOztBa0UzcFJBO0VBQStCO0FsRStwUi9COztBa0U5cFJBO0VBQThCO0FsRWtxUjlCOztBa0UvcFJBOzZFQUFBO0FBR0E7RUFBMEI7QWxFa3FSMUI7O0FrRS9wUkE7NkVBQUE7QUFHQTtFQUF1QjtBbEVrcVJ2Qjs7QWtFaHFSQTs7RUFBQTtBQUlBO0VBQ0k7SUFBdUI7RWxFbXFSekI7QUFDRjtBa0VocVJBOzZFQUFBO0FBR0E7QUFDQTtFQUVJO0lBQTBCO0VsRWlxUjVCO0FBQ0Y7QWtFOXBSQTtBQUNBO0VBRUk7SUFBMEI7RWxFZ3FSNUI7QUFDRjtBa0U3cFJBO0FBQ0E7RUFFSTtJQUEwQjtFbEUrcFI1QjtBQUNGO0FrRTVwUkE7QUFDQTtFQUVJO0lBQTBCO0VsRThwUjVCO0FBQ0Y7QWtFMXBSQTs2RUFBQTtBQUdBO0VBQWdDO0FsRTRwUmhDOztBa0UzcFJBO0VBQThCO0FsRStwUjlCOztBa0U5cFJBO0VBQStCO0FsRWtxUi9COztBa0VqcVJBO0VBQThCO0FsRXFxUjlCOztBa0VwcVJBO0VBQStCO0FsRXdxUi9COztBa0V2cVJBO0VBQW1DO0FsRTJxUm5DOztBa0UxcVJBO0VBQWtDO0FsRThxUmxDOztBa0U3cVJBO0VBQWtDO0FsRWlyUmxDOztBa0VoclJBO0VBQWtDO0FsRW9yUmxDOztBa0VuclJBO0VBQWtDO0FsRXVyUmxDOztBa0V0clJBO0VBQWlDO0FsRTByUmpDOztBa0V6clJBO0VBQTJCO0FsRTZyUjNCOztBa0U1clJBO0VBQWtDO0FsRWdzUmxDOztBa0UvclJBO0VBQTZCO0FsRW1zUjdCOztBa0Vsc1JBO0VBQWtDO0FsRXNzUmxDOztBbUVyelJBOzs2RUFBQTtBQUlBOztFQUFBO0FBSUE7RUFDSTtFQUNBLG1CakVTWTtBRjZ5UmhCOztBbUVuelJBO0VBQTBCLGdCakVNVjtBRml6UmhCOztBbUVyelJBOztFQUFBO0FBSUE7RUFDSTtFQUNBO0FuRXV6Uko7O0FtRXB6UkE7O0VBQUE7QUFJQTtFQUNJO0VBQ0Esa0JqRVhZO0VpRVlaO0FuRXN6Uko7O0FtRW56UkE7RUFDSTtFQUNBLGlCakVqQlk7RWlFa0JaO0FuRXN6Uko7O0FtRW56UkE7QUFDQTtFQUVJO0lBQ0k7SUFDQSxrQmpFMUJRO0lpRTJCUjtFbkVxelJOO0VtRWx6UkU7SUFDSTtJQUNBLGlCakVoQ1E7SWlFaUNSO0VuRW96Uk47QUFDRjtBbUVoelJBO0FBQ0E7RUFFSTtJQUNJO0lBQ0Esa0JqRTNDUTtJaUU0Q1I7RW5FaXpSTjtFbUU5eVJFO0lBQ0k7SUFDQSxpQmpFakRRO0lpRWtEUjtFbkVnelJOO0FBQ0Y7QW1FNXlSQTtBQUNBO0VBRUk7SUFDSTtJQUNBO0VuRTZ5Uk47RW1FMXlSRTtJQUNJO0lBQ0E7RW5FNHlSTjtFbUV6eVJFOzs7O0lBR29CLGtCakVwRUQ7RUZnM1JyQjtFbUUxeVJFOzs7O0lBR3FCLGlCakV6RUY7RUZzM1JyQjtBQUNGO0FtRTF5UkE7QUFDQTtFQUVJO0lBQ0k7SUFDQSxrQmpFbEZlO0lpRW1GZjtFbkUyeVJOO0VtRXh5UkU7SUFDSTtJQUNBLGlCakV4RmU7SWlFeUZmO0VuRTB5Uk47QUFDRjtBb0VsNlJBOzs2RUFBQTtBQUlBOzs7RUFBQTtBQUtBO0FBQ0E7O0VBRTBEO0FwRWs2UjFEOztBb0VqNlJBO0VBQTREO0FwRXE2UjVEOztBb0VuNlJBOztFQUFBO0FBSUE7RUFBVTtBcEVzNlJWOztBcUV4NVJBOzs2RUFBQTtBQUtBOzZFQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7QXJFdzVSSjs7QXFFcjVSQTs7RUFBQTtBQUlBO0VBQTBCO0FyRXc1UjFCOztBcUVyNVJBOztFQUFBO0FBSUE7RUFDSSxhbkU4akNzQjtFbUU3akN0QixhbkU4akN1QjtFbUU3akN2QjtFQUNBO0VBQ0E7QXJFdTVSSjs7QXFFbDVSQTs2RUFBQTtBQUdBOzs7O0VBQUE7QUFNQTtBQUNBO0VBQ0k7RUFDQTtBckVtNVJKOztBcUVoNVJBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7QXJFbTVSSjs7QXFFLzRSQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7RUFBaUI7QXJFaTVSakI7O0FxRWg1UkE7RUFBa0I7QXJFbzVSbEI7O0FxRWw1UkE7QUFDQTtFQUF1QjtBckVzNVJ2Qjs7QXFFbjVSQTs2RUFBQTtBQUdBO0VBQXNCO0FyRXM1UnRCOztBcUVwNVJBOztFQUFBO0FBSUE7RUFBb0I7QXJFdTVScEI7O0FxRXI1UkE7RUFBa0M7QXJFeTVSbEM7O0FxRXQ1UkE7NkVBQUE7QUFHQTtFQUF5QjtBckV5NVJ6Qjs7QXFFeDVSQTtFQUF3QjtBckU0NVJ4Qjs7QXFFejVSQTs2RUFBQTtBQUdBO0VBQWE7QXJFNDVSYjs7QXFFMzVSQTtFQUF3QjtBckUrNVJ4Qjs7QXFFOTVSQTtFQUFzQjtBckVrNlJ0Qjs7QXFFLzVSQTs2RUFBQTtBQUdBO0VBQW9CO0FyRWs2UnBCOztBcUVqNlJBO0VBQXFCO0FyRXE2UnJCOztBcUVwNlJBO0VBQTJCO0FyRXc2UjNCOztBcUVyNlJBOzZFQUFBO0FBR0E7Ozs7Ozs7O0VBQUE7QUFVQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRXM2Uko7O0FxRW42UkE7RUFDSTtFQUNBO0FyRXM2Uko7O0FxRWw2UkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTs7Ozs7RUFJMkI7QXJFbzZSM0I7O0FxRWw2UkE7OztFQUFBO0FBS0E7O0VBQ3dCO0FyRXE2UnhCOztBcUVuNlJBOzs7RUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXJFcTZSSjs7QXFFbDZSQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJFbzZSSjs7QXFFajZSQTs7RUFBQTtBQUlBOztFQUN1QjtBckVvNlJ2Qjs7QXFFajZSQTs2RUFBQTtBQUdBO0VBQW1CO0tBQUE7QXJFbzZSbkI7O0FxRW42UkE7RUFBcUI7S0FBQTtBckV1NlJyQjs7QXFFdDZSQTtFQUFrQjtLQUFBO0FyRTA2UmxCOztBcUV6NlJBO0VBQWtCO0tBQUE7QXJFNjZSbEI7O0FxRTU2UkE7RUFBd0I7S0FBQTtBckVnN1J4Qjs7QXFFOTZSQTs7RUFBQTtBQUlBO0VBQXNCO0tBQUE7QXJFaTdSdEI7O0FxRWg3UkE7RUFBd0I7S0FBQTtBckVvN1J4Qjs7QXFFbjdSQTtFQUF1QjtLQUFBO0FyRXU3UnZCOztBcUV0N1JBO0VBQXlCO0tBQUE7QXJFMDdSekI7O0FxRXo3UkE7RUFBMkI7S0FBQTtBckU2N1IzQjs7QXFFNTdSQTtFQUEwQjtLQUFBO0FyRWc4UjFCOztBcUUvN1JBO0VBQXlCO0tBQUE7QXJFbThSekI7O0FxRWw4UkE7RUFBMkI7S0FBQTtBckVzOFIzQjs7QXFFcjhSQTtFQUEwQjtLQUFBO0FyRXk4UjFCOztBcUV0OFJBOzZFQUFBO0FBR0E7RUFBb0I7QXJFeThScEI7O0FxRXg4UkE7RUFBa0I7QXJFNDhSbEI7O0FxRTM4UkE7RUFBcUIsa0JuRXkzQlU7QUZzbFEvQjs7QXFFNzhSQTs7RUFBQTtBQUlBO0VBQXVDO0FyRWc5UnZDOztBcUU3OFJBOzZFQUFBO0FBR0E7RUFBdUIseUNuRXU0Qkc7QUZ5a1ExQjs7QXFFLzhSQTtFQUF3QiwwQ25FdTRCRztBRjRrUTNCOztBcUVsOVJBO0VBQXVCLDJDbkV1NEJHO0FGK2tRMUI7O0FxRXI5UkE7RUFBd0IsMkNuRXU0Qkc7QUZrbFEzQjs7QXFFdjlSQTs7RUFBQTtBQUlBO0VBQWlDO0FyRTA5UmpDOztBcUV4OVJBO0VBQW1DLHlDbkU0M0JUO0FGZ21RMUI7O0FxRTM5UkE7RUFBb0MsMENuRTQzQlQ7QUZtbVEzQjs7QXFFOTlSQTtFQUFtQywyQ25FNDNCVDtBRnNtUTFCOztBcUVqK1JBO0VBQW9DLDJDbkU0M0JUO0FGeW1RM0I7O0FxRWwrUkE7NkVBQUE7QUFHQTs7OztFQUFBO0FBTUE7RUFFSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJFaytSTjtFcUUvOVJFO0lBQ0k7SUFDQTtJQUNBO0lBQ0EsYW5FdzBCbUI7SW1FdjBCbkI7SUFDQTtJQUNBO0lBQ0E7SUFDQSxZbkVrMEJtQjtJbUVqMEJuQixtQm5FbTBCMEI7SW1FbDBCMUIsZ0JuRW0wQnVCO0ltRWwwQnZCO0lBQ0E7SUFDQTtFckVpK1JOO0FBQ0Y7QXFFMzlSQTs2RUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7O0VBR0k7RUFDQSxrQm5FNnlCbUI7RW1FNXlCbkI7RUFDQSxnQm5FNHlCZ0I7RW1FM3lCaEIsY25FNHlCa0I7RUNpaENsQjtBSDhwT0o7O0FxRXY5UkE7QUFDQTtFQUVFOztJQUM4QztFckUwOVI5QztBQUNGO0FxRXQ5UkE7NkVBQUE7QUFHQTs7OztFQUFBO0FBTUE7RUFDSTtFQUNBLGlCbkVyUXFCO0VtRXNRckIsa01uRTdTaUI7RW1FOFNqQixXbkV2WG9CO0VtRXdYcEI7RUFDQTtBckVzOVJKOztBcUVsOVJBO0FBQ0E7RUFDSTtFQUNBO0FyRXE5Uko7O0FxRWw5UkE7QUFDQTtFQUNJLFduRXJZb0I7RW1Fc1lwQjtFQUNBO0FyRXE5Uko7O0FxRWo5UkE7RUFBbUM7QXJFcTlSbkM7O0FxRW45UkE7RUFBbUI7QXJFdTlSbkI7O0FxRXA5UkE7NkVBQUE7QUFHQTtFQUFlO0FyRXU5UmY7O0FxRXA5UkE7NkVBQUE7QUFHQTs7O0VBQUE7QUFLQTs7RUFFYTtBckVxOVJiOztBcUVuOVJBO0FBQ0E7RUFBa0I7QXJFdTlSbEI7O0FxRXA5UkE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQWUsNkNuRWl1Qk87QUZxdlF0Qjs7QXFFbjlSQTs2RUFBQTtBQUdBO0VBQXFCO0FyRXM5UnJCOztBcUVyOVJBO0VBQW1CO0FyRXk5Um5COztBcUV4OVJBO0VBQW9CO0FyRTQ5UnBCOztBcUUzOVJBO0VBQW1CO0FyRSs5Um5COztBcUU5OVJBO0VBQW9CO0FyRWsrUnBCOztBcUVqK1JBO0VBQXdCO0FyRXErUnhCOztBcUVwK1JBO0VBQXVCO0FyRXcrUnZCOztBcUV2K1JBO0VBQXVCO0FyRTIrUnZCOztBcUUxK1JBO0VBQXVCO0FyRTgrUnZCOztBcUU3K1JBO0VBQXVCO0FyRWkvUnZCOztBcUVoL1JBO0VBQXNCO0FyRW8vUnRCOztBcUVuL1JBO0VBQWdCO0FyRXUvUmhCOztBcUV0L1JBO0VBQXVCO0FyRTAvUnZCOztBcUV6L1JBO0VBQWtCO0FyRTYvUmxCOztBcUU1L1JBO0VBQXVCO0FyRWdnU3ZCOztBcUU3L1JBOzRFQUFBO0FBR0E7RUFBdUI7QXJFZ2dTdkI7O0FxRTcvUkE7NEVBQUE7QUFHQTtFQUFnQztBckVnZ1NoQzs7QXFFLy9SQTtFQUFrQztBckVtZ1NsQzs7QXFFbGdTQTtFQUFpQztBckVzZ1NqQzs7QXFFcmdTQTtFQUFtQztBckV5Z1NuQzs7QXFFeGdTQTtFQUFvQztBckU0Z1NwQzs7QXFFM2dTQTtFQUFtQztBckUrZ1NuQzs7QXFFOWdTQTtFQUFxQztBckVraFNyQzs7QXFFamhTQTtFQUFvQztBckVxaFNwQzs7QXNFdCtTQTs7NkVBQUE7QUFJQTtFQUFXO0F0RXkrU1g7O0FzRXgrU0E7RUFBa0I7QXRFNCtTbEI7O0FzRXorU0E7NkVBQUE7QUFHQTs7O0VBQUE7QUFNQTtFQUFnQjtBdEUwK1NoQjs7QXNFeitTQTtFQUFrQjtBdEU2K1NsQjs7QXNFNStTQTtFQUFpQjtBdEVnL1NqQjs7QXNFLytTQTtFQUFtQjtBdEVtL1NuQjs7QXNFbC9TQTtFQUFrQjtBdEVzL1NsQjs7QXNFcC9TQTtBQUNBO0VBRUk7SUFBbUI7RXRFdS9TckI7RXNFdC9TRTtJQUFxQjtFdEV5L1N2QjtFc0V4L1NFO0lBQW9CO0V0RTIvU3RCO0VzRTEvU0U7SUFBc0I7RXRFNi9TeEI7RXNFNS9TRTtJQUFxQjtFdEUrL1N2QjtBQUNGO0FzRTUvU0E7QUFDQTtFQUVJO0lBQW1CO0V0RTgvU3JCO0VzRTcvU0U7SUFBcUI7RXRFZ2dUdkI7RXNFLy9TRTtJQUFvQjtFdEVrZ1R0QjtFc0VqZ1RFO0lBQXNCO0V0RW9nVHhCO0VzRW5nVEU7SUFBcUI7RXRFc2dUdkI7QUFDRjtBc0VuZ1RBO0FBQ0E7RUFFSTtJQUFtQjtFdEVxZ1RyQjtFc0VwZ1RFO0lBQXFCO0V0RXVnVHZCO0VzRXRnVEU7SUFBb0I7RXRFeWdUdEI7RXNFeGdURTtJQUFzQjtFdEUyZ1R4QjtFc0UxZ1RFO0lBQXFCO0V0RTZnVHZCO0FBQ0Y7QXNFMWdUQTtBQUNBO0VBRUk7SUFBb0I7RXRFNGdUdEI7RXNFM2dURTtJQUFzQjtFdEU4Z1R4QjtFc0U3Z1RFO0lBQXFCO0V0RWdoVHZCO0VzRS9nVEU7SUFBdUI7RXRFa2hUekI7RXNFamhURTtJQUFzQjtFdEVvaFR4QjtBQUNGO0FzRWpoVEE7OztFQUFBO0FBTUE7RUFBbUI7QXRFa2hUbkI7O0FzRWpoVEE7RUFBZTtBdEVxaFRmOztBc0VwaFRBO0VBQWtCO0F0RXdoVGxCOztBc0V2aFRBO0VBQWtCO0F0RTJoVGxCOztBc0V6aFRBO0FBQ0E7RUFFSTtJQUFzQjtFdEU0aFR4QjtFc0UzaFRFO0lBQWtCO0V0RThoVHBCO0VzRTdoVEU7SUFBcUI7RXRFZ2lUdkI7RXNFL2hURTtJQUFxQjtFdEVraVR2QjtBQUNGO0FzRS9oVEE7QUFDQTtFQUVJO0lBQXNCO0V0RWlpVHhCO0VzRWhpVEU7SUFBa0I7RXRFbWlUcEI7RXNFbGlURTtJQUFxQjtFdEVxaVR2QjtFc0VwaVRFO0lBQXFCO0V0RXVpVHZCO0FBQ0Y7QXNFcGlUQTtBQUNBO0VBRUk7SUFBc0I7RXRFc2lUeEI7RXNFcmlURTtJQUFrQjtFdEV3aVRwQjtFc0V2aVRFO0lBQXFCO0V0RTBpVHZCO0VzRXppVEU7SUFBcUI7RXRFNGlUdkI7QUFDRjtBc0V6aVRBO0FBQ0E7RUFFSTtJQUF1QjtFdEUyaVR6QjtFc0UxaVRFO0lBQW1CO0V0RTZpVHJCO0VzRTVpVEU7SUFBc0I7RXRFK2lUeEI7RXNFOWlURTtJQUFzQjtFdEVpalR4QjtBQUNGO0FzRTdpVEE7NkVBQUE7QUFJQTtFQUFlO0F0RThpVGY7O0FzRTdpVEE7RUFBdUI7QXRFaWpUdkI7O0FzRWhqVEE7RUFBa0I7QXRFb2pUbEI7O0FzRW5qVEE7RUFBMEI7QXRFdWpUMUI7O0FzRXJqVEE7QUFDQTtFQUVJO0lBQWtCO0V0RXdqVHBCO0VzRXZqVEU7SUFBcUI7RXRFMGpUdkI7QUFDRjtBc0V2alRBO0FBQ0E7RUFFSTtJQUFrQjtFdEV5alRwQjtFc0V4alRFO0lBQXFCO0V0RTJqVHZCO0FBQ0Y7QXNFeGpUQTtBQUNBO0VBRUk7SUFBa0I7RXRFMGpUcEI7RXNFempURTtJQUFxQjtFdEU0alR2QjtBQUNGO0FzRXpqVEE7QUFDQTtFQUVJO0lBQW1CO0V0RTJqVHJCO0VzRTFqVEU7SUFBc0I7RXRFNmpUeEI7QUFDRjtBc0V6alRBOzZFQUFBO0FBSUE7RUFBa0I7QXRFMGpUbEI7O0FzRXpqVEE7RUFBZ0I7QXRFNmpUaEI7O0FzRTVqVEE7RUFBd0I7QXRFZ2tUeEI7O0FzRTlqVEE7OztFQUFBO0FBTUE7RUFBd0I7QXRFZ2tUeEI7O0FzRS9qVEE7RUFBb0I7QXRFbWtUcEI7O0FzRWxrVEE7RUFBdUI7QXRFc2tUdkI7O0FzRXJrVEE7RUFBdUI7QXRFeWtUdkI7O0FzRXhrVEE7RUFBd0I7QXRFNGtUeEI7O0FzRTNrVEE7RUFBdUI7QXRFK2tUdkI7O0FzRTVrVEE7NkVBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQWlCO0F0RThrVGpCOztBc0U3a1RBO0VBQWdCO0F0RWlsVGhCOztBc0Uva1RBO0FBQ0E7RUFFSTtJQUFvQjtFdEVrbFR0QjtFc0VqbFRFO0lBQW1CO0V0RW9sVHJCO0FBQ0Y7QXNFamxUQTtBQUNBO0VBRUk7SUFBb0I7RXRFbWxUdEI7RXNFbGxURTtJQUFtQjtFdEVxbFRyQjtBQUNGO0FzRWxsVEE7QUFDQTtFQUVJO0lBQW9CO0V0RW9sVHRCO0VzRW5sVEU7SUFBbUI7RXRFc2xUckI7QUFDRjtBc0VubFRBO0FBQ0E7RUFFSTtJQUFxQjtFdEVxbFR2QjtFc0VwbFRFO0lBQW9CO0V0RXVsVHRCO0FBQ0Y7QXNFbmxUQTs2RUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQW1CO0F0RW9sVG5COztBc0VsbFRBOzs7RUFBQTtBQUtBO0VBQWdCO0F0RXFsVGhCOztBc0VubFRBOzs7RUFBQTtBQUtBO0VBQWdCO0F0RXNsVGhCOztBc0VwbFRBOzs7RUFBQTtBQUtBO0VBQWE7QXRFdWxUYjs7QXNFcmxUQTtBQUNBO0VBRUk7SUFBc0I7RXRFd2xUeEI7RXNFdmxURTtJQUFtQjtFdEUwbFRyQjtFc0V6bFRFO0lBQWdCO0V0RTRsVGxCO0FBQ0Y7QXNFemxUQTtBQUNBO0VBRUk7SUFBc0I7RXRFMmxUeEI7RXNFMWxURTtJQUFtQjtFdEU2bFRyQjtFc0U1bFRFO0lBQWdCO0V0RStsVGxCO0FBQ0Y7QXNFNWxUQTtBQUNBO0VBRUk7SUFBc0I7RXRFOGxUeEI7RXNFN2xURTtJQUFtQjtFdEVnbVRyQjtFc0UvbFRFO0lBQWdCO0V0RWttVGxCO0FBQ0Y7QXNFL2xUQTtBQUNBO0VBRUk7SUFBdUI7RXRFaW1UekI7RXNFaG1URTtJQUFvQjtFdEVtbVR0QjtFc0VsbVRFO0lBQWlCO0V0RXFtVG5CO0FBQ0Y7QXVFdjNUQTs7NkVBQUE7QUFJQTs7RUFBQTtBQUlBO0VBQWEsbUJyRWhDRztBRnc1VGhCOztBdUV2M1RBO0VBQWlCO0F2RTIzVGpCOztBdUV6M1RBO0VBQWlCO0F2RTYzVGpCOztBdUU1M1RBO0VBQW9CO0F2RWc0VHBCOztBdUUvM1RBO0VBQWtCO0F2RW00VGxCOztBdUVsNFRBO0VBQW1CO0F2RXM0VG5COztBdUVuNFRBOzZFQUFBO0FBR0E7RUFBb0Isa0JyRW9tQkc7QUZreVN2Qjs7QXVFcjRUQTtFQUF3QjtBdkV5NFR4Qjs7QXVFdjRUQTtFQUF3QjtBdkUyNFR4Qjs7QXVFMTRUQTtFQUEyQjtBdkU4NFQzQjs7QXVFNzRUQTtFQUF5QjtBdkVpNVR6Qjs7QXVFaDVUQTtFQUEwQjtBdkVvNVQxQjs7QXVFajVUQTs2RUFBQTtBQUdBO0VBQW1CLG1CckVnRkc7QUZvMFR0Qjs7QXVFbjVUQTtFQUF1QjtBdkV1NVR2Qjs7QXVFcjVUQTtFQUF1QjtBdkV5NVR2Qjs7QXVFeDVUQTtFQUEwQjtBdkU0NVQxQjs7QXVFMzVUQTtFQUF3QjtBdkUrNVR4Qjs7QXVFOTVUQTtFQUF5QjtBdkVrNlR6Qjs7QXVFLzVUQTs2RUFBQTtBQUdBO0VBQW9CLG1CckV3Q0c7QUYwM1R2Qjs7QXVFajZUQTtFQUF3QjtBdkVxNlR4Qjs7QXVFbjZUQTtFQUF3QjtBdkV1NlR4Qjs7QXVFdDZUQTtFQUEyQjtBdkUwNlQzQjs7QXVFejZUQTtFQUF5QjtBdkU2NlR6Qjs7QXVFNTZUQTtFQUEwQjtBdkVnN1QxQjs7QXVFNzZUQTs2RUFBQTtBQUdBO0VBQW1CLG1CckU0Qkk7QUZvNVR2Qjs7QXVFLzZUQTtFQUF1QjtBdkVtN1R2Qjs7QXVFajdUQTtFQUF1QjtBdkVxN1R2Qjs7QXVFcDdUQTtFQUEwQjtBdkV3N1QxQjs7QXVFdjdUQTtFQUF3QjtBdkUyN1R4Qjs7QXVFMTdUQTtFQUF5QjtBdkU4N1R6Qjs7QXVFNTdUQTtBQUNBO0VBRUk7SUFBbUIsbUJyRTVDRDtFRjIrVHBCO0V1RTk3VEU7SUFBdUI7RXZFaThUekI7RXVFLzdURTtJQUF1QjtFdkVrOFR6QjtFdUVqOFRFO0lBQTBCO0V2RW84VDVCO0V1RW44VEU7SUFBd0I7RXZFczhUMUI7RXVFcjhURTtJQUF5QjtFdkV3OFQzQjtBQUNGO0F1RXA4VEE7NkVBQUE7QUFHQTtFQUFvQixtQnJFMURFO0FGZ2dVdEI7O0F1RXI4VEE7RUFBd0I7QXZFeThUeEI7O0F1RXY4VEE7RUFBd0I7QXZFMjhUeEI7O0F1RTE4VEE7RUFBMkI7QXZFODhUM0I7O0F1RTc4VEE7RUFBeUI7QXZFaTlUekI7O0F1RWg5VEE7RUFBMEI7QXZFbzlUMUI7O0F1RWw5VEE7QUFDQTtFQUVJO0lBQW9CLG9CckVraUJEO0VGbTdTckI7RXVFcDlURTtJQUF3QjtFdkV1OVQxQjtFdUVyOVRFO0lBQXdCO0V2RXc5VDFCO0V1RXY5VEU7SUFBMkI7RXZFMDlUN0I7RXVFejlURTtJQUF5QjtFdkU0OVQzQjtFdUUzOVRFO0lBQTBCO0V2RTg5VDVCO0FBQ0Y7QXVFMTlUQTs2RUFBQTtBQUdBO0VBQ0k7RUFDQTtBdkUyOVRKOztBdUV4OVRBO0VBQXNCO0F2RTQ5VHRCOztBdUUzOVRBO0VBQXlCO0F2RSs5VHpCOztBdUU5OVRBO0VBQXVCO0F2RWsrVHZCOztBdUVqK1RBO0VBQXdCO0F2RXErVHhCOztBdUVuK1RBO0VBQ0k7RUFDQTtBdkVzK1RKOztBdUVuK1RBO0FBQ0E7RUFFSTtJQUNJO0lBQ0E7RXZFcStUTjtFdUVsK1RFO0lBQTBCO0V2RXErVDVCO0V1RXArVEU7SUFBMkI7RXZFdStUN0I7QUFDRjtBdUVwK1RBO0FBQ0E7RUFFSTtJQUNJO0lBQ0E7RXZFcStUTjtFdUVsK1RFO0lBQTBCO0V2RXErVDVCO0V1RXArVEU7SUFBMkI7RXZFdStUN0I7QUFDRjtBdUVwK1RBO0FBQ0E7RUFFSTtJQUNJO0lBQ0E7RXZFcStUTjtFdUVsK1RFO0lBQTBCO0V2RXErVDVCO0V1RXArVEU7SUFBMkI7RXZFdStUN0I7QUFDRjtBdUVwK1RBO0FBQ0E7RUFFSTtJQUNJO0lBQ0E7RXZFcStUTjtFdUVsK1RFO0lBQTJCO0V2RXErVDdCO0V1RXArVEU7SUFBNEI7RXZFdStUOUI7QUFDRjtBdUVuK1RBOzZFQUFBO0FBR0E7RUFBb0I7QXZFcStUcEI7O0F1RXArVEE7RUFBd0I7QXZFdytUeEI7O0F1RXYrVEE7RUFBMkI7QXZFMitUM0I7O0F1RTErVEE7RUFBeUI7QXZFOCtUekI7O0F1RTcrVEE7RUFBMEI7QXZFaS9UMUI7O0F1RS8rVEE7RUFDSTtFQUNBO0F2RWsvVEo7O0F1RS8rVEE7O0VBQytDO0F2RW0vVC9DOztBdUVsL1RBO0VBQTZDO0F2RXMvVDdDOztBdUVwL1RBO0FBQ0E7RUFFSTtJQUE0QjtFdkV1L1Q5QjtFdUV0L1RFO0lBQTZCO0V2RXkvVC9CO0FBQ0Y7QXVFdC9UQTtBQUNBO0VBRUk7SUFBNEI7RXZFdy9UOUI7RXVFdi9URTtJQUE2QjtFdkUwL1QvQjtBQUNGO0F1RXYvVEE7QUFDQTtFQUVJO0lBQTRCO0V2RXkvVDlCO0V1RXgvVEU7SUFBNkI7RXZFMi9UL0I7QUFDRjtBdUV4L1RBO0FBQ0E7RUFFSTtJQUE2QjtFdkUwL1QvQjtFdUV6L1RFO0lBQThCO0V2RTQvVGhDO0FBQ0Y7QXdFaHVVQTs7NkVBQUE7QUFJQTtFQUFjLGF0RWNFO0FGb3RVaEI7O0F3RWh1VUE7QUFDQTtFQUVJO0lBQWMsYXRFWUs7RUZ1dFVyQjtBQUNGO0F3RS90VUE7NkVBQUE7QUFHQTtFQUFvQixhdEVxSkU7QUY0a1V0Qjs7QXdFOXRVQTs2RUFBQTtBQUdBO0VBQW9CLGF0RUZHO0FGbXVVdkI7O0F3RS90VUE7QUFDQTtFQUVJO0lBQW9CLGF0RWtQRjtFRmcvVHBCO0FBQ0Y7QXdFOXRVQTs2RUFBQTtBQUdBO0VBQXFCO0F4RWd1VXJCOztBd0UvdFVBO0VBQXlCO0F4RW11VXpCOztBd0VsdVVBO0VBQTRCO0F4RXN1VTVCOztBd0VydVVBO0VBQTBCO0F4RXl1VTFCOztBd0V4dVVBO0VBQTJCO0F4RTR1VTNCOztBd0UxdVVBO0VBQ0k7RUFDQTtBeEU2dVVKOztBd0UxdVVBO0VBQ0k7RUFDQTtBeEU2dVVKOztBeUU5d1VBOzs2RUFBQTtBQUlBO0VBQVE7QXpFaXhVUjs7QXlFOXdVQTs2RUFBQTtBQUdBOztFQUFBO0FBSUE7Ozs7O0VBS0k7RUFDQTtFQUNBO0VBQ0E7QXpFK3dVSjs7QXlFNXdVQTs7O0VBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtBekU4d1VKOztBeUUzd1VBO0VBQ0k7RUFDQTtFQUNBO0F6RTh3VUo7O0F5RTN3VUE7RUFDSTtFQUNBO0VBQ0E7QXpFOHdVSjs7QXlFM3dVQTtFQUNJO0VBQ0E7RUFDQTtBekU4d1VKOztBeUUzd1VBOztFQUFBO0FBSUE7RUFDSTtFQUNBO0F6RTZ3VUo7O0F5RTF3VUE7RUFDSTtFQUNBO0F6RTZ3VUo7O0F5RTF3VUE7RUFDSTtFQUNBO0F6RTZ3VUo7O0F5RTF3VUE7RUFDSTtFQUNBO0F6RTZ3VUo7O0F5RTF3VUE7Ozs7RUFBQTtBQU1BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtBekU0d1VKOztBeUV6d1VBO0FBQ0E7OztFQUdJO0VBQ0E7RUFDQTtBekU0d1VKOztBeUV6d1VBO0VBQTJCO0F6RTZ3VTNCOztBeUU1d1VBO0VBQTRCO0F6RWd4VTVCOztBeUUvd1VBO0VBQ0k7RUFDQTtBekVreFVKOztBeUUvd1VBO0VBQ0k7RUFDQTtFQUFBO0F6RWt4VUo7O0F5RS93VUE7RUFDSTtFQUNBO0VBQUE7QXpFa3hVSjs7QXlFL3dVQTtBQUNBOzs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQUE7QXpFa3hVSjs7QXlFL3dVQTtFQUEwQjtBekVteFUxQjs7QXlFbHhVQTtFQUE2QjtBekVzeFU3Qjs7QXlFcnhVQTtFQUNJO0VBQ0E7QXpFd3hVSjs7QXlFcnhVQTs7RUFBQTtBQUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekV1eFVKOztBeUVueFVBOzZFQUFBO0FBR0E7RUFDSSxZdkVMa0I7RXVFTWxCO0F6RXF4VUo7O0F5RWx4VUE7RUFDSSxZdkU5Slk7RXVFK0paO0F6RXF4VUo7O0F5RWx4VUE7RUFDSSxZdkVuS1k7RXVFb0taO0F6RXF4VUo7O0F5RWx4VUE7QUFDQTtFQUVJO0lBQ0ksWXZFMnNCa0I7SXVFMXNCbEI7RXpFb3hVTjtBQUNGO0F5RS93VUE7NkVBQUE7QUFHQTtFQUF3QjtBekVpeFV4Qjs7QXlFaHhVQTtFQUF3QjtBekVveFV4Qjs7QXlFbnhVQTtFQUFxQjtBekV1eFVyQjs7QXlFdHhVQTtFQUFzQjtBekUweFV0Qjs7QXlFdnhVQTs2RUFBQTtBQUdBO0VBQXVCO0F6RTB4VXZCOztBeUV6eFVBO0VBQTRCO0F6RTZ4VTVCOztBeUU1eFVBO0VBQWdDO0F6RWd5VWhDOztBeUUveFVBO0VBQTRCO0F6RW15VTVCOztBMEV2K1VBOzs2RUFBQTtBQUlBOzZFQUFBO0FBR0E7Ozs7O0VBQUE7QUFPQTs7O0VBR0k7RUFDQTtBMUV1K1VKOztBMEVwK1VBOzs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0ExRXErVUo7O0EwRWwrVUE7O0VBQUE7QUFJQTs7OztFQUdzRDtBMUVxK1V0RDs7QTBFbitVQTs7O0VBQUE7QUFLQTtBQUNBO0VBQWlDO0ExRXMrVWpDOztBMEVwK1VBO0VBQ0k7RUFDQTtBMUV1K1VKOztBMEVyK1VBO0VBQ0k7RUFDQTtBMUV3K1VKOztBMEVyK1VBO0FBQ0E7Ozs7RUFJSTtFQUNBO0VBQ0E7QTFFdytVSjs7QTBFcitVQTs7OztFQUlJO0VBQ0E7RUFDQTtBMUV3K1VKOztBMEVyK1VBOztFQUFBO0FBSUE7RUFBMkI7QTFFdytVM0I7O0EwRXYrVUE7RUFBOEI7QTFFMitVOUI7O0EwRTErVUE7RUFBNEI7QTFFOCtVNUI7O0EwRTcrVUE7RUFBNkI7QTFFaS9VN0I7O0EwRS8rVUE7RUFBaUM7QTFFbS9VakM7O0EwRWwvVUE7RUFBb0M7QTFFcy9VcEM7O0EwRXIvVUE7RUFBa0M7QTFFeS9VbEM7O0EwRXgvVUE7RUFBbUM7QTFFNC9VbkM7O0EwRTEvVUE7RUFBa0M7QTFFOC9VbEM7O0EwRTcvVUE7RUFBcUM7QTFFaWdWckM7O0EwRWhnVkE7RUFBbUM7QTFFb2dWbkM7O0EwRW5nVkE7RUFBb0M7QTFFdWdWcEM7O0EwRXJnVkE7QUFDQTs7OztFQUlJO0VBQ0E7RUFDQTtBMUV3Z1ZKOztBMEVwZ1ZBOzZFQUFBO0FBR0E7RUFBd0I7QTFFdWdWeEI7O0EwRXBnVkE7NkVBQUE7QUFHQTtFQUFzQix5QnhFdytCSztBRitoVDNCOztBMEVyZ1ZBOzZFQUFBO0FBR0E7O0VBQzJCO0ExRXdnVjNCOztBMkV0cFZBOzs2RUFBQTtBQUlBOzs7RUFBQTtBQUtBOzs7RUFFeUI7QTNFd3BWekI7O0EyRXRwVkE7QUFDQTtFQUVJO0lBQWdCO0UzRXlwVmxCO0FBQ0Y7QTJFdHBWQTtBQUNBO0VBRUk7SUFBZ0I7RTNFd3BWbEI7QUFDRjtBMkVycFZBO0FBQ0E7RUFFSTtJQUFnQjtFM0V1cFZsQjtBQUNGO0EyRXBwVkE7QUFDQTtFQUVJO0lBQWlCO0UzRXNwVm5CO0FBQ0Y7QTJFbnBWQTs7RUFBQTtBQUlBO0FBQ0E7RUFFSTtJQUFpQjtFM0VvcFZuQjtBQUNGO0EyRWpwVkE7QUFDQTtFQUVJO0lBQWlCO0UzRW1wVm5CO0FBQ0Y7QTJFaHBWQTtBQUNBO0VBRUk7SUFBaUI7RTNFa3BWbkI7QUFDRjtBMkUvb1ZBO0FBQ0E7RUFFSTtJQUFrQjtFM0VpcFZwQjtBQUNGO0EyRTdvVkE7NkVBQUE7QUFHQTtFQUFnQjtBM0Urb1ZoQjs7QTJFNW9WQTs2RUFBQTtBQUdBOzs7Ozs7RUFBQTtBQVFBOzs7Ozs7O0VBQUE7QUFTQTs7O0VBSUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRTJvVko7O0EyRXhvVkE7Ozs7RUFBQTtBQU1BO0VBQW9GO0EzRTJvVnBGOztBMkV4b1ZBOzZFQUFBO0FBR0E7O0VBQUE7QUFJQTtBQUNBO0VBQ0k7SUFBbUI7RTNFMG9WckI7QUFDRjtBMkV4b1ZBO0FBQ0E7RUFDSTtJQUFxQjtFM0Uyb1Z2QjtBQUNGO0E0RXJ4VkE7OzZFQUFBO0FBS0E7Ozs7RUFBQTtBQU00QztFekU0SXhDLCtCRDNKbUI7RUM2eUJuQjtFQVlBO0VBV0E7RUFNQTtBSDg5VEo7QUd6eFZJO0VJRUE7QVAweFZKO0FHMXhWSTtFSUFBO0FQNnhWSjtBRzd0Vkk7RUFDSSwrQkRyQ3FCO0FGb3dWN0I7QUdsdFZJO0VBQ0ksc0JEbkdlO0VDb0dmO0FIb3RWUjtBR2pwVkk7Ozs7Ozs7Ozs7OztFQUVJLFdEektlO0FGczBWdkI7QUd6cFZJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUdJLFdEaExlO0FGKzFWdkI7QUd2cVZJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUdJLCtCRHhMZTtFQzZJbkIsMENEd1E4QjtBRmkrVWxDO0FHdHJWSTtFQUFLLFdEbk1jO0FGNDNWdkI7QUduclZJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVlJLFdEck5lO0FGdy9WdkI7QUdud1ZJO0VBNUZtQyxXRHpKaEI7QUYyL1Z2QjtBR2x3Vkk7RUEvRjBDLCtCRHZKdkI7QUYyL1Z2QjtBRzd2Vkk7RUFDSSwwQ0RoSGdCO0FGKzJWeEI7QUd2dlZJO0VBQWlCLG1CRDFRRTtBRm9nV3ZCO0FHenVWSTtFQUNJLCtCRDVPcUI7QUZ1OVY3QjtBR3Z1Vkk7RUFDSSwrQkQ5UmU7QUZ1Z1d2QjtBR2h1Vkk7RUFDSSwrQkR4U2U7QUYwZ1d2QjtBRzF0Vkk7RUFDSSwrQkRwUXFCO0FGZytWN0I7QUd0blZJO0VBQ0ksNkJEeE00QjtFQ3lNNUIsV0Q1WmU7RUNxWWUsc0NEbFlmO0FGa2hXdkI7QUdyblZJO0VBQ0ksNkJENU1rQztFQzZNbEMsV0RsYWU7RUNzWXFCLGtCRHRZckI7QUYwaFd2QjtBR3BuVkk7Ozs7Ozs7Ozs7OztFQUVJLDZCRGpObUM7RUNrTm5DLFdEemFlO0VDdVlzQixrQkR2WXRCO0FGMGlXdkI7QUd6blZJO0VBQ0ksc0JEbGJlO0VDbWJmLFdEdGJPO0FGaWpXZjtBR3ZuVkk7RUFDSSw2Q0Q3TmtDO0VDOE5sQyxXRDViTztBRnFqV2Y7QUdyblZJOzs7Ozs7Ozs7Ozs7RUFFSSwwQ0RsT21DO0VDbU9uQyxXRG5jTztBRm9rV2Y7QUd6blZJO0VBQ0ksc0JEemNlO0VDMGNmLFdEN2NPO0FGd2tXZjtBR3ZuVkk7RUFDSSw2Q0Q5T29DO0VDK09wQyxXRG5kTztBRjRrV2Y7QUdyblZJOzs7Ozs7Ozs7Ozs7RUFFSSwwQ0RuUHFDO0VDb1ByQyxXRDFkTztBRjJsV2Y7QUd6blZJO0VBQ0ksV0RoZWU7QUYybFd2QjtBRzVzVkk7RUFBWSx5QkQvWU87QUY4bFd2QjtBRzFuVkk7RUFDSSxXRHJlZTtBRmltV3ZCO0FHeG5WSTtFQUNJLCtCRDFicUI7QUZvalc3QjtBR2xuVkk7RUFDSSxXRG5mZTtBRnVtV3ZCO0FHaG5WSTtFQUF3QiwrQkR2Y0M7QUYwalc3QjtBR3YvVUk7RUFDSSxzQkRwbkJlO0VDcW5CZixXRHhuQk87QUZpbldmO0FHMStVSTtFQUNJLCtCRHJsQnFCO0FGaWtXN0I7QUd4K1VJO0VBQ0ksK0JEdm9CZTtBRmluV3ZCO0FHbCtVSTtFQUFxQixnRERoZ0JEO09DZ2dCQywyQ0RoZ0JEO0FGcStWeEI7QUcvNVVJO0VJcHNCQTtBUHNtV0o7QUc3NVVJOzs7Ozs7Ozs7Ozs7RUFFSSw2Q0Q3a0JnQjtBRnMvVnhCO0FHcjZVSTtFQUNJLDBDRGxsQmdCO0FGeS9WeEI7QUduNlVJO0VBQ0ksMkNEdmxCZ0I7QUY0L1Z4QjtBR2g1VUk7RUFDSSw2QkQ5WnlCO0VDdVpFO0FIMDVVbkM7QUcvNFVJO0VBQ0ksMENEbGErQjtFQ3VaRTtBSDY1VXpDO0FHOTRVSTtFQUNJLDBDRHRhaUM7RUN1WkU7QUhnNlUzQztBRzc0VUk7RUFDSSwwQ0QxYWdDO0VDdVpFO0FIbTZVMUM7QUc3MlVJO0VBQ0ksNkNEelo4QjtBRnd3VnRDO0FHMzJVSTs7Ozs7Ozs7Ozs7O0VBRUksOENEOVpvQztBRnF4VjVDO0FHbDNVSTtFQUNJLDZDRHJhOEI7QUZ5eFZ0QztBR2gzVUk7RUFDSSw4Q0R6YW9DO0FGMnhWNUM7QUc3MlVJO0VBQ0ksb0NEOWE4QjtFQ2taRSxzQ0Q0YU47QUZnK1RsQztBRzMyVUk7RUFDSSxvQ0RwYjhCO0VDa1pFLHNDRDRhTjtBRm8rVGxDO0FHN3pVSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHSSwwQ0QzZTBCO0VDNGUxQiwrQkRqNEJlO0VDazRCZjtFQWZvQixzQ0RwdUJKO0FGdWtXeEI7QUdqMVVROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNJLDJDRGpib0I7RUNrYnBCLCtCRHY0Qlc7RUNvM0JXLHNDRHAzQlg7QUZpdld2QjtBR2oyVUk7RUFBeUIsK0JEbjJCQTtBRnVzVzdCO0FHcDJVSTtFQUF5QiwrQkRuMkJBO0FGdXNXN0I7QUdsMlVJO0VBQTRCLCtCRHIyQkg7QUYwc1c3QjtBR3IyVUk7RUFBNEIsK0JEcjJCSDtBRjBzVzdCO0FHLzFVSTtFSXY0QkE7QVB5dVdKO0FHNTFVSTs7Ozs7Ozs7Ozs7O0VJNzRCQTtBUHV2V0o7QUduMlVJOzs7Ozs7Ozs7Ozs7RUFFSSwwQ0RsaEIwQjtFQ2dlQSxzQ0R0dUJWO0FGd29XeEI7QUczMlVJOzs7Ozs7Ozs7Ozs7RUFFSSwyQ0RuZDhCO0VDMlpFLHNDRHQzQmpCO0FGc3lXdkI7QUduM1VJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUdJLHNCRHo3QmU7RUMwM0JtQixrQkQxM0JuQjtBRm0wV3ZCO0FHcjRVSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHSSx1QkRoZXNDO0FGMjNWOUM7QUd0NVVJO0VJbDdCQTtBUDIwV0o7QUd4NVVJO0VJbjdCQTtBUDgwV0o7QUcxNVVJO0VJcDdCQTtBUGkxV0o7QUcxNVVJO0VBL0U4QixXRDUzQlg7QUZ3Mld2QjtBR3g1VUk7RUFDSSwrQkRqNkJxQjtBRjJ6VzdCO0FHdjVVSTtFQUFzQiwrQkRqOUJIO0FGMjJXdkI7QUdoNVVJO0VBQ0ksMkNENzBCZ0I7QUYrdFd4QjtBRzk0VUk7RUFDSSwwQ0RsMUJnQjtBRmt1V3hCO0FHdDFVSTtFQUNJLDZDRDc0QmdCO0FGcXVXeEI7QUdwMVVJO0VBQ0ksMkNEbDVCZ0I7QUZ3dVd4QjtBR2wxVUk7Ozs7Ozs7Ozs7OztFQUVJLDZDRHg1QmdCO0FGc3ZXeEI7QUdsMFVJO0VBQ0ksK0JEdmhDcUI7QUYyMVc3QjtBR2gwVUk7RUFDSSwrQkR6a0NlO0FGMjRXdkI7QUc5elVJOzs7Ozs7Ozs7Ozs7RUFFSSwrQkQva0NlO0FGeTVXdkI7QUdsMFVJO0VBQ0ksMENEbnNCMEI7RUNvc0IxQiwrQkQ1aUNxQjtBRmczVzdCO0FHaDBVSTtFQUNJLDJDRHZpQitCO0VDd2lCL0IsK0JEL2xDZTtBRmk2V3ZCO0FHOXpVSTtFQUNJLDBDRDNpQmdDO0VDNGlCaEMsK0JEcm1DZTtBRnE2V3ZCO0FHN3lVSTtFQUNJLCtCRDVrQ3FCO0FGMjNXN0I7QUczeVVJO0VBQ0ksK0JEOW5DZTtBRjI2V3ZCO0FHenlVSTtFQUNJLCtCRG5vQ2U7QUY4Nld2QjtBRzN4VUk7RUFDSSxzQkR2cENlO0VDd3BDZixXRDNwQ087QUZ3N1dmO0FHNXZVSTs7Ozs7Ozs7Ozs7O0VBRUksK0JEM29DcUI7QUZtNVc3QjtBR3B3VUk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBR0ksK0JEL3JDZTtBRnk5V3ZCO0FHdHhVSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHSSwrQkR6cENxQjtBRnE4VzdCO0FHeHlVSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHSSxXRGh0Q2U7QUY4Z1h2QjtBR3B5VUk7RUFBNEI7QUh1eVVoQztBR3R5VUk7RUFBK0I7QUh5eVVuQztBR3h5VUk7RUFBOEI7QUgyeVVsQztBRzF5VUk7RUFBZ0M7QUg2eVVwQztBRzN5VUk7RUkzdENBO0FQeWdYSjtBRzF5VUk7RUFDSSwwQ0RsbUNnQjtBRjg0V3hCO0FHOXpVSTtFQUNJLDBDRGpsQ2dCO0VDa2xDaEIsNkNEbGxDZ0I7QUZrNVd4QjtBR3h5VUk7RUFBdUMsMENEcDJCVDtBRitvV2xDO0FHOXhVSTtFQUNJLG1CRGx3Q2tCO0VDbXdDbEIsV0Q5d0NPO0FGOGlYZjtBRzV4VUk7RUFDSSxXRG54Q087QUZpalhmO0FHL3JVSTtFQUNJLCtCRGgwQ3FCO0FGaWdYN0I7QUc3clVJO0VBQ0ksK0JEbDNDZTtBRmlqWHZCO0FHM3JVSTtFQUNJLFdEMTNDZTtBRnVqWHZCO0FHenJVSTtFQUNJLFdELzNDZTtBRjBqWHZCO0FHdnJVSTtFQUNJLDBDRGx2Q2dCO0FGMjZXeEI7QUdyclVJO0VBQWdDLCtCRHgxQ1A7QUZnaFg3QjtBR3RyVUk7RUFBc0MsK0JEdjRDbkI7QUZna1h2QjtBR3ZyVUk7RUFBK0MsV0Q1NEM1QjtBRnNrWHZCO0FHcHJVSTtFQUNJLCtCRG4yQ3FCO0FGeWhYN0I7QUdsclVJO0VBQ0ksK0JEcjVDZTtBRnlrWHZCO0FHaHJVSTtFQUNJLFdENzVDZTtBRitrWHZCO0FHOXFVSTtFQUNJLFdEbDZDZTtBRmtsWHZCO0FHNXFVSTtFQUNJLDBDRHJ4Q2dCO0FGbThXeEI7QUcxcVVJO0VBQWdDLCtCRDMzQ1A7QUZ3aVg3QjtBRzNxVUk7RUFBc0MsK0JEMTZDbkI7QUZ3bFh2QjtBRzVxVUk7RUFBK0MsV0QvNkM1QjtBRjhsWHZCO0FHenFVSTtFQUNJLFdEdDdDZTtBRmltWHZCO0FHdnFVSTtFQUNJLFdEMzdDZTtFQ2kyQ3lCLDBDRHo4QmQ7QUY2c1dsQztBR3RxVUk7RUFDSSxXRGg4Q2U7RUNrMkMwQiwwQ0QxOEJmO0FGaXRXbEM7QUdycVVJO0VBQ0ksK0JEcjVDcUI7QUY0alg3QjtBR25xVUk7RUFDSSwrQkR2OENlO0FGNG1YdkI7QUdqcVVJO0VBQ0ksV0QvOENlO0FGa25YdkI7QUcvcFVJO0VBQ0ksV0RwOUNlO0FGcW5YdkI7QUc3cFVJO0VBQ0ksMENEdjBDZ0I7QUZzK1d4QjtBRzNwVUk7RUFBa0MsK0JENzZDVDtBRjJrWDdCO0FHNXBVSTtFQUF3QywrQkQ1OUNyQjtBRjJuWHZCO0FHN3BVSTtFQUFpRCxXRGorQzlCO0FGaW9YdkI7QUcxcFVJO0VBQ0ksMENEdDFDZ0I7QUZrL1d4QjtBR2hsVUk7RUFDSSwrQkRyZ0RxQjtBRnVsWDdCO0FHOWtVSTs7Ozs7Ozs7Ozs7O0VBRUksK0JEeGpEZTtBRmtwWHZCO0FHdGxVSTtFQUNJLFdEaGtEZTtBRndwWHZCO0FHcGxVSTtFQUNJLFdEcmtEZTtBRjJwWHZCO0FHOWtVSTtFQUNJLCtCRDNrRGU7QUYycFh2QjtBR3hrVUk7RUFDSSwrQkR2aURxQjtBRmluWDdCO0FHdGtVSTs7Ozs7Ozs7Ozs7O0VBRUksK0JEMWxEZTtBRjRxWHZCO0FHL2lVSTtFQUNJLCtCRGpsRHFCO0FGa29YN0I7QUc3aVVJO0VBQ0ksK0JEbm9EZTtBRmtyWHZCO0FHM2lVSTtFQUNJLCtCRHhvRGU7QUZxclh2QjtBR3ppVUk7RUFDSSwrQkRobURxQjtBRjJvWDdCO0FHLy9USTtFQUFtQiwrQkR6ckRBO0FGMnJYdkI7QUdoZ1VJO0VBQWdDLCtCRDlvRFA7QUZpcFg3QjtBR25nVUk7RUFBZ0MsK0JEOW9EUDtBRmlwWDdCO0FHNy9USTtFQUE2QiwrQkRwcERKO0FGb3BYN0I7QUcvL1RJO0VBQW1DLCtCRHJwRFY7QUZ1cFg3QjtBRzUvVEk7RUFDSSw2QkRseEI0QjtFQ2t2QlEsc0NEMWhEcEI7QUZ5alh4QjtBRzMvVEk7RUFDSSxxQ0R0eEJrQztBRm14VjFDO0FHei9USTtFQUNJLDZCRDF4QjJCO0VDa3ZCUSxzQ0Q1aERuQjtBRmdrWHhCO0FHeC9USTtFQUNJLHFDRDl4QmlDO0FGd3hWekM7QUd0L1RJO0VBQ0ksNkJEbHlCMkI7RUNrdkJRLHNDRDloRG5CO0FGdWtYeEI7QUdyL1RJO0VBQ0kscUNEdHlCaUM7QUY2eFZ6QztBR24vVEk7RUFDSSw2QkQxeUIwQjtFQ2t2QlEsc0NEaGlEbEI7QUY4a1h4QjtBR2wvVEk7RUFDSSxxQ0Q5eUJnQztBRmt5VnhDO0FHNStUSTtFQUNJLCtCRHhzRHFCO0FGc3JYN0I7QUcxK1RJO0VBQ0ksK0JEMXZEZTtBRnN1WHZCO0FHbjlUSTtFQUNJLCtCRDV6QmlCO0FGaXhWekI7QUdqOVRJO0VBQ0ksZ0NEaDBCdUI7QUZteFYvQjtBRy84VEk7RUFDSSwrQkRwMEJ3QjtBRnF4VmhDO0FHcjZUSTtFQUNJLCtCRDl4RHFCO0FGcXNYN0I7QUduNlRJO0VBQ0ksK0JEaDFEZTtBRnF2WHZCO0FHajZUSTtFQUNJLFdEeDFEZTtBRjJ2WHZCO0FHMzVUSTtFQUNJLDJDRC9zRGdCO0FGNG1YeEI7QUdyNVRJO0VBQ0ksNkJEcDJCOEI7RUNxMkI5QiwrQkQzekRxQjtBRmt0WDdCO0FHbjVUSTtFQUNJLDBDRHg5QzBCO0VDeTlDMUIsK0JEOTJEZTtBRm13WHZCO0FHajVUSTtFQUNJLDBDRDk5QzBCO0VDKzlDMUIsK0JEcDNEZTtBRnV3WHZCO0FHLzRUSTtFQUNJLHNCRDUzRGU7RUM2M0RmLFdEaDRETztBRml4WGY7QUd6NFRJO0VBQ0ksK0JEdDFEcUI7QUZpdVg3QjtBRzF6VEk7RUFBWSxzQ0RyMERRO0FGa29YeEI7QUdoelRJO0VBQ0ksK0JEcjdEcUI7QUZ1dVg3QjtBRzl5VEk7RUFDSSwrQkR2K0RlO0FGdXhYdkI7QUc1eVRJO0VBQ0ksV0QvK0RlO0VDNDlEZ0Isa0JENTlEaEI7QUY4eFh2QjtBRzN5VEk7RUFDSSwrQkRwOERxQjtBRml2WDdCO0FHeHdUSTs7Ozs7Ozs7Ozs7O0VBQzBELDZDRHg0RHRDO0FGNnBYeEI7QUdod1RJO0VBQ0ksK0JEN2lFZTtBRit5WHZCO0FHOXZUSTtFQUNJLCtCRHJnRXFCO0FGcXdYN0I7QUc1dlRJO0VBQWlCO0FIK3ZUckI7QUc5dlRJO0VBQW9CO0FIaXdUeEI7QUdod1RJO0VBQW1CO0FIbXdUdkI7QUdsd1RJO0VBQXFCO0FIcXdUekI7QUd6dVRJO0VBQVcsK0VEeHpCa0I7QUZvaVZqQztBR3BzVEk7RUFDSSwrQkRqbEVxQjtBRnV4WDdCO0FHbHNUSTtFQUNJLCtCRG5vRWU7QUZ1MFh2QjtBR2hzVEk7RUFDSSxXRDNvRWU7QUY2MFh2QjtBR3pxVEk7RUFDSSxXRHJxRWU7QUZnMVh2QjtBR3ZxVEk7RUFDSSxXRDFxRWU7QUZtMVh2QjtBR3JxVEk7RUFBNkY7QUh3cVRqRztBR3ZxVEk7RUFBbUI7QUgwcVR2QjtBR3YwWEk7RUlFQTtBUHcwWEo7QUd4MFhJO0VJQUE7QVAyMFhKO0FHdDBUSTs7Ozs7Ozs7Ozs7O0VBQzBELDZDRHg0RHRDO0FGMnRYeEI7O0E0RXYxWEE7O0VBQUE7QUFJQTtFQUFJO0E1RTAxWEo7O0E0RXgxWEE7RUFBWTtBNUU0MVhaOztBNEUzMVhBO0VBQVc7QTVFKzFYWDs7QTRFNzFYQTtFQUFvQjtBNUVpMlhwQjs7QTRFaDJYQTtFQUFtQjtBNUVvMlhuQjs7QTZFcDRYQTs7NkVBQUE7QUFJQTtFQUVJOzs7SUFHSTtJQUNBO0lBQ0E7SUFDQTtFN0VxNFhOO0U2RWw0WEU7O0lBQ1k7RTdFcTRYZDtFNkVuNFhFOztJQUVJO0lBQ0E7RTdFcTRYTjtFNkVsNFhFO0lBQVE7RTdFcTRYVjtFNkVuNFhFOztJQUNNO0U3RXM0WFI7RTZFcDRYRTtJQUFNO0U3RXU0WFI7RTZFcjRYRTtJQUFRO0U3RXc0WFY7RTZFdDRYRTs7O0lBR0k7SUFDQTtFN0V3NFhOO0U2RXI0WEU7O0lBQ0s7RTdFdzRYUDtBQUNGO0E4RTU3WEE7RUFDSTtFQUNBO0E5RTg3WEo7O0E4RTM3WEE7RUFDSTtBOUU4N1hKOztBOEUzN1hBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY3WEo7O0E4RTE3WEE7RUFDSTtFQUNIO0VBQ0E7QTlFNjdYRDs7QThFMTdYQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0E5RTQ3WEY7O0E4RXo3WEE7RUFFRTtFQUNBO0VBQ0E7QTlFMjdYRjs7QThFdjdYQTtFQUVFO0VBQ0E7RUFDQTtBOUV5N1hGOztBOEV0N1hBO0VBRUk7RUFDQTtFQUNBO0E5RXc3WEo7O0E4RXI3WEE7RUFFSTtFQUNBO0VBQ0E7QTlFdTdYSjs7QThFcDdYQTtFQUVFO0VBQ0E7RUFDQTtBOUVzN1hGOztBOEVuN1hBO0VBQ0k7QTlFczdYSjs7QThFbjdYQTtFQUNJO0VBQ0E7QTlFczdYSjs7QThFbjdYQTs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFcTdYSjs7QThFbDdYQTs7RUFHSTtBOUVvN1hKOztBOEVqN1hBOztFQUdJO0E5RW03WEo7O0E4RWg3WEE7O0VBR0k7QTlFazdYSjs7QThFLzZYQTtFQUVJO0E5RWk3WEo7O0E4RTk2WEE7RUFFSTtBOUVnN1hKOztBOEU3NlhBOztFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFKzZYSjs7QThFNTZYQTtFQUVJO0VBQ0E7RUFDQTtBOUU4NlhKOztBOEUzNlhBO0VBQ0k7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtFQUNBO0VBQ0E7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUU4NlhKOztBOEUzNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtBOUU4NlhKOztBOEUzNlhBO0VBQ0k7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODZYSjs7QThFMzZYQTtFQUNJO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtBOUU4NlhKOztBOEUzNlhBO0VBQ0k7QTlFODZYSjs7QThFNTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFKzZYSjs7QThFNTZYQTtFQUNJO0VBQ0E7RUFDQTtBOUUrNlhKOztBOEU1NlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFKzZYSjs7QThFNTZYQTtFQUNJO0E5RSs2WEo7O0E4RTU2WEE7RUFDSTtBOUUrNlhKOztBOEU1NlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFKzZYSjs7QThFNTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFKzZYSjs7QThFNTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RSs2WEo7O0E4RTU2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RSs2WEo7O0E4RTU2WEE7RUFDRTtJQUNFO0U5RSs2WEY7RThFNzZYQTtJQUNFO0U5RSs2WEY7QUFDRjtBOEU1NlhBO0VBQ0k7RUFDQTtBOUU4NlhKOztBOEUzNlhBO0VBQ0k7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7QTlFODZYSjs7QThFMzZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTg2WEo7O0E4RTM2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODZYSjs7QThFMTZYQTtFQUNJO0VBQ0E7S0FBQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0VBQ0E7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFNjZYSjs7QThFMTZYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtBOUU2NlhKOztBOEUxNlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0E5RTY2WEo7O0E4RTE2WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2NlhKOztBOEUxNlhBO0FBRUE7RUFDSTtBOUU0NlhKOztBOEV6NlhBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUUyNlhKOztBOEV4NlhBO0VBQ0k7QTlFMjZYSjs7QThFeDZYQTtFQUVJO0E5RTA2WEo7O0E4RXY2WEE7RUFFSTtBOUV5NlhKOztBOEV0NlhBO0VBRUk7RUFDQTtFQUNBO0E5RXc2WEo7O0E4RXI2WEE7O0VBR0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV1NlhKOztBOEVwNlhBO0VBRUk7RUFDQTtBOUVzNlhKOztBOEVuNlhBO0VBQ0k7QTlFczZYSjs7QThFbjZYQTs7RUFHSTtFQUNBO0VBQ0E7QTlFcTZYSjs7QThFbDZYQTtFQUNJO0VBQ0E7QTlFcTZYSjs7QThFbDZYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E5RW82WEo7O0E4RWo2WEE7RUFFSTtFQUNBO0VBQ0E7QTlFbTZYSjs7QThFaDZYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFazZYSjs7QThFLzVYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFazZYSjs7QThFLzVYQTtFQUNJO0E5RWs2WEo7O0E4RS81WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVrNlhKOztBOEU5NVhBOzs7O0VBS0k7RUFDQTtFQUNBO0E5RWc2WEo7O0E4RTc1WEE7Ozs7RUFLSTtFQUNBO0E5RSs1WEo7O0E4RTU1WEE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4NVhKOztBOEUzNVhBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2NVhKOztBOEUxNVhBO0VBRUk7RUFDQTtBOUU0NVhKOztBOEV6NVhBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QTlFMjVYSjs7QThFeDVYQTtFQUVJO0E5RTA1WEo7O0E4RXY1WEE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV5NVhKOztBOEV0NVhBO0VBRUk7RUFDQTtFQUNBO0E5RXc1WEo7O0E4RXI1WEE7RUFFSTtBOUV1NVhKOztBOEVwNVhBO0VBRUk7QTlFczVYSjs7QThFbjVYQTtFQUVJO0E5RXE1WEo7O0E4RWw1WEE7RUFFSTtFQUNBO0E5RW81WEo7O0E4RWo1WEE7RUFFSTtFQUNBO0E5RW01WEo7O0E4RWg1WEE7RUFDSTtFQUNBO0E5RW01WEo7O0E4RWg1WEE7RUFDSTtFQUNBO0VBQ0E7QTlFbTVYSjs7QThFaDVYQTtFQUNJO0VBQ0E7QTlFbTVYSjs7QThFaDVYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFbTVYRjs7QThFNzRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFZzVYSjs7QThFNzRYQTtFQUNJO0VBQ0E7RUFDQTtBOUVnNVhKOztBOEU3NFhBO0VBUVE7SUFFSTtFOUV3NFhWO0U4RTE0WE07SUFFSTtFOUUyNFhWO0U4RTc0WE07SUFFSTtFOUU4NFhWO0U4RWg1WE07SUFFSTtFOUVpNVhWO0U4RW41WE07SUFFSTtFOUVvNVhWO0U4RXQ1WE07SUFFSTtFOUV1NVhWO0U4RXo1WE07SUFFSTtFOUUwNVhWO0U4RTU1WE07SUFFSTtFOUU2NVhWO0U4RS81WE07SUFFSTtFOUVnNlhWO0U4RTc1WEU7SUFDSTtFOUUrNVhOO0FBQ0Y7QThFNTVYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODVYSjs7QThFMzVYQTtFQUNJO0VBQ0E7QTlFODVYSjs7QThFMzVYQTtFQUNJO0E5RTg1WEo7O0E4RTM1WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUU4NVhKOztBOEUzNVhBO0VBQ0k7RUFDQTtBOUU4NVhKOztBOEUzNVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4NVhKOztBOEUzNVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFODVYSjs7QThFMzVYQTtFQUNJO0VBQ0E7QTlFODVYSjs7QThFMzVYQTtFQUNJO0E5RTg1WEo7O0E4RTM1WEE7RUFDSTtFQUNBO0E5RTg1WEo7O0E4RTM1WEE7RUFDSTtBOUU4NVhKOztBOEUzNVhBO0VBQ0k7QTlFODVYSjs7QThFMzVYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODVYSjs7QThFMzVYQTtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTlFNjVYSjs7QThFMTVYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNjVYSjs7QThFMTVYQTtFQUNJO0E5RTY1WEo7O0E4RTE1WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTY1WEo7O0E4RTE1WEE7RUFDSTtFQUNBO0VBQ0E7QTlFNjVYSjs7QThFMTVYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNjVYSjs7QThFejVYQTtFQUNJO0VBQ0E7QTlFNDVYSjs7QThFejVYQTtFQUNJO0E5RTQ1WEo7O0E4RXo1WEE7RUFDSTtFQUNBO0E5RTQ1WEo7O0E4RXo1WEE7RUFDSTtFQUNBO0E5RTQ1WEo7O0E4RXo1WEE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtBOUU0NVhKOztBOEV6NVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTQ1WEo7O0E4RXg1WEE7RUFDSTtFQUNBO0E5RTI1WEo7O0E4RXg1WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUUyNVhKOztBOEV4NVhBO0VBQ0k7QTlFMjVYSjs7QThFeDVYQTtFQUNJO0VBQ0E7QTlFMjVYSjs7QThFeDVYQTtFQUNJO0VBQ0E7RUFDQTtBOUUyNVhKOztBOEV4NVhBO0FBRUE7RUFDSTtBOUUwNVhKOztBOEV2NVhBO0VBQ0k7RUFDQTtFQUNBO0E5RTA1WEo7O0E4RXY1WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUUwNVhKOztBOEV2NVhBO0VBQ0k7QTlFMDVYSjs7QThFdjVYQTtFQUNJO0VBQ0E7RUFDQTtBOUUwNVhKOztBOEV2NVhBO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUV5NVhKOztBOEV0NVhBO0VBQ0k7QTlFeTVYSjs7QThFdDVYQTtFQUNJO0VBQ0E7S0FBQTtBOUV5NVhKOztBOEV0NVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXk1WEo7O0E4RXQ1WEE7RUFDSTtBOUV5NVhKOztBOEV0NVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFeTVYSjs7QThFdDVYQTtFQUNJO0E5RXk1WEo7O0E4RXQ1WEE7RUFDSTtFQUNBO0E5RXk1WEo7O0E4RXQ1WEE7RUFDSTtBOUV5NVhKOztBOEV0NVhBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXc1WEo7O0E4RXI1WEE7RUFFSTtBOUV1NVhKOztBOEVwNVhBO0VBRUk7RUFDQTtBOUVzNVhKOztBOEVuNVhBO0VBRUk7QTlFcTVYSjs7QThFbDVYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E5RW81WEo7O0E4RWo1WEE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVtNVhKOztBOEVoNVhBO0VBRUk7RUFDQTtBOUVrNVhKOztBOEUvNFhBO0VBRUk7QTlFaTVYSjs7QThFNzRYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RSs0WEo7QThFNzRYSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RSs0WFI7O0E4RTM0WEE7RUFFSTtFQUNBO0E5RTY0WEo7O0E4RTE0WEE7RUFFSTtFQUNBO0E5RTQ0WEo7O0E4RXo0WEE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBOUUyNFhKOztBOEV4NFhBO0VBRUk7RUFDQTtFQUNBO0E5RTA0WEo7O0E4RXY0WEE7RUFFSTtBOUV5NFhKOztBOEV0NFhBO0VBRUk7QTlFdzRYSjs7QThFcjRYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E5RXU0WEo7O0E4RXA0WEE7RUFFSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0E5RXM0WEo7O0E4RW40WEE7RUFDSTtBOUVzNFhKOztBOEVuNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFczRYSjs7QThFbjRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RXM0WEo7O0E4RWw0WEE7RUFDSTtBOUVxNFhKOztBOEVsNFhBO0VBQ0k7RUFDQTtFQUNBO0E5RXE0WEo7O0E4RWw0WEE7RUFDSTtBOUVxNFhKOztBOEVsNFhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXE0WEo7O0E4RWw0WEE7RUFDSTtBOUVxNFhKOztBOEVsNFhBO0VBQ0k7QTlFcTRYSjs7QThFbDRYQTtFQUNJO0VBQ0E7QTlFcTRYSjs7QThFbDRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFcTRYSjs7QThFbDRYQTtFQUNJO0E5RXE0WEo7O0E4RWw0WEE7RUFDSTtFQUNBO0E5RXE0WEo7O0E4RWw0WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXE0WEo7O0E4RWw0WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUVxNFhKOztBOEVsNFhBO0VBQ0k7QTlFcTRYSjs7QThFbDRYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFcTRYSjs7QThFbDRYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVvNFhKOztBOEVqNFhBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFbTRYSjs7QThFaDRYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E5RWs0WEo7O0E4RS8zWEE7RUFFSTtBOUVpNFhKOztBOEU5M1hBO0VBQ0k7QTlFaTRYSjs7QThFOTNYQTtFQUNJO0E5RWk0WEo7O0E4RTkzWEE7RUFDSTtBOUVpNFhKOztBOEU5M1hBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QTlFZzRYSjs7QThFNzNYQTtFQUNJO0E5RWc0WEo7O0E4RTczWEE7RUFFSTtBOUUrM1hKOztBOEU1M1hBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODNYSjs7QThFMzNYQTtFQUVJO0E5RTYzWEo7O0E4RTEzWEE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNDNYSjs7QThFejNYQTtFQUNJO0E5RTQzWEo7O0E4RXozWEE7RUFDSTtBOUU0M1hKOztBOEV6M1hBO0VBQ0k7QTlFNDNYSjs7QThFejNYQTtFQUNJO0VBQ0E7QTlFNDNYSjs7QThFejNYQTtFQUNJO0VBQ0E7QTlFNDNYSjs7QThFejNYQTtFQUNJO0VBQ0E7RUFDQTtBOUU0M1hKOztBOEV6M1hBO0VBQ0k7RUFDQTtBOUU0M1hKOztBOEV6M1hBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QTlFMjNYSjs7QThFeDNYQTtFQUVJO0VBQ0E7QTlFMDNYSjs7QThFdjNYQTtFQUVJO0VBQ0E7RUFDQTtBOUV5M1hKOztBOEV0M1hBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXczWEo7O0E4RXIzWEE7RUFFSTtBOUV1M1hKOztBOEVwM1hBO0VBQ0k7QTlFdTNYSjs7QThFcDNYQTtFQUNJO0VBQ0E7QTlFdTNYSjs7QThFcDNYQTtFQUVJO0E5RXMzWEo7O0E4RW4zWEE7RUFFSTtFQUNBO0VBQ0E7QTlFcTNYSjs7QThFbDNYQTtFQUVJO0E5RW8zWEo7O0E4RWozWEE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFbTNYSjs7QThFaDNYQTtFQUVJO0E5RWszWEo7O0E4RS8yWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFazNYSjs7QThFLzJYQTtFQUVJO0VBQ0E7QTlFaTNYSjs7QThFOTJYQTtFQUNJO0VBQ0E7RUFDQTtBOUVpM1hKOztBOEU5MlhBO0VBRUk7RUFDQTtBOUVnM1hKOztBOEU3MlhBOzs7RUFJSTtBOUUrMlhKOztBOEU1MlhBOzs7RUFJSTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtFQUNBO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODJYSjs7QThFMzJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7QTlFODJYSjs7QThFMzJYQTtFQUNJO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFODJYSjs7QThFMzJYQTtFQUNJO0VBQ0E7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7QTlFODJYSjs7QThFMzJYQTtFQUNJO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODJYSjs7QThFMzJYQTtFQUNJO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7QTlFODJYSjs7QThFMzJYQTtFQUNJO0VBQ0E7QTlFODJYSjs7QThFMzJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4MlhKOztBOEUzMlhBO0VBQ0k7QTlFODJYSjs7QThFMzJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFODJYSjs7QThFMzJYQTtFQUNJO0E5RTgyWEo7O0E4RTMyWEE7RUFDSTtBOUU4MlhKOztBOEUxMlhBO0VBRUk7QTlFNDJYSjs7QThFejJYQTtFQUNJO0E5RTQyWEo7O0E4RXoyWEE7O0VBRUk7RUFDQTtBOUU0MlhKOztBOEV6MlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU0MlhKOztBOEV6MlhBO0VBQ0k7RUFDQTtFQUNBO0E5RTQyWEo7O0E4RXoyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNDJYSjs7QThFejJYQTtFQUNJO0VBQ0E7RUFDQTtBOUU0MlhKOztBOEV6MlhBO0VBQ0k7RUFDQTtFQUNBO0E5RTQyWEo7O0E4RXoyWEE7RUFDSTtFQUNBO0E5RTQyWEo7O0E4RXoyWEE7RUFDSTtFQUNBO0VBQ0E7QTlFNDJYSjs7QThFejJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTQyWEo7O0E4RXoyWEE7RUFDSTtFQUNBO0E5RTQyWEo7O0E4RXoyWEE7RUFDSTtFQUNBO0VBQ0E7QTlFNDJYSjs7QThFejJYQTtFQUNJO0VBQ0E7RUFDQTtBOUU0MlhKOztBOEV6MlhBO0VBQ0k7QTlFNDJYSjs7QThFejJYQTtFQUNJO0VBQ0E7RUFDQTtBOUU0MlhKOztBOEV6MlhBO0VBQ0k7QTlFNDJYSjs7QThFejJYQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0E5RTIyWEo7O0E4RXgyWEE7RUFFSTtFQUNBO0E5RTAyWEo7O0E4RXYyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUUwMlhKOztBOEV2MlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFMDJYSjs7QThFdjJYQTtFQUNJO0VBQ0E7RUFDQTtBOUUwMlhKOztBOEV2MlhBO0VBQ0k7RUFDQTtBOUUwMlhKOztBOEV2MlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFMDJYSjs7QThFdjJYQTtFQUNJO0VBQ0E7RUFDQTtBOUUwMlhKOztBOEV2MlhBO0VBQ0k7RUFDQTtFQUNBO0E5RTAyWEo7O0E4RXYyWEE7RUFDSTtFQUNBO0VBQ0E7QTlFMDJYSjs7QThFdjJYQTtFQUNJO0VBQ0E7QTlFMDJYSjs7QThFdjJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFMDJYSjs7QThFdjJYQTtFQUNJO0E5RTAyWEo7O0E4RXQyWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXkyWEo7O0E4RXQyWEE7RUFFSTtBOUV3MlhKOztBOEVyMlhBO0VBRUk7RUFDQTtFQUNBO0E5RXUyWEo7O0E4RXAyWEE7RUFFSTtBOUVzMlhKOztBOEVuMlhBO0VBRUk7QTlFcTJYSjs7QThFbDJYQTtFQUNJO0E5RXEyWEo7O0E4RWwyWEE7RUFDSTtBOUVxMlhKOztBOEVsMlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVxMlhKO0E4RW4yWEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXEyWFI7QThFbDJYSTtFQUNJO0VBQ0E7QTlFbzJYUjs7QThFaDJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFbTJYSjs7QThFaDJYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RW0yWEo7O0E4RWgyWEE7RUFDSTtBOUVtMlhKOztBOEVoMlhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFbTJYSjs7QThFaDJYQTtFQUNJO0E5RW0yWEo7O0E4RWgyWEE7RUFFSTtFQUNBO0VBQ0E7QTlFazJYSjtBOEVoMlhJO0VBQ0k7RUFDQTtFQUNBO0E5RWsyWFI7O0E4RTkxWEE7RUFDSTtFQUNBO0VBQ0E7QTlFaTJYSjs7QThFOTFYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVpMlhGOztBOEU5MVhBO0VBQ0U7QTlFaTJYRjs7QThFOTFYQTtFQUNFO0E5RWkyWEY7O0E4RTkxWEE7RUFDSTtBOUVpMlhKOztBOEU5MVhBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFaTJYSjs7QThFOTFYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RWkyWEo7O0E4RTkxWEE7RUFDSTtBOUVpMlhKOztBOEU5MVhBO0VBQ0k7RUFDQTtBOUVpMlhKOztBOEU5MVhBO0VBQ0k7QTlFaTJYSjs7QThFOTFYQTtFQUNFO0VBQ0E7RUFDQTtBOUVpMlhGOztBOEU5MVhBO0VBQ0k7RUFDQTtBOUVpMlhKOztBOEU5MVhBO0VBQ0k7QTlFaTJYSjs7QThFOTFYQTtFQUNJO0E5RWkyWEo7O0E4RTkxWEE7RUFDSTtBOUVpMlhKOztBOEU5MVhBO0VBQ0k7QTlFaTJYSjs7QThFOTFYQTtFQUVJO0VBQ0E7QTlFZzJYSjtBOEU5MVhJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFZzJYUjtBOEU5MVhRO0VBQ0k7RUFDQTtBOUVnMlhaO0E4RTUxWEk7RUFDSTtFQUNBO0E5RTgxWFI7QThFMTFYSztFQUNHO0VBQ0E7QTlFNDFYUjtBOEUxMVhRO0VBQ0k7QTlFNDFYWjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNJO0VBQ0E7QTlFMDFYSjs7QThFdjFYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RTAxWEY7RThFdjFYQTtJQUNFO0lBQ0E7SUFDQTtFOUV5MVhGO0U4RXQxWEE7SUFDRTtJQUNBO0lBQ0E7RTlFdzFYRjtFOEVyMVhBO0lBQ0U7SUFDQTtJQUNBO0U5RXUxWEY7RThFcDFYQTtJQUNJO0lBQ0E7SUFDQTtFOUVzMVhKO0U4RW4xWEE7SUFDRTtJQUNBO0lBQ0E7RTlFcTFYRjtBQUNGO0E4RWwxWEE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFOUVvMVhGO0U4RWoxWEE7SUFDRTtJQUNBO0lBQ0E7RTlFbTFYRjtFOEVoMVhBO0lBQ0U7SUFDQTtJQUNBO0U5RWsxWEY7RThFLzBYQTtJQUNFO0lBQ0E7SUFDQTtFOUVpMVhGO0U4RTkwWEE7SUFDRTtJQUNBO0lBQ0E7RTlFZzFYRjtFOEU3MFhBO0lBQ0U7SUFDQTtJQUNBO0U5RSswWEY7QUFDRjtBOEU1MFhBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7RTlFODBYRjtFOEUzMFhBO0lBQ0U7SUFDQTtJQUNBO0U5RTYwWEY7RThFMTBYQTtJQUNFO0lBQ0E7SUFDQTtFOUU0MFhGO0U4RXowWEE7SUFDRTtJQUNBO0lBQ0E7RTlFMjBYRjtFOEV4MFhBO0lBQ0U7SUFDQTtJQUNBO0U5RTAwWEY7RThFdjBYQTtJQUNFO0lBQ0E7SUFDQTtFOUV5MFhGO0FBQ0Y7QThFdDBYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RXcwWEY7RThFcjBYQTtJQUNFO0lBQ0E7SUFDQTtFOUV1MFhGO0U4RXAwWEE7SUFDRTtJQUNBO0lBQ0E7RTlFczBYRjtFOEVuMFhBO0lBQ0U7SUFDQTtJQUNBO0U5RXEwWEY7RThFbDBYQTtJQUNFO0lBQ0E7SUFDQTtFOUVvMFhGO0U4RWowWEE7SUFDRTtJQUNBO0lBQ0E7RTlFbTBYRjtBQUNGO0E4RWgwWEE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFOUVrMFhGO0U4RS96WEE7SUFDRTtJQUNBO0lBQ0E7RTlFaTBYRjtFOEU5elhBO0lBQ0U7SUFDQTtJQUNBO0U5RWcwWEY7RThFN3pYQTtJQUNFO0lBQ0E7SUFDQTtFOUUrelhGO0U4RTV6WEE7SUFDRTtJQUNBO0lBQ0E7RTlFOHpYRjtFOEUzelhBO0lBQ0U7SUFDQTtJQUNBO0U5RTZ6WEY7QUFDRjtBOEUxelhBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7RTlFNHpYRjtFOEV6elhBO0lBQ0U7SUFDQTtJQUNBO0U5RTJ6WEY7RThFeHpYQTtJQUNFO0lBQ0E7SUFDQTtFOUUwelhGO0U4RXZ6WEE7SUFDRTtJQUNBO0lBQ0E7RTlFeXpYRjtFOEV0elhBO0lBQ0U7SUFDQTtJQUNBO0U5RXd6WEY7RThFcnpYQTtJQUNFO0lBQ0E7SUFDQTtFOUV1elhGO0FBQ0Y7QThFcHpYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RXN6WEY7RThFbnpYQTtJQUNFO0lBQ0E7SUFDQTtFOUVxelhGO0U4RWx6WEE7SUFDRTtJQUNBO0lBQ0E7RTlFb3pYRjtFOEVqelhBO0lBQ0U7SUFDQTtJQUNBO0U5RW16WEY7RThFaHpYQztJQUNDO0lBQ0E7SUFDQTtFOUVrelhGO0U4RS95WEE7SUFDRTtJQUNBO0lBQ0E7RTlFaXpYRjtBQUNGO0E4RTl5WEE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFOUVnelhGO0U4RTd5WEE7SUFDRTtJQUNBO0lBQ0E7RTlFK3lYRjtFOEU1eVhBO0lBQ0U7SUFDQTtJQUNBO0U5RTh5WEY7RThFM3lYQTtJQUNFO0lBQ0E7SUFDQTtFOUU2eVhGO0U4RTF5WEE7SUFDRTtJQUNBO0lBQ0E7RTlFNHlYRjtFOEV6eVhBO0lBQ0U7SUFDQTtJQUNBO0U5RTJ5WEY7QUFDRjtBOEV4eVhBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7RTlFMHlYRjtFOEV2eVhBO0lBQ0U7SUFDQTtJQUNBO0U5RXl5WEY7RThFdHlYQTtJQUNFO0lBQ0E7SUFDQTtFOUV3eVhGO0U4RXJ5WEE7SUFDRTtJQUNBO0lBQ0E7RTlFdXlYRjtFOEVweVhBO0lBQ0k7SUFDQTtJQUNBO0U5RXN5WEo7RThFbnlYQTtJQUNFO0lBQ0E7SUFDQTtFOUVxeVhGO0FBQ0Y7QThFbHlYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RW95WEY7RThFanlYQTtJQUNFO0lBQ0E7SUFDQTtFOUVteVhGO0U4RWh5WEE7SUFDRTtJQUNBO0lBQ0E7RTlFa3lYRjtFOEUveFhBO0lBQ0U7SUFDQTtJQUNBO0U5RWl5WEY7RThFOXhYQTtJQUNJO0lBQ0E7SUFDQTtFOUVneVhKO0U4RTd4WEE7SUFDRTtJQUNBO0lBQ0E7RTlFK3hYRjtBQUNGO0E4RTV4WEE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFOUU4eFhGO0U4RTN4WEE7SUFDRTtJQUNBO0lBQ0E7RTlFNnhYRjtFOEUxeFhBO0lBQ0U7SUFDQTtJQUNBO0U5RTR4WEY7RThFenhYQTtJQUNFO0lBQ0E7SUFDQTtFOUUyeFhGO0U4RXh4WEE7SUFDSTtJQUNBO0lBQ0E7RTlFMHhYSjtFOEV2eFhBO0lBQ0U7SUFDQTtJQUNBO0U5RXl4WEY7QUFDRjtBOEV0eFhBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7RTlFd3hYRjtFOEVyeFhBO0lBQ0U7SUFDQTtJQUNBO0U5RXV4WEY7RThFcHhYQTtJQUNFO0lBQ0E7SUFDQTtFOUVzeFhGO0U4RW54WEE7SUFDRTtJQUNBO0lBQ0E7RTlFcXhYRjtFOEVseFhBO0lBQ0U7SUFDQTtJQUNBO0U5RW94WEY7RThFanhYQTtJQUNFO0lBQ0E7SUFDQTtFOUVteFhGO0FBQ0Y7QThFaHhYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RWt4WEY7RThFL3dYQTtJQUNFO0lBQ0E7SUFDQTtFOUVpeFhGO0U4RTl3WEE7SUFDRTtJQUNBO0lBQ0E7RTlFZ3hYRjtFOEU3d1hBO0lBQ0U7SUFDQTtJQUNBO0U5RSt3WEY7RThFNXdYQTtJQUNFO0lBQ0E7SUFDQTtFOUU4d1hGO0U4RTN3WEE7SUFDRTtJQUNBO0lBQ0E7RTlFNndYRjtBQUNGO0E4RTF3WEE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFOUU0d1hGO0U4RXp3WEE7SUFDRTtJQUNBO0lBQ0E7RTlFMndYRjtFOEV4d1hBO0lBQ0U7SUFDQTtJQUNBO0U5RTB3WEY7RThFdndYQTtJQUNFO0lBQ0E7SUFDQTtFOUV5d1hGO0U4RXR3WEE7SUFDRTtJQUNBO0lBQ0E7RTlFd3dYRjtFOEVyd1hBO0lBQ0U7SUFDQTtJQUNBO0U5RXV3WEY7QUFDRjtBOEVwd1hBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7RTlFc3dYRjtFOEVud1hBO0lBQ0U7SUFDQTtJQUNBO0U5RXF3WEY7RThFbHdYQTtJQUNFO0lBQ0E7SUFDQTtFOUVvd1hGO0U4RWp3WEE7SUFDRTtJQUNBO0lBQ0E7RTlFbXdYRjtFOEVod1hBO0lBQ0U7SUFDQTtJQUNBO0U5RWt3WEY7RThFL3ZYQTtJQUNFO0lBQ0E7SUFDQTtFOUVpd1hGO0FBQ0Y7QThFOXZYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RWd3WEY7RThFN3ZYQTtJQUNFO0lBQ0E7SUFDQTtFOUUrdlhGO0U4RTV2WEE7SUFDRTtJQUNBO0lBQ0E7RTlFOHZYRjtFOEUzdlhBO0lBQ0U7SUFDQTtJQUNBO0U5RTZ2WEY7RThFMXZYQTtJQUNFO0lBQ0E7SUFDQTtFOUU0dlhGO0U4RXp2WEE7SUFDRTtJQUNBO0lBQ0E7RTlFMnZYRjtBQUNGO0E4RXh2WEE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFOUUwdlhGO0U4RXZ2WEQ7SUFDRztJQUNBO0lBQ0E7RTlFeXZYRjtFOEV0dlhBO0lBQ0U7SUFDQTtJQUNBO0U5RXd2WEY7RThFcnZYQTtJQUNFO0lBQ0E7SUFDQTtFOUV1dlhGO0U4RXB2WEE7SUFDRTtJQUNBO0lBQ0E7RTlFc3ZYRjtFOEVudlhBO0lBQ0U7SUFDQTtJQUNBO0U5RXF2WEY7QUFDRjtBOEVsdlhBO0VBQ0U7SUFDRTtJQUNDO0lBQ0Q7RTlFb3ZYRjtFOEVqdlhBO0lBQ0U7SUFDQTtJQUNBO0U5RW12WEY7RThFaHZYQTtJQUNFO0lBQ0E7SUFDQTtFOUVrdlhGO0U4RS91WEE7SUFDRTtJQUNBO0lBQ0E7RTlFaXZYRjtFOEU5dVhBO0lBQ0k7SUFDQTtJQUNBO0U5RWd2WEo7RThFN3VYQTtJQUNFO0lBQ0M7SUFDRDtFOUUrdVhGO0FBQ0Y7QThFNXVYQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RTh1WEY7RThFM3VYQTtJQUNFO0lBQ0E7SUFDQTtFOUU2dVhGO0U4RTF1WEE7SUFDRTtJQUNBO0lBQ0E7RTlFNHVYRjtFOEV6dVhBO0lBQ0U7SUFDQTtJQUNBO0U5RTJ1WEY7RThFeHVYRDtJQUNLO0lBQ0E7SUFDQTtFOUUwdVhKO0U4RXZ1WEE7SUFDRTtJQUNBO0lBQ0E7RTlFeXVYRjtBQUNGO0E4RXR1WEE7RUFDRTtJQUNFO0lBQ0M7SUFDRDtFOUV3dVhGO0U4RXJ1WEE7SUFDRTtJQUNDO0lBQ0Q7RTlFdXVYRjtFOEVwdVhBO0lBQ0U7SUFDQTtJQUNBO0U5RXN1WEY7RThFbnVYQTtJQUNFO0lBQ0E7SUFDQTtFOUVxdVhGO0U4RWx1WEQ7SUFDSztJQUNDO0lBQ0g7RTlFb3VYRjtFOEVqdVhBO0lBQ0U7SUFDQztJQUNEO0U5RW11WEY7QUFDRjtBOEVodVhBO0VBQ0U7SUFDRTtJQUNDO0lBQ0Q7RTlFa3VYRjtFOEUvdFhBO0lBQ0U7SUFDQztJQUNEO0U5RWl1WEY7RThFOXRYQTtJQUNFO0lBQ0E7SUFDQTtFOUVndVhGO0U4RTd0WEE7SUFDRTtJQUNBO0lBQ0E7RTlFK3RYRjtFOEU1dFhDO0lBQ0c7SUFDQztJQUNIO0U5RTh0WEY7RThFM3RYQTtJQUNFO0lBQ0M7SUFDRDtFOUU2dFhGO0FBQ0Y7QThFMXRYQTtFQUNFO0lBQ0U7SUFDQztJQUNEO0U5RTR0WEY7RThFenRYQTtJQUNFO0lBQ0M7SUFDRDtFOUUydFhGO0U4RXh0WEE7SUFDRTtJQUNBO0lBQ0E7RTlFMHRYRjtFOEV2dFhBO0lBQ0U7SUFDQTtJQUNBO0U5RXl0WEY7RThFdHRYQTtJQUNJO0lBQ0M7SUFDSDtFOUV3dFhGO0U4RXJ0WEE7SUFDRTtJQUNDO0lBQ0Q7RTlFdXRYRjtBQUNGO0E4RXB0WEE7RUFDRTtJQUNFO0lBQ0M7SUFDRDtFOUVzdFhGO0U4RW50WEE7SUFDRTtJQUNDO0lBQ0Q7RTlFcXRYRjtFOEVsdFhBO0lBQ0U7SUFDQTtJQUNBO0U5RW90WEY7RThFanRYQTtJQUNFO0lBQ0E7SUFDQTtFOUVtdFhGO0U4RWh0WEE7SUFDSTtJQUNDO0lBQ0g7RTlFa3RYRjtFOEUvc1hBO0lBQ0U7SUFDQztJQUNEO0U5RWl0WEY7QUFDRjtBOEU5c1hBO0VBQ0U7SUFDRTtJQUNDO0lBQ0Q7RTlFZ3RYRjtFOEU3c1hBO0lBQ0U7SUFDQztJQUNEO0U5RStzWEY7RThFNXNYQTtJQUNFO0lBQ0E7SUFDQTtFOUU4c1hGO0U4RTNzWEE7SUFDRTtJQUNBO0lBQ0E7RTlFNnNYRjtFOEUxc1hEO0lBQ0s7SUFDQztJQUNIO0U5RTRzWEY7RThFenNYQTtJQUNFO0lBQ0M7SUFDRDtFOUUyc1hGO0FBQ0Y7QThFeHNYQTtFQUNFO0lBQ0U7SUFDQztJQUNEO0U5RTBzWEY7RThFdnNYQTtJQUNFO0lBQ0M7SUFDRDtFOUV5c1hGO0U4RXRzWEE7SUFDRTtJQUNBO0lBQ0E7RTlFd3NYRjtFOEVyc1hBO0lBQ0U7SUFDQTtJQUNBO0U5RXVzWEY7RThFcHNYQztJQUNHO0lBQ0M7SUFDSDtFOUVzc1hGO0U4RW5zWEE7SUFDRTtJQUNDO0lBQ0Q7RTlFcXNYRjtBQUNGO0E4RWxzWEE7RUFDRTtJQUNFO0lBQ0M7SUFDRDtFOUVvc1hGO0U4RWpzWEE7SUFDRTtJQUNDO0lBQ0Q7RTlFbXNYRjtFOEVoc1hBO0lBQ0U7SUFDQTtJQUNBO0U5RWtzWEY7RThFL3JYQTtJQUNFO0lBQ0E7SUFDQTtFOUVpc1hGO0U4RTlyWEQ7SUFDSztJQUNDO0lBQ0g7RTlFZ3NYRjtFOEU3clhBO0lBQ0U7SUFDQztJQUNEO0U5RStyWEY7QUFDRjtBOEU1clhBO0VBQ0U7SUFDRTtJQUNDO0lBQ0Q7RTlFOHJYRjtFOEUzclhBO0lBQ0U7SUFDQztJQUNEO0U5RTZyWEY7RThFMXJYQTtJQUNFO0lBQ0E7SUFDQTtFOUU0clhGO0U4RXpyWEE7SUFDRTtJQUNBO0lBQ0E7RTlFMnJYRjtFOEV4clhBO0lBQ0k7SUFDQztJQUNIO0U5RTByWEY7RThFdnJYQTtJQUNFO0lBQ0M7SUFDRDtFOUV5clhGO0FBQ0Y7QStFaitlSTtFQUNJO0EvRW0rZVI7QStFaCtlSTtFQUNJO0EvRWsrZVI7QStFLzllSTtFQUNFO0EvRWkrZU47QStFOTllSTtFQUNFO0EvRWcrZU47QStFNzllSTtFQUNFO0EvRSs5ZU47QStFNTllSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FODllTjtBK0U1OWVNO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FODllVjtBK0UxOWVJO0VBQ0k7QS9FNDllUjtBK0V6OWVJO0VBQ0k7QS9FMjllUjtBK0V4OWVJO0VBQ0U7QS9FMDllTjtBK0V2OWVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FeTllUjtBK0V2OWVRO0VBQ0k7RUFDQTtBL0V5OWVaO0ErRXQ5ZVE7RUFDSTtFQUNBO0VBQ0E7QS9FdzllWjtBK0V0OWVZO0VBQ0k7QS9FdzllaEI7QStFcDllUztFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FczllWjtBK0VwOWVZO0VBQ0k7QS9FczllaEI7QStFajllSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FbTllUjtBK0VoOWVJO0VBQ0k7RUFDQTtBL0VrOWVSO0ErRS84ZUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRWk5ZVI7QStFOThlSTtFQUNJO0EvRWc5ZVI7QStFNzhlSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EvRSs4ZVI7QStFNzhlUTtFQUNJO0EvRSs4ZVo7QStFNThlUTtFQUNJO0EvRTg4ZVo7QStFejhlUTtFQUNJO0EvRTI4ZVo7QStFeDhlUTtFQUNJO0EvRTA4ZVo7QStFdDhlSTtFQUNJO0EvRXc4ZVI7QStFcjhlSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FdThlUjtBK0VwOGVJO0VBQ0k7QS9FczhlUjtBK0VuOGVJO0VBQ0k7QS9FcThlUjtBK0VsOGVJO0VBQ0k7QS9FbzhlUjtBK0VqOGVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0VtOGVSO0ErRWg4ZUk7RUFDSTtFQUNBO0VBQ0E7QS9FazhlUjtBK0UvN2VJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FaThlUjtBK0U5N2VJO0VBQ0U7RUFDQTtBL0VnOGVOO0ErRTc3ZUk7RUFDSTtJQUNFO0UvRSs3ZVI7RStFNTdlTTtJQUNFO0lBQ0E7RS9FODdlUjtFK0UzN2VNO0lBQ0U7SUFDQTtFL0U2N2VSO0FBQ0Y7QStFMTdlSztFQUNHO0lBQ0U7RS9FNDdlUjtBQUNGOztBZ0ZwcGZBO0VBQ0k7QWhGdXBmSjs7QWdGcHBmQTs7RUFHSTtBaEZzcGZKOztBZ0ZucGZBOztFQUdJO0FoRnFwZko7O0FnRmxwZkE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRm9wZko7O0FnRmpwZkE7RUFDSTtBaEZvcGZKOztBZ0ZqcGZBO0VBQ0k7RUFDQTtBaEZvcGZKOztBZ0ZqcGZBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QWhGbXBmSjs7QWdGaHBmQTtFQUVJO0FoRmtwZko7O0FnRi9vZkE7RUFDSTtBaEZrcGZKOztBZ0Yvb2ZBO0VBQ0k7QWhGa3BmSjs7QWdGL29mQTtFQUVJO0FoRmlwZko7O0FnRjlvZkE7RUFFSTtBaEZncGZKOztBZ0Y1b2ZBO0VBRUk7QWhGOG9mSjs7QWdGM29mQTtFQUVJO0FoRjZvZko7O0FnRjFvZkE7RUFDSTtFQUNBO0FoRjZvZko7O0FnRjFvZkE7RUFDSTtBaEY2b2ZKOztBZ0Yxb2ZBO0VBQ0k7QWhGNm9mSjs7QWdGMW9mQTtFQUNJO0FoRjZvZko7O0FnRjFvZkE7RUFDSTtBaEY2b2ZKOztBZ0Yxb2ZBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEY0b2ZKOztBZ0Z6b2ZBOzs7RUFJSTtBaEYyb2ZKOztBZ0Z4b2ZBO0VBRUk7QWhGMG9mSjs7QWdGdm9mQTs7RUFHSTtFQUNBO0FoRnlvZko7O0FnRnRvZkE7RUFFSTtBaEZ3b2ZKOztBZ0Zyb2ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRndvZko7O0FnRnJvZkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFaEZ3b2ZOO0FBQ0Y7QWdGcm9mQTtFQUVJO0lBQ0k7RWhGc29mTjtBQUNGO0FnRm5vZkE7RUFDSTtJQUNJO0VoRnFvZk47QUFDRjtBZ0Zsb2ZBO0VBQ0k7SUFDSTtFaEZvb2ZOO0VnRmpvZkU7SUFDSTtFaEZtb2ZOO0VnRmhvZkU7SUFDSTtJQUNBO0VoRmtvZk47RWdGL25mRTtJQUNJO0VoRmlvZk47RWdGOW5mRTtJQUNJO0lBQ0E7RWhGZ29mTjtBQUNGO0FnRjduZkE7RUFDSTtJQUNJO0VoRituZk47RWdGNW5mRTtJQUNJO0lBQ0E7RWhGOG5mTjtBQUNGO0FpRmowZkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDRztFQUVLO0VBQ1I7RUFDQTtBakZtMGZGOztBaUYvemZFO0VBQ0U7QWpGazBmSjs7QWlGajBmRTtFQUNFO0FqRm8wZko7O0FpRm4wZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0FqRnMwZko7O0FpRnAwZkU7RUFHVTtBakZ1MGZaOztBaUZ0MGZFO0VBQ0U7RUFDQTtFQUNBO0VBR1E7QWpGeTBmWjs7QWlGeDBmRTtFQUNFO0VBQ0E7RUFDQTtBakYyMGZKOztBaUYxMGZJO0VBQ0U7QWpGNjBmTjs7QWlGNTBmRTtFQUNFO0FqRiswZko7O0FpRjkwZkk7RUFDRTtFQUNBO0FqRmkxZk47O0FpRmgxZkU7RUFDRTtBakZtMWZKOztBaUZsMWZJO0VBQ0U7RUFDQTtBakZxMWZOOztBaUZwMWZFO0VBQ0U7RUFDQTtFQUNBO0FqRnUxZko7O0FpRnQxZkk7RUFDRTtFQUNBO0FqRnkxZk47O0FpRngxZkk7RUFDRTtFQUNBO0FqRjIxZk47O0FpRjExZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHUTtFQUdBO0VBRVI7RUFDQTtBakY2MWZKOztBaUY1MWZJO0VBQ0U7QWpGKzFmTjs7QWlGOTFmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FqRmkyZko7O0FpRmgyZkk7RUFDRTtBakZtMmZOOztBaUZsMmZJO0VBQ0U7QWpGcTJmTjs7QWlGcDJmSTtFQUNFO0VBQ0E7RUFDQTtBakZ1MmZOOztBaUZyMmZBO0VBQ0U7QWpGdzJmRjs7QWlGdDJmQTtFQUNFO0FqRnkyZkY7O0FrRnAvZkE7RUFFSTtBbEZzL2ZKOztBa0ZuL2ZBO0VBQ0k7RUFDQTtFQUNBO0FsRnMvZko7O0FrRm4vZkE7O0VBQUE7QUFJQTtFQUNJO0VBQ0E7QWxGcS9mSjs7QWtGbC9mQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZvL2ZKOztBa0ZqL2ZBO0VBQ0k7QWxGby9mSjs7QWtGai9mQTtFQUNJO0VBQ0E7RUFDQTtFQUdBO0FsRm8vZko7O0FrRmovZkE7RUFDSTtBbEZvL2ZKOztBa0ZqL2ZBO0VBQ0k7QWxGby9mSjs7QWtGai9mQTtFQUVJO0VBQ0E7QWxGbS9mSjs7QWtGaC9mQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGbS9mSjs7QWtGaC9mQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGbS9mSjs7QWtGaC9mQTtFQUVJO0VBQ0E7QWxGay9mSjs7QWtGLytmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGay9mSjs7QWtGLytmQTtFQUNJO0VBQ0E7QWxGay9mSjs7QWtGLytmQTtFQUNJO0VBQ0E7RUFDQTtBbEZrL2ZKOztBa0YvK2ZBO0VBQ0k7RUFDQTtBbEZrL2ZKOztBa0YvK2ZBO0VBQ0k7QWxGay9mSjs7QWtGLytmQTtFQUNJO0FsRmsvZko7O0FrRi8rZkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGay9mSjs7QWtGLytmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGay9mSjs7QWtGLytmQTtBQUVBO0VBQ0k7QWxGaS9mSjs7QWtGOStmQTtFQUNJO0FsRmkvZko7O0FrRjkrZkE7RUFDSTtBbEZpL2ZKOztBa0Y5K2ZBO0VBQ0k7QWxGaS9mSjs7QWtGOStmQTtFQUNJO0FsRmkvZko7O0FrRjkrZkE7RUFDSTtBbEZpL2ZKOztBa0Y5K2ZBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmcvZko7O0FrRjkrZkE7O0VBR0k7RUFDQTtBbEZnL2ZKOztBa0Y3K2ZBO0VBQ0k7RUFDQTtBbEZnL2ZKOztBa0Y3K2ZBO0VBQ0k7RUFDQTtBbEZnL2ZKOztBa0Y3K2ZBO0VBQ0k7QWxGZy9mSjs7QWtGNytmQTtFQUVJO0FsRisrZko7O0FrRjUrZkE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjgrZko7O0FrRjMrZkE7RUFFSTtFQUNBO0FsRjYrZko7O0FrRjErZkE7O0VBR0k7QWxGNCtmSjs7QWtGeitmQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGMitmSjs7QWtGeCtmQTtFQUVJO0VBQ0E7QWxGMCtmSjs7QWtGditmQTtFQUVJO0VBQ0E7RUFDQTtBbEZ5K2ZKOztBa0Z0K2ZBO0VBRUk7RUFDQTtBbEZ3K2ZKOztBa0ZyK2ZBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZ1K2ZKOztBa0ZwK2ZBO0VBRUk7RUFDQTtBbEZzK2ZKOztBa0ZuK2ZBO0VBQ0k7RUFDQTtFQUNBO0FsRnMrZko7O0FrRm4rZkE7RUFFSTtFQUNBO0FsRnErZko7O0FrRmwrZkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZxK2ZKOztBa0ZsK2ZBO0VBRUk7QWxGbytmSjs7QWtGaitmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZvK2ZKOztBa0ZqK2ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZvK2ZKOztBa0ZqK2ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGbytmSjs7QWtGaitmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZvK2ZKOztBa0ZqK2ZBO0VBQ0k7RUFDQTtBbEZvK2ZKOztBa0ZqK2ZBO0VBRUk7RUFDQTtBbEZtK2ZKOztBa0ZoK2ZBO0VBQ0k7RUFDQTtBbEZtK2ZKOztBa0ZoK2ZBO0VBQ0k7RUFDQTtBbEZtK2ZKOztBa0ZoK2ZBO0VBRUk7RUFDQTtBbEZrK2ZKOztBa0YvOWZBO0VBRUk7RUFDQTtFQUNBO0FsRmkrZko7O0FrRjk5ZkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZpK2ZKOztBa0Y5OWZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGaStmSjs7QWtGOTlmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRmkrZko7O0FrRjk5ZkE7Ozs7O0VBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRmcrZko7O0FrRjc5ZkE7RUFDSTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGZytmSjs7QWtGNzlmQTtFQUNJO0FsRmcrZko7O0FrRmorZkE7RUFDSTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7QWxGZytmSjs7QWtGNzlmQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmcrZko7O0FrRjc5ZkE7O0VBRUk7QWxGZytmSjs7QWtGNzlmQTtFQUNJO0VBQ0E7RUFDQTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7QWxGZytmSjs7QWtGNzlmQTtFQUNJO0FsRmcrZko7O0FrRjc5ZkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGZytmSjs7QWtGNzlmQTtFQUNJO0FsRmcrZko7O0FrRjc5ZkE7RUFDSTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7RUFDQTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGZytmSjs7QWtGNzlmQTtFQUNJO0FsRmcrZko7O0FrRjc5ZkE7RUFDSTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7QWxGZytmSjs7QWtGNzlmQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRmcrZko7O0FrRjc5ZkE7RUFDSTtBbEZnK2ZKOztBa0Y3OWZBO0VBQ0k7QWxGZytmSjs7QWtGNTlmQTtFQUNJO0lBQ0k7RWxGKzlmTjtBQUNGO0FrRjU5ZkE7RUFDSTtJQUNJO0VsRjg5Zk47RWtGMzlmRTtJQUNJO0VsRjY5Zk47RWtGMTlmRTtJQUNJO0VsRjQ5Zk47RWtGejlmRTtJQUNJO0VsRjI5Zk47QUFDRjtBa0Z4OWZBO0VBQ0k7SUFDSTtFbEYwOWZOO0FBQ0Y7QWtGdjlmQTtFQUNJO0lBQ0k7RWxGeTlmTjtFa0Z0OWZFO0lBQ0k7RWxGdzlmTjtFa0ZyOWZFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWxGdTlmTjtFa0ZwOWZFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEZzOWZOO0VrRm45ZkU7SUFDSTtJQUNBO0VsRnE5Zk47RWtGbDlmRTtJQUNJO0lBQ0E7RWxGbzlmTjtFa0ZqOWZFO0lBQ0k7SUFDQTtFbEZtOWZOO0VrRmg5ZkU7SUFDSTtFbEZrOWZOO0VrRi84ZkU7SUFDSTtFbEZpOWZOO0VrRjk4ZkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFbEZnOWZOO0VrRjc4ZkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWxGKzhmTjtFa0Y1OGZFO0lBQ0k7RWxGODhmTjtFa0YzOGZFO0lBQ0k7RWxGNjhmTjtFa0YxOGZFO0lBQ0k7SUFDQTtFbEY0OGZOO0VrRno4ZkU7SUFDSTtFbEYyOGZOO0VrRng4ZkU7O0lBR0k7SUFDQTtFbEZ5OGZOO0VrRnQ4ZkU7SUFDSTtFbEZ3OGZOO0VrRnI4ZkU7SUFDSTtFbEZ1OGZOO0VrRnA4ZkU7SUFFSTtFbEZxOGZOO0VrRmw4ZkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEZvOGZOO0VrRmo4ZkU7SUFDSTtJQUNBO0lBQ0E7RWxGbThmTjtFa0ZoOGZFO0lBQ0k7RWxGazhmTjtFa0YvN2ZFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsRmk4Zk47RWtGOTdmRTtJQUNJO0VsRmc4Zk47RWtGNzdmRTtJQUNJO0VsRis3Zk47RWtGNTdmRTtJQUNJO0lBQ0E7RWxGODdmTjtFa0YzN2ZFO0lBQ0k7RWxGNjdmTjtFa0YxN2ZFO0lBQ0k7SUFDQTtJQUNBO0VsRjQ3Zk47RWtGejdmRTtJQUNJO0VsRjI3Zk47RWtGeDdmRTtJQUNJO0lBQ0E7RWxGMDdmTjtFa0Z2N2ZFO0lBQ0k7RWxGeTdmTjtFa0Z0N2ZFO0lBQ0k7RWxGdzdmTjtFa0ZyN2ZFO0lBQ0k7RWxGdTdmTjtFa0ZwN2ZFO0lBQ0k7RWxGczdmTjtFa0ZuN2ZFO0lBQ0k7RWxGcTdmTjtFa0ZsN2ZFO0lBQ0k7RWxGbzdmTjtFa0ZqN2ZFO0lBQ0k7RWxGbTdmTjtFa0ZoN2ZFO0lBQ0k7SUFDQTtJQUNBO0VsRms3Zk47RWtGLzZmRTtJQUNJO0lBQ0E7RWxGaTdmTjtFa0Y5NmZFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsRmc3Zk47RWtGNzZmRTtJQUNJO0VsRis2Zk47RWtGaDdmRTtJQUNJO0VsRis2Zk47RWtGNTZmRTtJQUNJO0VsRjg2Zk47RWtGMzZmRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VsRjY2Zk47RWtGMTZmRTtJQUNJO0VsRjQ2Zk47QUFDRjtBa0Z4NmZBO0VBQ0k7SUFDSTtJQUNBO0VsRjA2Zk47RWtGdjZmRTtJQUNJO0VsRnk2Zk47RWtGdDZmRTtJQUNJO0lBQ0E7RWxGdzZmTjtFa0ZyNmZFO0lBQ0k7RWxGdTZmTjtFa0ZwNmZFO0lBQ0k7RWxGczZmTjtFa0ZuNmZFO0lBQ0k7RWxGcTZmTjtFa0ZsNmZFO0lBQ0k7RWxGbzZmTjtFa0ZqNmZFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VsRm02Zk47RWtGaDZmRTtJQUNJO0VsRms2Zk47RWtGLzVmRTtJQUNJO0VsRmk2Zk47RWtGOTVmRTtJQUNJO0lBQ0E7SUFFQTs7Ozs7Ozs7Ozs7OztNQUFBO0VsRjQ2Zk47RWtGNTVmRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWxGODVmTjtFa0Y1NWZNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEY4NWZWO0VrRjE1ZkU7SUFDSTtJQUNBO0lBQ0E7RWxGNDVmTjtFa0Z6NWZFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RWxGMjVmTjtFa0Z4NWZFO0lBQ0k7RWxGMDVmTjtBQUNGO0FtRm4waEJBO0VBQ0k7SUFDSTtFbkZxMGhCTjtBQUNGO0FtRm4waEJBO0VBQ0k7SUFDSTtJQUNBO0VuRnEwaEJOO0VtRm4waEJFO0lBQ0k7SUFDQTtFbkZxMGhCTjtBQUNGO0FtRm4waEJBO0VBQ0k7SUFDSTtFbkZxMGhCTjtFbUZuMGhCRTtJQUNJO0VuRnEwaEJOO0FBQ0Y7QW1GbjBoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GcTBoQko7O0FtRm4waEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GczBoQko7O0FtRnAwaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GdTBoQko7O0FtRnIwaEJBO0VBQ0k7QW5GdzBoQko7O0FtRnQwaEJBO0VBQ0k7QW5GeTBoQko7O0FtRnYwaEJBO0VBQ0k7QW5GMDBoQko7O0FtRngwaEJBO0VBQ0k7QW5GMjBoQko7O0FtRnowaEJBO0VBQ0k7QW5GNDBoQko7O0FtRjEwaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjYwaEJKOztBbUYzMGhCQTtFQUNJO0FuRjgwaEJKOztBbUY1MGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GKzBoQko7O0FtRjcwaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GZzFoQko7O0FtRjkwaEJBO0VBQ0k7QW5GaTFoQko7O0FtRi8waEJBO0VBQ0k7QW5GazFoQko7O0FtRmgxaEJBO0VBQ0k7SUFDSTtJQUNBO0VuRm0xaEJOO0FBQ0Y7QW1GajFoQkE7RUFDSTtJQUNJO0VuRm0xaEJOO0FBQ0Y7QW1GajFoQkE7RUFDSTtBbkZtMWhCSjs7QW1GajFoQkE7RUFDSTtBbkZvMWhCSjs7QW1GbDFoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZxMWhCSjs7QW1GbjFoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnMxaEJKOztBbUZwMWhCQTtFQUNJO0FuRnUxaEJKOztBbUZyMWhCQTtFQUNJO0FuRncxaEJKOztBbUZ0MWhCQTtFQUNJO0FuRnkxaEJKOztBbUZ2MWhCQTtFQUNJO0FuRjAxaEJKOztBbUZ4MWhCQTtFQUNJO0FuRjIxaEJKOztBbUZ6MWhCQTtFQUNJLG1CQTdKUztFQThKVDtBbkY0MWhCSjs7QW1GMTFoQkE7RUFDSTtBbkY2MWhCSjs7QW1GMzFoQkE7RUFDSSxtQkFwS1M7RUFxS1Q7QW5GODFoQko7O0FtRjUxaEJBO0VBQ0ksbUJBeEtTO0VBeUtUO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GKzFoQko7O0FtRjcxaEJBO0VBQ0k7RUFDQTtBbkZnMmhCSjs7QW1GOTFoQkE7RUFDSSxtQkExTFM7QW5GMmhpQmI7O0FtRi8xaEJBO0VBQ0k7RUFDQTtBbkZrMmhCSjs7QW1GaDJoQkE7RUFDSTtBbkZtMmhCSjs7QW1GajJoQkE7RUFDSTtBbkZvMmhCSjs7QW1GbDJoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkZxMmhCSjs7QW1GbjJoQkE7RUFDSTtBbkZzMmhCSjs7QW1GcDJoQkE7RUFDSTtBbkZ1MmhCSjs7QW1GcjJoQkE7RUFDSTtFQUNBO0FuRncyaEJKOztBbUZ0MmhCQTtFQUNJO0FuRnkyaEJKOztBbUZ2MmhCQTtFQUNJO0lBQ0k7RW5GMDJoQk47QUFDRjtBbUZ4MmhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRjAyaEJKOztBbUZ4MmhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GMjJoQko7O0FtRnoyaEJBO0VBQ0k7SUFDSTtFbkY0MmhCTjtBQUNGO0FtRjEyaEJBO0VBQ0k7RUFDQTtFQUNBO0FuRjQyaEJKOztBbUYxMmhCQTtFQUNJO0FuRjYyaEJKOztBbUYzMmhCQTtFQUNJO0FuRjgyaEJKOztBbUY1MmhCQTtFQUNJO0VBQ0E7RUFDQTtBbkYrMmhCSjs7QW1GNzJoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QW5GZzNoQko7O0FtRjkyaEJBO0VBQ0k7RUFDQTtFQUNBO0FuRmkzaEJKOztBbUYvMmhCQTtFQUNJO0VBQ0E7QW5GazNoQko7O0FtRmgzaEJBO0VBQ0k7QW5GbTNoQko7O0FtRmozaEJBO0VBQ0k7QW5GbzNoQko7O0FtRmwzaEJBO0VBQ0k7QW5GcTNoQko7O0FtRm4zaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GczNoQko7O0FtRnAzaEJBO0VBQ0k7RUFDQTtBbkZ1M2hCSjs7QW1GcjNoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnczaEJKOztBbUZ0M2hCQTtFQUNJO0FuRnkzaEJKOztBbUZ2M2hCQTtFQUNJO0FuRjAzaEJKOztBbUZ4M2hCQTtFQUNJO0FuRjIzaEJKOztBbUZ6M2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBbkY0M2hCSjs7QW1GMTNoQkE7RUFDSTtFQUNBO0VBQ0E7QW5GNjNoQko7O0FtRjMzaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkY4M2hCSjs7QW1GNTNoQkE7RUFDSTtBbkYrM2hCSjs7QW1GNzNoQkE7RUFDSTtFQUNBO0FuRmc0aEJKOztBbUY5M2hCQTtFQUNJO0FuRmk0aEJKOztBbUYvM2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZrNGhCSjs7QW1GaDRoQkE7RUFDSTtFQUNBO0FuRm00aEJKOztBbUZqNGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm80aEJKOztBbUZsNGhCQTtFQUNJO0FuRnE0aEJKOztBbUZuNGhCQTtFQUNJO0FuRnM0aEJKOztBbUZwNGhCQTtFQUNJO0FuRnU0aEJKOztBbUZyNGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GdzRoQko7O0FtRnQ0aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnk0aEJKOztBbUZ2NGhCQTtFQUNJLG1CQW5hUztBbkY2eWlCYjs7QW1GeDRoQkE7RUFDSTtFQUNBO0FuRjI0aEJKOztBbUZ6NGhCQTtFQUNJO0FuRjQ0aEJKOztBbUYxNGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjY0aEJKOztBbUYzNGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0ExYlM7RUEyYlQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjg0aEJKOztBbUY1NGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0VBQ0E7RUFDQTtBbkYrNGhCSjs7QW1GNzRoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0FuRmc1aEJKOztBbUY5NGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0VBQ0E7QW5GaTVoQko7O0FtRi80aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0FuRms1aEJKOztBbUZoNWhCQTtFQUNJO0VBQ0E7RUFDQTtBbkZtNWhCSjs7QW1GajVoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQUE7RUFFQTtFQUNBO0FuRm81aEJKOztBbUZsNWhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUVBO0FuRnE1aEJKOztBbUZuNWhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUVBO0VBQ0E7QW5GczVoQko7O0FtRnA1aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0VBQ0E7QW5GdTVoQko7O0FtRnI1aEJBO0VBQ0k7QW5GdzVoQko7O0FtRnQ1aEJBO0VBQ0k7QW5GeTVoQko7O0FtRnY1aEJBO0VBQ0k7QW5GMDVoQko7O0FtRng1aEJBO0VBQ0k7RUFDQTtBbkYyNWhCSjs7QW1GejVoQkE7RUFDSTtFQUNBO0FuRjQ1aEJKOztBbUYxNWhCQTtFQUNJO0VBQ0E7QW5GNjVoQko7O0FtRjM1aEJBO0VBQ0k7QW5GODVoQko7O0FtRjU1aEJBO0VBQ0k7QW5GKzVoQko7O0FtRjc1aEJBO0VBQ0k7QW5GZzZoQko7O0FtRjk1aEJBO0VBQ0k7QW5GaTZoQko7O0FtRi81aEJBO0VBQ0k7QW5GazZoQko7O0FtRmg2aEJBO0VBQ0k7QW5GbTZoQko7O0FtRmo2aEJBO0VBQ0k7QW5GbzZoQko7O0FtRmw2aEJBO0VBQ0k7QW5GcTZoQko7O0FtRm42aEJBO0VBQ0k7QW5GczZoQko7O0FtRnA2aEJBO0VBQ0k7QW5GdTZoQko7O0FtRnI2aEJBO0VBQ0k7QW5GdzZoQko7O0FtRnQ2aEJBO0VBQ0k7QW5GeTZoQko7O0FtRnY2aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjA2aEJKOztBbUZ4NmhCQTtFQUNJO0FuRjI2aEJKOztBbUZ6NmhCQTtFQUNJO0FuRjQ2aEJKOztBbUYxNmhCQTtFQUNJO0VBQ0E7QW5GNjZoQko7O0FtRjM2aEJBO0VBQ0k7SUFDSTtFbkY4NmhCTjtBQUNGO0FtRjU2aEJBO0VBQ0k7QW5GODZoQko7O0FtRjU2aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GKzZoQko7O0FtRjc2aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZnN2hCSjs7QW1GOTZoQkE7RUFDSTtFQUNBO0FuRmk3aEJKOztBbUYvNmhCQTtFQUNJO0FuRms3aEJKOztBbUZoN2hCQTtFQUNJO0VBQ0E7RUFDQTtBbkZtN2hCSjs7QW1GajdoQkE7RUFDSTtBbkZvN2hCSjs7QW1GbDdoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkZxN2hCSjs7QW1GbjdoQkE7RUFDSTtFQUNBO0VBQ0E7QW5GczdoQko7O0FtRnA3aEJBO0VBQ0k7QW5GdTdoQko7O0FtRnI3aEJBO0VBQ0k7RUFDQTtBbkZ3N2hCSjs7QW1GdDdoQkE7RUFDSTtBbkZ5N2hCSjs7QW1GdjdoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjA3aEJKOztBbUZ4N2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRjI3aEJKOztBbUZ6N2hCQTtFQUNJO0VBQ0E7RUFDQTtBbkY0N2hCSjs7QW1GMTdoQkE7RUFDSTtFQUNBO0FuRjY3aEJKOztBbUYzN2hCQTtFQUNJO0VBQ0E7QW5GODdoQko7O0FtRjU3aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GKzdoQko7O0FtRjc3aEJBO0VBQ0k7QW5GZzhoQko7O0FtRjk3aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZpOGhCSjs7QW1GLzdoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GazhoQko7O0FtRmg4aEJBO0VBQ0ksbUJBdHZCUztBbkZ5cmpCYjs7QW1GajhoQkE7RUFDSTtFQUNBO0FuRm84aEJKOztBbUZsOGhCQTtFQUNJO0FuRnE4aEJKOztBbUZuOGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnM4aEJKOztBbUZwOGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0E3d0JTO0VBOHdCVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GdThoQko7O0FtRnI4aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0FuRnc4aEJKOztBbUZ0OGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQUE7RUFDQTtFQUNBO0VBQ0E7QW5GeThoQko7O0FtRnY4aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtBbkYwOGhCSjs7QW1GeDhoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7QW5GMjhoQko7O0FtRno4aEJBO0VBQ0k7RUFDQTtFQUNBO0FuRjQ4aEJKOztBbUYxOGhCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUVBO0VBQ0E7QW5GNjhoQko7O0FtRjM4aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBRUE7QW5GODhoQko7O0FtRjU4aEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBRUE7RUFDQTtBbkYrOGhCSjs7QW1GNzhoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtBbkZnOWhCSjs7QW1GOThoQkE7RUFDSTtBbkZpOWhCSjs7QW1GLzhoQkE7RUFDSTtBbkZrOWhCSjs7QW1GaDloQkE7RUFDSTtBbkZtOWhCSjs7QW1GajloQkE7RUFDSTtFQUNBO0FuRm85aEJKOztBbUZsOWhCQTtFQUNJO0VBQ0E7QW5GcTloQko7O0FtRm45aEJBO0VBQ0k7RUFDQTtBbkZzOWhCSjs7QW1GcDloQkE7RUFDSTtBbkZ1OWhCSjs7QW1GcjloQkE7RUFDSTtBbkZ3OWhCSjs7QW1GdDloQkE7RUFDSTtBbkZ5OWhCSjs7QW1GdjloQkE7RUFDSTtBbkYwOWhCSjs7QW1GeDloQkE7RUFDSTtBbkYyOWhCSjs7QW1GejloQkE7RUFDSTtBbkY0OWhCSjs7QW1GMTloQkE7RUFDSTtBbkY2OWhCSjs7QW1GMzloQkE7RUFDSTtBbkY4OWhCSjs7QW1GNTloQkE7RUFDSTtBbkYrOWhCSjs7QW1GNzloQkE7RUFDSTtBbkZnK2hCSjs7QW1GOTloQkE7RUFDSTtBbkZpK2hCSjs7QW1GLzloQkE7RUFDSTtBbkZrK2hCSjs7QW1GaCtoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GbStoQko7O0FtRmoraEJBO0VBQ0k7RUFDQTtBbkZvK2hCSjs7QW1GbCtoQkE7RUFDSTtBbkZxK2hCSjs7QW1GbitoQkE7RUFDSTtFQUNBO0FuRnMraEJKOztBbUZwK2hCQTtFQUNJO0lBQ0k7RW5GdStoQk47QUFDRjtBbUZyK2hCQTtFQUNJO0FuRnUraEJKOztBbUZyK2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRncraEJKOztBbUZ0K2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GeStoQko7O0FtRnYraEJBO0VBQ0k7RUFDQTtBbkYwK2hCSjs7QW1GeCtoQkE7RUFDSTtBbkYyK2hCSjs7QW1GeitoQkE7RUFDSTtFQUNBO0VBQ0E7QW5GNCtoQko7O0FtRjEraEJBO0VBQ0k7QW5GNitoQko7O0FtRjMraEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GOCtoQko7O0FtRjUraEJBO0VBQ0k7RUFDQTtFQUNBO0FuRisraEJKOztBbUY3K2hCQTtFQUNJO0FuRmcvaEJKOztBbUY5K2hCQTtFQUNJO0VBQ0E7QW5GaS9oQko7O0FtRi8raEJBO0VBQ0k7QW5Gay9oQko7O0FtRmgvaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZtL2hCSjs7QW1Gai9oQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkZvL2hCSjs7QW1GbC9oQkE7RUFDSTtFQUNBO0VBQ0E7QW5GcS9oQko7O0FtRm4vaEJBO0VBQ0k7RUFDQTtBbkZzL2hCSjs7QW1GcC9oQkE7RUFDSTtFQUNBO0FuRnUvaEJKOztBbUZyL2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRncvaEJKOztBbUZ0L2hCQTtFQUNJO0VBQ0E7RUFBQTtBbkZ5L2hCSjs7QW1Gdi9oQkE7RUFDSTtFQUNBO0VBQ0E7QW5GMC9oQko7O0FtRngvaEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFBQTtBbkYyL2hCSjs7QW1Gei9oQkE7RUFDSTtFQUNBO0VBQUE7QW5GNC9oQko7O0FtRjEvaEJBO0VBQ0k7RUFDQTtBbkY2L2hCSjs7QW1GMy9oQkE7RUFDSTtBbkY4L2hCSjs7QW1GNS9oQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRisvaEJKOztBbUY3L2hCQTtFQUNJO0FuRmdnaUJKOztBbUY5L2hCQTtFQUNJO0FuRmlnaUJKOztBbUYvL2hCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRmtnaUJKOztBbUZoZ2lCQTtFQUNJO0VBQ0E7RUFDQTtBbkZtZ2lCSjs7QW1GamdpQkE7RUFDSTtJQUNJO0VuRm9naUJOO0FBQ0Y7QW1GbGdpQkE7RUFDSTtJQUNJO0VuRm9naUJOO0FBQ0Y7QW1GbGdpQkE7RUFDSTtBbkZvZ2lCSjs7QW1GbGdpQkE7RUFDSTtBbkZxZ2lCSjs7QW1GOStoQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnlnaUJKOztBbUY5L2hCQTtFQUNJO0FuRjZnaUJKOztBbUYvL2hCQTtFQUNJO0VBQ0E7QW5GaWhpQko7O0FtRnRnaUJBO0VBQ0k7QW5GcWhpQko7O0FtRnBnaUJBO0VBQ0k7RUFDQTtFQUNBO0FuRnloaUJKOztBbUY5Z2lCQTtFQUNJO0FuRjZoaUJKOztBbUZsaGlCQTtFQUNJO0FuRmlpaUJKOztBbUZ0aGlCQTtFQUNJO0FuRnFpaUJKOztBbUZuaWlCQTtFQVVJO0lBQ0k7RW5Gc2lpQk47QUFDRjtBbUZwaWlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5Gc2lpQko7O0FtRnBpaUJBO0VBQ0k7QW5GdWlpQko7O0FtRnJpaUJBO0VBQ0k7RUFDQTtBbkZ3aWlCSjs7QW1GdGlpQkE7RUFDSTtBbkZ5aWlCSjs7QW1GdmlpQkE7RUFDSTtFQUNBO0VBQ0E7QW5GMGlpQko7O0FtRnhpaUJBO0VBQ0k7QW5GMmlpQko7O0FtRnppaUJBO0VBQ0k7QW5GNGlpQko7O0FtRjFpaUJBO0VBQ0k7QW5GNmlpQko7O0FtRjNpaUJBO0VBQ0k7SUFDSTtFbkY4aWlCTjtBQUNGO0FtRjVpaUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkY4aWlCSjs7QW1GNWlpQkE7RUFDSTtBbkYraWlCSjs7QW1GN2lpQkE7RUFDSTtFQUNBO0FuRmdqaUJKOztBbUY5aWlCQTtFQUNJO0FuRmlqaUJKOztBbUYvaWlCQTtFQUNJO0VBQ0E7RUFDQTtBbkZramlCSjs7QW1GaGppQkE7RUFDSTtBbkZtamlCSjs7QW1GamppQkE7RUFDSTtBbkZvamlCSjs7QW1GbGppQkE7RUFDSTtBbkZxamlCSjs7QW1GbmppQkE7RUFDSTtJQUNJO0VuRnNqaUJOO0FBQ0Y7QW1GcGppQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnNqaUJKOztBbUZwamlCQTtFQUNJO0FuRnVqaUJKOztBbUZyamlCQTtFQUNJO0VBQ0E7QW5Gd2ppQko7O0FtRnRqaUJBO0VBQ0k7QW5GeWppQko7O0FtRnZqaUJBO0VBQ0k7RUFDQTtFQUNBO0FuRjBqaUJKOztBbUZ4amlCQTtFQUNJO0FuRjJqaUJKOztBbUZ6amlCQTtFQUNJO0FuRjRqaUJKOztBbUYxamlCQTtFQUNJO0FuRjZqaUJKOztBbUYzamlCQTtFQUNJO0lBQ0k7RW5GOGppQk47QUFDRjtBbUY1amlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GOGppQko7O0FtRjVqaUJBO0VBQ0k7QW5GK2ppQko7O0FtRjdqaUJBO0VBQ0k7RUFDQTtBbkZna2lCSjs7QW1GOWppQkE7RUFDSTtBbkZpa2lCSjs7QW1GL2ppQkE7RUFDSTtFQUNBO0VBQ0E7QW5Ga2tpQko7O0FtRmhraUJBO0VBQ0k7QW5GbWtpQko7O0FtRmpraUJBO0VBQ0k7QW5Gb2tpQko7O0FtRmxraUJBO0VBQ0k7QW5GcWtpQko7O0FtRm5raUJBO0VBQ0k7SUFDSTtFbkZza2lCTjtBQUNGO0FtRnBraUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnNraUJKOztBbUZwa2lCQTtFQUNJO0VBQ0E7RUFDQTtBbkZ1a2lCSjs7QW1GcmtpQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRndraUJKOztBbUZ0a2lCQTtFQUNJO0FuRnlraUJKOztBbUZ2a2lCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjBraUJKOztBbUZ4a2lCQTtFQUNJO0FuRjJraUJKOztBbUZ6a2lCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjRraUJKOztBbUYxa2lCQTtFQUNJO0FuRjZraUJKOztBb0Z6aGxCQTtFQUNJO0FwRjRobEJKOztBb0Z6aGxCQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGMmhsQko7O0FvRnZobEJBO0VBRUk7RUFDQTtBcEZ5aGxCSjs7QW9GdGhsQkE7RUFFSTtBcEZ3aGxCSjs7QW9GcmhsQkE7RUFDSTtBcEZ3aGxCSjs7QW9GcGhsQkE7RUFFSTtFQUNBO0VBQ0E7QXBGc2hsQko7O0FxRjlqbEJBO0VBQ0c7SUFDSztJQUNBO0lBQ0E7SUFDQTtFckZpa2xCTjtBQUNGO0FxRjlqbEJBO0VBQ0k7SUFDSTtJQUNBO0VyRmdrbEJOO0FBQ0Y7QXFGNWpsQkE7RUFDSTtJQUNJO0lBQ0E7RXJGOGpsQk47RXFGM2psQkU7SUFDSTtJQUNBO0VyRjZqbEJOO0FBQ0Y7QXFGMWpsQkE7RUFDSTtJQUNJO0VyRjRqbEJOO0FBQ0Y7QXFGMWpsQkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VyRjRqbEJOO0VxRjFqbEJFO0lBQ0k7SUFDQTtFckY0amxCTjtFcUZ6amxCRTtJQUNJO0VyRjJqbEJOO0VxRnhqbEJFO0lBQ0k7RXJGMGpsQk47RXFGdmpsQkU7SUFDSTtFckZ5amxCTjtFcUZ0amxCRTtJQUNJO0VyRndqbEJOO0VxRnJqbEJFO0lBQ0k7SUFDQTtFckZ1amxCTjtFcUZwamxCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGc2psQk47RXFGbmpsQkU7SUFDSTtFckZxamxCTjtFcUZsamxCRTtJQUNJO0VyRm9qbEJOO0VxRmpqbEJFO0lBQ0k7RXJGbWpsQk47QUFDRjtBcUZoamxCQTtFQUNJO0lBQ0k7RXJGa2psQk47RXFGL2lsQkU7SUFDSTtFckZpamxCTjtFcUY5aWxCRTtJQUNJO0VyRmdqbEJOO0FBQ0Y7QXFGN2lsQkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGK2lsQk47RXFGNWlsQkU7SUFDSTtFckY4aWxCTjtFcUYzaWxCRTtJQUNJO0VyRjZpbEJOO0FBQ0Y7QXFGMWlsQkE7RUFFSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFckYyaWxCTjtBQUNGO0FxRnhpbEJBO0VBQ0k7SUFDSTtJQUNBO0VyRjBpbEJOO0VxRnZpbEJFO0lBQ0k7SUFDQTtFckZ5aWxCTjtFcUZ0aWxCRTtJQUNJO0VyRndpbEJOO0VxRnJpbEJFO0lBQ0k7RXJGdWlsQk47QUFDRjtBcUZwaWxCQTtFQUNJO0lBQ0k7SUFDQTtJQUNBO0VyRnNpbEJOO0VxRm5pbEJFO0lBQ0k7RXJGcWlsQk47RXFGbGlsQkU7SUFDSTtFckZvaWxCTjtFcUZqaWxCRTtJQUNJO0VyRm1pbEJOO0VxRmhpbEJFO0lBQ0k7RXJGa2lsQk47QUFDRjtBcUYvaGxCQTtFQUNJO0lBQ0k7RXJGaWlsQk47RXFGOWhsQkU7SUFDSTtFckZnaWxCTjtFcUY3aGxCRTtJQUNJO0VyRitobEJOO0VxRjVobEJFO0lBQ0k7RXJGOGhsQk47QUFDRjtBcUYzaGxCQTtFQUNJO0lBQ0k7RXJGNmhsQk47RXFGMWhsQkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFckY0aGxCTjtFcUZ6aGxCRTtJQUNJO0VyRjJobEJOO0VxRnhobEJFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RXJGMGhsQk47RXFGdmhsQkU7SUFDSTtFckZ5aGxCTjtFcUZ0aGxCRTtJQUNJO0VyRndobEJOO0VxRnJobEJFO0lBQ0k7RXJGdWhsQk47RXFGcGhsQkU7SUFDSTtFckZzaGxCTjtFcUZuaGxCRTtJQUNJO0VyRnFobEJOO0VxRmxobEJFO0lBQ0k7RXJGb2hsQk47RXFGamhsQkU7SUFDSTtFckZtaGxCTjtFcUZoaGxCRTtJQUNJO0VyRmtobEJOO0VxRi9nbEJFO0lBQ0k7RXJGaWhsQk47QUFDRjtBcUY5Z2xCQTtFQUNJO0lBQ0k7RXJGZ2hsQk47RXFGN2dsQkU7SUFDSTtFckYrZ2xCTjtFcUY1Z2xCRTtJQUNJO0VyRjhnbEJOO0VxRjNnbEJFO0lBQ0k7RXJGNmdsQk47RXFGMWdsQkU7SUFDSTtJQUNBO0lBQ0E7RXJGNGdsQk47RXFGemdsQkU7SUFDSTtFckYyZ2xCTjtFcUZ4Z2xCRTtJQUNJO0VyRjBnbEJOO0VxRnZnbEJFO0lBQ0k7RXJGeWdsQk47RXFGdGdsQkU7SUFDSTtFckZ3Z2xCTjtFcUZyZ2xCRTtJQUNJO0VyRnVnbEJOO0VxRnBnbEJFO0lBQ0k7RXJGc2dsQk47RXFGbmdsQkU7SUFDSTtFckZxZ2xCTjtFcUZsZ2xCRTtJQUNJO0lBQ0E7SUFDQTtFckZvZ2xCTjtFcUZqZ2xCRTtJQUNJO0VyRm1nbEJOO0VxRmhnbEJFO0lBQ0k7RXJGa2dsQk47RXFGLy9rQkU7SUFDSTtFckZpZ2xCTjtFcUY5L2tCRTtJQUNJO0VyRmdnbEJOO0VxRjcva0JFO0lBQ0k7SUFDQTtFckYrL2tCTjtFcUY1L2tCRTtJQUNJO0VyRjgva0JOO0VxRjMva0JFO0lBQ0k7RXJGNi9rQk47QUFDRjtBcUYxL2tCQTtFQUNJO0lBQ0k7SUFDQTtFckY0L2tCTjtFcUZ6L2tCRTtJQUNJO0lBQ0E7RXJGMi9rQk47RXFGeC9rQkU7SUFDSTtFckYwL2tCTjtFcUZ2L2tCRTtJQUNJO0lBQ0E7RXJGeS9rQk47QUFDRjtBcUZ0L2tCQTtFQUNJO0lBQ0k7SUFDQTtFckZ3L2tCTjtFcUZyL2tCRTtJQUNJO0lBQ0E7RXJGdS9rQk47RXFGcC9rQkU7SUFDSTtJQUNBO0VyRnMva0JOO0VxRm4va0JFO0lBQ0k7SUFDQTtFckZxL2tCTjtFcUZsL2tCRTtJQUNJO0VyRm8va0JOO0VxRmova0JFO0lBQ0k7SUFDQTtJQUNBO0VyRm0va0JOO0VxRmgva0JFO0lBQ0k7RXJGay9rQk47RXFGLytrQkU7SUFDSTtFckZpL2tCTjtFcUY5K2tCRTtJQUNJO0lBQ0E7RXJGZy9rQk47RXFGNytrQkU7SUFDSTtJQUNBO0VyRisra0JOO0VxRjUra0JFO0lBQ0k7RXJGOCtrQk47RXFGMytrQkU7SUFDSTtFckY2K2tCTjtBQUNGO0FxRjEra0JBO0VBQ0k7SUFDSTtFckY0K2tCTjtBQUNGO0FxRnora0JBO0VBQ0k7SUFDSTtFckYyK2tCTjtFcUZ4K2tCRTtJQUNJO0VyRjAra0JOO0VxRnYra0JFO0lBQ0k7RXJGeStrQk47RXFGdCtrQkU7SUFDSTtJQUNBO0VyRncra0JOO0VxRnIra0JFO0lBQ0k7RXJGdStrQk47QUFDRjtBcUZwK2tCQTtFQUNJO0lBQ0k7RXJGcytrQk47RXFGbitrQkU7SUFDSTtFckZxK2tCTjtFcUZsK2tCRTtJQUNJO0VyRm8ra0JOO0VxRmora0JFO0lBQ0k7RXJGbStrQk47RXFGaCtrQkU7SUFDSTtJQUNBO0lBQ0E7RXJGaytrQk47RXFGLzlrQkU7SUFDSTtFckZpK2tCTjtFcUY5OWtCRTtJQUNJO0lBQ0E7RXJGZytrQk47RXFGNzlrQkU7SUFDSTtFckYrOWtCTjtFcUY1OWtCRTtJQUNJO0VyRjg5a0JOO0VxRjM5a0JFO0lBQ0U7RXJGNjlrQko7QUFDRjtBcUYxOWtCQTtFQUNJO0lBQ0k7SUFDQTtFckY0OWtCTjtFcUZ6OWtCRTtJQUNJO0lBQ0E7RXJGMjlrQk47RXFGeDlrQkU7SUFDSTtJQUNBO0VyRjA5a0JOO0VxRnY5a0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFckZ5OWtCTjtFcUZ0OWtCRTtJQUNJO0VyRnc5a0JOO0VxRnI5a0JFO0lBQ0k7RXJGdTlrQk47RXFGcDlrQkU7SUFDSTtJQUNBO0lBQ0E7RXJGczlrQk47RXFGbjlrQkU7SUFDSTtFckZxOWtCTjtFcUZsOWtCRTtJQUNJO0VyRm85a0JOO0VxRmo5a0JFO0lBQ0k7SUFDQTtFckZtOWtCTjtFcUZoOWtCRTtJQUNJO0VyRms5a0JOO0VxRi84a0JNO0lBQ0E7SUFDQTtJQUNBO0lBQ0M7RXJGaTlrQlA7RXFGOThrQkU7SUFDSTtJQUNBO0VyRmc5a0JOO0VxRjc4a0JFO0lBQ0k7SUFDQTtFckYrOGtCTjtBQUNGO0FxRjU4a0JBO0VBQ0k7SUFDSTtFckY4OGtCTjtFcUYzOGtCRTtJQUNJO0VyRjY4a0JOO0FBQ0Y7QXFGejhrQkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VyRjI4a0JOO0VxRng4a0JFO0lBQ0k7SUFDQTtJQUNBO0VyRjA4a0JOO0VxRnY4a0JFO0lBQ0k7RXJGeThrQk47RXFGdDhrQkU7SUFDSTtFckZ3OGtCTjtFcUZyOGtCRTtJQUNJO0VyRnU4a0JOO0VxRnA4a0JFO0lBQ0k7SUFDQTtFckZzOGtCTjtFcUZuOGtCRTtJQUNJO0VyRnE4a0JOO0FBQ0Y7QXFGbDhrQkE7RUFDSTtJQUNJO0lBQ0E7RXJGbzhrQk47RXFGajhrQkU7SUFDSTtJQUNBO0VyRm04a0JOO0VxRmg4a0JFO0lBQ0k7SUFDQTtFckZrOGtCTjtFcUYvN2tCRTtJQUNJO0lBQ0E7SUFDQTtFckZpOGtCTjtFcUY5N2tCRTtJQUNJO0lBQ0E7RXJGZzhrQk47RXFGNzdrQkU7SUFDSTtFckYrN2tCTjtFcUY1N2tCRTtJQUNJO0lBQ0E7SUFDQTtFckY4N2tCTjtFcUYzN2tCRTtJQUNJO0lBQ0E7SUFDQTtFckY2N2tCTjtFcUYxN2tCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VyRjQ3a0JOO0VxRno3a0JFO0lBQ0k7RXJGMjdrQk47RXFGeDdrQkU7SUFDSTtFckYwN2tCTjtFcUZ2N2tCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VyRnk3a0JOO0VxRnQ3a0JFO0lBQ0k7RXJGdzdrQk47RXFGcjdrQkU7SUFDSTtJQUNBO0VyRnU3a0JOO0VxRnA3a0JFO0lBQ0k7RXJGczdrQk47RXFGbjdrQkU7SUFDSTtFckZxN2tCTjtFcUZsN2tCRTtJQUNJO0VyRm83a0JOO0VxRmo3a0JFO0lBQ0k7SUFDQTtJQUNBO0VyRm03a0JOO0VxRmg3a0JFO0lBQ0k7SUFDQTtFckZrN2tCTjtFcUYvNmtCRTtJQUNJO0lBQ0E7RXJGaTdrQk47RXFGOTZrQkU7SUFDSTtJQUNBO0VyRmc3a0JOO0VxRjc2a0JFO0lBQ0k7RXJGKzZrQk47RXFGNTZrQkU7SUFDSTtJQUNBO0VyRjg2a0JOO0VxRjM2a0JFO0lBQ0k7RXJGNjZrQk47RXFGMTZrQkU7SUFDSTtJQUNBO0VyRjQ2a0JOO0VxRno2a0JFO0lBQ0k7RXJGMjZrQk47QUFDRjtBcUZ4NmtCQTtFQUNJO0lBQ0k7SUFDQTtFckYwNmtCTjtFcUZ2NmtCRTtJQUNJO0VyRnk2a0JOO0VxRnQ2a0JFO0lBQ0k7SUFDQTtFckZ3NmtCTjtFcUZyNmtCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VyRnU2a0JOO0VxRnA2a0JFO0lBQ0k7SUFDQTtFckZzNmtCTjtFcUZuNmtCRTtJQUNJO0VyRnE2a0JOO0VxRmw2a0JFO0lBQ0k7RXJGbzZrQk47RXFGajZrQkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFckZtNmtCTjtFcUZoNmtCRTtJQUNJO0lBQ0E7SUFDQTtFckZrNmtCTjtFcUYvNWtCRTtJQUNJO0VyRmk2a0JOO0VxRjk1a0JFO0lBQ0k7SUFDQTtFckZnNmtCTjtFcUY3NWtCRTtJQUNJO0VyRis1a0JOO0VxRjU1a0JFO0lBQ0k7RXJGODVrQk47RXFGMzVrQkU7SUFDSTtFckY2NWtCTjtFcUYxNWtCRTtJQUNJO0VyRjQ1a0JOO0VxRno1a0JFO0lBQ0k7RXJGMjVrQk47RXFGeDVrQkU7SUFDSTtFckYwNWtCTjtFcUZ2NWtCRTtJQUNJO0VyRnk1a0JOO0VxRnQ1a0JFO0lBQ0k7SUFDQTtFckZ3NWtCTjtFcUZyNWtCRTtJQUNJO0VyRnU1a0JOO0VxRnA1a0JFO0lBQ0k7RXJGczVrQk47RXFGbjVrQkU7SUFDSTtFckZxNWtCTjtFcUZsNWtCRTtJQUNJO0VyRm81a0JOO0VxRmo1a0JFO0lBQ0k7RXJGbTVrQk47RXFGaDVrQkU7SUFDSTtFckZrNWtCTjtFcUYvNGtCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGaTVrQk47RXFGOTRrQkU7SUFDSTtFckZnNWtCTjtFcUY3NGtCRTtJQUNJO0lBQ0E7SUFDQTtFckYrNGtCTjtFcUY1NGtCRTtJQUNJO0VyRjg0a0JOO0VxRjM0a0JFO0lBQ0k7RXJGNjRrQk47RXFGMTRrQkU7SUFDSTtFckY0NGtCTjtFcUZ6NGtCRTtJQUNJO0VyRjI0a0JOO0VxRng0a0JFO0lBQ0k7RXJGMDRrQk47RXFGdjRrQkU7SUFDSTtFckZ5NGtCTjtFcUZ0NGtCRTtJQUNJO0lBQ0E7SUFDQTtFckZ3NGtCTjtFcUZyNGtCRTtJQUNJO0lBQ0E7SUFDQTtFckZ1NGtCTjtFcUZwNGtCRTtJQUNJO0lBQ0E7T0FBQTtJQUNBO0VyRnM0a0JOO0VxRm40a0JFO0lBQ0k7SUFDQTtFckZxNGtCTjtFcUZsNGtCRTtJQUNJO0lBQ0E7RXJGbzRrQk47RXFGajRrQkU7SUFDSTtFckZtNGtCTjtFcUZoNGtCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGazRrQk47RXFGLzNrQkU7SUFDSTtFckZpNGtCTjtFcUY5M2tCRTtJQUNJO0VyRmc0a0JOO0VxRjcza0JFO0lBQ0k7RXJGKzNrQk47RXFGNTNrQkU7SUFDSTtFckY4M2tCTjtFcUYzM2tCRTtJQUNJO0VyRjYza0JOO0VxRjEza0JFO0lBQ0k7RXJGNDNrQk47RXFGejNrQkU7SUFDSTtFckYyM2tCTjtFcUZ4M2tCRTtJQUNJO0VyRjAza0JOO0VxRnYza0JFO0lBQ0k7RXJGeTNrQk47RXFGdDNrQkU7SUFDSTtFckZ3M2tCTjtFcUZyM2tCRTtJQUNJO0VyRnUza0JOO0VxRnAza0JFO0lBQ0k7RXJGczNrQk47RXFGbjNrQkU7Ozs7Ozs7Ozs7OztJQUFBO0VBY0E7SUFDSTtFckZvM2tCTjtFcUZqM2tCRTtJQUNJO0VyRm0za0JOO0VxRmgza0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFckZrM2tCTjtFcUYvMmtCRTtJQUNJO0lBQ0E7RXJGaTNrQk47RXFGOTJrQkU7SUFDSTtJQUNBO0VyRmcza0JOO0VxRjcya0JFO0lBQ0k7SUFDQTtFckYrMmtCTjtFcUY1MmtCRTtJQUNJO0lBQ0E7RXJGODJrQk47RXFGMzJrQkU7SUFDSTtJQUNBO0VyRjYya0JOO0VxRjEya0JFO0lBQ0k7RXJGNDJrQk47RXFGejJrQkU7SUFDSTtFckYyMmtCTjtFcUZ4MmtCRTtJQUNJO0lBQ0E7SUFDQTtFckYwMmtCTjtFcUZ2MmtCRTtJQUNJO0VyRnkya0JOO0VxRnQya0JFO0lBQ0k7SUFDQTtFckZ3MmtCTjtFcUZyMmtCRTtJQUNJO0lBQ0E7RXJGdTJrQk47RXFGcDJrQkU7SUFDSTtFckZzMmtCTjtFcUZuMmtCRTtJQUNJO0lBQ0E7RXJGcTJrQk47RXFGbDJrQkU7SUFDSTtFckZvMmtCTjtFcUZqMmtCRTtJQUNJO0VyRm0ya0JOO0VxRmgya0JFO0lBQ0k7SUFDQTtFckZrMmtCTjtFcUYvMWtCRTtJQUNJO0VyRmkya0JOO0VxRjkxa0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRmcya0JOO0VxRjcxa0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRisxa0JOO0VxRjUxa0JFO0lBQ0k7RXJGODFrQk47RXFGMzFrQkU7SUFDSTtJQUNBO0VyRjYxa0JOO0VxRjExa0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGNDFrQk47RXFGejFrQkU7SUFDSTtFckYyMWtCTjtFcUZ4MWtCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRjAxa0JOO0VxRnYxa0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGeTFrQk47RXFGdDFrQkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGdzFrQk47RXFGcjFrQkU7SUFDSTtFckZ1MWtCTjtFcUZwMWtCRTtJQUNJO0lBQ0E7RXJGczFrQk47RXFGbjFrQkU7SUFDSTtFckZxMWtCTjtFcUZsMWtCRTtJQUNJO0VyRm8xa0JOO0VxRmoxa0JFO0lBQ0k7SUFDQTtJQUNBO0VyRm0xa0JOO0VxRmgxa0JFO0lBQ0k7RXJGazFrQk47RXFGLzBrQkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRmkxa0JOO0VxRjkwa0JFO0lBQ0k7RXJGZzFrQk47RXFGNzBrQkU7SUFDSTtFckYrMGtCTjtFcUY1MGtCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRjgwa0JOO0VxRjMwa0JFO0lBQ0k7RXJGNjBrQk47RXFGMTBrQkU7SUFDSTtJQUNBO0VyRjQwa0JOO0VxRnowa0JFO0lBQ0k7RXJGMjBrQk47RXFGeDBrQkU7SUFDSTtJQUNBO0lBQ0E7T0FBQTtJQUNBO0VyRjAwa0JOO0VxRnYwa0JFO0lBQ0k7SUFDQTtJQUNBO0VyRnkwa0JOO0VxRnQwa0JFO0lBQ0k7SUFDQTtFckZ3MGtCTjtFcUZyMGtCRTtJQUNJO0VyRnUwa0JOO0VxRnAwa0JFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRnMwa0JOO0VxRm4wa0JFO0lBQ0k7SUFDQTtFckZxMGtCTjtFcUZsMGtCRTtJQUNJO0VyRm8wa0JOO0VxRmowa0JFO0lBQ0k7SUFDQTtJQUNBO0VyRm0wa0JOO0VxRmgwa0JFO0lBQ0k7RXJGazBrQk47RXFGL3prQkU7SUFDSTtFckZpMGtCTjtFcUY5emtCRTtJQUNJO0VyRmcwa0JOO0VxRjd6a0JFO0lBQ0k7SUFDQTtFckYremtCTjtFcUY1emtCRTtJQUNJO0VyRjh6a0JOO0VxRjN6a0JFO0lBQ0U7SUFDQTtFckY2emtCSjtFcUYxemtCRTtJQUNJO0VyRjR6a0JOO0VxRnp6a0JFO0lBQ0k7RXJGMnprQk47RXFGeHprQkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFckYwemtCTjtFcUZ2emtCRTtJQUNJO0VyRnl6a0JOO0VxRnR6a0JFO0lBQ0k7RXJGd3prQk47RXFGcnprQkU7SUFDSTtJQUNBO0lBQ0E7RXJGdXprQk47QUFDRjtBcUZwemtCQTtFQUNJO0lBQ0k7SUFDQTtFckZzemtCTjtFcUZuemtCRTtJQUNJO0lBQ0E7RXJGcXprQk47RXFGbnprQkU7SUFDSTtJQUNBO0VyRnF6a0JOO0VxRmx6a0JFO0lBQ0k7SUFDQTtFckZvemtCTjtFcUZqemtCRTtJQUNJO0VyRm16a0JOO0VxRmh6a0JFO0lBQ0k7RXJGa3prQk47RXFGL3lrQkU7SUFDSTtFckZpemtCTjtFcUY5eWtCRTtJQUNJO0lBQ0E7RXJGZ3prQk47RXFGN3lrQkU7SUFDSTtFckYreWtCTjtFcUY1eWtCRTtJQUNJO0VyRjh5a0JOO0VxRjN5a0JFO0lBQ0k7RXJGNnlrQk47RXFGMXlrQkU7SUFDSTtFckY0eWtCTjtFcUZ6eWtCRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFckYyeWtCTjtFcUZ4eWtCRTtJQUNJO0VyRjB5a0JOO0VxRnZ5a0JFO0lBQ0k7RXJGeXlrQk47RXFGdHlrQkU7SUFDSTtFckZ3eWtCTjtFcUZyeWtCRTtJQUNJO0VyRnV5a0JOO0VxRnB5a0JFO0lBQ0k7RXJGc3lrQk47RXFGbnlrQkU7SUFDSTtJQUNBO0VyRnF5a0JOO0VxRmx5a0JFO0lBQ0k7SUFDQTtFckZveWtCTjtFcUZqeWtCRTtJQUNJO0VyRm15a0JOO0VxRmh5a0JFO0lBQ0k7RXJGa3lrQk47RXFGL3hrQkU7SUFDSTtFckZpeWtCTjtFcUY5eGtCRTtJQUNJO0VyRmd5a0JOO0VxRjd4a0JFO0lBQ0k7SUFDQTtJQUNBO0VyRit4a0JOO0VxRjV4a0JFO0lBRUk7RXJGNnhrQk47RXFGMXhrQkU7SUFDSTtJQUNBO0VyRjR4a0JOO0VxRnp4a0JFO0lBQ0k7RXJGMnhrQk47RXFGeHhrQkU7SUFDSTtFckYweGtCTjtBQUNGO0FxRnR4a0JBO0VBQ0k7SUFDSTtFckZ3eGtCTjtFcUZyeGtCRTtJQUNJO0lBQ0E7RXJGdXhrQk47RXFGcHhrQkU7SUFDSTtFckZzeGtCTjtFcUZueGtCRTtJQUNJO0VyRnF4a0JOO0VxRmx4a0JFO0lBQ0k7RXJGb3hrQk47RXFGanhrQkU7SUFDSTtFckZteGtCTjtFcUZoeGtCRTtJQUNJO0lBQ0E7RXJGa3hrQk47RXFGL3drQkU7SUFDSTtJQUNBO0VyRml4a0JOO0VxRjl3a0JFO0lBQ0k7RXJGZ3hrQk47RXFGN3drQkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFckYrd2tCTjtFcUY1d2tCRTtJQUNJO0VyRjh3a0JOO0VxRjN3a0JFO0lBQ0k7RXJGNndrQk47RXFGMXdrQkU7SUFDSTtFckY0d2tCTjtFcUZ6d2tCRTtJQUNJO0VyRjJ3a0JOO0FBQ0Y7QXFGeHdrQkE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtFckYwd2tCTjtFcUZ2d2tCRTtJQUNJO0VyRnl3a0JOO0FBQ0Y7QXNGOXhuQkE7RUFFSTtBdEYreG5CSjs7QXNGNXhuQkE7RUFFSTtFQUNBO0F0Rjh4bkJKOztBc0YzeG5CQTtFQUVJO0VBQ0E7RUFDQTtBdEY2eG5CSjs7QXNGMXhuQkE7RUFFSTtBdEY0eG5CSjs7QXNGenhuQkE7RUFFSTtBdEYyeG5CSjs7QXNGeHhuQkE7RUFFSTtBdEYweG5CSjs7QXNGdnhuQkE7RUFFSTtBdEZ5eG5CSjs7QXNGdHhuQkE7RUFFSTtBdEZ3eG5CSjs7QXNGcnhuQkE7RUFFSTtBdEZ1eG5CSjs7QXNGcHhuQkE7RUFFSTtBdEZzeG5CSjs7QXNGbnhuQkE7RUFFSTtBdEZxeG5CSjs7QXNGbHhuQkE7RUFFSTtBdEZveG5CSjs7QXNGanhuQkE7RUFFSTtBdEZteG5CSjs7QXNGaHhuQkE7RUFFSTtBdEZreG5CSjs7QXNGL3duQkE7RUFFSTtBdEZpeG5CSjs7QXNGOXduQkE7RUFFSTtFQUNBO0F0Rmd4bkJKOztBc0Y3d25CQTtFQUNJO0F0Rmd4bkJKOztBc0Y3d25CQTtFQUNJO0VBQ0E7QXRGZ3huQko7O0FzRjd3bkJBO0VBQ0k7RUFDQTtBdEZneG5CSjs7QXNGN3duQkE7RUFDSTtBdEZneG5CSjs7QXNGN3duQkE7RUFDSTtBdEZneG5CSjs7QXNGN3duQkE7RUFFSTtBdEYrd25CSjs7QXNGNXduQkE7RUFDSTtBdEYrd25CSjs7QXNGNXduQkE7RUFDSTtBdEYrd25CSjs7QXNGNXduQkE7RUFDSTtBdEYrd25CSjs7QXNGNXduQkE7RUFDSTtJQUNJO0V0Rit3bkJOO0VzRjV3bkJFO0lBQ0k7RXRGOHduQk47QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3N0eWxlc2hlZXRzL2FwcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvdmFyaWFibGVzLXRoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL21peGlucy10aGVtZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2xpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9oZWFkaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvZGl2aWRlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL21peGluLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvbGlzdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2Rlc2NyaXB0aW9uLWxpc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy90YWJsZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2ljb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9mb3JtLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvZm9ybS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2J1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc2VjdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3RpbGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9zcGlubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvdG90b3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9tYXJrZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9hbGVydC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3BsYWNlaG9sZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9sYWJlbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL292ZXJsYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9hcnRpY2xlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvY29tbWVudC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3NlYXJjaC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2Ryb3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9kcm9wYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvZHJvcG5hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc2xpZGVzaG93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc3RpY2t5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvb2ZmY2FudmFzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc3dpdGNoZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9sZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9ub3RpZmljYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy90b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc29ydGFibGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9jb3VudGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy90aHVtYm5hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2ljb25uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvc3VibmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy90YWIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9zbGlkZW5hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2RvdG5hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvbGlnaHRib3guc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9hbmltYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy93aWR0aC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2hlaWdodC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9jb2x1bW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9jb3Zlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL2JhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9hbGlnbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3N2Zy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3V0aWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9mbGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvbWFyZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvcGFkZGluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy91aWtpdC9zcmMvc2Nzcy9jb21wb25lbnRzL3Zpc2liaWxpdHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdWlraXQvc3JjL3Njc3MvY29tcG9uZW50cy9pbnZlcnNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Vpa2l0L3NyYy9zY3NzL2NvbXBvbmVudHMvcHJpbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc3R5bGVzaGVldHMvYmFzZS9fYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3N0eWxlc2hlZXRzL2Jhc2UvX2RlLXNpdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc3R5bGVzaGVldHMvYmFzZS9fY29tcG9uZW50cy5jc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3N0eWxlc2hlZXRzL2Jhc2UvX25pY2Vfc2VsZWN0LmNzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc3R5bGVzaGVldHMvYmFzZS9fbWVudS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zdHlsZXNoZWV0cy9iYXNlL19wbHlyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3N0eWxlc2hlZXRzL2Jhc2UvX3BhZ2Vsb2FkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc3R5bGVzaGVldHMvYmFzZS9fYXBwX21vYmlsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3N0eWxlc2hlZXRzL2Jhc2UvX2xvZ28uY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBCYXNlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBTZXQgYGZvbnQtc2l6ZWAgdG8gc3VwcG9ydCBgcmVtYCB1bml0c1xuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKiAzLiBTdHlsZVxuICovXG5odG1sIHtcbiAgLyogMSAqL1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBMaW5rc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogU3R5bGVcbiAqL1xuYSxcbi51ay1saW5rIHtcbiAgY29sb3I6ICMxZTg3ZjA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5hOmhvdmVyLFxuLnVrLWxpbms6aG92ZXIsXG4udWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmsge1xuICBjb2xvcjogIzBmNmVjZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIEVkZ2UuXG4gKiAyLiBUaGUgc2hvcnRoYW5kIGRlY2xhcmF0aW9uIGB1bmRlcmxpbmUgZG90dGVkYCBpcyBub3Qgc3VwcG9ydGVkIGluIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qXG4gKiAxLiBDb25zb2xhcyBoYXMgYSBiZXR0ZXIgYmFzZWxpbmUgaW4gcnVubmluZyB0ZXh0IGNvbXBhcmVkIHRvIGBDb3VyaWVyYFxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICogMy4gU3R5bGVcbiAqL1xuOm5vdChwcmUpID4gY29kZSxcbjpub3QocHJlKSA+IGtiZCxcbjpub3QocHJlKSA+IHNhbXAge1xuICAvKiAxICovXG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgbW9uYWNvLCBtb25vc3BhY2U7XG4gIC8qIDIgKi9cbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgLyogMyAqL1xuICBjb2xvcjogI2YwNTA2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZzogMnB4IDZweDtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbn1cblxuLypcbiAqIEVtcGhhc2l6ZVxuICovXG5lbSB7XG4gIGNvbG9yOiAjZjA1MDZlO1xufVxuXG4vKlxuICogSW5zZXJ0XG4gKi9cbmlucyB7XG4gIGJhY2tncm91bmQ6ICNmZmQ7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBNYXJrXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmZkO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLypcbiAqIFF1b3RlXG4gKi9cbnEge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLypcbiAqIFByZXZlbnRzIGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gdGhlIGVsZW1lbnQgYW5kIHRoZSBib3R0b20gb2YgaXRzIHBhcmVudCBjb250YWluZXIuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKlxuICogMS4gQ29uc3RyYWluIHRoZSBlbGVtZW50IHRvIGl0cyBwYXJlbnQgd2lkdGguXG4gKiAyLiBQcmVzZXJ2ZSB0aGUgaW50cmluc2ljIGFzcGVjdCByYXRpbyBhbmQgYXV0by1zY2FsZSB0aGUgaGVpZ2h0IG9mIGFuIGltYWdlIGlmIHRoZSBgaGVpZ2h0YCBhdHRyaWJ1dGUgaXMgcHJlc2VudC5cbiAqIDMuIFRha2UgYm9yZGVyIGFuZCBwYWRkaW5nIGludG8gYWNjb3VudC5cbiAqL1xuY2FudmFzLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMiAqL1xuICBoZWlnaHQ6IGF1dG87XG4gIC8qIDMgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLypcbiAqIERlcHJlY2F0ZWQ6IG9ubHkgbmVlZGVkIGZvciBgaW1nYCBlbGVtZW50cyB3aXRoIGB1ay1pbWdgXG4gKiAxLiBIaWRlIGBhbHRgIHRleHQgZm9yIGxhenkgbG9hZCBpbWFnZXMuXG4gKiAyLiBGaXggbGF6eSBsb2FkaW5nIGltYWdlcyBpZiBwYXJlbnQgZWxlbWVudCBpcyBzZXQgdG8gYGRpc3BsYXk6IGlubGluZWAgYW5kIGhhcyBgb3ZlcmZsb3c6IGhpZGRlbmAuXG4gKi9cbmltZzpub3QoW3NyY10pIHtcbiAgLyogMSAqL1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC8qIDIgKi9cbiAgbWluLXdpZHRoOiAxcHg7XG59XG5cbi8qXG4gKiBJZnJhbWVcbiAqIFJlbW92ZSBib3JkZXIgaW4gYWxsIGJyb3dzZXJzXG4gKi9cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyogQmxvY2sgZWxlbWVudHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIE1hcmdpbnNcbiAqL1xucCxcbnVsLFxub2wsXG5kbCxcbnByZSxcbmFkZHJlc3MsXG5maWVsZHNldCxcbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgcCxcbiogKyB1bCxcbiogKyBvbCxcbiogKyBkbCxcbiogKyBwcmUsXG4qICsgYWRkcmVzcyxcbiogKyBmaWVsZHNldCxcbiogKyBmaWd1cmUge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKiBIZWFkaW5nc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5oMSwgLnVrLWgxLFxuaDIsIC51ay1oMixcbmgzLCAudWstaDMsXG5oNCwgLnVrLWg0LFxuaDUsIC51ay1oNSxcbmg2LCAudWstaDYsXG4udWstaGVhZGluZy1zbWFsbCxcbi51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1oZWFkaW5nLWxhcmdlLFxuLnVrLWhlYWRpbmcteGxhcmdlLFxuLnVrLWhlYWRpbmctMnhsYXJnZSxcbi51ay1oZWFkaW5nLTN4bGFyZ2Uge1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMzMzO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgaDEsICogKyAudWstaDEsXG4qICsgaDIsICogKyAudWstaDIsXG4qICsgaDMsICogKyAudWstaDMsXG4qICsgaDQsICogKyAudWstaDQsXG4qICsgaDUsICogKyAudWstaDUsXG4qICsgaDYsICogKyAudWstaDYsXG4qICsgLnVrLWhlYWRpbmctc21hbGwsXG4qICsgLnVrLWhlYWRpbmctbWVkaXVtLFxuKiArIC51ay1oZWFkaW5nLWxhcmdlLFxuKiArIC51ay1oZWFkaW5nLXhsYXJnZSxcbiogKyAudWstaGVhZGluZy0yeGxhcmdlLFxuKiArIC51ay1oZWFkaW5nLTN4bGFyZ2Uge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4vKlxuICogU2l6ZXNcbiAqL1xuaDEsIC51ay1oMSB7XG4gIGZvbnQtc2l6ZTogMi4yMzEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDIsIC51ay1oMiB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG5oMywgLnVrLWgzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmg0LCAudWstaDQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmg1LCAudWstaDUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmg2LCAudWstaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMSwgLnVrLWgxIHtcbiAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICB9XG4gIGgyLCAudWstaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuLyogTGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xudWwsXG5vbCB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuLypcbiAqIFJlc2V0IG1hcmdpbiBmb3IgbmVzdGVkIGxpc3RzXG4gKi9cbnVsID4gbGkgPiB1bCxcbnVsID4gbGkgPiBvbCxcbm9sID4gbGkgPiBvbCxcbm9sID4gbGkgPiB1bCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogRGVzY3JpcHRpb24gbGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogSG9yaXpvbnRhbCBydWxlc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gQ2hyb21lLCBFZGdlIGFuZCBJRS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0LWFsaWduIGluIEVkZ2UgYW5kIElFLlxuICogMy4gU3R5bGVcbiAqL1xuaHIsIC51ay1ociB7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgLyogMyAqL1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIGhyLFxuKiArIC51ay1ociB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi8qIEFkZHJlc3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLyogQmxvY2txdW90ZXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnQgKi9cbiogKyBibG9ja3F1b3RlIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLypcbiAqIENvbnRlbnRcbiAqL1xuYmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmJsb2NrcXVvdGUgZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM2NjY7XG59XG5ibG9ja3F1b3RlIGZvb3Rlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJQgXCI7XG59XG5cbi8qIFByZWZvcm1hdHRlZCB0ZXh0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udDogMC44NzVyZW0gLyAxLjUgQ29uc29sYXMsIG1vbmFjbywgbW9ub3NwYWNlO1xuICBjb2xvcjogIzY2NjtcbiAgLW1vei10YWItc2l6ZTogNDtcbiAgdGFiLXNpemU6IDQ7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxucHJlIGNvZGUge1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIG1vbmFjbywgbW9ub3NwYWNlO1xufVxuXG4vKiBGb2N1c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG46Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG46Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBkb3R0ZWQgIzMzMztcbn1cblxuLyogU2VsZWN0aW9uIHBzZXVkby1lbGVtZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzM5ZjtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vKiBIVE1MNSBlbGVtZW50c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5kZXRhaWxzLFxubWFpbiB7IC8qIDIgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBQYXNzIG1lZGlhIGJyZWFrcG9pbnRzIHRvIEpTXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBCcmVha3BvaW50c1xuICovXG46cm9vdCB7XG4gIC0tdWstYnJlYWtwb2ludC1zOiAzMjBweDtcbiAgLS11ay1icmVha3BvaW50LW06IDc2OHB4O1xuICAtLXVrLWJyZWFrcG9pbnQtbDogMTIwMHB4O1xuICAtLXVrLWJyZWFrcG9pbnQteGw6IDE2MDBweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExpbmtcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogTXV0ZWRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYS51ay1saW5rLW11dGVkLFxuLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1saW5rLXRvZ2dsZSAudWstbGluay1tdXRlZCB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG5hLnVrLWxpbmstbXV0ZWQ6aG92ZXIsXG4udWstbGluay1tdXRlZCBhOmhvdmVyLFxuLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLW11dGVkIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qIFRleHRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYS51ay1saW5rLXRleHQsXG4udWstbGluay10ZXh0IGEsXG4udWstbGluay10b2dnbGUgLnVrLWxpbmstdGV4dCB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5hLnVrLWxpbmstdGV4dDpob3Zlcixcbi51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay10ZXh0IHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qIEhlYWRpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYS51ay1saW5rLWhlYWRpbmcsXG4udWstbGluay1oZWFkaW5nIGEsXG4udWstbGluay10b2dnbGUgLnVrLWxpbmstaGVhZGluZyB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5hLnVrLWxpbmstaGVhZGluZzpob3Zlcixcbi51ay1saW5rLWhlYWRpbmcgYTpob3Zlcixcbi51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1oZWFkaW5nIHtcbiAgY29sb3I6ICMxZTg3ZjA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogUmVzZXRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIGAhaW1wb3J0YW50YCBuZWVkZWQgdG8gb3ZlcnJpZGUgaW52ZXJzZSBjb21wb25lbnRcbiAqL1xuYS51ay1saW5rLXJlc2V0LFxuLnVrLWxpbmstcmVzZXQgYSB7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBUb2dnbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWxpbmstdG9nZ2xlIHtcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBIZWFkaW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1oZWFkaW5nLXNtYWxsIHtcbiAgZm9udC1zaXplOiAyLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi51ay1oZWFkaW5nLW1lZGl1bSB7XG4gIGZvbnQtc2l6ZTogMi44ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuXG4udWstaGVhZGluZy1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMy40cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuXG4udWstaGVhZGluZy14bGFyZ2Uge1xuICBmb250LXNpemU6IDRyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udWstaGVhZGluZy0yeGxhcmdlIHtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnVrLWhlYWRpbmctM3hsYXJnZSB7XG4gIGZvbnQtc2l6ZTogOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi8qIFRhYmxldCBMYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1oZWFkaW5nLXNtYWxsIHtcbiAgICBmb250LXNpemU6IDMuMjVyZW07XG4gIH1cbiAgLnVrLWhlYWRpbmctbWVkaXVtIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgfVxuICAudWstaGVhZGluZy1sYXJnZSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG4gIC51ay1oZWFkaW5nLXhsYXJnZSB7XG4gICAgZm9udC1zaXplOiA2cmVtO1xuICB9XG4gIC51ay1oZWFkaW5nLTJ4bGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogOHJlbTtcbiAgfVxuICAudWstaGVhZGluZy0zeGxhcmdlIHtcbiAgICBmb250LXNpemU6IDExcmVtO1xuICB9XG59XG4vKiBMYXB0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstaGVhZGluZy1tZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxuICAudWstaGVhZGluZy1sYXJnZSB7XG4gICAgZm9udC1zaXplOiA2cmVtO1xuICB9XG4gIC51ay1oZWFkaW5nLXhsYXJnZSB7XG4gICAgZm9udC1zaXplOiA4cmVtO1xuICB9XG4gIC51ay1oZWFkaW5nLTJ4bGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTFyZW07XG4gIH1cbiAgLnVrLWhlYWRpbmctM3hsYXJnZSB7XG4gICAgZm9udC1zaXplOiAxNXJlbTtcbiAgfVxufVxuLyogUHJpbWFyeVxuICAgRGVwcmVjYXRlZDogVXNlIGB1ay1oZWFkaW5nLW1lZGl1bWAgaW5zdGVhZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuLyogSGVyb1xuICAgRGVwcmVjYXRlZDogVXNlIGB1ay1oZWFkaW5nLXhsYXJnZWAgaW5zdGVhZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuLyogRGl2aWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstaGVhZGluZy1kaXZpZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoNXB4ICsgMC4xZW0pO1xuICBib3JkZXItYm90dG9tOiBjYWxjKDAuMnB4ICsgMC4wNWVtKSBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKiBCdWxsZXRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWhlYWRpbmctYnVsbGV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKlxuICogMS4gVXNpbmcgYGlubGluZS1ibG9ja2AgdG8gbWFrZSBpdCB3b3JrIHdpdGggdGV4dCBhbGlnbm1lbnRcbiAqIDIuIENlbnRlciB2ZXJ0aWNhbGx5XG4gKiAzLiBTdHlsZVxuICovXG4udWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAyICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiBjYWxjKC0wLjEgKiAxZW0pO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvKiAzICovXG4gIGhlaWdodDogY2FsYyg0cHggKyAwLjdlbSk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1cHggKyAwLjJlbSk7XG4gIGJvcmRlci1sZWZ0OiBjYWxjKDVweCArIDAuMWVtKSBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKiBMaW5lXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBDbGlwIHRoZSBjaGlsZCBlbGVtZW50XG4gKi9cbi51ay1oZWFkaW5nLWxpbmUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKlxuICogRXh0cmEgbWFya3VwIGlzIG5lZWRlZCB0byBtYWtlIGl0IHdvcmsgd2l0aCB0ZXh0IGFsaWduXG4gKi9cbi51ay1oZWFkaW5nLWxpbmUgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiAxLiBDZW50ZXIgdmVydGljYWxseVxuICogMi4gTWFrZSB0aGUgZWxlbWVudCBhcyBsYXJnZSBhcyBwb3NzaWJsZS4gSXQncyBjbGlwcGVkIGJ5IHRoZSBjb250YWluZXIuXG4gKiAzLiBTdHlsZVxuICovXG4udWstaGVhZGluZy1saW5lID4gOjpiZWZvcmUsXG4udWstaGVhZGluZy1saW5lID4gOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoNTAlIC0gKGNhbGMoMC4ycHggKyAwLjA1ZW0pIC8gMikpO1xuICAvKiAyICovXG4gIHdpZHRoOiAyMDAwcHg7XG4gIC8qIDMgKi9cbiAgYm9yZGVyLWJvdHRvbTogY2FsYygwLjJweCArIDAuMDVlbSkgc29saWQgI2U1ZTVlNTtcbn1cblxuLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1cHggKyAwLjNlbSk7XG59XG5cbi51ay1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyIHtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNXB4ICsgMC4zZW0pO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRGl2aWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUmVzZXQgZGVmYXVsdCBgaHJgXG4gKiAyLiBTZXQgbWFyZ2luIGlmIGEgYGRpdmAgaXMgdXNlZCBmb3Igc2VtYW50aWNhbCByZWFzb25cbiAqL1xuW2NsYXNzKj11ay1kaXZpZGVyXSB7XG4gIC8qIDEgKi9cbiAgYm9yZGVyOiBub25lO1xuICAvKiAyICovXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIFtjbGFzcyo9dWstZGl2aWRlcl0ge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKiBJY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1kaXZpZGVyLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyMCUyMiUyMGhlaWdodCUzRCUyMjIwJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjAlMjAyMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBzdHJva2UlM0QlMjIlMjNlNWU1ZTUlMjIlMjBzdHJva2Utd2lkdGglM0QlMjIyJTIyJTIwY3glM0QlMjIxMCUyMiUyMGN5JTNEJTIyMTAlMjIlMjByJTNEJTIyNyUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbn1cblxuLnVrLWRpdmlkZXItaWNvbjo6YmVmb3JlLFxuLnVrLWRpdmlkZXItaWNvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gKDUwcHggLyAyKSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4udWstZGl2aWRlci1pY29uOjpiZWZvcmUge1xuICByaWdodDogY2FsYyg1MCUgKyAoNTBweCAvIDIpKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51ay1kaXZpZGVyLWljb246OmFmdGVyIHtcbiAgbGVmdDogY2FsYyg1MCUgKyAoNTBweCAvIDIpKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIFNtYWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBGaXggaGVpZ2h0IGJlY2F1c2Ugb2YgYGlubGluZS1ibG9ja2BcbiAqIDIuIFVzaW5nIDo6YWZ0ZXIgYW5kIGlubGluZS1ibG9jayB0byBtYWtlIGB0ZXh0LWFsaWduYCB3b3JrXG4gKi9cbi8qIDEgKi9cbi51ay1kaXZpZGVyLXNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi8qIDIgKi9cbi51ay1kaXZpZGVyLXNtYWxsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKiBWZXJ0aWNhbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstZGl2aWRlci12ZXJ0aWNhbCB7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGlzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbGlzdCB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4gKiBBdm9pZCBjb2x1bW4gYnJlYWsgd2l0aGluIHRoZSBsaXN0IGl0ZW0sIHdoZW4gdXNpbmcgYGNvbHVtbi1jb3VudGBcbiAqL1xuLnVrLWxpc3QgPiAqIHtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZC1jb2x1bW47XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuLnVrLWxpc3QgPiAqID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKlxuICogU3R5bGVcbiAqL1xuLnVrLWxpc3QgPiA6bnRoLWNoaWxkKG4rMiksXG4udWstbGlzdCA+ICogPiB1bCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi8qIE1hcmtlciBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWxpc3QtZGlzYyxcbi51ay1saXN0LWNpcmNsZSxcbi51ay1saXN0LXNxdWFyZSxcbi51ay1saXN0LWRlY2ltYWwsXG4udWstbGlzdC1oeXBoZW4ge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi51ay1saXN0LWRpc2Mge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbi51ay1saXN0LWNpcmNsZSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xufVxuXG4udWstbGlzdC1zcXVhcmUge1xuICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbn1cblxuLnVrLWxpc3QtZGVjaW1hbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbn1cblxuLnVrLWxpc3QtaHlwaGVuIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBcIuKAkyAgXCI7XG59XG5cbi8qXG4gKiBDb2xvciBtb2RpZmllcnNcbiAqL1xuLnVrLWxpc3QtbXV0ZWQgPiA6Om1hcmtlciB7XG4gIGNvbG9yOiAjOTk5ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIge1xuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xufVxuXG4udWstbGlzdC1wcmltYXJ5ID4gOjptYXJrZXIge1xuICBjb2xvcjogIzFlODdmMCAhaW1wb3J0YW50O1xufVxuXG4udWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciB7XG4gIGNvbG9yOiAjMjIyICFpbXBvcnRhbnQ7XG59XG5cbi8qIEltYWdlIGJ1bGxldCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbGlzdC1idWxsZXQgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDEuNWVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjYlMjIlMjBoZWlnaHQlM0QlMjI2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwNiUyMDYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIlMjM2NjYlMjIlMjBjeCUzRCUyMjMlMjIlMjBjeSUzRCUyMjMlMjIlMjByJTNEJTIyMyUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbn1cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBEaXZpZGVyXG4gKi9cbi51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMikge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qXG4gKiBTdHJpcGVkXG4gKi9cbi51ay1saXN0LXN0cmlwZWQgPiAqIHtcbiAgcGFkZGluZzogMTBweCAxMHB4O1xufVxuLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbn1cblxuLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIFNpemUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWxpc3QtbGFyZ2UgPiA6bnRoLWNoaWxkKG4rMiksXG4udWstbGlzdC1sYXJnZSA+ICogPiB1bCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi51ay1saXN0LWNvbGxhcHNlID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QtY29sbGFwc2UgPiAqID4gdWwge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKlxuICogRGl2aWRlclxuICovXG4udWstbGlzdC1sYXJnZS51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMikge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cblxuLnVrLWxpc3QtY29sbGFwc2UudWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8qXG4gKiBTdHJpcGVkXG4gKi9cbi51ay1saXN0LWxhcmdlLnVrLWxpc3Qtc3RyaXBlZCA+ICoge1xuICBwYWRkaW5nOiAyMHB4IDEwcHg7XG59XG5cbi51ay1saXN0LWNvbGxhcHNlLnVrLWxpc3Qtc3RyaXBlZCA+ICoge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi51ay1saXN0LWxhcmdlLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSxcbi51ay1saXN0LWNvbGxhcHNlLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEZXNjcmlwdGlvbiBsaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBUZXJtXG4gKi9cbi51ay1kZXNjcmlwdGlvbi1saXN0ID4gZHQge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnVrLWRlc2NyaXB0aW9uLWxpc3QgPiBkdDpudGgtY2hpbGQobisyKSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi8qXG4gKiBEZXNjcmlwdGlvblxuICovXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogTGluZVxuICovXG4udWstZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyID4gZHQ6bnRoLWNoaWxkKG4rMikge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUYWJsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICogMi4gQmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50XG4gKiAzLiBTdHlsZVxuICovXG4udWstdGFibGUge1xuICAvKiAxICovXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICAvKiAyICovXG4gIHdpZHRoOiAxMDAlO1xuICAvKiAzICovXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIC51ay10YWJsZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi8qIEhlYWRlciBjZWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBTdHlsZVxuICovXG4udWstdGFibGUgdGgge1xuICBwYWRkaW5nOiAxNnB4IDEycHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM5OTk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8qIENlbGxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRhYmxlIHRkIHtcbiAgcGFkZGluZzogMTZweCAxMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay10YWJsZSB0ZCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogRm9vdGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay10YWJsZSB0Zm9vdCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi8qIENhcHRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRhYmxlIGNhcHRpb24ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogQWxpZ25tZW50IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay10YWJsZS1taWRkbGUsXG4udWstdGFibGUtbWlkZGxlIHRkIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIERpdmlkZXJcbiAqL1xuLnVrLXRhYmxlLWRpdmlkZXIgPiB0cjpub3QoOmZpcnN0LWNoaWxkKSxcbi51ay10YWJsZS1kaXZpZGVyID4gOm5vdCg6Zmlyc3QtY2hpbGQpID4gdHIsXG4udWstdGFibGUtZGl2aWRlciA+IDpmaXJzdC1jaGlsZCA+IHRyOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qXG4gKiBTdHJpcGVkXG4gKi9cbi51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUob2RkKSxcbi51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qXG4gKiBIb3ZlclxuICovXG4udWstdGFibGUtaG92ZXIgPiB0cjpob3Zlcixcbi51ay10YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZmQ7XG59XG5cbi8qIEFjdGl2ZSBzdGF0ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGFibGUgPiB0ci51ay1hY3RpdmUsXG4udWstdGFibGUgdGJvZHkgdHIudWstYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZDtcbn1cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGFibGUtc21hbGwgdGgsXG4udWstdGFibGUtc21hbGwgdGQge1xuICBwYWRkaW5nOiAxMHB4IDEycHg7XG59XG5cbi51ay10YWJsZS1sYXJnZSB0aCxcbi51ay10YWJsZS1sYXJnZSB0ZCB7XG4gIHBhZGRpbmc6IDIycHggMTJweDtcbn1cblxuLyogSnVzdGlmeSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGFibGUtanVzdGlmeSB0aDpmaXJzdC1jaGlsZCxcbi51ay10YWJsZS1qdXN0aWZ5IHRkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4udWstdGFibGUtanVzdGlmeSB0aDpsYXN0LWNoaWxkLFxuLnVrLXRhYmxlLWp1c3RpZnkgdGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8qIENlbGwgc2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGFibGUtc2hyaW5rIHtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnVrLXRhYmxlLWV4cGFuZCB7XG4gIG1pbi13aWR0aDogMTUwcHg7XG59XG5cbi8qIENlbGwgbGluayBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogRG9lcyBub3Qgd29yayB3aXRoIGB1ay10YWJsZS1qdXN0aWZ5YCBhdCB0aGUgbW9tZW50XG4gKi9cbi51ay10YWJsZS1saW5rIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4udWstdGFibGUtbGluayA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTZweCAxMnB4O1xufVxuXG4udWstdGFibGUtc21hbGwgLnVrLXRhYmxlLWxpbmsgPiBhIHtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xufVxuXG4vKiBSZXNwb25zaXZlIHRhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51ay10YWJsZS1yZXNwb25zaXZlLFxuICAudWstdGFibGUtcmVzcG9uc2l2ZSB0Ym9keSxcbiAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGgsXG4gIC51ay10YWJsZS1yZXNwb25zaXZlIHRkLFxuICAudWstdGFibGUtcmVzcG9uc2l2ZSB0ciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGgsXG4gIC51ay10YWJsZS1yZXNwb25zaXZlIHRkIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay10YWJsZS1yZXNwb25zaXZlIHRoOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCgudWstdGFibGUtbGluayksXG4gIC51ay10YWJsZS1yZXNwb25zaXZlIHRkOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCgudWstdGFibGUtbGluayksXG4gIC51ay10YWJsZS1yZXNwb25zaXZlIC51ay10YWJsZS1saW5rOm5vdCg6Zmlyc3QtY2hpbGQpID4gYSB7XG4gICAgcGFkZGluZy10b3A6IDVweCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay10YWJsZS1yZXNwb25zaXZlIHRoOm5vdCg6bGFzdC1jaGlsZCk6bm90KC51ay10YWJsZS1saW5rKSxcbiAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQ6bm90KDpsYXN0LWNoaWxkKTpub3QoLnVrLXRhYmxlLWxpbmspLFxuICAudWstdGFibGUtcmVzcG9uc2l2ZSAudWstdGFibGUtbGluazpub3QoOmxhc3QtY2hpbGQpID4gYSB7XG4gICAgcGFkZGluZy1ib3R0b206IDVweCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay10YWJsZS1qdXN0aWZ5LnVrLXRhYmxlLXJlc3BvbnNpdmUgdGgsXG4gIC51ay10YWJsZS1qdXN0aWZ5LnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4udWstdGFibGUgdGJvZHkgdHIge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgbGluZWFyO1xufVxuXG4udWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBJY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBOb3RlOiAxLiAtIDcuIGlzIHJlcXVpcmVkIGZvciBgYnV0dG9uYCBlbGVtZW50cy4gTmVlZGVkIGZvciBDbG9zZSBhbmQgRm9ybSBJY29uIGNvbXBvbmVudC5cbiAqIDEuIFJlbW92ZSBtYXJnaW5zIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYS5cbiAqIDIuIFJlbW92ZSBib3JkZXJzIGZvciBgYnV0dG9uYC5cbiAqIDMuIFJlbW92ZSBib3JkZXItcmFkaXVzIGluIENocm9tZS5cbiAqIDQuIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUuXG4gKiA1LiBDb3JyZWN0IGBmb250YCBwcm9wZXJ0aWVzIGFuZCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgZm9yIGBidXR0b25gLlxuICogNi4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiA3LiBSZW1vdmUgZGVmYXVsdCBgYnV0dG9uYCBwYWRkaW5nIGFuZCBiYWNrZ3JvdW5kIGNvbG9yXG4gKiA4LiBTdHlsZVxuICogOS4gRmlsbCBhbGwgU1ZHIGVsZW1lbnRzIHdpdGggdGhlIGN1cnJlbnQgdGV4dCBjb2xvciBpZiBubyBgZmlsbGAgYXR0cmlidXRlIGlzIHNldFxuICogMTAuIExldCB0aGUgY29udGFpbmVyIGZpdCB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uXG4gKi9cbi51ay1pY29uIHtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbiAgYm9yZGVyOiBub25lO1xuICAvKiAzICovXG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC8qIDQgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDUgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDYgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIDcuICovXG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiA4ICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogOSAqL1xuICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gIC8qIDEwICovXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4vKiBSZXF1aXJlZCBmb3IgYGJ1dHRvbmAuICovXG5idXR0b24udWstaWNvbjpub3QoOmRpc2FibGVkKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbi51ay1pY29uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKlxuICogU2V0IHRoZSBmaWxsIGFuZCBzdHJva2UgY29sb3Igb2YgYWxsIFNWRyBlbGVtZW50cyB0byB0aGUgY3VycmVudCB0ZXh0IGNvbG9yXG4gKi9cbi51ay1pY29uOm5vdCgudWstcHJlc2VydmUpIFtmaWxsKj1cIiNcIl06bm90KC51ay1wcmVzZXJ2ZSkge1xuICBmaWxsOiBjdXJyZW50Y29sb3I7XG59XG5cbi51ay1pY29uOm5vdCgudWstcHJlc2VydmUpIFtzdHJva2UqPVwiI1wiXTpub3QoLnVrLXByZXNlcnZlKSB7XG4gIHN0cm9rZTogY3VycmVudGNvbG9yO1xufVxuXG4vKlxuICogRml4IEZpcmVmb3ggYmx1cnJ5IFNWRyByZW5kZXJpbmc6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDY4MzVcbiAqL1xuLnVrLWljb24gPiAqIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi8qIEltYWdlIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBEaXNwbGF5IGltYWdlcyBpbiBpY29uIGRpbWVuc2lvbnNcbiAqIDEuIFJlcXVpcmVkIGZvciBgc3BhbmAgd2l0aCBiYWNrZ3JvdW5kIGltYWdlXG4gKiAyLiBSZXF1aXJlZCBmb3IgYGltYWdlYFxuICovXG4udWstaWNvbi1pbWFnZSB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIC8qIDEgKi9cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvKiAyICovXG4gIG9iamVjdC1maXQ6IHNjYWxlLWRvd247XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBMaW5rXG4gKiAxLiBBbGxvdyB0ZXh0IHdpdGhpbiBsaW5rXG4gKi9cbi51ay1pY29uLWxpbmsge1xuICBjb2xvcjogIzk5OTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnVrLWljb24tbGluazpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4udWstaWNvbi1saW5rOmFjdGl2ZSxcbi51ay1hY3RpdmUgPiAudWstaWNvbi1saW5rIHtcbiAgY29sb3I6IHJnYig4OS4yNSwgODkuMjUsIDg5LjI1KTtcbn1cblxuLypcbiAqIEJ1dHRvblxuICogMS4gQ2VudGVyIGljb24gdmVydGljYWxseSBhbmQgaG9yaXpvbnRhbGx5XG4gKi9cbi51ay1pY29uLWJ1dHRvbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBjb2xvcjogIzk5OTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWljb24tYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNS4yNSwgMjM1LjI1LCAyMzUuMjUpO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWljb24tYnV0dG9uOmFjdGl2ZSxcbi51ay1hY3RpdmUgPiAudWstaWNvbi1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjIyLjUsIDIyMi41LCAyMjIuNSk7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRm9ybSBSYW5nZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUuXG4gKiAyLiBEZWZpbmUgY29uc2lzdGVudCBib3ggc2l6aW5nLlxuICogMy4gUmVtb3ZlIGBtYXJnaW5gIGluIGFsbCBicm93c2Vycy5cbiAqIDQuIEFsaWduIHRvIHRoZSBjZW50ZXIgb2YgdGhlIGxpbmUgYm94LlxuICogNS4gUHJldmVudCBjb250ZW50IG92ZXJmbG93IGlmIGEgZml4ZWQgd2lkdGggaXMgdXNlZC5cbiAqIDYuIFRha2UgdGhlIGZ1bGwgd2lkdGguXG4gKiA3LiBSZW1vdmUgd2hpdGUgYmFja2dyb3VuZCBpbiBDaHJvbWUuXG4gKi9cbi51ay1yYW5nZSB7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAvKiAyICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDMgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiA0ICovXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qIDUgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiA2ICovXG4gIHdpZHRoOiAxMDAlO1xuICAvKiA3ICovXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXJhbmdlOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnVrLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4vKlxuICogSW1wcm92ZXMgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGZvciBjbGlja2FibGUgZWxlbWVudHNcbiAqL1xuLnVrLXJhbmdlOm5vdCg6ZGlzYWJsZWQpOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVrLXJhbmdlOm5vdCg6ZGlzYWJsZWQpOjotbW96LXJhbmdlLXRodW1iIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKlxuICogVHJhY2tcbiAqIDEuIFNhZmFyaSBkb2Vzbid0IGhhdmUgYSBmb2N1cyBzdGF0ZS4gVXNpbmcgYWN0aXZlIGluc3RlYWQuXG4gKi9cbi8qIFdlYmtpdCAqL1xuLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGhlaWdodDogM3B4O1xuICBiYWNrZ3JvdW5kOiByZ2IoMjM1LjI1LCAyMzUuMjUsIDIzNS4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xufVxuXG4udWstcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuLnVrLXJhbmdlOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjIyLjUsIDIyMi41LCAyMjIuNSk7XG59XG5cbi8qIEZpcmVmb3ggKi9cbi51ay1yYW5nZTo6LW1vei1yYW5nZS10cmFjayB7XG4gIGhlaWdodDogM3B4O1xuICBiYWNrZ3JvdW5kOiByZ2IoMjM1LjI1LCAyMzUuMjUsIDIzNS4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xufVxuXG4udWstcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjIyLjUsIDIyMi41LCAyMjIuNSk7XG59XG5cbi8qXG4gKiBUaHVtYlxuICogMS4gUmVzZXRcbiAqIDIuIFN0eWxlXG4gKi9cbi8qIFdlYmtpdCAqL1xuLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW4tdG9wOiAtN3B4O1xuICAvKiAyICovXG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjAzLjUsIDIwMy41LCAyMDMuNSk7XG59XG5cbi8qIEZpcmVmb3ggKi9cbi51ay1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIC8qIDEgKi9cbiAgYm9yZGVyOiBub25lO1xuICAvKiAyICovXG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDE1cHg7XG4gIG1hcmdpbi10b3A6IC03cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjAzLjUsIDIwMy41LCAyMDMuNSk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBGb3JtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBEZWZpbmUgY29uc2lzdGVudCBib3ggc2l6aW5nLlxuICogICAgRGVmYXVsdCBpcyBgY29udGVudC1ib3hgIHdpdGggZm9sbG93aW5nIGV4Y2VwdGlvbnMgc2V0IHRvIGBib3JkZXItYm94YFxuICogICAgYHNlbGVjdGAsIGBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1gIGFuZCBgaW5wdXRbdHlwZT1cInJhZGlvXCJdYFxuICogICAgYGlucHV0W3R5cGU9XCJzZWFyY2hcIl1gIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYVxuICogICAgYGlucHV0W3R5cGU9XCJjb2xvclwiXWAgaW4gRmlyZWZveFxuICogMi4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94L0lFIGFuZCBDaHJvbWUvU2FmYXJpL09wZXJhLlxuICogMy4gUmVtb3ZlIGBib3JkZXItcmFkaXVzYCBpbiBpT1MuXG4gKiA0LiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbi51ay1pbnB1dCxcbi51ay1zZWxlY3QsXG4udWstdGV4dGFyZWEsXG4udWstcmFkaW8sXG4udWstY2hlY2tib3gge1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovXG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC8qIDQgKi9cbiAgZm9udDogaW5oZXJpdDtcbn1cblxuLypcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbi51ay1pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG4udWstc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qXG4gKiAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnNcbiAqIDIuIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgYW5kIHVzZSBgYm9sZGAgaW5zdGVhZC5cbiAqIE5PVEU6IEJvdGggZGVjbGFyYXRpb25zIGRvbid0IHdvcmsgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhLlxuICovXG4udWstc2VsZWN0IG9wdGdyb3VwIHtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbi51ay10ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgb24gT1MgWCBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cbi51ay1pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4udWstaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG4udWstaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuLnVrLWlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLypcbiAqIENvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIFNhZmFyaS5cbiAqL1xuLnVrLWlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCxcbi51ay1pbnB1dFt0eXBlPXRpbWVdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQsXG4udWstaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiBSZW1vdmVzIHBsYWNlaG9sZGVyIHRyYW5zcGFyZW5jeSBpbiBGaXJlZm94LlxuICovXG4udWstaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsXG4udWstdGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKlxuICogSW1wcm92ZXMgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGZvciBjbGlja2FibGUgZWxlbWVudHNcbiAqL1xuLnVrLXJhZGlvOm5vdCg6ZGlzYWJsZWQpLFxuLnVrLWNoZWNrYm94Om5vdCg6ZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICogMS4gUmVzZXQgYG1pbi13aWR0aGBcbiAqL1xuLnVrLWZpZWxkc2V0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC8qIDEgKi9cbiAgbWluLXdpZHRoOiAwO1xufVxuXG4vKiBJbnB1dCwgc2VsZWN0IGFuZCB0ZXh0YXJlYVxuICogQWxsb3dlZDogYHRleHRgLCBgcGFzc3dvcmRgLCBgZGF0ZXRpbWUtbG9jYWxgLCBgZGF0ZWAsICBgbW9udGhgLFxuICAgICAgICAgICAgYHRpbWVgLCBgd2Vla2AsIGBudW1iZXJgLCBgZW1haWxgLCBgdXJsYCwgYHNlYXJjaGAsIGB0ZWxgLCBgY29sb3JgXG4gKiBEaXNhbGxvd2VkOiBgcmFuZ2VgLCBgcmFkaW9gLCBgY2hlY2tib3hgLCBgZmlsZWAsIGBzdWJtaXRgLCBgcmVzZXRgIGFuZCBgaW1hZ2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBpT1MuXG4gKi9cbi51ay1pbnB1dCxcbi51ay10ZXh0YXJlYSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLypcbiAqIDEuIFByZXZlbnQgY29udGVudCBvdmVyZmxvdyBpZiBhIGZpeGVkIHdpZHRoIGlzIHVzZWRcbiAqIDIuIFRha2UgdGhlIGZ1bGwgd2lkdGhcbiAqIDMuIFJlc2V0IGRlZmF1bHRcbiAqIDQuIFN0eWxlXG4gKi9cbi51ay1pbnB1dCxcbi51ay1zZWxlY3QsXG4udWstdGV4dGFyZWEge1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMiAqL1xuICB3aWR0aDogMTAwJTtcbiAgLyogMyAqL1xuICBib3JkZXI6IDAgbm9uZTtcbiAgLyogNCAqL1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjNjY2O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1O1xuICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyO1xufVxuXG4vKlxuICogU2luZ2xlLWxpbmVcbiAqIDEuIEFsbG93IGFueSBlbGVtZW50IHRvIGxvb2sgbGlrZSBhbiBgaW5wdXRgIG9yIGBzZWxlY3RgIGVsZW1lbnRcbiAqIDIuIE1ha2Ugc3VyZSBsaW5lLWhlaWdodCBpcyBub3QgbGFyZ2VyIHRoYW4gaGVpZ2h0XG4gKiAgICBBbHNvIG5lZWRlZCB0byBjZW50ZXIgdGhlIHRleHQgdmVydGljYWxseVxuICovXG4udWstaW5wdXQsXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gIGhlaWdodDogNDBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qIDIgKi9cbi51ay1pbnB1dDpub3QoaW5wdXQpLFxuLnVrLXNlbGVjdDpub3Qoc2VsZWN0KSB7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xufVxuXG4vKlxuICogTXVsdGktbGluZVxuICovXG4udWstc2VsZWN0W211bHRpcGxlXSxcbi51ay1zZWxlY3Rbc2l6ZV0sXG4udWstdGV4dGFyZWEge1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWstc2VsZWN0W211bHRpcGxlXSxcbi51ay1zZWxlY3Rbc2l6ZV0ge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vKiBGb2N1cyAqL1xuLnVrLWlucHV0OmZvY3VzLFxuLnVrLXNlbGVjdDpmb2N1cyxcbi51ay10ZXh0YXJlYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjNjY2O1xuICBib3JkZXItY29sb3I6ICMxZTg3ZjA7XG59XG5cbi8qIERpc2FibGVkICovXG4udWstaW5wdXQ6ZGlzYWJsZWQsXG4udWstc2VsZWN0OmRpc2FibGVkLFxuLnVrLXRleHRhcmVhOmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgY29sb3I6ICM5OTk7XG4gIGJvcmRlci1jb2xvcjogI2U1ZTVlNTtcbn1cblxuLypcbiAqIFBsYWNlaG9sZGVyXG4gKi9cbi51ay1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnVrLXRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKiBTdHlsZSBtb2RpZmllciAoYHVrLWlucHV0YCwgYHVrLXNlbGVjdGAgYW5kIGB1ay10ZXh0YXJlYWApXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBTbWFsbFxuICovXG4udWstZm9ybS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi8qIFNpbmdsZS1saW5lICovXG4udWstZm9ybS1zbWFsbDpub3QodGV4dGFyZWEpOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cblxuLyogTXVsdGktbGluZSAqL1xudGV4dGFyZWEudWstZm9ybS1zbWFsbCxcblttdWx0aXBsZV0udWstZm9ybS1zbWFsbCxcbltzaXplXS51ay1mb3JtLXNtYWxsIHtcbiAgcGFkZGluZzogNXB4IDhweDtcbn1cblxuLnVrLWZvcm0tc21hbGw6bm90KHNlbGVjdCk6bm90KGlucHV0KTpub3QodGV4dGFyZWEpIHtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG5cbi8qXG4gKiBMYXJnZVxuICovXG4udWstZm9ybS1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLyogU2luZ2xlLWxpbmUgKi9cbi51ay1mb3JtLWxhcmdlOm5vdCh0ZXh0YXJlYSk6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHtcbiAgaGVpZ2h0OiA1NXB4O1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG5cbi8qIE11bHRpLWxpbmUgKi9cbnRleHRhcmVhLnVrLWZvcm0tbGFyZ2UsXG5bbXVsdGlwbGVdLnVrLWZvcm0tbGFyZ2UsXG5bc2l6ZV0udWstZm9ybS1sYXJnZSB7XG4gIHBhZGRpbmc6IDdweCAxMnB4O1xufVxuXG4udWstZm9ybS1sYXJnZTpub3Qoc2VsZWN0KTpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSkge1xuICBsaW5lLWhlaWdodDogNTNweDtcbn1cblxuLyogU3R5bGUgbW9kaWZpZXIgKGB1ay1pbnB1dGAsIGB1ay1zZWxlY3RgIGFuZCBgdWstdGV4dGFyZWFgKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogRXJyb3JcbiAqL1xuLnVrLWZvcm0tZGFuZ2VyLFxuLnVrLWZvcm0tZGFuZ2VyOmZvY3VzIHtcbiAgY29sb3I6ICNmMDUwNmU7XG4gIGJvcmRlci1jb2xvcjogI2YwNTA2ZTtcbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuLnVrLWZvcm0tc3VjY2Vzcyxcbi51ay1mb3JtLXN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogIzMyZDI5NjtcbiAgYm9yZGVyLWNvbG9yOiAjMzJkMjk2O1xufVxuXG4vKlxuICogQmxhbmtcbiAqL1xuLnVrLWZvcm0tYmxhbmsge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4udWstZm9ybS1ibGFuazpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2U1ZTVlNTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cblxuLyogV2lkdGggbW9kaWZpZXJzIChgdWstaW5wdXRgLCBgdWstc2VsZWN0YCBhbmQgYHVrLXRleHRhcmVhYClcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEZpeGVkIHdpZHRoc1xuICogRGlmZmVyZW50IHdpZHRocyBmb3IgbWluaSBzaXplZCBgaW5wdXRgIGFuZCBgc2VsZWN0YCBlbGVtZW50c1xuICovXG5pbnB1dC51ay1mb3JtLXdpZHRoLXhzbWFsbCB7XG4gIHdpZHRoOiA1MHB4O1xufVxuXG5zZWxlY3QudWstZm9ybS13aWR0aC14c21hbGwge1xuICB3aWR0aDogNzVweDtcbn1cblxuLnVrLWZvcm0td2lkdGgtc21hbGwge1xuICB3aWR0aDogMTMwcHg7XG59XG5cbi51ay1mb3JtLXdpZHRoLW1lZGl1bSB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLnVrLWZvcm0td2lkdGgtbGFyZ2Uge1xuICB3aWR0aDogNTAwcHg7XG59XG5cbi8qIFNlbGVjdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUuIEFsc28gd29ya3MgaW4gRmlyZWZveFxuICogMi4gU3R5bGVcbiAqIDMuIFNldCBgY29sb3JgIGZvciBvcHRpb25zIGluIHRoZSBzZWxlY3QgZHJvcGRvd24sIGJlY2F1c2UgdGhlIGluaGVyaXRlZCBgY29sb3JgIG1pZ2h0IGJlIHRvbyBsaWdodC5cbiAqL1xuLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkge1xuICAvKiAxICovXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAvKiAyICovXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDI0JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyJTIzNjY2JTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwOSUyMDYlMjAxNSUyMDYlMjIlMjAlMkYlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiUyMzY2NiUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTMlMjA5JTIwOCUyMDE1JTIwOCUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XG59XG5cbi8qIDMgKi9cbi51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIG9wdGlvbiB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKlxuICogRGlzYWJsZWRcbiAqL1xuLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSk6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyNCUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiUyMzk5OSUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMSUyMDklMjA2JTIwMTUlMjA2JTIyJTIwJTJGJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIlMjM5OTklMjIlMjBwb2ludHMlM0QlMjIxMiUyMDEzJTIwOSUyMDglMjAxNSUyMDglMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIik7XG59XG5cbi8qIERhdGFsaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBDaHJvbWVcbiAqL1xuLnVrLWlucHV0W2xpc3RdIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XG59XG5cbi51ay1pbnB1dFtsaXN0XTpob3Zlcixcbi51ay1pbnB1dFtsaXN0XTpmb2N1cyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDI0JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyJTIzNjY2JTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxMiUyMDglMjA2JTIwMTYlMjA2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIpO1xufVxuXG4vKiAxICovXG4udWstaW5wdXRbbGlzdF06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogUmFkaW8gYW5kIGNoZWNrYm94XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBTdHlsZVxuICogMi4gTWFrZSBib3ggbW9yZSByb2J1c3Qgc28gaXQgY2xpcHMgdGhlIGNoaWxkIGVsZW1lbnRcbiAqIDMuIFZlcnRpY2FsIGFsaWdubWVudFxuICogNC4gUmVtb3ZlIGRlZmF1bHQgc3R5bGVcbiAqIDUuIEZpeCBibGFjayBiYWNrZ3JvdW5kIG9uIGlPU1xuICogNi4gQ2VudGVyIGljb25zXG4gKi9cbi51ay1yYWRpbyxcbi51ay1jaGVja2JveCB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xuICAvKiAyICovXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDMgKi9cbiAgbWFyZ2luLXRvcDogLTRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLyogNCAqL1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogNSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogNiAqL1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjAzLjUsIDIwMy41LCAyMDMuNSk7XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIGJvcmRlcjtcbn1cblxuLnVrLXJhZGlvIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXJhZGlvOmZvY3VzLFxuLnVrLWNoZWNrYm94OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjMWU4N2YwO1xufVxuXG4vKlxuICogQ2hlY2tlZFxuICovXG4udWstcmFkaW86Y2hlY2tlZCxcbi51ay1jaGVja2JveDpjaGVja2VkLFxuLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU4N2YwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsXG4udWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEzLjY4NzUsIDEwOS41LCAyMDUuMzEyNSk7XG59XG5cbi8qXG4gKiBJY29uc1xuICovXG4udWstcmFkaW86Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTYlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE2JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIlMjNmZmYlMjIlMjBjeCUzRCUyMjglMjIlMjBjeSUzRCUyMjglMjIlMjByJTNEJTIyMiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiKTtcbn1cblxuLnVrLWNoZWNrYm94OmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE0JTIyJTIwaGVpZ2h0JTNEJTIyMTElMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNCUyMDExJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiUyM2ZmZiUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMSUyMDUlMjA3LjUlMjAyJTIwNSUyMDElMjA1LjUlMjA1JTIwMTAlMjAxMyUyMDEuNSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiKTtcbn1cblxuLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE2JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NyZWN0JTIwZmlsbCUzRCUyMiUyM2ZmZiUyMiUyMHglM0QlMjIzJTIyJTIweSUzRCUyMjglMjIlMjB3aWR0aCUzRCUyMjEwJTIyJTIwaGVpZ2h0JTNEJTIyMSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiKTtcbn1cblxuLypcbiAqIERpc2FibGVkXG4gKi9cbi51ay1yYWRpbzpkaXNhYmxlZCxcbi51ay1jaGVja2JveDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIGJvcmRlci1jb2xvcjogI2U1ZTVlNTtcbn1cblxuLnVrLXJhZGlvOmRpc2FibGVkOmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE2JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NjaXJjbGUlMjBmaWxsJTNEJTIyJTIzOTk5JTIyJTIwY3glM0QlMjI4JTIyJTIwY3klM0QlMjI4JTIyJTIwciUzRCUyMjIlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIik7XG59XG5cbi51ay1jaGVja2JveDpkaXNhYmxlZDpjaGVja2VkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNCUyMiUyMGhlaWdodCUzRCUyMjExJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTQlMjAxMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIlMjM5OTklMjIlMjBwb2ludHMlM0QlMjIxMiUyMDElMjA1JTIwNy41JTIwMiUyMDUlMjAxJTIwNS41JTIwNSUyMDEwJTIwMTMlMjAxLjUlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIik7XG59XG5cbi51ay1jaGVja2JveDpkaXNhYmxlZDppbmRldGVybWluYXRlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNiUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTYlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIlMjM5OTklMjIlMjB4JTNEJTIyMyUyMiUyMHklM0QlMjI4JTIyJTIwd2lkdGglM0QlMjIxMCUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIik7XG59XG5cbi8qIExlZ2VuZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogTGVnZW5kXG4gKiAxLiBCZWhhdmUgbGlrZSBibG9jayBlbGVtZW50XG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKiA0LiBTdHlsZVxuICovXG4udWstbGVnZW5kIHtcbiAgLyogMSAqL1xuICB3aWR0aDogMTAwJTtcbiAgLyogMiAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMyAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiA0ICovXG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4vKiBDdXN0b20gY29udHJvbHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENvbnRhaW5lciBmaXRzIGl0cyBjb250ZW50XG4gKiAyLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dFxuICogMy4gUHJldmVudCBjb250ZW50IG92ZXJmbG93XG4gKiA0LiBCZWhhdmUgbGlrZSBtb3N0IGlubGluZS1ibG9jayBlbGVtZW50c1xuICovXG4udWstZm9ybS1jdXN0b20ge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMiAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIDMgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiA0ICovXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qXG4gKiAxLiBQb3NpdGlvbiBhbmQgcmVzaXplIHRoZSBmb3JtIGNvbnRyb2wgdG8gYWx3YXlzIGNvdmVyIGl0cyBjb250YWluZXJcbiAqIDIuIFJlcXVpcmVkIGZvciBGaXJlZm94IGZvciBwb3NpdGlvbmluZyB0byB0aGUgbGVmdFxuICogMy4gUmVxdWlyZWQgZm9yIFdlYmtpdCB0byBtYWtlIGBoZWlnaHRgIHdvcmtcbiAqIDQuIEhpZGUgY29udHJvbHMgYW5kIHNob3cgY3Vyc29yXG4gKiA1LiBOZWVkZWQgZm9yIHRoZSBjdXJzb3JcbiAqIDYuIENsaXAgaGVpZ2h0IGNhdXNlZCBieSA1LiBOZWVkZWQgZm9yIFdlYmtpdCBvbmx5XG4gKi9cbi51ay1mb3JtLWN1c3RvbSBzZWxlY3QsXG4udWstZm9ybS1jdXN0b20gaW5wdXRbdHlwZT1maWxlXSB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8qIDIgKi9cbiAgbGVmdDogMDtcbiAgLyogMyAqL1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qIDQgKi9cbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWstZm9ybS1jdXN0b20gaW5wdXRbdHlwZT1maWxlXSB7XG4gIC8qIDUgKi9cbiAgZm9udC1zaXplOiA1MDBweDtcbiAgLyogNiAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBMYWJlbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstZm9ybS1sYWJlbCB7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4vKiBMYXlvdXRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFN0YWNrZWRcbiAqL1xuLnVrLWZvcm0tc3RhY2tlZCAudWstZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8qXG4gKiBIb3Jpem9udGFsXG4gKi9cbi8qIFRhYmxldCBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC8qIEJlaGF2ZSBsaWtlIGB1ay1mb3JtLXN0YWNrZWRgICovXG4gIC51ay1mb3JtLWhvcml6b250YWwgLnVrLWZvcm0tbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWZvcm0taG9yaXpvbnRhbCAudWstZm9ybS1sYWJlbCB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAudWstZm9ybS1ob3Jpem9udGFsIC51ay1mb3JtLWNvbnRyb2xzIHtcbiAgICBtYXJnaW4tbGVmdDogMjE1cHg7XG4gIH1cbiAgLyogQmV0dGVyIHZlcnRpY2FsIGFsaWdubWVudCBpZiBjb250cm9scyBhcmUgY2hlY2tib3hlcyBhbmQgcmFkaW8gYnV0dG9ucyB3aXRoIHRleHQgKi9cbiAgLnVrLWZvcm0taG9yaXpvbnRhbCAudWstZm9ybS1jb250cm9scy10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogN3B4O1xuICB9XG59XG4vKiBJY29uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBTZXQgd2lkdGhcbiAqIDMuIENlbnRlciBpY29uIHZlcnRpY2FsbHkgYW5kIGhvcml6b250YWxseVxuICogNC4gU3R5bGVcbiAqL1xuLnVrLWZvcm0taWNvbiB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgLyogMiAqL1xuICB3aWR0aDogNDBweDtcbiAgLyogMyAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIDQgKi9cbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qXG4gKiBSZXF1aXJlZCBmb3IgYGFgLlxuICovXG4udWstZm9ybS1pY29uOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qXG4gKiBNYWtlIGBpbnB1dGAgZWxlbWVudCBjbGlja2FibGUgdGhyb3VnaCBpY29uLCBlLmcuIGlmIGl0J3MgYSBgc3BhbmBcbiAqL1xuLnVrLWZvcm0taWNvbjpub3QoYSk6bm90KGJ1dHRvbik6bm90KGlucHV0KSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKlxuICogSW5wdXQgcGFkZGluZ1xuICovXG4udWstZm9ybS1pY29uOm5vdCgudWstZm9ybS1pY29uLWZsaXApIH4gLnVrLWlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gKiBQb3NpdGlvbiBtb2RpZmllclxuICovXG4udWstZm9ybS1pY29uLWZsaXAge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLnVrLWZvcm0taWNvbi1mbGlwIH4gLnVrLWlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQnV0dG9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBSZW1vdmUgbWFyZ2lucyBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmEuXG4gKiAyLiBSZW1vdmUgYm9yZGVycyBmb3IgYGJ1dHRvbmAuXG4gKiAzLiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFLlxuICogNC4gQ29ycmVjdCBgZm9udGAgcHJvcGVydGllcyBhbmQgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGZvciBgYnV0dG9uYC5cbiAqIDUuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogNi4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUgZm9yIGBpbnB1dCB0eXBlPVwic3VibWl0XCJgaW4gaU9TLlxuICogNy4gU3R5bGVcbiAqIDguIGBsaW5lLWhlaWdodGAgaXMgdXNlZCB0byBjcmVhdGUgYSBoZWlnaHQgYmVjYXVzZSBpdCBhbHNvIGNlbnRlcnMgdGhlIHRleHQgdmVydGljYWxseSBmb3IgYGFgIGVsZW1lbnRzLlxuICogICAgQmV0dGVyIHdvdWxkIGJlIHRvIHVzZSBoZWlnaHQgYW5kIGZsZXhib3ggdG8gY2VudGVyIHRoZSB0ZXh0IHZlcnRpY2FsbHkgYnV0IGZsZXhib3ggZG9lc24ndCB3b3JrIGluIEZpcmVmb3ggb24gYGJ1dHRvbmAgZWxlbWVudHMuXG4gKiA5LiBBbGlnbiB0ZXh0IGlmIGJ1dHRvbiBoYXMgYSB3aWR0aFxuICogMTAuIFJlcXVpcmVkIGZvciBgYWAuXG4gKi9cbi51ay1idXR0b24ge1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xuICBib3JkZXI6IG5vbmU7XG4gIC8qIDMgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDQgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDUgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIDYgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAvKiA3ICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMCAzMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICAvKiA4ICovXG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAvKiA5ICovXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogMTAgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyLWNvbG9yO1xufVxuXG4udWstYnV0dG9uOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuLnVrLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b246aG92ZXIge1xuICAvKiA5ICovXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBEZWZhdWx0XG4gKi9cbi51ay1idXR0b24tZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b24tZGVmYXVsdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyLWNvbG9yOiAjYjJiMmIyO1xufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4udWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLFxuLnVrLWJ1dHRvbi1kZWZhdWx0LnVrLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTUyLjUsIDE1Mi41LCAxNTIuNSk7XG59XG5cbi8qXG4gKiBQcmltYXJ5XG4gKi9cbi51ay1idXR0b24tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTg3ZjA7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b24tcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNS4yODEyNSwgMTIyLjI1LCAyMjkuMjE4NzUpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSxcbi51ay1idXR0b24tcHJpbWFyeS51ay1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTMuNjg3NSwgMTA5LjUsIDIwNS4zMTI1KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qXG4gKiBTZWNvbmRhcnlcbiAqL1xuLnVrLWJ1dHRvbi1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEhvdmVyICovXG4udWstYnV0dG9uLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMS4yNSwgMjEuMjUsIDIxLjI1KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qIE9uQ2xpY2sgKyBBY3RpdmUgKi9cbi51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSxcbi51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig4LjUsIDguNSwgOC41KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qXG4gKiBEYW5nZXJcbiAqL1xuLnVrLWJ1dHRvbi1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA1MDZlO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEhvdmVyICovXG4udWstYnV0dG9uLWRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzcuOTg2ODQyMTA1MywgNTYuNTEzMTU3ODk0NywgOTAuNTM5NDczNjg0Mik7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4udWstYnV0dG9uLWRhbmdlcjphY3RpdmUsXG4udWstYnV0dG9uLWRhbmdlci51ay1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM1Ljk3MzY4NDIxMDUsIDMzLjAyNjMxNTc4OTUsIDcxLjA3ODk0NzM2ODQpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLypcbiAqIERpc2FibGVkXG4gKiBUaGUgc2FtZSBmb3IgYWxsIHN0eWxlIG1vZGlmaWVyc1xuICovXG4udWstYnV0dG9uLWRlZmF1bHQ6ZGlzYWJsZWQsXG4udWstYnV0dG9uLXByaW1hcnk6ZGlzYWJsZWQsXG4udWstYnV0dG9uLXNlY29uZGFyeTpkaXNhYmxlZCxcbi51ay1idXR0b24tZGFuZ2VyOmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjOTk5O1xuICBib3JkZXItY29sb3I6ICNlNWU1ZTU7XG59XG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1idXR0b24tc21hbGwge1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4udWstYnV0dG9uLWxhcmdlIHtcbiAgcGFkZGluZzogMCA0MHB4O1xuICBsaW5lLWhlaWdodDogNTNweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLyogVGV4dCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFRleHRcbiAqIDEuIFJlc2V0XG4gKiAyLiBTdHlsZVxuICovXG4udWstYnV0dG9uLXRleHQge1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC8qIDIgKi9cbiAgY29sb3I6ICMzMzM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51ay1idXR0b24tdGV4dDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjNzIGVhc2Utb3V0O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWJ1dHRvbi10ZXh0OmhvdmVyIHtcbiAgY29sb3I6ICMzMzM7XG59XG4udWstYnV0dG9uLXRleHQ6aG92ZXI6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuLnVrLWJ1dHRvbi10ZXh0OmRpc2FibGVkIHtcbiAgY29sb3I6ICM5OTk7XG59XG4udWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qXG4gKiBMaW5rXG4gKiAxLiBSZXNldFxuICogMi4gU3R5bGVcbiAqL1xuLnVrLWJ1dHRvbi1saW5rIHtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICAvKiAyICovXG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWJ1dHRvbi1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICM5OTk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1idXR0b24tbGluazpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjOTk5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIEdyb3VwXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBVc2luZyBgZmxleGAgaW5zdGVhZCBvZiBgaW5saW5lLWJsb2NrYCB0byBwcmV2ZW50IHdoaXRlc3BhY2UgYmV0d2VlbiBjaGlsZCBlbGVtZW50c1xuICogMi4gQmVoYXZlIGxpa2UgYnV0dG9uXG4gKiAzLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dFxuICovXG4udWstYnV0dG9uLWdyb3VwIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgLyogMiAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvKiAzICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogR3JvdXBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIENvbGxhcHNlIGJvcmRlclxuICovXG4udWstYnV0dG9uLWdyb3VwID4gLnVrLWJ1dHRvbjpudGgtY2hpbGQobisyKSxcbi51ay1idXR0b24tZ3JvdXAgPiBkaXY6bnRoLWNoaWxkKG4rMikgLnVrLWJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG4vKlxuICogQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgdG8gc3VwZXJpbXBvc2UgdGhlIHN1Y2Nlc3NvciBlbGVtZW50cyBib3JkZXJcbiAqIEtub3duIGlzc3VlOiBJZiB5b3UgdXNlIGFuIGBhYCBlbGVtZW50IGFzIGJ1dHRvbiBhbmQgYW4gaWNvbiBpbnNpZGUsXG4gKiB0aGUgYWN0aXZlIHN0YXRlIHdpbGwgbm90IHdvcmsgaWYgeW91IGNsaWNrIHRoZSBpY29uIGluc2lkZSB0aGUgYnV0dG9uXG4gKiBXb3JrYXJvdW5kOiBKdXN0IHVzZSBhIGBidXR0b25gIG9yIGBpbnB1dGAgZWxlbWVudCBhcyBidXR0b25cbiAqL1xuLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uOmhvdmVyLFxuLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uOmZvY3VzLFxuLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uOmFjdGl2ZSxcbi51ay1idXR0b24tZ3JvdXAgLnVrLWJ1dHRvbi51ay1hY3RpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQcm9ncmVzc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBCZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXG4gKiAzLiBSZW1vdmUgYm9yZGVycyBpbiBGaXJlZm94LlxuICogNC4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIEVkZ2UuXG4gKiA1LiBTdHlsZVxuICovXG4udWstcHJvZ3Jlc3Mge1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIC8qIDMgKi9cbiAgYm9yZGVyOiAwO1xuICAvKiA0ICovXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIC8qIDUgKi9cbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXItcmFkaXVzOiA1MDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgLnVrLXByb2dyZXNzIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLypcbiAqIFNob3cgYmFja2dyb3VuZCBjb2xvciBzZXQgb24gYHVrLXByb2dyZXNzYCBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgRWRnZS5cbiAqL1xuLnVrLXByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKlxuICogUHJvZ3Jlc3MgQmFyXG4gKiAxLiBUcmFuc2l0aW9ucyBkb24ndCB3b3JrIG9uIGA6Oi1tb3otcHJvZ3Jlc3MtYmFyYCBwc2V1ZG8gZWxlbWVudCBpbiBGaXJlZm94IHlldC5cbiAqICAgIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTY2MjM1MVxuICovXG4udWstcHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU4N2YwO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XG59XG5cbi51ay1wcm9ncmVzczo6LW1vei1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWU4N2YwO1xuICAvKiAxICovXG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNlY3Rpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIE1ha2UgaXQgd29yayB3aXRoIGAxMDB2aGAgYW5kIGhlaWdodCBpbiBnZW5lcmFsXG4gKi9cbi51ay1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxvdy1yb290O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICB9XG59XG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBTaXplIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogWFNtYWxsXG4gKi9cbi51ay1zZWN0aW9uLXhzbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cblxuLypcbiAqIFNtYWxsXG4gKi9cbi51ay1zZWN0aW9uLXNtYWxsIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4vKlxuICogTGFyZ2VcbiAqL1xuLnVrLXNlY3Rpb24tbGFyZ2Uge1xuICBwYWRkaW5nLXRvcDogNzBweDtcbiAgcGFkZGluZy1ib3R0b206IDcwcHg7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1zZWN0aW9uLWxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMTQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE0MHB4O1xuICB9XG59XG4vKlxuICogWExhcmdlXG4gKi9cbi51ay1zZWN0aW9uLXhsYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDE0MHB4O1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstc2VjdGlvbi14bGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAyMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjEwcHg7XG4gIH1cbn1cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogRGVmYXVsdFxuICovXG4udWstc2VjdGlvbi1kZWZhdWx0IHtcbiAgLS11ay1pbnZlcnNlOiBkYXJrO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4vKlxuICogTXV0ZWRcbiAqL1xuLnVrLXNlY3Rpb24tbXV0ZWQge1xuICAtLXVrLWludmVyc2U6IGRhcms7XG4gIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG59XG5cbi8qXG4gKiBQcmltYXJ5XG4gKi9cbi51ay1zZWN0aW9uLXByaW1hcnkge1xuICAtLXVrLWludmVyc2U6IGxpZ2h0O1xuICBiYWNrZ3JvdW5kOiAjMWU4N2YwO1xufVxuXG4vKlxuICogU2Vjb25kYXJ5XG4gKi9cbi51ay1zZWN0aW9uLXNlY29uZGFyeSB7XG4gIC0tdWstaW52ZXJzZTogbGlnaHQ7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG59XG5cbi8qIE92ZXJsYXAgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFJlc2VydmVkIG1vZGlmaWVyIHRvIG1ha2UgYSBzZWN0aW9uIG92ZXJsYXAgYW5vdGhlciBzZWN0aW9uIHdpdGggYW4gYm9yZGVyIGltYWdlXG4gKiBJbXBsZW1lbnRlZCBieSB0aGUgdGhlbWVcbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQm94IHNpemluZyBoYXMgdG8gYmUgYGNvbnRlbnQtYm94YCBzbyB0aGUgbWF4LXdpZHRoIGlzIGFsd2F5cyB0aGUgc2FtZSBhbmRcbiAqICAgIHVuYWZmZWN0ZWQgYnkgdGhlIHBhZGRpbmcgb24gZGlmZmVyZW50IGJyZWFrcG9pbnRzLiBJdCdzIGltcG9ydGFudCBmb3IgdGhlIHNpemUgbW9kaWZpZXJzLlxuICovXG4udWstY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxvdy1yb290O1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstY29udGFpbmVyID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKlxuICogUmVtb3ZlIHBhZGRpbmcgZnJvbSBuZXN0ZWQgY29udGFpbmVyc1xuICovXG4udWstY29udGFpbmVyIC51ay1jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8qIFNpemUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWNvbnRhaW5lci14c21hbGwge1xuICBtYXgtd2lkdGg6IDc1MHB4O1xufVxuXG4udWstY29udGFpbmVyLXNtYWxsIHtcbiAgbWF4LXdpZHRoOiA5MDBweDtcbn1cblxuLnVrLWNvbnRhaW5lci1sYXJnZSB7XG4gIG1heC13aWR0aDogMTQwMHB4O1xufVxuXG4udWstY29udGFpbmVyLXhsYXJnZSB7XG4gIG1heC13aWR0aDogMTYwMHB4O1xufVxuXG4udWstY29udGFpbmVyLWV4cGFuZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLyogRXhwYW5kIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBFeHBhbmQgb25lIHNpZGUgb25seVxuICovXG4udWstY29udGFpbmVyLWV4cGFuZC1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXhzbWFsbCxcbiAgLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQudWstY29udGFpbmVyLXhzbWFsbCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDUwJSArICg3NTBweCAvIDIpIC0gMzBweCk7XG4gIH1cbiAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXItc21hbGwsXG4gIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci1zbWFsbCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDUwJSArICg5MDBweCAvIDIpIC0gMzBweCk7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQsXG4gIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0IHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlICsgKDEyMDBweCAvIDIpIC0gNDBweCk7XG4gIH1cbiAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXIteHNtYWxsLFxuICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodC51ay1jb250YWluZXIteHNtYWxsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlICsgKDc1MHB4IC8gMikgLSA0MHB4KTtcbiAgfVxuICAudWstY29udGFpbmVyLWV4cGFuZC1sZWZ0LnVrLWNvbnRhaW5lci1zbWFsbCxcbiAgLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQudWstY29udGFpbmVyLXNtYWxsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlICsgKDkwMHB4IC8gMikgLSA0MHB4KTtcbiAgfVxuICAudWstY29udGFpbmVyLWV4cGFuZC1sZWZ0LnVrLWNvbnRhaW5lci1sYXJnZSxcbiAgLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQudWstY29udGFpbmVyLWxhcmdlIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlICsgKDE0MDBweCAvIDIpIC0gNDBweCk7XG4gIH1cbiAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXIteGxhcmdlLFxuICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodC51ay1jb250YWluZXIteGxhcmdlIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlICsgKDE2MDBweCAvIDIpIC0gNDBweCk7XG4gIH1cbn1cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFV0aWxpdHkgY2xhc3NlcyB0byByZXNldCBjb250YWluZXIgcGFkZGluZyBvbiB0aGUgbGVmdCBvciByaWdodCBzaWRlXG4gKiBOb3RlOiBJdCBoYXMgdG8gYmUgbmVnYXRpdmUgbWFyZ2luIG9uIHRoZSBpdGVtLCBiZWNhdXNlIGl0J3Mgc3BlY2lmaWMgdG8gdGhlIGl0ZW0uXG4gKi9cbi51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0LFxuLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLXJpZ2h0IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDE1cHgpO1xufVxuXG4udWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbn1cblxuLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCxcbiAgLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLXJpZ2h0IHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7XG4gIH1cbiAgLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgfVxuICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0LFxuICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgfVxuICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICB9XG4gIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNDBweDtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRpbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRpbGUge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnVrLXRpbGUge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstdGlsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gIH1cbn1cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuLnVrLXRpbGUgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBYU21hbGxcbiAqL1xuLnVrLXRpbGUteHNtYWxsIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuXG4vKlxuICogU21hbGxcbiAqL1xuLnVrLXRpbGUtc21hbGwge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbi8qXG4gKiBMYXJnZVxuICovXG4udWstdGlsZS1sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiA3MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLXRpbGUtbGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTQwcHg7XG4gIH1cbn1cbi8qXG4gKiBYTGFyZ2VcbiAqL1xuLnVrLXRpbGUteGxhcmdlIHtcbiAgcGFkZGluZy10b3A6IDE0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTQwcHg7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay10aWxlLXhsYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDIxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMTBweDtcbiAgfVxufVxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBEZWZhdWx0XG4gKi9cbi51ay10aWxlLWRlZmF1bHQge1xuICAtLXVrLWludmVyc2U6IGRhcms7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi8qXG4gKiBNdXRlZFxuICovXG4udWstdGlsZS1tdXRlZCB7XG4gIC0tdWstaW52ZXJzZTogZGFyaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbn1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuLnVrLXRpbGUtcHJpbWFyeSB7XG4gIC0tdWstaW52ZXJzZTogbGlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTg3ZjA7XG59XG5cbi8qXG4gKiBTZWNvbmRhcnlcbiAqL1xuLnVrLXRpbGUtc2Vjb25kYXJ5IHtcbiAgLS11ay1pbnZlcnNlOiBsaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENhcmRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBlYXNlLWluLW91dDtcbn1cblxuLyogU2VjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWNhcmQtYm9keSB7XG4gIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgcGFkZGluZzogMzBweCAzMHB4O1xufVxuXG4udWstY2FyZC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIHBhZGRpbmc6IDE1cHggMzBweDtcbn1cblxuLnVrLWNhcmQtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxvdy1yb290O1xuICBwYWRkaW5nOiAxNXB4IDMwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiA0MHB4IDQwcHg7XG4gIH1cbiAgLnVrLWNhcmQtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gIH1cbiAgLnVrLWNhcmQtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gIH1cbn1cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuLnVrLWNhcmQtYm9keSA+IDpsYXN0LWNoaWxkLFxuLnVrLWNhcmQtaGVhZGVyID4gOmxhc3QtY2hpbGQsXG4udWstY2FyZC1mb290ZXIgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIE1lZGlhXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBSZXNlcnZlZCBhbGlnbm1lbnQgbW9kaWZpZXIgdG8gc3R5bGUgdGhlIG1lZGlhIGVsZW1lbnQsIGUuZy4gd2l0aCBgYm9yZGVyLXJhZGl1c2BcbiAqIEltcGxlbWVudGVkIGJ5IHRoZSB0aGVtZVxuICovXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstY2FyZC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4vKiBCYWRnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUG9zaXRpb25cbiAqIDIuIFNpemVcbiAqIDMuIFN0eWxlXG4gKiA0LiBDZW50ZXIgY2hpbGQgdmVydGljYWxseVxuICovXG4udWstY2FyZC1iYWRnZSB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDE1cHg7XG4gIHJpZ2h0OiAxNXB4O1xuICB6LWluZGV4OiAxO1xuICAvKiAyICovXG4gIGhlaWdodDogMjJweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICAvKiAzICovXG4gIGJhY2tncm91bmQ6ICMxZTg3ZjA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICAvKiA0ICovXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIGFkamFjZW50IGVsZW1lbnRcbiAqL1xuLnVrLWNhcmQtYmFkZ2U6Zmlyc3QtY2hpbGQgKyAqIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogSG92ZXIgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWNhcmQtaG92ZXI6bm90KC51ay1jYXJkLWRlZmF1bHQpOm5vdCgudWstY2FyZC1wcmltYXJ5KTpub3QoLnVrLWNhcmQtc2Vjb25kYXJ5KTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMTRweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG59XG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogRGVmYXVsdFxuICogTm90ZTogSGVhZGVyIGFuZCBGb290ZXIgYXJlIG9ubHkgaW1wbGVtZW50ZWQgZm9yIHRoZSBkZWZhdWx0IHN0eWxlXG4gKi9cbi51ay1jYXJkLWRlZmF1bHQge1xuICAtLXVrLWludmVyc2U6IGRhcms7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjNjY2O1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi51ay1jYXJkLWRlZmF1bHQgLnVrLWNhcmQtdGl0bGUge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnVrLWNhcmQtZGVmYXVsdC51ay1jYXJkLWhvdmVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbn1cblxuLnVrLWNhcmQtZGVmYXVsdCAudWstY2FyZC1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLnVrLWNhcmQtZGVmYXVsdCAudWstY2FyZC1mb290ZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuLnVrLWNhcmQtcHJpbWFyeSB7XG4gIC0tdWstaW52ZXJzZTogbGlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTg3ZjA7XG4gIGNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi51ay1jYXJkLXByaW1hcnkgLnVrLWNhcmQtdGl0bGUge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWhvdmVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlODdmMDtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbn1cblxuLypcbiAqIFNlY29uZGFyeVxuICovXG4udWstY2FyZC1zZWNvbmRhcnkge1xuICAtLXVrLWludmVyc2U6IGxpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4udWstY2FyZC1zZWNvbmRhcnkgLnVrLWNhcmQtdGl0bGUge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtaG92ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICBib3gtc2hhZG93OiAwIDE0cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xufVxuXG4vKiBTaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBTbWFsbFxuICovXG4udWstY2FyZC1zbWFsbC51ay1jYXJkLWJvZHksXG4udWstY2FyZC1zbWFsbCAudWstY2FyZC1ib2R5IHtcbiAgcGFkZGluZzogMjBweCAyMHB4O1xufVxuXG4udWstY2FyZC1zbWFsbCAudWstY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAxM3B4IDIwcHg7XG59XG5cbi51ay1jYXJkLXNtYWxsIC51ay1jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IDEzcHggMjBweDtcbn1cblxuLypcbiAqIExhcmdlXG4gKi9cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstY2FyZC1sYXJnZS51ay1jYXJkLWJvZHksXG4gIC51ay1jYXJkLWxhcmdlIC51ay1jYXJkLWJvZHkge1xuICAgIHBhZGRpbmc6IDcwcHggNzBweDtcbiAgfVxuICAudWstY2FyZC1sYXJnZSAudWstY2FyZC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDM1cHggNzBweDtcbiAgfVxuICAudWstY2FyZC1sYXJnZSAudWstY2FyZC1mb290ZXIge1xuICAgIHBhZGRpbmc6IDM1cHggNzBweDtcbiAgfVxufVxuLypcbiAqIERlZmF1bHRcbiAqL1xuLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCB7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbn1cblxuLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdDpvbmx5LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogLTE1cHg7XG4gIG1hcmdpbi1ib3R0b206IC0xNXB4O1xufVxuXG4udWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLFxuLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlcixcbi51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xufVxuXG4udWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIHtcbiAgcGFkZGluZy1sZWZ0OiA0NXB4O1xufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCB7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gIH1cbiAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdDpvbmx5LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjVweDtcbiAgfVxuICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLFxuICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLFxuICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbiAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiB7XG4gICAgcGFkZGluZy1sZWZ0OiA1NXB4O1xuICB9XG59XG4vKlxuICogU21hbGxcbiAqL1xuLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQge1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi1yaWdodDogLTIwcHg7XG59XG5cbi51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0Om9ubHktY2hpbGQge1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBtYXJnaW4tYm90dG9tOiAtNXB4O1xufVxuXG4udWstY2FyZC1zbWFsbCA+IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSxcbi51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLFxuLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4udWstY2FyZC1zbWFsbCA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiB7XG4gIHBhZGRpbmctbGVmdDogMzVweDtcbn1cblxuLypcbiAqIExhcmdlXG4gKi9cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstY2FyZC1sYXJnZSA+IC51ay1uYXYtZGVmYXVsdCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0Om9ubHktY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAudWstY2FyZC1sYXJnZSA+IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSxcbiAgLnVrLWNhcmQtbGFyZ2UgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIsXG4gIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLnVrLWNhcmQtbGFyZ2UgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENsb3NlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZG9wdHMgYHVrLWljb25gXG4gKi9cbi51ay1jbG9zZSB7XG4gIGNvbG9yOiAjOTk5O1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgb3BhY2l0eTtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU3Bpbm5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRvcHRzIGB1ay1pY29uYFxuICovXG4vKiBTVkdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXNwaW5uZXIgPiAqIHtcbiAgYW5pbWF0aW9uOiB1ay1zcGlubmVyLXJvdGF0ZSAxLjRzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyB1ay1zcGlubmVyLXJvdGF0ZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICB9XG59XG4vKlxuICogQ2lyY2xlXG4gKi9cbi51ay1zcGlubmVyID4gKiA+ICoge1xuICBzdHJva2UtZGFzaGFycmF5OiA4OHB4O1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICBhbmltYXRpb246IHVrLXNwaW5uZXItZGFzaCAxLjRzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICBzdHJva2Utd2lkdGg6IDE7XG4gIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbn1cblxuQGtleWZyYW1lcyB1ay1zcGlubmVyLWRhc2gge1xuICAwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDg4cHg7XG4gIH1cbiAgNTAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjJweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4OHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1MGRlZyk7XG4gIH1cbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUb3RvcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRvcHRzIGB1ay1pY29uYFxuICovXG4udWstdG90b3Age1xuICBwYWRkaW5nOiA1cHg7XG4gIGNvbG9yOiAjOTk5O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UtaW4tb3V0O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLXRvdG9wOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay10b3RvcDphY3RpdmUge1xuICBjb2xvcjogIzMzMztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE1hcmtlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkb3B0cyBgdWstaWNvbmBcbiAqL1xuLnVrLW1hcmtlciB7XG4gIHBhZGRpbmc6IDVweDtcbiAgYmFja2dyb3VuZDogIzIyMjtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLW1hcmtlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQWxlcnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nOiAxNXB4IDI5cHggMTVweCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgLnVrLWFsZXJ0IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstYWxlcnQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIENsb3NlXG4gKiBBZG9wdHMgYHVrLWNsb3NlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYWxlcnQtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDE1cHg7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjQ7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gYWRqYWNlbnQgZWxlbWVudFxuICovXG4udWstYWxlcnQtY2xvc2U6Zmlyc3QtY2hpbGQgKyAqIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLypcbiAqIEhvdmVyXG4gKi9cbi51ay1hbGVydC1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUHJpbWFyeVxuICovXG4udWstYWxlcnQtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IHJnYigyMTUuNjI1LCAyMzQsIDI1Mi4zNzUpO1xuICBjb2xvcjogIzFlODdmMDtcbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuLnVrLWFsZXJ0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjM2LjU1LCAyNTAuOTUsIDI0NS41NSk7XG4gIGNvbG9yOiAjMzJkMjk2O1xufVxuXG4vKlxuICogV2FybmluZ1xuICovXG4udWstYWxlcnQtd2FybmluZyB7XG4gIGJhY2tncm91bmQ6IHJnYigyNTQuNSwgMjQ1LjUsIDIzOC41KTtcbiAgY29sb3I6ICNmYWEwNWE7XG59XG5cbi8qXG4gKiBEYW5nZXJcbiAqL1xuLnVrLWFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQ6IHJnYigyNTQuMDUyNjMxNTc4OSwgMjQzLjk0NzM2ODQyMTEsIDI0NS44NDIxMDUyNjMyKTtcbiAgY29sb3I6ICNmMDUwNmU7XG59XG5cbi8qXG4gKiBDb250ZW50XG4gKi9cbi51ay1hbGVydCBoMSxcbi51ay1hbGVydCBoMixcbi51ay1hbGVydCBoMyxcbi51ay1hbGVydCBoNCxcbi51ay1hbGVydCBoNSxcbi51ay1hbGVydCBoNiB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4udWstYWxlcnQgYTpub3QoW2NsYXNzXSkge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi51ay1hbGVydCBhOm5vdChbY2xhc3NdKTpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFBsYWNlaG9sZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1wbGFjZWhvbGRlciB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDMwcHggMzBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCAjZTVlNWU1O1xufVxuXG4vKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnQgKi9cbiogKyAudWstcGxhY2Vob2xkZXIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay1wbGFjZWhvbGRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJhZGdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBTdHlsZVxuICogMi4gQ2VudGVyIGNoaWxkIHZlcnRpY2FsbHkgYW5kIGhvcml6b250YWxseVxuICovXG4udWstYmFkZ2Uge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4td2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvKiAxICovXG4gIGJhY2tncm91bmQ6ICMxZTg3ZjA7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4vKlxuICogUmVxdWlyZWQgZm9yIGBhYFxuICovXG4udWstYmFkZ2U6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBMYWJlbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgYmFja2dyb3VuZDogIzFlODdmMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLyogQ29sb3IgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBTdWNjZXNzXG4gKi9cbi51ay1sYWJlbC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyZDI5NjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qXG4gKiBXYXJuaW5nXG4gKi9cbi51ay1sYWJlbC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhYTA1YTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qXG4gKiBEYW5nZXJcbiAqL1xuLnVrLWxhYmVsLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMDUwNmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogT3ZlcmxheVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstb3ZlcmxheSB7XG4gIHBhZGRpbmc6IDMwcHggMzBweDtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstb3ZlcmxheSA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogSWNvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIERlZmF1bHRcbiAqL1xuLnVrLW92ZXJsYXktZGVmYXVsdCB7XG4gIC0tdWstaW52ZXJzZTogZGFyaztcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuXG4vKlxuICogUHJpbWFyeVxuICovXG4udWstb3ZlcmxheS1wcmltYXJ5IHtcbiAgLS11ay1pbnZlcnNlOiBsaWdodDtcbiAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzQsIDM0LCAwLjgpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQXJ0aWNsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYXJ0aWNsZSB7XG4gIGRpc3BsYXk6IGZsb3ctcm9vdDtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstYXJ0aWNsZSA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogQWRqYWNlbnQgc2libGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYXJ0aWNsZSArIC51ay1hcnRpY2xlIHtcbiAgbWFyZ2luLXRvcDogNzBweDtcbn1cblxuLyogVGl0bGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWFydGljbGUtdGl0bGUge1xuICBmb250LXNpemU6IDIuMjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1hcnRpY2xlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICB9XG59XG4vKiBNZXRhXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1hcnRpY2xlLW1ldGEge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzk5OTtcbn1cbi51ay1hcnRpY2xlLW1ldGEgYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuLnVrLWFydGljbGUtbWV0YSBhOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENvbW1lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogU2VjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWNvbW1lbnQtYm9keSB7XG4gIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4udWstY29tbWVudC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuLnVrLWNvbW1lbnQtYm9keSA+IDpsYXN0LWNoaWxkLFxuLnVrLWNvbW1lbnQtaGVhZGVyID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstY29tbWVudC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLyogTWV0YVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstY29tbWVudC1tZXRhIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qIEF2YXRhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBMaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1jb21tZW50LWxpc3Qge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiBBZGphY2VudCBzaWJsaW5ncyAqL1xuLnVrLWNvbW1lbnQtbGlzdCA+IDpudGgtY2hpbGQobisyKSB7XG4gIG1hcmdpbi10b3A6IDcwcHg7XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICogTm90ZTogR2VuZXJhbCBzaWJsaW5nIHNlbGVjdG9yIGFsbG93cyByZXBseSBibG9jayBiZXR3ZWVuIGNvbW1lbnQgYW5kIHN1Ymxpc3RcbiAqL1xuLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCB+IHVsIHtcbiAgbWFyZ2luOiA3MHB4IDAgMCAwO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCB+IHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICB9XG59XG4vKiBBZGphY2VudCBzaWJsaW5ncyAqL1xuLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCB+IHVsID4gOm50aC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLXRvcDogNzBweDtcbn1cblxuLyogU3R5bGUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWNvbW1lbnQtcHJpbWFyeSB7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTZWFyY2hcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENvbnRhaW5lciBmaXRzIGl0cyBjb250ZW50XG4gKiAyLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dFxuICogMy4gUHJldmVudCBjb250ZW50IG92ZXJmbG93XG4gKiA0LiBSZXNldCBgZm9ybWBcbiAqL1xuLnVrLXNlYXJjaCB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAyICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogMyAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDQgKi9cbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBJbnB1dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgb24gT1MgWCBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cbi51ay1zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4udWstc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKlxuICogUmVtb3ZlcyBwbGFjZWhvbGRlciB0cmFuc3BhcmVuY3kgaW4gRmlyZWZveC5cbiAqL1xuLnVrLXNlYXJjaC1pbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qXG4gKiAxLiBEZWZpbmUgY29uc2lzdGVudCBib3ggc2l6aW5nLlxuICogMi4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94L0lFIGFuZCBDaHJvbWUvU2FmYXJpL09wZXJhLlxuICogMy4gUmVtb3ZlIGBib3JkZXItcmFkaXVzYCBpbiBpT1MuXG4gKiA0LiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnNcbiAqIDUuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKiA2LiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBpT1MuXG4gKiA3LiBWZXJ0aWNhbCBhbGlnbm1lbnRcbiAqIDguIFRha2UgdGhlIGZ1bGwgY29udGFpbmVyIHdpZHRoXG4gKiA5LiBTdHlsZVxuICovXG4udWstc2VhcmNoLWlucHV0IHtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqL1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAvKiA0ICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDUgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDYgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAvKiA3ICovXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qIDggKi9cbiAgd2lkdGg6IDEwMCU7XG4gIC8qIDkgKi9cbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qIFBsYWNlaG9sZGVyICovXG4udWstc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKiBJY29uIChBZG9wdHMgYHVrLWljb25gKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUG9zaXRpb24gYWJvdmUgaW5wdXRcbiAqIDEuIFNldCBwb3NpdGlvblxuICogMi4gQ2VudGVyIGljb24gdmVydGljYWxseSBhbmQgaG9yaXpvbnRhbGx5XG4gKiAzLiBTdHlsZVxuICovXG4udWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIDMgKi9cbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qXG4gKiBSZXF1aXJlZCBmb3IgYGFgLlxuICovXG4udWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKlxuICogTWFrZSBgaW5wdXRgIGVsZW1lbnQgY2xpY2thYmxlIHRocm91Z2ggaWNvbiwgZS5nLiBpZiBpdCdzIGEgYHNwYW5gXG4gKi9cbi51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOm5vdChhKTpub3QoYnV0dG9uKTpub3QoaW5wdXQpIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qXG4gKiBQb3NpdGlvbiBtb2RpZmllclxuICovXG4udWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbi1mbGlwIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8qIERlZmF1bHQgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXNlYXJjaC1kZWZhdWx0IHtcbiAgd2lkdGg6IDI0MHB4O1xufVxuXG4vKlxuICogSW5wdXRcbiAqL1xuLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQge1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qIEZvY3VzICovXG4udWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJvcmRlci1jb2xvcjogIzFlODdmMDtcbn1cblxuLypcbiAqIEljb25cbiAqL1xuLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLnVrLXNlYXJjaC1kZWZhdWx0OmhhcygudWstc2VhcmNoLWljb246bm90KC51ay1zZWFyY2gtaWNvbi1mbGlwKSkgLnVrLXNlYXJjaC1pbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbn1cblxuLnVrLXNlYXJjaC1kZWZhdWx0OmhhcygudWstc2VhcmNoLWljb24tZmxpcCkgLnVrLXNlYXJjaC1pbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG59XG5cbi8qIE5hdmJhciBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstc2VhcmNoLW5hdmJhciB7XG4gIHdpZHRoOiAyNDBweDtcbn1cblxuLypcbiAqIElucHV0XG4gKi9cbi51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQge1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLyogRm9jdXMgKi9cbi51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMxZTg3ZjA7XG59XG5cbi8qXG4gKiBJY29uXG4gKi9cbi51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLnVrLXNlYXJjaC1uYXZiYXI6aGFzKC51ay1zZWFyY2gtaWNvbjpub3QoLnVrLXNlYXJjaC1pY29uLWZsaXApKSAudWstc2VhcmNoLWlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4O1xufVxuXG4udWstc2VhcmNoLW5hdmJhcjpoYXMoLnVrLXNlYXJjaC1pY29uLWZsaXApIC51ay1zZWFyY2gtaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xufVxuXG4vKiBNZWRpdW0gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXNlYXJjaC1tZWRpdW0ge1xuICB3aWR0aDogNDAwcHg7XG59XG5cbi8qXG4gKiBJbnB1dFxuICovXG4udWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0IHtcbiAgaGVpZ2h0OiA1NXB4O1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLyogRm9jdXMgKi9cbi51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBib3JkZXItY29sb3I6ICMxZTg3ZjA7XG59XG5cbi8qXG4gKiBJY29uXG4gKi9cbi51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLnVrLXNlYXJjaC1tZWRpdW06aGFzKC51ay1zZWFyY2gtaWNvbjpub3QoLnVrLXNlYXJjaC1pY29uLWZsaXApKSAudWstc2VhcmNoLWlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xufVxuXG4udWstc2VhcmNoLW1lZGl1bTpoYXMoLnVrLXNlYXJjaC1pY29uLWZsaXApIC51ay1zZWFyY2gtaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xufVxuXG4vKiBMYXJnZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstc2VhcmNoLWxhcmdlIHtcbiAgd2lkdGg6IDUwMHB4O1xufVxuXG4vKlxuICogSW5wdXRcbiAqL1xuLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0IHtcbiAgaGVpZ2h0OiA5MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDIuNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyLWNvbG9yOiAjMWU4N2YwO1xufVxuXG4vKlxuICogSWNvblxuICovXG4udWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuLnVrLXNlYXJjaC1sYXJnZTpoYXMoLnVrLXNlYXJjaC1pY29uOm5vdCgudWstc2VhcmNoLWljb24tZmxpcCkpIC51ay1zZWFyY2gtaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG59XG5cbi51ay1zZWFyY2gtbGFyZ2U6aGFzKC51ay1zZWFyY2gtaWNvbi1mbGlwKSAudWstc2VhcmNoLWlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogODBweDtcbn1cblxuLyogVG9nZ2xlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1zZWFyY2gtdG9nZ2xlIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qIEhvdmVyICovXG4udWstc2VhcmNoLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQWNjb3JkaW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1hY2NvcmRpb24ge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiBJdGVtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1hY2NvcmRpb24gPiA6bnRoLWNoaWxkKG4rMikge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICMzMzM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMS40ZW07XG4gIGhlaWdodDogMS40ZW07XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEzJTIwMTMlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyJTIzNjY2JTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIlMjM2NjYlMjIlMjB3aWR0aCUzRCUyMjElMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHglM0QlMjI2JTIyJTIweSUzRCUyMjAlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG59XG4udWstb3BlbiA+IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEzJTIwMTMlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyJTIzNjY2JTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIENvbnRlbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogZmxvdy1yb290O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay1hY2NvcmRpb24tY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERyb3BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gU2V0IHBvc2l0aW9uXG4gKiAzLiBTZXQgYSBkZWZhdWx0IHdpZHRoXG4gKi9cbi51ay1kcm9wIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBub25lO1xuICAvKiAyICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAyMDtcbiAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6IDIwcHg7XG4gIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiAxNXB4O1xuICAvKiAzICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAzMDBweDtcbn1cblxuLyogU2hvdyAqL1xuLnVrLWRyb3AudWstb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBHcmlkIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstZHJvcC1zdGFjayAudWstZHJvcC1ncmlkID4gKiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi8qIFBhcmVudCBpY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1kcm9wLXBhcmVudC1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG59XG5cblthcmlhLWV4cGFuZGVkPXRydWVdID4gLnVrLWRyb3AtcGFyZW50LWljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERyb3BiYXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkb3B0cyBgdWstZHJvcGBcbiAqIDEuIFJlc2V0IGRyb3BcbiAqIDIuIFN0eWxlXG4gKi9cbi51ay1kcm9wYmFyIHtcbiAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6IDA7XG4gIC0tdWstcG9zaXRpb24tc2hpZnQtb2Zmc2V0OiAwO1xuICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogMDtcbiAgLS11ay1pbnZlcnNlOiBkYXJrO1xuICAvKiAxICovXG4gIHdpZHRoOiBhdXRvO1xuICAvKiAyICovXG4gIHBhZGRpbmc6IDI1cHggMTVweCAyNXB4IDE1cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay1kcm9wYmFyID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1kcm9wYmFyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWRyb3BiYXIge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB9XG59XG4udWstZHJvcGJhciA6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbn1cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstZHJvcGJhci1sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLyogRGlyZWN0aW9uIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1kcm9wYmFyLXRvcCB7XG4gIGJveC1zaGFkb3c6IDAgMTJweCA3cHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4udWstZHJvcGJhci1ib3R0b20ge1xuICBib3gtc2hhZG93OiAwIC0xMnB4IDdweCAtNnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi51ay1kcm9wYmFyLWxlZnQge1xuICBib3gtc2hhZG93OiAxMnB4IDAgN3B4IC02cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLnVrLWRyb3BiYXItcmlnaHQge1xuICBib3gtc2hhZG93OiAtMTJweCAwIDdweCAtNnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEcm9wbmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBQb3NpdGlvblxuICogMi4gUmVzZXQgZHJvcGJhclxuICogMy4gV2lkdGhcbiAqL1xuLnVrLWRyb3BuYXYtZHJvcGJhciB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5ODA7XG4gIC8qIDIgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE1vZGFsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBIaWRlIGJ5IGRlZmF1bHRcbiAqIDIuIFNldCBwb3NpdGlvblxuICogMy4gQWxsb3cgc2Nyb2xsaW5nIGZvciB0aGUgbW9kYWwgZGlhbG9nXG4gKiA0LiBIb3Jpem9udGFsIHBhZGRpbmdcbiAqIDUuIE1hc2sgdGhlIGJhY2tncm91bmQgcGFnZVxuICogNi4gRmFkZS1pbiB0cmFuc2l0aW9uXG4gKi9cbi51ay1tb2RhbCB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogbm9uZTtcbiAgLyogMiAqL1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAxMDtcbiAgLyogMyAqL1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAvKiA0ICovXG4gIHBhZGRpbmc6IDE1cHggMTVweDtcbiAgLyogNSAqL1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIC8qIDYgKi9cbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnVrLW1vZGFsIHtcbiAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1tb2RhbCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbn1cbi8qXG4gKiBPcGVuXG4gKi9cbi51ay1tb2RhbC51ay1vcGVuIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogUGFnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUHJldmVudCBzY3JvbGxiYXJzXG4gKi9cbi51ay1tb2RhbC1wYWdlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogRGlhbG9nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3Igc3Bpbm5lciBhbmQgY2xvc2UgYnV0dG9uXG4gKiAyLiBEaW1lbnNpb25zXG4gKiAzLiBgIWltcG9ydGFudGAgaXMgbmVlZGVkIHRvIG92ZXJ3cml0ZSBgdWstd2lkdGgtYXV0b2AuIFNlZSBgI21vZGFsLW1lZGlhLWltYWdlYCBpbiB0ZXN0c1xuICogNC4gU3R5bGVcbiAqIDUuIFNsaWRlLWluIHRyYW5zaXRpb25cbiAqL1xuLnVrLW1vZGFsLWRpYWxvZyB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiAyICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogNjAwcHg7XG4gIC8qIDMgKi9cbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIC8qIDQgKi9cbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgLyogNSAqL1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgdHJhbnNpdGlvbjogMC4zcyBsaW5lYXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbn1cblxuLypcbiAqIE9wZW5cbiAqL1xuLnVrLW9wZW4gPiAudWstbW9kYWwtZGlhbG9nIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4vKiBTaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBDb250YWluZXIgc2l6ZVxuICogVGFrZSB0aGUgc2FtZSBzaXplIGFzIHRoZSBDb250YWluZXIgY29tcG9uZW50XG4gKi9cbi51ay1tb2RhbC1jb250YWluZXIgLnVrLW1vZGFsLWRpYWxvZyB7XG4gIHdpZHRoOiAxMjAwcHg7XG59XG5cbi8qXG4gKiBGdWxsIHNpemVcbiAqIDEuIFJlbW92ZSBwYWRkaW5nIGFuZCBiYWNrZ3JvdW5kIGZyb20gbW9kYWxcbiAqIDIuIFJlc2V0IGFsbCBkZWZhdWx0IGRlY2xhcmF0aW9ucyBmcm9tIG1vZGFsIGRpYWxvZ1xuICovXG4vKiAxICovXG4udWstbW9kYWwtZnVsbCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi8qIDIgKi9cbi51ay1tb2RhbC1mdWxsIC51ay1tb2RhbC1kaWFsb2cge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLyogU2VjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLW1vZGFsLWJvZHkge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIHBhZGRpbmc6IDIwcHggMjBweDtcbn1cblxuLnVrLW1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLnVrLW1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstbW9kYWwtYm9keSB7XG4gICAgcGFkZGluZzogMzBweCAzMHB4O1xuICB9XG4gIC51ay1tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgfVxuICAudWstbW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gIH1cbn1cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuLnVrLW1vZGFsLWJvZHkgPiA6bGFzdC1jaGlsZCxcbi51ay1tb2RhbC1oZWFkZXIgPiA6bGFzdC1jaGlsZCxcbi51ay1tb2RhbC1mb290ZXIgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFRpdGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1tb2RhbC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbltjbGFzcyo9dWstbW9kYWwtY2xvc2UtXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAxMDtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgcGFkZGluZzogNXB4O1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIGFkamFjZW50IGVsZW1lbnRcbiAqL1xuW2NsYXNzKj11ay1tb2RhbC1jbG9zZS1dOmZpcnN0LWNoaWxkICsgKiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qXG4gKiBIb3ZlclxuICovXG4vKlxuICogRGVmYXVsdFxuICovXG4vKlxuICogT3V0c2lkZVxuICogMS4gUHJldmVudCBzY3JvbGxiYXIgb24gc21hbGwgZGV2aWNlc1xuICovXG4udWstbW9kYWwtY2xvc2Utb3V0c2lkZSB7XG4gIHRvcDogMDtcbiAgLyogMSAqL1xuICByaWdodDogLTVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi51ay1tb2RhbC1jbG9zZS1vdXRzaWRlOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC8qIDEgKi9cbiAgLnVrLW1vZGFsLWNsb3NlLW91dHNpZGUge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIC0xMDAlKTtcbiAgfVxufVxuLypcbiAqIEZ1bGxcbiAqL1xuLnVrLW1vZGFsLWNsb3NlLWZ1bGwge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstbW9kYWwtY2xvc2UtZnVsbCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNsaWRlc2hvd1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUHJldmVudCB0YWIgaGlnaGxpZ2h0aW5nIG9uIGlPUy5cbiAqL1xuLnVrLXNsaWRlc2hvdyB7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBhbmQgc3RhY2tpbmcgY29udGV4dFxuICogMi4gUmVzZXQgbGlzdFxuICogMy4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICogNC4gUHJldmVudCBkaXNwbGF5aW5nIHRoZSBjYWxsb3V0IGluZm9ybWF0aW9uIG9uIGlPUy5cbiAqIDUuIERpc2FibGUgaG9yaXpvbnRhbCBwYW5uaW5nIGdlc3R1cmVzXG4gKi9cbi51ay1zbGlkZXNob3ctaXRlbXMge1xuICAvKiAxICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIC8qIDMgKi9cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogNCAqL1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC8qIDUgKi9cbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUG9zaXRpb24gaXRlbXMgYWJvdmUgZWFjaCBvdGhlclxuICogMi4gVGFrZSB0aGUgZnVsbCB3aWR0aFxuICogMy4gQ2xpcCBjaGlsZCBlbGVtZW50cywgZS5nLiBmb3IgYHVrLWNvdmVyYFxuICogNC4gT3B0aW1pemUgYW5pbWF0aW9uXG4gKi9cbi51ay1zbGlkZXNob3ctaXRlbXMgPiAqIHtcbiAgLyogMSAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgLyogMiAqL1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICAvKiAzICovXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDQgKi9cbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbn1cblxuLypcbiAqIEhpZGUgbm90IGFjdGl2ZSBpdGVtc1xuICovXG4udWstc2xpZGVzaG93LWl0ZW1zID4gOm5vdCgudWstYWN0aXZlKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTbGlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIFByZXZlbnQgdGFiIGhpZ2hsaWdodGluZyBvbiBpT1MuXG4gKi9cbi51ay1zbGlkZXIge1xuICAvKiAxICovXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICogMi4gUHJldmVudCBhY2NpZGVudGFsIHNjcm9sbGluZyB0aHJvdWdoIGVsZW1lbnRzIGluIHNsaWRlIGdldHRpbmcgZm9jdXNlZFxuICovXG4udWstc2xpZGVyLWNvbnRhaW5lciB7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogMiAqL1xuICBvdmVyZmxvdzogY2xpcDtcbn1cblxuLypcbiAqIFdpZGVuIGNvbnRhaW5lciB0byBwcmV2ZW50IGJveC1zaGFkb3dzIGZyb20gY2xpcHBpbmcsIGBsYXJnZS1ib3gtc2hhZG93YFxuICovXG4udWstc2xpZGVyLWNvbnRhaW5lci1vZmZzZXQge1xuICBtYXJnaW46IC0xMXB4IC0yNXB4IC0zOXB4IC0yNXB4O1xuICBwYWRkaW5nOiAxMXB4IDI1cHggMzlweCAyNXB4O1xufVxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gT3B0aW1pemUgYW5pbWF0aW9uXG4gKiAyLiBDcmVhdGUgYSBjb250YWluaW5nIGJsb2NrLiBJbiBTYWZhcmkgaXQncyBuZWl0aGVyIGNyZWF0ZWQgYnkgYHRyYW5zZm9ybWAgbm9yIGB3aWxsLWNoYW5nZWAuXG4gKiAzLiBEaXNhYmxlIGhvcml6b250YWwgcGFubmluZyBnZXN0dXJlc1xuICovXG4udWstc2xpZGVyLWl0ZW1zIHtcbiAgLyogMSAqL1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAvKiAyICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogMyAqL1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4vKlxuICogMS4gUmVzZXQgbGlzdCBzdHlsZSB3aXRob3V0IGludGVyZmVyaW5nIHdpdGggZ3JpZFxuICogMi4gUHJldmVudCBkaXNwbGF5aW5nIHRoZSBjYWxsb3V0IGluZm9ybWF0aW9uIG9uIGlPUy5cbiAqL1xuLnVrLXNsaWRlci1pdGVtczpub3QoLnVrLWdyaWQpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4udWstc2xpZGVyLWl0ZW1zLnVrLWdyaWQge1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gTGV0IGl0ZW1zIHRha2UgY29udGVudCBkaW1lbnNpb25zICgwIDAgYXV0bylcbiAqICAgIGBtYXgtd2lkdGhgIG5lZWRlZCB0byBrZWVwIGltYWdlIHJlc3BvbnNpdmVuZXNzIGFuZCBwcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKi9cbi51ay1zbGlkZXItaXRlbXMgPiAqIHtcbiAgLyogMSAqL1xuICBmbGV4OiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMiAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTdGlja3lcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IHNvIGl0J3MgdCB0aGUgc2FtZSBsaWtlIHdoZW4gZml4ZWQuXG4gKiAyLiBDcmVhdGUgc3RhY2tpbmcgY29udGV4dCBhbHJlYWR5IHdoZW4gbm90IHN0aWNreSB0byBoYXZlIHRoZSBzYW1lIGNvbnRleHRcbiogICAgIGZvciBwb3NpdGlvbiBzZXQgdG8gYHN0aWNreWAgYW5kIGByZWxhdGl2ZWBcbiAqIDIuIE1vcmUgcm9idXN0IGlmIHBhZGRpbmcgYW5kIGJvcmRlciBhcmUgdXNlZCBhbmQgdGhlIHN0aWNreSBoZWlnaHQgaXMgdHJhbnNpdGlvbmVkXG4gKi9cbi51ay1zdGlja3kge1xuICAvKiAxICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogMiAqL1xuICB6LWluZGV4OiA5ODA7XG4gIC8qIDMgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnVrLXN0aWNreS1maXhlZCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogRmFzdGVyIGFuaW1hdGlvbnNcbiAqL1xuLnVrLXN0aWNreVtjbGFzcyo9dWstYW5pbWF0aW9uLV0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuMnM7XG59XG5cbi51ay1zdGlja3kudWstYW5pbWF0aW9uLXJldmVyc2Uge1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuMnM7XG59XG5cbi8qXG4gKiBQbGFjZWhvbGRlclxuICogTWFrZSBjb250ZW50IGNsaWNrYWJsZSBmb3Igc3RpY2t5IGNvdmVyIGFuZCByZXZlYWwgZWZmZWN0c1xuICovXG4udWstc3RpY2t5LXBsYWNlaG9sZGVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBPZmYtY2FudmFzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBIaWRlIGJ5IGRlZmF1bHRcbiAqIDIuIFNldCBwb3NpdGlvblxuICovXG4udWstb2ZmY2FudmFzIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBub25lO1xuICAvKiAyICovXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG59XG5cbi8qXG4gKiBGbGlwIG1vZGlmaWVyXG4gKi9cbi51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8qIEJhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBTaXplIGFuZCBzdHlsZVxuICogMy4gQWxsb3cgc2Nyb2xsaW5nXG4gKi9cbi51ay1vZmZjYW52YXMtYmFyIHtcbiAgLS11ay1pbnZlcnNlOiBsaWdodDtcbiAgLyogMSAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAtMjcwcHg7XG4gIC8qIDIgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDI3MHB4O1xuICBwYWRkaW5nOiAyMHB4IDIwcHg7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG4gIC8qIDMgKi9cbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstb2ZmY2FudmFzLWJhciB7XG4gICAgbGVmdDogLTM1MHB4O1xuICAgIHdpZHRoOiAzNTBweDtcbiAgICBwYWRkaW5nOiAzMHB4IDMwcHg7XG4gIH1cbn1cbi8qIEZsaXAgbW9kaWZpZXIgKi9cbi51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzLWJhciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMjcwcHg7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzLWJhciB7XG4gICAgcmlnaHQ6IC0zNTBweDtcbiAgfVxufVxuLypcbiAqIE9wZW5cbiAqL1xuLnVrLW9wZW4gPiAudWstb2ZmY2FudmFzLWJhciB7XG4gIGxlZnQ6IDA7XG59XG5cbi51ay1vZmZjYW52YXMtZmxpcCAudWstb3BlbiA+IC51ay1vZmZjYW52YXMtYmFyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi8qXG4gKiBTbGlkZSBBbmltYXRpb24gKFVzZWQgaW4gc2xpZGUgYW5kIHB1c2ggbW9kZSlcbiAqL1xuLnVrLW9mZmNhbnZhcy1iYXItYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjNzIGVhc2Utb3V0O1xufVxuXG4udWstb2ZmY2FudmFzLWZsaXAgLnVrLW9mZmNhbnZhcy1iYXItYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7XG59XG5cbi8qXG4gKiBSZXZlYWwgQW5pbWF0aW9uXG4gKiAxLiBTZXQgcG9zaXRpb25cbiAqIDIuIENsaXAgdGhlIGJhclxuICogMy4gQW5pbWF0aW9uXG4gKiA0LiBSZXNldCBwb3NpdGlvblxuICovXG4udWstb2ZmY2FudmFzLXJldmVhbCB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgLyogMiAqL1xuICB3aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogMyAqL1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2Utb3V0O1xufVxuXG4udWstb2ZmY2FudmFzLXJldmVhbCAudWstb2ZmY2FudmFzLWJhciB7XG4gIC8qIDQgKi9cbiAgbGVmdDogMDtcbn1cblxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMtcmV2ZWFsIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgLyogNCAqL1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLnVrLW9wZW4gPiAudWstb2ZmY2FudmFzLXJldmVhbCB7XG4gIHdpZHRoOiAyNzBweDtcbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnVrLW9wZW4gPiAudWstb2ZmY2FudmFzLXJldmVhbCB7XG4gICAgd2lkdGg6IDM1MHB4O1xuICB9XG59XG4vKlxuICogRmxpcCBtb2RpZmllclxuICovXG4udWstb2ZmY2FudmFzLWZsaXAgLnVrLW9mZmNhbnZhcy1yZXZlYWwge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1vZmZjYW52YXMtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHRvcDogNXB4O1xuICByaWdodDogNXB4O1xuICBwYWRkaW5nOiA1cHg7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1vZmZjYW52YXMtY2xvc2Uge1xuICAgIHRvcDogMTBweDtcbiAgICByaWdodDogMTBweDtcbiAgfVxufVxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSBhZGphY2VudCBlbGVtZW50XG4gKi9cbi51ay1vZmZjYW52YXMtY2xvc2U6Zmlyc3QtY2hpbGQgKyAqIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogT3ZlcmxheVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogT3ZlcmxheSB0aGUgd2hvbGUgcGFnZS4gTmVlZGVkIGZvciB0aGUgYDo6YmVmb3JlYFxuICogMS4gVXNpbmcgYDEwMHZ3YCBzbyBubyBtb2RpZmljYXRpb24gaXMgbmVlZGVkIHdoZW4gb2ZmLWNhbnZhcyBpcyBmbGlwcGVkXG4gKiAyLiBBbGxvdyBmb3IgY2xvc2luZyB3aXRoIHN3aXBlIGdlc3R1cmUgb24gZGV2aWNlcyB3aXRoIHBvaW50ZXIgZXZlbnRzLlxuICovXG4udWstb2ZmY2FudmFzLW92ZXJsYXkge1xuICAvKiAxICovXG4gIHdpZHRoOiAxMDB2dztcbiAgLyogMiAqL1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8qXG4gKiAxLiBNYXNrIHRoZSB3aG9sZSBwYWdlXG4gKiAyLiBGYWRlLWluIHRyYW5zaXRpb25cbiAqL1xuLnVrLW9mZmNhbnZhcy1vdmVybGF5OjpiZWZvcmUge1xuICAvKiAxICovXG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC8qIDIgKi9cbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG59XG5cbi51ay1vZmZjYW52YXMtb3ZlcmxheS51ay1vcGVuOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBQcmV2ZW50IHNjcm9sbGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUHJldmVudCBob3Jpem9udGFsIHNjcm9sbGJhciB3aGVuIHRoZSBjb250ZW50IGlzIHNsaWRlLW91dFxuICogSGFzIHRvIGJlIG9uIHRoZSBgaHRtbGAgZWxlbWVudCB0b28gdG8gbWFrZSBpdCB3b3JrIG9uIHRoZSBgYm9keWBcbiAqIDEuIGBjbGlwYCBpcyBuZWVkZWQgZm9yIGBwb3NpdGlvbjogc3RpY2t5YCBlbGVtZW50cyB0byBrZWVwIHRoZWlyIHBvc2l0aW9uXG4gKi9cbi51ay1vZmZjYW52YXMtcGFnZSxcbi51ay1vZmZjYW52YXMtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAvKiAxICovXG4gIG92ZXJmbG93LXg6IGNsaXA7XG59XG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUHJlcGFyZSBzbGlkZS1vdXQgYW5pbWF0aW9uIChVc2VkIGluIHJldmVhbCBhbmQgcHVzaCBtb2RlKVxuICogVXNpbmcgYHBvc2l0aW9uOiBsZWZ0YCBpbnN0ZWFkIG9mIGB0cmFuc2Zvcm1gIGJlY2F1c2UgcG9zaXRpb24gYGZpeGVkYCBlbGVtZW50cyBsaWtlIHN0aWNreSBuYXZiYXJzXG4gKiBsb3NlIHRoZWlyIGZpeGVkIHN0YXRlIGFuZCBiZWhhdmVzIGxpa2UgYGFic29sdXRlYCB3aXRoaW4gYSB0cmFuc2Zvcm1lZCBjb250YWluZXJcbiAqIDEuIFByb3ZpZGUgYSBmaXhlZCB3aWR0aCBhbmQgcHJldmVudCBzaHJpbmtpbmdcbiAqL1xuLnVrLW9mZmNhbnZhcy1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zaXRpb246IGxlZnQgMC4zcyBlYXNlLW91dDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLypcbiAqIEFjdGl2YXRlIHNsaWRlLW91dCBhbmltYXRpb25cbiAqL1xuOm5vdCgudWstb2ZmY2FudmFzLWZsaXApLnVrLW9mZmNhbnZhcy1jb250YWluZXItYW5pbWF0aW9uIHtcbiAgbGVmdDogMjcwcHg7XG59XG5cbi51ay1vZmZjYW52YXMtZmxpcC51ay1vZmZjYW52YXMtY29udGFpbmVyLWFuaW1hdGlvbiB7XG4gIGxlZnQ6IC0yNzBweDtcbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgOm5vdCgudWstb2ZmY2FudmFzLWZsaXApLnVrLW9mZmNhbnZhcy1jb250YWluZXItYW5pbWF0aW9uIHtcbiAgICBsZWZ0OiAzNTBweDtcbiAgfVxuICAudWstb2ZmY2FudmFzLWZsaXAudWstb2ZmY2FudmFzLWNvbnRhaW5lci1hbmltYXRpb24ge1xuICAgIGxlZnQ6IC0zNTBweDtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFN3aXRjaGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBSZXNldCBsaXN0XG4gKi9cbi51ay1zd2l0Y2hlciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEhpZGUgbm90IGFjdGl2ZSBpdGVtc1xuICovXG4udWstc3dpdGNoZXIgPiA6bm90KC51ay1hY3RpdmUpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstc3dpdGNoZXIgPiAqID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGVhZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1sZWFkZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKlxuICogMS4gUGxhY2UgZWxlbWVudCBpbiB0ZXh0IGZsb3dcbiAqIDIuIE5ldmVyIGJyZWFrIGludG8gYSBuZXcgbGluZVxuICogMy4gR2V0IGEgc3RyaW5nIGJhY2sgd2l0aCBhcyBtYW55IHJlcGVhdGluZyBjaGFyYWN0ZXJzIHRvIGZpbGwgdGhlIGNvbnRhaW5lclxuICogNC4gUHJldmVudCB3cmFwcGluZy4gT3ZlcmZsb3dpbmcgY2hhcmFjdGVycyB3aWxsIGJlIGNsaXBwZWQgYnkgdGhlIGNvbnRhaW5lclxuICovXG4udWstbGVhZGVyLWZpbGw6OmFmdGVyIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAvKiAyICovXG4gIHdpZHRoOiAwO1xuICAvKiAzICovXG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1maWxsKTtcbiAgLyogNCAqL1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKlxuICogSGlkZSBpZiBtZWRpYSBkb2VzIG5vdCBtYXRjaFxuICovXG4udWstbGVhZGVyLWZpbGwudWstbGVhZGVyLWhpZGU6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLypcbiAqIFBhc3MgZmlsbCBjaGFyYWN0ZXIgdG8gSlNcbiAqL1xuOnJvb3Qge1xuICAtLXVrLWxlYWRlci1maWxsLWNvbnRlbnQ6IC47XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBOb3RpZmljYXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIFNldCBwb3NpdGlvblxuICogMi4gRGltZW5zaW9uc1xuICovXG4udWstbm90aWZpY2F0aW9uIHtcbiAgLyogMSAqL1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMTBweDtcbiAgei1pbmRleDogMTA0MDtcbiAgLyogMiAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMzUwcHg7XG59XG5cbi8qIFBvc2l0aW9uIG1vZGlmaWVyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1ub3RpZmljYXRpb24tdG9wLXJpZ2h0LFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTBweDtcbn1cblxuLnVrLW5vdGlmaWNhdGlvbi10b3AtY2VudGVyLFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tY2VudGVyIHtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTE3NXB4O1xufVxuXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1sZWZ0LFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHQsXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1jZW50ZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTBweDtcbn1cblxuLyogUmVzcG9uc2l2ZW5lc3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBQaG9uZXMgcG9ydHJhaXQgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAzMTlweCkge1xuICAudWstbm90aWZpY2F0aW9uIHtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLyogTWVzc2FnZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1ub3RpZmljYXRpb24tbWVzc2FnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTVweDtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4qICsgLnVrLW5vdGlmaWNhdGlvbi1tZXNzYWdlIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1ub3RpZmljYXRpb24tY2xvc2Uge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDE1cHg7XG59XG5cbi51ay1ub3RpZmljYXRpb24tbWVzc2FnZTpob3ZlciAudWstbm90aWZpY2F0aW9uLWNsb3NlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUHJpbWFyeVxuICovXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjMWU4N2YwO1xufVxuXG4vKlxuICogU3VjY2Vzc1xuICovXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2VzcyB7XG4gIGNvbG9yOiAjMzJkMjk2O1xufVxuXG4vKlxuICogV2FybmluZ1xuICovXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZyB7XG4gIGNvbG9yOiAjZmFhMDVhO1xufVxuXG4vKlxuICogRGFuZ2VyXG4gKi9cbi51ay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIge1xuICBjb2xvcjogI2YwNTA2ZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRvb2x0aXBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gUG9zaXRpb25cbiAqIDMuIFJlbW92ZSB0b29sdGlwIGZyb20gZG9jdW1lbnQgZmxvdyB0byBrZWVwIHRoZSBVSWtpdCBjb250YWluZXIgZnJvbSBjaGFuZ2luZyBpdHMgc2l6ZSB3aGVuIGluamVjdGVkIGludG8gdGhlIGRvY3VtZW50IGluaXRpYWxseVxuICogNC4gRGltZW5zaW9uc1xuICogNS4gU3R5bGVcbiAqL1xuLnVrLXRvb2x0aXAge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IG5vbmU7XG4gIC8qIDIgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDMwO1xuICAtLXVrLXBvc2l0aW9uLW9mZnNldDogMTBweDtcbiAgLS11ay1wb3NpdGlvbi12aWV3cG9ydC1vZmZzZXQ6IDEwO1xuICAvKiAzICovXG4gIHRvcDogMDtcbiAgLyogNCAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAzcHggNnB4O1xuICAvKiA1ICovXG4gIGJhY2tncm91bmQ6ICM2NjY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLyogU2hvdyAqL1xuLnVrLXRvb2x0aXAudWstYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTb3J0YWJsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstc29ydGFibGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuLnVrLXNvcnRhYmxlID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBEcmFnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1zb3J0YWJsZS1kcmFnIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDEwNTAgIWltcG9ydGFudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIFBsYWNlaG9sZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1zb3J0YWJsZS1wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBFbXB0eSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstc29ydGFibGUtZW1wdHkge1xuICBtaW4taGVpZ2h0OiA1MHB4O1xufVxuXG4vKiBIYW5kbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogSG92ZXIgKi9cbi51ay1zb3J0YWJsZS1oYW5kbGU6aG92ZXIge1xuICBjdXJzb3I6IG1vdmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb3VudGRvd25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBOdW1iZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIE1ha2UgbnVtYmVycyBhbGwgb2YgdGhlIHNhbWUgc2l6ZSB0byBwcmV2ZW50IGp1bXBpbmcuIE11c3QgYmUgc3VwcG9ydGVkIGJ5IHRoZSBmb250LlxuICogMi4gU3R5bGVcbiAqL1xuLnVrLWNvdW50ZG93bi1udW1iZXIge1xuICAvKiAxICovXG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG4gIC8qIDIgKi9cbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMC44O1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1jb3VudGRvd24tbnVtYmVyIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1jb3VudGRvd24tbnVtYmVyIHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cbn1cbi8qIFNlcGFyYXRvclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstY291bnRkb3duLXNlcGFyYXRvciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstY291bnRkb3duLXNlcGFyYXRvciB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstY291bnRkb3duLXNlcGFyYXRvciB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG4vKiBMYWJlbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVGh1bWJuYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEFsbG93IGl0ZW1zIHRvIHdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBSZXNldCBsaXN0XG4gKiAzLiBHdXR0ZXJcbiAqL1xuLnVrLXRodW1ibmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICAvKiAzICovXG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbn1cblxuLypcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogMS4gR3V0dGVyXG4gKi9cbi51ay10aHVtYm5hdiA+ICoge1xuICAvKiAxICovXG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEl0ZW1zXG4gKi9cbi51ay10aHVtYm5hdiA+ICogPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWstdGh1bWJuYXYgPiAqID4gKjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLXRodW1ibmF2ID4gKiA+IDpob3Zlcjo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuXG4vKiBBY3RpdmUgKi9cbi51ay10aHVtYm5hdiA+IC51ay1hY3RpdmUgPiAqOjphZnRlciB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qIE1vZGlmaWVyOiAndWstdGh1bWJuYXYtdmVydGljYWwnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBDaGFuZ2UgZGlyZWN0aW9uXG4gKiAyLiBHdXR0ZXJcbiAqL1xuLnVrLXRodW1ibmF2LXZlcnRpY2FsIHtcbiAgLyogMSAqL1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvKiAyICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAtMTVweDtcbn1cblxuLyogMiAqL1xuLnVrLXRodW1ibmF2LXZlcnRpY2FsID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBJY29ubmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gUmVzZXQgbGlzdFxuICogMy4gR3V0dGVyXG4gKi9cbi51ay1pY29ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICAvKiAzICovXG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbn1cblxuLypcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogMS4gR3V0dGVyXG4gKi9cbi51ay1pY29ubmF2ID4gKiB7XG4gIC8qIDEgKi9cbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogSXRlbXMgbXVzdCB0YXJnZXQgYGFgIGVsZW1lbnRzIHRvIGV4Y2x1ZGUgb3RoZXIgZWxlbWVudHMgKGUuZy4gZHJvcGRvd25zKVxuICogMS4gQ2VudGVyIGNvbnRlbnQgdmVydGljYWxseSBpZiB0aGVyZSBpcyBzdGlsbCBzb21lIHRleHRcbiAqIDIuIEltaXRhdGUgd2hpdGUgc3BhY2UgZ2FwIHdoZW4gdXNpbmcgZmxleGJveFxuICogMy4gRm9yY2UgdGV4dCBub3QgdG8gYWZmZWN0IGl0ZW0gaGVpZ2h0XG4gKiA0LiBTdHlsZVxuICogNS4gUmVxdWlyZWQgZm9yIGBhYCBpZiB0aGVyZSBpcyBzdGlsbCBzb21lIHRleHRcbiAqL1xuLnVrLWljb25uYXYgPiAqID4gYSB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLyogMiAqL1xuICBjb2x1bW4tZ2FwOiAwLjI1ZW07XG4gIC8qIDMgKi9cbiAgbGluZS1oZWlnaHQ6IDA7XG4gIC8qIDQgKi9cbiAgY29sb3I6ICM5OTk7XG4gIC8qIDUgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQWN0aXZlICovXG4udWstaWNvbm5hdiA+IC51ay1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qIE1vZGlmaWVyOiAndWstaWNvbm5hdi12ZXJ0aWNhbCdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENoYW5nZSBkaXJlY3Rpb25cbiAqIDIuIEd1dHRlclxuICovXG4udWstaWNvbm5hdi12ZXJ0aWNhbCB7XG4gIC8qIDEgKi9cbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLyogMiAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG59XG5cbi8qIDIgKi9cbi51ay1pY29ubmF2LXZlcnRpY2FsID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBHcmlkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBBbGxvdyBjZWxscyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gUmVzZXQgbGlzdFxuICovXG4udWstZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8qIDEgKi9cbiAgZmxleC13cmFwOiB3cmFwO1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLypcbiAqIEdyaWQgY2VsbFxuICogTm90ZTogU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogUmVzZXQgbWFyZ2luIGZvciBlLmcuIHBhcmFncmFwaHNcbiAqL1xuLnVrLWdyaWQgPiAqIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay1ncmlkID4gKiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogR3V0dGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBEZWZhdWx0XG4gKi9cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xufVxuXG4udWstZ3JpZCA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLFxuLnVrLWdyaWQgPiAudWstZ3JpZC1tYXJnaW4sXG4qICsgLnVrLWdyaWQtbWFyZ2luIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC8qIEhvcml6b250YWwgKi9cbiAgLnVrLWdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgfVxuICAudWstZ3JpZCA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgfVxuICAvKiBWZXJ0aWNhbCAqL1xuICAudWstZ3JpZCArIC51ay1ncmlkLFxuICAudWstZ3JpZCA+IC51ay1ncmlkLW1hcmdpbixcbiAgKiArIC51ay1ncmlkLW1hcmdpbiB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuLypcbiAqIFNtYWxsXG4gKi9cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLXNtYWxsLFxuLnVrLWdyaWQtY29sdW1uLXNtYWxsIHtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4udWstZ3JpZC1zbWFsbCA+ICosXG4udWstZ3JpZC1jb2x1bW4tc21hbGwgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQgKyAudWstZ3JpZC1zbWFsbCxcbi51ay1ncmlkICsgLnVrLWdyaWQtcm93LXNtYWxsLFxuLnVrLWdyaWQtc21hbGwgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1yb3ctc21hbGwgPiAudWstZ3JpZC1tYXJnaW4sXG4qICsgLnVrLWdyaWQtbWFyZ2luLXNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLypcbiAqIE1lZGl1bVxuICovXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1tZWRpdW0sXG4udWstZ3JpZC1jb2x1bW4tbWVkaXVtIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xufVxuXG4udWstZ3JpZC1tZWRpdW0gPiAqLFxuLnVrLWdyaWQtY29sdW1uLW1lZGl1bSA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLW1lZGl1bSxcbi51ay1ncmlkICsgLnVrLWdyaWQtcm93LW1lZGl1bSxcbi51ay1ncmlkLW1lZGl1bSA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXJvdy1tZWRpdW0gPiAudWstZ3JpZC1tYXJnaW4sXG4qICsgLnVrLWdyaWQtbWFyZ2luLW1lZGl1bSB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi8qXG4gKiBMYXJnZVxuICovXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1sYXJnZSxcbi51ay1ncmlkLWNvbHVtbi1sYXJnZSB7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDtcbn1cblxuLnVrLWdyaWQtbGFyZ2UgPiAqLFxuLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gKiB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbn1cblxuLyogVmVydGljYWwgKi9cbi51ay1ncmlkICsgLnVrLWdyaWQtbGFyZ2UsXG4udWstZ3JpZCArIC51ay1ncmlkLXJvdy1sYXJnZSxcbi51ay1ncmlkLWxhcmdlID4gLnVrLWdyaWQtbWFyZ2luLFxuLnVrLWdyaWQtcm93LWxhcmdlID4gLnVrLWdyaWQtbWFyZ2luLFxuKiArIC51ay1ncmlkLW1hcmdpbi1sYXJnZSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAvKiBIb3Jpem9udGFsICovXG4gIC51ay1ncmlkLWxhcmdlLFxuICAudWstZ3JpZC1jb2x1bW4tbGFyZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAtNzBweDtcbiAgfVxuICAudWstZ3JpZC1sYXJnZSA+ICosXG4gIC51ay1ncmlkLWNvbHVtbi1sYXJnZSA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogNzBweDtcbiAgfVxuICAvKiBWZXJ0aWNhbCAqL1xuICAudWstZ3JpZCArIC51ay1ncmlkLWxhcmdlLFxuICAudWstZ3JpZCArIC51ay1ncmlkLXJvdy1sYXJnZSxcbiAgLnVrLWdyaWQtbGFyZ2UgPiAudWstZ3JpZC1tYXJnaW4sXG4gIC51ay1ncmlkLXJvdy1sYXJnZSA+IC51ay1ncmlkLW1hcmdpbixcbiAgKiArIC51ay1ncmlkLW1hcmdpbi1sYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogNzBweDtcbiAgfVxufVxuLypcbiAqIENvbGxhcHNlXG4gKi9cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWNvbGxhcHNlLFxuLnVrLWdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi51ay1ncmlkLWNvbGxhcHNlID4gKixcbi51ay1ncmlkLWNvbHVtbi1jb2xsYXBzZSA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLWNvbGxhcHNlLFxuLnVrLWdyaWQgKyAudWstZ3JpZC1yb3ctY29sbGFwc2UsXG4udWstZ3JpZC1jb2xsYXBzZSA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXJvdy1jb2xsYXBzZSA+IC51ay1ncmlkLW1hcmdpbiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIERpdmlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWdyaWQtZGl2aWRlciA+ICoge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKlxuICogRGVmYXVsdFxuICovXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1kaXZpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC02MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyID4gKiB7XG4gIHBhZGRpbmctbGVmdDogNjBweDtcbn1cblxuLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gIGxlZnQ6IDMwcHg7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4ge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIHRvcDogLTMwcHg7XG4gIGxlZnQ6IDYwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAvKiBIb3Jpem9udGFsICovXG4gIC51ay1ncmlkLWRpdmlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtODBweDtcbiAgfVxuICAudWstZ3JpZC1kaXZpZGVyID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG4gIC51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICAgIGxlZnQ6IDQwcHg7XG4gIH1cbiAgLyogVmVydGljYWwgKi9cbiAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG4gIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICB0b3A6IC00MHB4O1xuICAgIGxlZnQ6IDgwcHg7XG4gIH1cbn1cbi8qXG4gKiBTbWFsbFxuICovXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc21hbGwsXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLXNtYWxsIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc21hbGwgPiAqLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1zbWFsbCA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zbWFsbCA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tc21hbGwgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICBsZWZ0OiAxNXB4O1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXNtYWxsLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LXNtYWxsLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4ge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc21hbGwudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgdG9wOiAtMTVweDtcbiAgbGVmdDogMzBweDtcbn1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1zbWFsbC51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUge1xuICB0b3A6IC0xNXB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLXNtYWxsLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIGxlZnQ6IDMwcHg7XG59XG5cbi8qXG4gKiBNZWRpdW1cbiAqL1xuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLW1lZGl1bSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtIHtcbiAgbWFyZ2luLWxlZnQ6IC02MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbWVkaXVtID4gKixcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtID4gKiB7XG4gIHBhZGRpbmctbGVmdDogNjBweDtcbn1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLW1lZGl1bSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgbGVmdDogMzBweDtcbn1cblxuLyogVmVydGljYWwgKi9cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1tZWRpdW0udWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4ge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIHRvcDogLTMwcHg7XG4gIGxlZnQ6IDYwcHg7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIHRvcDogLTMwcHg7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIGxlZnQ6IDYwcHg7XG59XG5cbi8qXG4gKiBMYXJnZVxuICovXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UsXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IC04MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UgPiAqLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbGFyZ2UgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICBsZWZ0OiA0MHB4O1xufVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4ge1xuICBtYXJnaW4tdG9wOiA4MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgdG9wOiAtNDBweDtcbiAgbGVmdDogODBweDtcbn1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1sYXJnZS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUge1xuICB0b3A6IC00MHB4O1xufVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gIGxlZnQ6IDgwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAvKiBIb3Jpem9udGFsICovXG4gIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSxcbiAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNDBweDtcbiAgfVxuICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UgPiAqLFxuICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNDBweDtcbiAgfVxuICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsXG4gIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbGFyZ2UgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICAgIGxlZnQ6IDcwcHg7XG4gIH1cbiAgLyogVmVydGljYWwgKi9cbiAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4sXG4gIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbiB7XG4gICAgbWFyZ2luLXRvcDogMTQwcHg7XG4gIH1cbiAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgdG9wOiAtNzBweDtcbiAgICBsZWZ0OiAxNDBweDtcbiAgfVxuICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgdG9wOiAtNzBweDtcbiAgfVxuICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgbGVmdDogMTQwcHg7XG4gIH1cbn1cbi8qIE1hdGNoIGNoaWxkIG9mIGEgZ3JpZCBjZWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBCZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnRcbiAqIDEuIFdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBUYWtlIHRoZSBmdWxsIHdpZHRoLCBhdCBsZWFzdCAxMDAlLiBPbmx5IGlmIG5vIGNsYXNzIGZyb20gdGhlIFdpZHRoIGNvbXBvbmVudCBpcyBzZXQuXG4gKiAzLiBFeHBhbmQgd2lkdGggZXZlbiBpZiBsYXJnZXIgdGhhbiAxMDAlLCBlLmcuIGJlY2F1c2Ugb2YgbmVnYXRpdmUgbWFyZ2luIChOZWVkZWQgZm9yIG5lc3RlZCBncmlkcylcbiAqL1xuLnVrLWdyaWQtbWF0Y2ggPiAqLFxuLnVrLWdyaWQtaXRlbS1tYXRjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8qIDEgKi9cbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udWstZ3JpZC1tYXRjaCA+ICogPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbi51ay1ncmlkLWl0ZW0tbWF0Y2ggPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSB7XG4gIC8qIDIgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIC8qIDMgKi9cbiAgZmxleDogYXV0bztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogUmVzZXRcbiAqL1xuLnVrLW5hdixcbi51ay1uYXYgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4qIDEuIENlbnRlciBjb250ZW50IHZlcnRpY2FsbHksIGUuZy4gYW4gaWNvblxuKiAyLiBJbWl0YXRlIHdoaXRlIHNwYWNlIGdhcCB3aGVuIHVzaW5nIGZsZXhib3hcbiogMy4gUmVzZXQgbGlua1xuICovXG4udWstbmF2IGxpID4gYSB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLyogMiAqL1xuICBjb2x1bW4tZ2FwOiAwLjI1ZW07XG4gIC8qIDMqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBJdGVtc1xuICogTXVzdCB0YXJnZXQgYGFgIGVsZW1lbnRzIHRvIGV4Y2x1ZGUgb3RoZXIgZWxlbWVudHMgKGUuZy4gbGlzdHMpXG4gKi9cbi51ay1uYXYgPiBsaSA+IGEge1xuICBwYWRkaW5nOiA1cHggMDtcbn1cblxuLyogU3VibGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIExldmVsIDJcbiAqIGB1bGAgbmVlZGVkIGZvciBoaWdoZXIgc3BlY2lmaWNpdHkgdG8gb3ZlcnJpZGUgcGFkZGluZ1xuICovXG51bC51ay1uYXYtc3ViIHtcbiAgcGFkZGluZzogNXB4IDAgNXB4IDE1cHg7XG59XG5cbi8qXG4gKiBMZXZlbCAzIGFuZCBkZWVwZXJcbiAqL1xuLnVrLW5hdi1zdWIgdWwge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG4udWstbmF2LXN1YiBhIHtcbiAgcGFkZGluZzogMnB4IDA7XG59XG5cbi8qIFBhcmVudCBpY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1uYXYtcGFyZW50LWljb24ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi51ay1uYXYgPiBsaS51ay1vcGVuID4gYSAudWstbmF2LXBhcmVudC1pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG59XG5cbi8qIEhlYWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbmF2LWhlYWRlciB7XG4gIHBhZGRpbmc6IDVweCAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4udWstbmF2LWhlYWRlcjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi8qIERpdmlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLW5hdiAudWstbmF2LWRpdmlkZXIge1xuICBtYXJnaW46IDVweCAwO1xufVxuXG4vKiBEZWZhdWx0IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1uYXYtZGVmYXVsdCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG4udWstbmF2LWRlZmF1bHQgPiBsaSA+IGEge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1uYXYtZGVmYXVsdCA+IGxpID4gYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXYtZGVmYXVsdCA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogIzMzMztcbn1cblxuLypcbiAqIFN1YnRpdGxlXG4gKi9cbi51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4vKlxuICogSGVhZGVyXG4gKi9cbi51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKlxuICogRGl2aWRlclxuICovXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICovXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBQcmltYXJ5IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1uYXYtcHJpbWFyeSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4vKlxuICogSXRlbXNcbiAqL1xuLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qIEhvdmVyICovXG4udWstbmF2LXByaW1hcnkgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LXByaW1hcnkgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi8qXG4gKiBTdWJ0aXRsZVxuICovXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLypcbiAqIEhlYWRlclxuICovXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1oZWFkZXIge1xuICBjb2xvcjogIzMzMztcbn1cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBTZWNvbmRhcnkgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLW5hdi1zZWNvbmRhcnkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4udWstbmF2LXNlY29uZGFyeSA+IDpub3QoLnVrLW5hdi1kaXZpZGVyKSArIDpub3QoLnVrLW5hdi1oZWFkZXIsIC51ay1uYXYtZGl2aWRlcikge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vKlxuICogSXRlbXNcbiAqL1xuLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGEge1xuICBjb2xvcjogIzMzMztcbiAgcGFkZGluZzogMTBweCAxMHB4O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbn1cblxuLypcbiAqIFN1YnRpdGxlXG4gKi9cbi51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKlxuICogSGVhZGVyXG4gKi9cbi51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cbi51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4udWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBhIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBTaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBNZWRpdW1cbiAqL1xuLnVrLW5hdi1tZWRpdW0ge1xuICBmb250LXNpemU6IDIuODg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi51ay1uYXYtbGFyZ2Uge1xuICBmb250LXNpemU6IDMuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi51ay1uYXYteGxhcmdlIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLyogVGFibGV0IExhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLW5hdi1tZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG4gIC51ay1uYXYtbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxuICAudWstbmF2LXhsYXJnZSB7XG4gICAgZm9udC1zaXplOiA2cmVtO1xuICB9XG59XG4vKiBMYXB0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstbmF2LW1lZGl1bSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG4gIC51ay1uYXYtbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgfVxuICAudWstbmF2LXhsYXJnZSB7XG4gICAgZm9udC1zaXplOiA4cmVtO1xuICB9XG59XG4vKiBBbGlnbm1lbnQgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENlbnRlciBoZWFkZXJcbiAqIDIuIENlbnRlciBpdGVtc1xuICovXG4vKiAxICovXG4udWstbmF2LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogMiAqL1xuLnVrLW5hdi1jZW50ZXIgbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8qIFN1Ymxpc3RzICovXG4udWstbmF2LWNlbnRlciAudWstbmF2LXN1Yixcbi51ay1uYXYtY2VudGVyIC51ay1uYXYtc3ViIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4vKiBQYXJlbnQgaWNvbiAgKi9cbi51ay1uYXYtY2VudGVyIC51ay1uYXYtcGFyZW50LWljb24ge1xuICBtYXJnaW4tbGVmdDogMC4yNWVtO1xufVxuXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogRGl2aWRlclxuICogTmFtaW5nIGlzIGluIHBsdXJhbCB0byBwcmV2ZW50IGNvbmZsaWN0cyB3aXRoIGRpdmlkZXIgc3ViIG9iamVjdC5cbiAqL1xuLnVrLW5hdi51ay1uYXYtZGl2aWRlciA+IDpub3QoLnVrLW5hdi1oZWFkZXIsIC51ay1uYXYtZGl2aWRlcikgKyA6bm90KC51ay1uYXYtaGVhZGVyLCAudWstbmF2LWRpdmlkZXIpIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE5hdmJhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgdG8gY2VudGVyIG5hdmJhciBncm91cFxuICovXG4udWstbmF2YmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbmF2YmFyLWNvbnRhaW5lcjpub3QoLnVrLW5hdmJhci10cmFuc3BhcmVudCkge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xufVxuXG4vKiBHcm91cHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEFsaWduIG5hdnMgYW5kIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICovXG4udWstbmF2YmFyLWxlZnQsXG4udWstbmF2YmFyLXJpZ2h0LFxuW2NsYXNzKj11ay1uYXZiYXItY2VudGVyXSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTVweDtcbiAgLyogMSAqL1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKlxuICogSG9yaXpvbnRhbCBhbGlnbm1lbnRcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IGZvciBjZW50ZXJlZCBuYXZiYXIgd2l0aCBzdWIgZ3JvdXBzIChsZWZ0L3JpZ2h0KVxuICogMi4gRml4IHRleHQgd3JhcHBpbmcgaWYgY29udGVudCBpcyBsYXJnZXIgdGhhbiA1MCUgb2YgdGhlIGNvbnRhaW5lci5cbiAqIDMuIE5lZWRlZCBmb3IgZHJvcGRvd25zIGJlY2F1c2UgYSBuZXcgcG9zaXRpb24gY29udGV4dCBpcyBjcmVhdGVkXG4gKiAgICBgei1pbmRleGAgbXVzdCBiZSBzbWFsbGVyIHRoYW4gb2ZmLWNhbnZhc1xuICogNC4gQWxpZ24gc3ViIGdyb3VwcyBmb3IgY2VudGVyZWQgbmF2YmFyXG4gKi9cbi51ay1uYXZiYXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnVrLW5hdmJhci1jZW50ZXI6b25seS1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWstbmF2YmFyLWNlbnRlcjpub3QoOm9ubHktY2hpbGQpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLyogMiAqL1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDMgKi9cbiAgei1pbmRleDogOTkwO1xufVxuXG4vKiA0ICovXG4udWstbmF2YmFyLWNlbnRlci1sZWZ0LFxuLnVrLW5hdmJhci1jZW50ZXItcmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cblxuLnVrLW5hdmJhci1jZW50ZXItbGVmdCB7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAxNXB4KTtcbn1cblxuLnVrLW5hdmJhci1jZW50ZXItcmlnaHQge1xuICBsZWZ0OiBjYWxjKDEwMCUgKyAxNXB4KTtcbn1cblxuW2NsYXNzKj11ay1uYXZiYXItY2VudGVyLV0ge1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIE5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUmVzZXQgbGlzdFxuICovXG4udWstbmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTVweDtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4gKiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogT25seSBub3QgYGFic29sdXRlYCBwb3NpdGlvbmVkIGdyb3Vwc1xuICovXG4udWstbmF2YmFyLWxlZnQsXG4udWstbmF2YmFyLXJpZ2h0LFxuLnVrLW5hdmJhci1jZW50ZXI6b25seS1jaGlsZCB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLypcbiAqIEl0ZW1zXG4gKiAxLiBDZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHlcbiAqIDIuIEltaXRhdGUgd2hpdGUgc3BhY2UgZ2FwIHdoZW4gdXNpbmcgZmxleGJveFxuICogMy4gRGltZW5zaW9uc1xuICogNC4gU3R5bGVcbiAqIDUuIFJlcXVpcmVkIGZvciBgYWBcbiAqL1xuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsXG4udWstbmF2YmFyLWl0ZW0sXG4udWstbmF2YmFyLXRvZ2dsZSB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIDIgKi9cbiAgY29sdW1uLWdhcDogMC4yNWVtO1xuICAvKiAzICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG4gIC8qIDQgKi9cbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgLyogNSAqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBOYXYgaXRlbXNcbiAqL1xuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwIDA7XG4gIGNvbG9yOiAjOTk5O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIGlmIGRyb3Bkb3duIGlzIG9wZW5lZFxuICovXG4udWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSxcbi51ay1uYXZiYXItbmF2ID4gbGkgPiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogT25DbGljayAqL1xuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLW5hdmJhci1uYXYgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi8qIFBhcmVudCBpY29uIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1uYXZiYXItcGFyZW50LWljb24ge1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbn1cblxuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSAudWstbmF2YmFyLXBhcmVudC1pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG59XG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLW5hdmJhci1pdGVtIHtcbiAgcGFkZGluZzogMCAwO1xuICBjb2xvcjogIzY2Njtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstbmF2YmFyLWl0ZW0gPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFRvZ2dsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbmF2YmFyLXRvZ2dsZSB7XG4gIHBhZGRpbmc6IDAgMDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi51ay1uYXZiYXItdG9nZ2xlOmhvdmVyLFxuLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSB7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBJY29uXG4gKiBBZG9wdHMgYHVrLWljb25gXG4gKi9cbi8qIEhvdmVyICovXG4vKiBTdWJ0aXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbmF2YmFyLXN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLyogSnVzdGlmeSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbmF2YmFyLWp1c3RpZnkgLnVrLW5hdmJhci1sZWZ0LFxuLnVrLW5hdmJhci1qdXN0aWZ5IC51ay1uYXZiYXItcmlnaHQsXG4udWstbmF2YmFyLWp1c3RpZnkgLnVrLW5hdmJhci1uYXYsXG4udWstbmF2YmFyLWp1c3RpZnkgLnVrLW5hdmJhci1uYXYgPiBsaSxcbi51ay1uYXZiYXItanVzdGlmeSAudWstbmF2YmFyLWl0ZW0sXG4udWstbmF2YmFyLWp1c3RpZnkgLnVrLW5hdmJhci10b2dnbGUge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBEcm9wZG93blxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRvcHRzIGB1ay1kcm9wYFxuICogMS4gU2V0IGEgZGVmYXVsdCB3aWR0aFxuICogMi4gU3R5bGVcbiAqL1xuLnVrLW5hdmJhci1kcm9wZG93biB7XG4gIC0tdWstcG9zaXRpb24tb2Zmc2V0OiAxNXB4O1xuICAtLXVrLXBvc2l0aW9uLXNoaWZ0LW9mZnNldDogMDtcbiAgLS11ay1wb3NpdGlvbi12aWV3cG9ydC1vZmZzZXQ6IDE1cHg7XG4gIC0tdWstaW52ZXJzZTogZGFyaztcbiAgLyogMSAqL1xuICB3aWR0aDogMjAwcHg7XG4gIC8qIDIgKi9cbiAgcGFkZGluZzogMjVweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICM2NjY7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstbmF2YmFyLWRyb3Bkb3duID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udWstbmF2YmFyLWRyb3Bkb3duIDpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogIzMzMyAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogR3JpZFxuICogQWRvcHRzIGB1ay1ncmlkYFxuICovXG4vKiBHdXR0ZXIgSG9yaXpvbnRhbCAqL1xuLnVrLW5hdmJhci1kcm9wZG93biAudWstZHJvcC1ncmlkIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xufVxuXG4udWstbmF2YmFyLWRyb3Bkb3duIC51ay1kcm9wLWdyaWQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4vKiBHdXR0ZXIgVmVydGljYWwgKi9cbi51ay1uYXZiYXItZHJvcGRvd24gLnVrLWRyb3AtZ3JpZCA+IC51ay1ncmlkLW1hcmdpbiB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi8qXG4gKiBXaWR0aCBtb2RpZmllclxuICovXG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTI6bm90KC51ay1kcm9wLXN0YWNrKSB7XG4gIHdpZHRoOiA0MDBweDtcbn1cblxuLnVrLW5hdmJhci1kcm9wZG93bi13aWR0aC0zOm5vdCgudWstZHJvcC1zdGFjaykge1xuICB3aWR0aDogNjAwcHg7XG59XG5cbi51ay1uYXZiYXItZHJvcGRvd24td2lkdGgtNDpub3QoLnVrLWRyb3Atc3RhY2spIHtcbiAgd2lkdGg6IDgwMHB4O1xufVxuXG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTU6bm90KC51ay1kcm9wLXN0YWNrKSB7XG4gIHdpZHRoOiAxMDAwcHg7XG59XG5cbi8qXG4gKiBTaXplIG1vZGlmaWVyXG4gKi9cbi51ay1uYXZiYXItZHJvcGRvd24tbGFyZ2Uge1xuICAtLXVrLXBvc2l0aW9uLXNoaWZ0LW9mZnNldDogMDtcbiAgcGFkZGluZzogNDBweDtcbn1cblxuLypcbiAqIERyb3BiYXIgbW9kaWZpZXJcbiAqIDEuIFJlc2V0IGRyb3Bkb3duIHdpZHRoIHRvIHByZXZlbnQgdG8gZWFybHkgc2hpZnRpbmdcbiAqIDIuIFJlc2V0IHN0eWxlXG4gKiAzLiBQYWRkaW5nXG4gKi9cbi51ay1uYXZiYXItZHJvcGRvd24tZHJvcGJhciB7XG4gIC8qIDEgKi9cbiAgd2lkdGg6IGF1dG87XG4gIC8qIDIgKi9cbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC8qIDMgKi9cbiAgcGFkZGluZzogMjVweCAwIDI1cHggMDtcbiAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6IDA7XG4gIC0tdWstcG9zaXRpb24tc2hpZnQtb2Zmc2V0OiAwO1xuICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogMTVweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIge1xuICAgIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiAzMHB4O1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIge1xuICAgIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiA0MHB4O1xuICB9XG59XG4udWstbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2Uge1xuICAtLXVrLXBvc2l0aW9uLXNoaWZ0LW9mZnNldDogMDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4vKiBEcm9wZG93biBOYXZcbiAqIEFkb3B0cyBgdWstbmF2YFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiA+IGxpID4gYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogIzMzMztcbn1cblxuLypcbiAqIFN1YnRpdGxlXG4gKi9cbi51ay1uYXZiYXItZHJvcGRvd24tbmF2IC51ay1uYXYtc3VidGl0bGUge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi8qXG4gKiBIZWFkZXJcbiAqL1xuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgLnVrLW5hdi1oZWFkZXIge1xuICBjb2xvcjogIzMzMztcbn1cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgLnVrLW5hdi1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICovXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBhIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi51ay1uYXZiYXItZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGE6aG92ZXIge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKiBEcm9wYmFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZG9wdHMgYHVrLWRyb3BuYXYtZHJvcGJhcmBcbiAqL1xuLnVrLW5hdmJhci1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yO1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstbmF2YmFyLWxlZnQsXG4gIC51ay1uYXZiYXItcmlnaHQsXG4gIFtjbGFzcyo9dWstbmF2YmFyLWNlbnRlcl0ge1xuICAgIGdhcDogMzBweDtcbiAgfVxuICAudWstbmF2YmFyLWNlbnRlci1sZWZ0IHtcbiAgICByaWdodDogY2FsYygxMDAlICsgMzBweCk7XG4gIH1cbiAgLnVrLW5hdmJhci1jZW50ZXItcmlnaHQge1xuICAgIGxlZnQ6IGNhbGMoMTAwJSArIDMwcHgpO1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstbmF2YmFyLW5hdiB7XG4gICAgZ2FwOiAzMHB4O1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU3VibmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gQ2VudGVyIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICogMy4gR3V0dGVyXG4gKiA0LiBSZXNldCBsaXN0XG4gKi9cbi51ay1zdWJuYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICAvKiAxICovXG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLyogMiAqL1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAvKiAzICovXG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgLyogNCAqL1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnM6IDAgMCBhdXRvXG4gKiAyLiBHdXR0ZXJcbiAqIDMuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IGZvciBkcm9wZG93bnNcbiAqL1xuLnVrLXN1Ym5hdiA+ICoge1xuICAvKiAxICovXG4gIGZsZXg6IG5vbmU7XG4gIC8qIDIgKi9cbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAvKiAzICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEl0ZW1zIG11c3QgdGFyZ2V0IGBhYCBlbGVtZW50cyB0byBleGNsdWRlIG90aGVyIGVsZW1lbnRzIChlLmcuIGRyb3Bkb3ducylcbiAqIFVzaW5nIGA6Zmlyc3QtY2hpbGRgIGluc3RlYWQgb2YgYGFgIHRvIHN1cHBvcnQgYHNwYW5gIGVsZW1lbnRzIGZvciB0ZXh0XG4gKiAxLiBDZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5LCBlLmcuIGFuIGljb25cbiAqIDIuIEltaXRhdGUgd2hpdGUgc3BhY2UgZ2FwIHdoZW4gdXNpbmcgZmxleGJveFxuICogMy4gU3R5bGVcbiAqL1xuLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIDIgKi9cbiAgY29sdW1uLWdhcDogMC4yNWVtO1xuICAvKiAzICovXG4gIGNvbG9yOiAjOTk5O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1zdWJuYXYgPiAqID4gYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLXN1Ym5hdiA+IC51ay1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi8qIERpdmlkZXIgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFNldCBndXR0ZXJcbiAqL1xuLnVrLXN1Ym5hdi1kaXZpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC00MXB4O1xufVxuXG4vKlxuICogQWxpZ24gaXRlbXMgYW5kIGRpdmlkZXIgdmVydGljYWxseVxuICovXG4udWstc3VibmF2LWRpdmlkZXIgPiAqIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLypcbiAqIERpdmlkZXJcbiAqIDEuIGBudGgtY2hpbGRgIG1ha2VzIGl0IGFsc28gd29yayB3aXRob3V0IEpTIGlmIGl0J3Mgb25seSBvbmUgcm93XG4gKi9cbi51ay1zdWJuYXYtZGl2aWRlciA+IDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vKiAxICovXG4udWstc3VibmF2LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICBib3JkZXItbGVmdC1jb2xvcjogI2U1ZTVlNTtcbn1cblxuLyogUGlsbCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogR3V0dGVyXG4gKi9cbi51ay1zdWJuYXYtcGlsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbn1cblxuLnVrLXN1Ym5hdi1waWxsID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qIEhvdmVyICovXG4udWstc3VibmF2LXBpbGwgPiAqID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiBPbkNsaWNrICovXG4udWstc3VibmF2LXBpbGwgPiAqID4gYTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBjb2xvcjogIzY2Njtcbn1cblxuLyogQWN0aXZlICovXG4udWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZTg3ZjA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKiBEaXNhYmxlZFxuICogVGhlIHNhbWUgZm9yIGFsbCBzdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXN1Ym5hdiA+IC51ay1kaXNhYmxlZCA+IGEge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJyZWFkY3J1bWJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIFJlc2V0IGxpc3RcbiAqIDIuIFJlbW92ZSBzcGFjZSBiZXR3ZWVuIGVsZW1lbnRzXG4gKi9cbi51ay1icmVhZGNydW1iIHtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICAvKiAyICovXG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLypcbiAqIDEuIERvZXNuJ3QgZ2VuZXJhdGUgYW55IGJveCBhbmQgcmVwbGFjZWQgYnkgY2hpbGQgYm94ZXNcbiAqL1xuLnVrLWJyZWFkY3J1bWIgPiAqIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1icmVhZGNydW1iID4gKiA+ICoge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1icmVhZGNydW1iID4gKiA+IDpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIERpc2FibGVkICovXG4vKiBBY3RpdmUgKi9cbi51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiBzcGFuLFxuLnVrLWJyZWFkY3J1bWIgPiA6bGFzdC1jaGlsZCA+IGE6bm90KFtocmVmXSkge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLypcbiAqIERpdmlkZXJcbiAqIGBudGgtY2hpbGRgIG1ha2VzIGl0IGFsc28gd29yayB3aXRob3V0IEpTIGlmIGl0J3Mgb25seSBvbmUgcm93XG4gKiAxLiBSZW1vdmUgc3BhY2UgYmV0d2VlbiBpbmxpbmUgYmxvY2sgZWxlbWVudHMuXG4gKiAyLiBTdHlsZVxuICovXG4udWstYnJlYWRjcnVtYiA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiL1wiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwIDIwcHg7XG4gIC8qIDIgKi9cbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQYWdpbmF0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gQ2VudGVyIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICogMy4gR3V0dGVyXG4gKiA0LiBSZXNldCBsaXN0XG4gKi9cbi51ay1wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIDIgKi9cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLyogMyAqL1xuICBtYXJnaW4tbGVmdDogMDtcbiAgLyogNCAqL1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnM6IDAgMCBhdXRvXG4gKiAyLiBHdXR0ZXJcbiAqIDMuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IGZvciBkcm9wZG93bnNcbiAqL1xuLnVrLXBhZ2luYXRpb24gPiAqIHtcbiAgLyogMSAqL1xuICBmbGV4OiBub25lO1xuICAvKiAyICovXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgLyogMyAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBDZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5LCBlLmcuIGFuIGljb25cbiAqIDIuIEltaXRhdGUgd2hpdGUgc3BhY2UgZ2FwIHdoZW4gdXNpbmcgZmxleGJveFxuICogMy4gU3R5bGVcbiAqL1xuLnVrLXBhZ2luYXRpb24gPiAqID4gKiB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLyogMiAqL1xuICBjb2x1bW4tZ2FwOiAwLjI1ZW07XG4gIC8qIDMgKi9cbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGNvbG9yOiAjOTk5O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UtaW4tb3V0O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLXBhZ2luYXRpb24gPiAqID4gOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogQWN0aXZlICovXG4udWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qIERpc2FibGVkICovXG4udWstcGFnaW5hdGlvbiA+IC51ay1kaXNhYmxlZCA+ICoge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRhYlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIEd1dHRlclxuICogMy4gUmVzZXQgbGlzdFxuICovXG4udWstdGFiIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8qIDIgKi9cbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAvKiAzICovXG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51ay10YWI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAyMHB4O1xuICByaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG59XG5cbi8qXG4gKiAxLiBTcGFjZSBpcyBhbGxvY2F0ZWQgc29sZWx5IGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9uczogMCAwIGF1dG9cbiAqIDIuIEd1dHRlclxuICogMy4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG4udWstdGFiID4gKiB7XG4gIC8qIDEgKi9cbiAgZmxleDogbm9uZTtcbiAgLyogMiAqL1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIC8qIDMgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogSXRlbXMgbXVzdCB0YXJnZXQgYGFgIGVsZW1lbnRzIHRvIGV4Y2x1ZGUgb3RoZXIgZWxlbWVudHMgKGUuZy4gZHJvcGRvd25zKVxuICogMS4gQ2VudGVyIGNvbnRlbnQgdmVydGljYWxseSwgZS5nLiBhbiBpY29uXG4gKiAyLiBJbWl0YXRlIHdoaXRlIHNwYWNlIGdhcCB3aGVuIHVzaW5nIGZsZXhib3hcbiAqIDMuIENlbnRlciBjb250ZW50IGlmIGEgd2lkdGggaXMgc2V0XG4gKiA0LiBTdHlsZVxuICovXG4udWstdGFiID4gKiA+IGEge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIDIgKi9cbiAgY29sdW1uLWdhcDogMC4yNWVtO1xuICAvKiAzICovXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAvKiA0ICovXG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBjb2xvcjogIzk5OTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UtaW4tb3V0O1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLXRhYiA+ICogPiBhOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogQWN0aXZlICovXG4udWstdGFiID4gLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogIzMzMztcbiAgYm9yZGVyLWNvbG9yOiAjMWU4N2YwO1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLyogUG9zaXRpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEJvdHRvbVxuICovXG4udWstdGFiLWJvdHRvbTo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBib3R0b206IGF1dG87XG59XG5cbi51ay10YWItYm90dG9tID4gKiA+IGEge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi8qXG4gKiBMZWZ0ICsgUmlnaHRcbiAqIDEuIFJlc2V0IEd1dHRlclxuICovXG4udWstdGFiLWxlZnQsXG4udWstdGFiLXJpZ2h0IHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLyogMSAqL1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogMSAqL1xuLnVrLXRhYi1sZWZ0ID4gKixcbi51ay10YWItcmlnaHQgPiAqIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4udWstdGFiLWxlZnQ6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTVlNWU1O1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4udWstdGFiLXJpZ2h0OjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U1ZTVlNTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnVrLXRhYi1sZWZ0ID4gKiA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4udWstdGFiLXJpZ2h0ID4gKiA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi51ay10YWIgLnVrLWRyb3Bkb3duIHtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTbGlkZW5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRvcHRzIGB1ay1pY29uYFxuICovXG4udWstc2xpZGVuYXYge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgY29sb3I6IHJnYmEoMTAyLCAxMDIsIDEwMiwgMC41KTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLWluLW91dDtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1zbGlkZW5hdjpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDEwMiwgMTAyLCAxMDIsIDAuOSk7XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay1zbGlkZW5hdjphY3RpdmUge1xuICBjb2xvcjogcmdiYSgxMDIsIDEwMiwgMTAyLCAwLjUpO1xufVxuXG4vKiBJY29uIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBQcmV2aW91c1xuICovXG4vKlxuICogTmV4dFxuICovXG4vKiBTaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1zbGlkZW5hdi1sYXJnZSB7XG4gIHBhZGRpbmc6IDEwcHggMTBweDtcbn1cblxuLyogQ29udGFpbmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1zbGlkZW5hdi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRG90bmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gUmVzZXQgbGlzdFxuICogMy4gR3V0dGVyXG4gKi9cbi51ay1kb3RuYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICAvKiAxICovXG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIC8qIDMgKi9cbiAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xufVxuXG4vKlxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnM6IDAgMCBhdXRvXG4gKiAyLiBHdXR0ZXJcbiAqL1xuLnVrLWRvdG5hdiA+ICoge1xuICAvKiAxICovXG4gIGZsZXg6IG5vbmU7XG4gIC8qIDIgKi9cbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xufVxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogSXRlbXNcbiAqIDEuIEhpZGUgdGV4dCBpZiBwcmVzZW50XG4gKi9cbi51ay1kb3RuYXYgPiAqID4gKiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwMiwgMTAyLCAxMDIsIDAuNCk7XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvcjtcbn1cblxuLyogSG92ZXIgKi9cbi51ay1kb3RuYXYgPiAqID4gOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDIsIDEwMiwgMTAyLCAwLjYpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBPbkNsaWNrICovXG4udWstZG90bmF2ID4gKiA+IDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMiwgMTAyLCAxMDIsIDAuMik7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDIsIDEwMiwgMTAyLCAwLjYpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBNb2RpZmllcjogJ3VrLWRvdG5hdi12ZXJ0aWNhbCdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENoYW5nZSBkaXJlY3Rpb25cbiAqIDIuIEd1dHRlclxuICovXG4udWstZG90bmF2LXZlcnRpY2FsIHtcbiAgLyogMSAqL1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvKiAyICovXG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAtMTJweDtcbn1cblxuLyogMiAqL1xuLnVrLWRvdG5hdi12ZXJ0aWNhbCA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRHJvcGRvd25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkb3B0cyBgdWstZHJvcGBcbiAqIDEuIFJlc2V0IGRyb3AgYW5kIGxldCB0ZXh0IGV4cGFuZCB0aGUgd2lkdGggaW5zdGVhZCBvZiB3cmFwcGluZ1xuICogMi4gU2V0IGEgZGVmYXVsdCB3aWR0aFxuICogMy4gU3R5bGVcbiAqL1xuLnVrLWRyb3Bkb3duIHtcbiAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6IDEwcHg7XG4gIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiAxNXB4O1xuICAtLXVrLWludmVyc2U6IGRhcms7XG4gIC8qIDEgKi9cbiAgd2lkdGg6IGF1dG87XG4gIC8qIDIgKi9cbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgLyogMyAqL1xuICBwYWRkaW5nOiAyNXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzY2NjtcbiAgYm94LXNoYWRvdzogMCA1cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cbi51ay1kcm9wZG93biA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnVrLWRyb3Bkb3duIDpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogIzMzMyAhaW1wb3J0YW50O1xufVxuXG4vKiBTaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1kcm9wZG93bi1sYXJnZSB7XG4gIHBhZGRpbmc6IDQwcHg7XG59XG5cbi8qIERyb3BiYXIgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIFJlc2V0IGRyb3Bkb3duIHdpZHRoIHRvIHByZXZlbnQgdG8gZWFybHkgc2hpZnRpbmdcbiAqIDIuIFJlc2V0IHN0eWxlXG4gKiAzLiBQYWRkaW5nXG4gKi9cbi51ay1kcm9wZG93bi1kcm9wYmFyIHtcbiAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6IDEwcHg7XG4gIC8qIDEgKi9cbiAgd2lkdGg6IGF1dG87XG4gIC8qIDIgKi9cbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC8qIDMgKi9cbiAgcGFkZGluZzogNXB4IDAgMjVweCAwO1xuICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogMTVweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstZHJvcGRvd24tZHJvcGJhciB7XG4gICAgLS11ay1wb3NpdGlvbi12aWV3cG9ydC1vZmZzZXQ6IDMwcHg7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1kcm9wZG93bi1kcm9wYmFyIHtcbiAgICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogNDBweDtcbiAgfVxufVxuLnVrLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2Uge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5cbi8qIE5hdlxuICogQWRvcHRzIGB1ay1uYXZgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1kcm9wZG93bi1uYXYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4vKlxuICogSXRlbXNcbiAqL1xuLnVrLWRyb3Bkb3duLW5hdiA+IGxpID4gYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKiBIb3ZlciArIEFjdGl2ZSAqL1xuLnVrLWRyb3Bkb3duLW5hdiA+IGxpID4gYTpob3Zlcixcbi51ay1kcm9wZG93bi1uYXYgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICM2NjY7XG59XG5cbi8qXG4gKiBTdWJ0aXRsZVxuICovXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtc3VidGl0bGUge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi8qXG4gKiBIZWFkZXJcbiAqL1xuLnVrLWRyb3Bkb3duLW5hdiAudWstbmF2LWhlYWRlciB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4vKlxuICogRGl2aWRlclxuICovXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuLnVrLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBhIHtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi51ay1kcm9wZG93bi1uYXYgLnVrLW5hdi1zdWIgYTpob3Zlcixcbi51ay1kcm9wZG93bi1uYXYgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGlnaHRib3hcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gU2V0IHBvc2l0aW9uXG4gKiAzLiBBbGxvdyBzY3JvbGxpbmcgZm9yIHRoZSBtb2RhbCBkaWFsb2dcbiAqIDQuIEhvcml6b250YWwgcGFkZGluZ1xuICogNS4gTWFzayB0aGUgYmFja2dyb3VuZCBwYWdlXG4gKiA2LiBGYWRlLWluIHRyYW5zaXRpb25cbiAqIDcuIFByZXZlbnQgY2FuY2VsbGF0aW9uIG9mIHBvaW50ZXIgZXZlbnRzIHdoaWxlIGRyYWdnaW5nXG4gKi9cbi51ay1saWdodGJveCB7XG4gIC0tdWstaW52ZXJzZTogbGlnaHQ7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogbm9uZTtcbiAgLyogMiAqL1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAxMDtcbiAgLyogNSAqL1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAvKiA2ICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAvKiA3ICovXG4gIHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcbn1cblxuLypcbiAqIE9wZW5cbiAqIDEuIENlbnRlciBjaGlsZFxuICogMi4gRmFkZS1pblxuICovXG4udWstbGlnaHRib3gudWstb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvKiAyICovXG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qXG4gKiBGb2N1c1xuICovXG4udWstbGlnaHRib3ggOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5cbi8qIFBhZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFByZXZlbnQgc2Nyb2xsYmFyc1xuICovXG4udWstbGlnaHRib3gtcGFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBSZXNldCBsaXN0XG4gKi9cbi51ay1saWdodGJveC1pdGVtcyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLypcbiAqIDEuIENlbnRlciBjaGlsZCB3aXRoaW4gdGhlIHZpZXdwb3J0XG4gKiAyLiBOb3QgdmlzaWJsZSBieSBkZWZhdWx0XG4gKiAzLiBPcHRpbWl6ZSBhbmltYXRpb25cbiAqIDQuIFJlc3BvbnNpdmVuZXNzXG4gKiAgICBVc2luZyBgdmhgIGZvciBgbWF4LWhlaWdodGAgdG8gZml4IGltYWdlIHByb3BvcnRpb25zIGFmdGVyIHJlc2l6ZSBpbiBTYWZhcmkgYW5kIE9wZXJhXG4gKi9cbi51ay1saWdodGJveC1pdGVtcyA+ICoge1xuICAvKiAxICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICAvKiAyICovXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLyogMyAqL1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAvKiA0ICovXG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKiAyICovXG4udWstbGlnaHRib3gtaXRlbXMgPiAudWstYWN0aXZlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zLWZpdCA+ICoge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKiA0ICovXG4udWstbGlnaHRib3gtaXRlbXMtZml0ID4gKiA+ICoge1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbn1cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zLWZpdCA+ICogPiA6bm90KGlmcmFtZSkge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKiBab29tIEN1cnNvciAqL1xuLnVrLWxpZ2h0Ym94LWl0ZW1zLnVrLWxpZ2h0Ym94LWl0ZW1zLWZpdCAudWstbGlnaHRib3gtem9vbTpob3ZlciB7XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zOm5vdCgudWstbGlnaHRib3gtaXRlbXMtZml0KSAudWstbGlnaHRib3gtem9vbTpob3ZlciB7XG4gIGN1cnNvcjogem9vbS1vdXQ7XG59XG5cbi8qIE5hdnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWxpZ2h0Ym94LXRodW1ibmF2LXZlcnRpY2FsIDp3aGVyZShpbWcsIHZpZGVvKSB7XG4gIG1heC13aWR0aDogMTAwcHg7XG59XG5cbi51ay1saWdodGJveC10aHVtYm5hdjpub3QoLnVrLWxpZ2h0Ym94LXRodW1ibmF2LXZlcnRpY2FsKSA6d2hlcmUoaW1nLCB2aWRlbykge1xuICBtYXgtaGVpZ2h0OiAxMDBweDtcbn1cblxuLnVrLWxpZ2h0Ym94LXRodW1ibmF2OmVtcHR5LFxuLnVrLWxpZ2h0Ym94LWRvdG5hdjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIENhcHRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWxpZ2h0Ym94LWNhcHRpb246ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udWstbGlnaHRib3gtY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4udWstbGlnaHRib3gtY2FwdGlvbiA+ICoge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4vKiBDb3VudGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1saWdodGJveC1jb3VudGVyOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSWZyYW1lXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1saWdodGJveC1pZnJhbWUge1xuICB3aWR0aDogODAlO1xuICBoZWlnaHQ6IDgwJTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEFuaW1hdGlvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5bY2xhc3MqPXVrLWFuaW1hdGlvbi1dIHtcbiAgYW5pbWF0aW9uOiAwLjVzIGVhc2Utb3V0IGJvdGg7XG59XG5cbi8qIEFuaW1hdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEZhZGVcbiAqL1xuLnVrLWFuaW1hdGlvbi1mYWRlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGU7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC44cztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG4vKlxuICogU2NhbGVcbiAqL1xuLnVrLWFuaW1hdGlvbi1zY2FsZS11cCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zY2FsZS11cDtcbn1cblxuLnVrLWFuaW1hdGlvbi1zY2FsZS1kb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNjYWxlLWRvd247XG59XG5cbi8qXG4gKiBTbGlkZVxuICovXG4udWstYW5pbWF0aW9uLXNsaWRlLXRvcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS10b3A7XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtYm90dG9tIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWJvdHRvbTtcbn1cblxuLnVrLWFuaW1hdGlvbi1zbGlkZS1sZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWxlZnQ7XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2xpZGUtcmlnaHQ7XG59XG5cbi8qXG4gKiBTbGlkZSBTbWFsbFxuICovXG4udWstYW5pbWF0aW9uLXNsaWRlLXRvcC1zbWFsbCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS10b3Atc21hbGw7XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtYm90dG9tLXNtYWxsIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWJvdHRvbS1zbWFsbDtcbn1cblxuLnVrLWFuaW1hdGlvbi1zbGlkZS1sZWZ0LXNtYWxsIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWxlZnQtc21hbGw7XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQtc21hbGwge1xuICBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2xpZGUtcmlnaHQtc21hbGw7XG59XG5cbi8qXG4gKiBTbGlkZSBNZWRpdW1cbiAqL1xuLnVrLWFuaW1hdGlvbi1zbGlkZS10b3AtbWVkaXVtIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLXRvcC1tZWRpdW07XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtYm90dG9tLW1lZGl1bSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS1ib3R0b20tbWVkaXVtO1xufVxuXG4udWstYW5pbWF0aW9uLXNsaWRlLWxlZnQtbWVkaXVtIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWxlZnQtbWVkaXVtO1xufVxuXG4udWstYW5pbWF0aW9uLXNsaWRlLXJpZ2h0LW1lZGl1bSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS1yaWdodC1tZWRpdW07XG59XG5cbi8qXG4gKiBLZW5idXJuc1xuICovXG4udWstYW5pbWF0aW9uLWtlbmJ1cm5zIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLWtlbmJ1cm5zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDE1cztcbn1cblxuLypcbiAqIFNoYWtlXG4gKi9cbi51ay1hbmltYXRpb24tc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogdWstc2hha2U7XG59XG5cbi8qXG4gKiBTVkcgU3Ryb2tlXG4gKiBUaGUgYC0tdWstYW5pbWF0aW9uLXN0cm9rZWAgY3VzdG9tIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBsb25nZXN0IHBhdGggbGVuZ3RoLlxuICogU2V0IGl0IG1hbnVhbGx5IG9yIHVzZSBgdWstc3ZnPVwic3Ryb2tlLWFuaW1hdGlvbjogdHJ1ZVwiYCB0byBzZXQgaXQgYXV0b21hdGljYWxseS5cbiAqIEFsbCBzdHJva2VzIGFyZSBhbmltYXRlZCBieSB0aGUgc2FtZSBwYWNlIGFuZCBkb2Vzbid0IGVuZCBzaW11bHRhbmVvdXNseS5cbiAqIFRvIGVuZCBzaW11bHRhbmVvdXNseSwgYHBhdGhMZW5ndGg9XCIxXCJgIGNvdWxkIGJlIHVzZWQsIGJ1dCBpdCdzIG5vdCB3b3JraW5nIGluIFNhZmFyaSB5ZXQuXG4gKi9cbi51ay1hbmltYXRpb24tc3Ryb2tlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHVrLXN0cm9rZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgc3Ryb2tlLWRhc2hhcnJheTogdmFyKC0tdWstYW5pbWF0aW9uLXN0cm9rZSk7XG59XG5cbi8qIERpcmVjdGlvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYW5pbWF0aW9uLXJldmVyc2Uge1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiByZXZlcnNlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG4vKiBEdXJhdGlvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYW5pbWF0aW9uLWZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuMXM7XG59XG5cbi8qIFRvZ2dsZSBhbmltYXRpb24gYmFzZWQgb24gdGhlIFN0YXRlIG9mIHRoZSBQYXJlbnQgRWxlbWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYW5pbWF0aW9uLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSBbY2xhc3MqPXVrLWFuaW1hdGlvbi1dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IG5vbmU7XG59XG5cbi8qIEtleWZyYW1lcyB1c2VkIGJ5IGFuaW1hdGlvbiBjbGFzc2VzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBGYWRlXG4gKi9cbkBrZXlmcmFtZXMgdWstZmFkZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi8qXG4gKiBTY2FsZVxuICovXG5Aa2V5ZnJhbWVzIHVrLXNjYWxlLXVwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHVrLXNjYWxlLWRvd24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbi8qXG4gKiBTbGlkZVxuICovXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXRvcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyB1ay1zbGlkZS1ib3R0b20ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyB1ay1zbGlkZS1sZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbi8qXG4gKiBTbGlkZSBTbWFsbFxuICovXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXRvcC1zbWFsbCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyB1ay1zbGlkZS1ib3R0b20tc21hbGwge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyB1ay1zbGlkZS1sZWZ0LXNtYWxsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXJpZ2h0LXNtYWxsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbi8qXG4gKiBTbGlkZSBNZWRpdW1cbiAqL1xuQGtleWZyYW1lcyB1ay1zbGlkZS10b3AtbWVkaXVtIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLWJvdHRvbS1tZWRpdW0ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyB1ay1zbGlkZS1sZWZ0LW1lZGl1bSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyB1ay1zbGlkZS1yaWdodC1tZWRpdW0ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLypcbiAqIEtlbmJ1cm5zXG4gKi9cbkBrZXlmcmFtZXMgdWsta2VuYnVybnMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIH1cbn1cbi8qXG4gKiBTaGFrZVxuICovXG5Aa2V5ZnJhbWVzIHVrLXNoYWtlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOXB4KTtcbiAgfVxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03cHgpO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTtcbiAgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpO1xuICB9XG59XG4vKlxuICogU3Ryb2tlXG4gKi9cbkBrZXlmcmFtZXMgdWstc3Ryb2tlIHtcbiAgMCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiB2YXIoLS11ay1hbmltYXRpb24tc3Ryb2tlKTtcbiAgfVxuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFdpZHRoXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEVxdWFsIGNoaWxkIHdpZHRoc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5bY2xhc3MqPXVrLWNoaWxkLXdpZHRoXSA+ICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnVrLWNoaWxkLXdpZHRoLTEtMiA+ICoge1xuICB3aWR0aDogNTAlO1xufVxuXG4udWstY2hpbGQtd2lkdGgtMS0zID4gKiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbn1cblxuLnVrLWNoaWxkLXdpZHRoLTEtNCA+ICoge1xuICB3aWR0aDogMjUlO1xufVxuXG4udWstY2hpbGQtd2lkdGgtMS01ID4gKiB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi51ay1jaGlsZC13aWR0aC0xLTYgPiAqIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xufVxuXG4udWstY2hpbGQtd2lkdGgtYXV0byA+ICoge1xuICB3aWR0aDogYXV0bztcbn1cblxuLypcbiAqIDEuIFJlc2V0IHRoZSBgbWluLXdpZHRoYCwgd2hpY2ggaXMgc2V0IHRvIGF1dG8gYnkgZGVmYXVsdCwgYmVjYXVzZVxuICogICAgZmxleCBpdGVtcyB3b24ndCBzaHJpbmsgYmVsb3cgdGhlaXIgbWluaW11bSBpbnRyaW5zaWMgY29udGVudCBzaXplLlxuICogICAgVXNpbmcgYDFweGAgaW5zdGVhZCBvZiBgMGAsIHNvIGl0ZW1zIHN0aWxsIHdyYXAgaW50byB0aGUgbmV4dCBsaW5lLFxuICogICAgaWYgdGhleSBoYXZlIHplcm8gd2lkdGggYW5kIHBhZGRpbmcgYW5kIHRoZSBwcmVkZWNlc3NvciBpcyAxMDAlIHdpZGUuXG4gKi9cbi51ay1jaGlsZC13aWR0aC1leHBhbmQgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSB7XG4gIGZsZXg6IDE7XG4gIC8qIDEgKi9cbiAgbWluLXdpZHRoOiAxcHg7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnVrLWNoaWxkLXdpZHRoLTEtMVxcQHMgPiAqIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtMS0yXFxAcyA+ICoge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHMgPiAqIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQHMgPiAqIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC0xLTVcXEBzID4gKiB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtMS02XFxAcyA+ICoge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA2KTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQHMgPiAqIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtZXhwYW5kXFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICB9XG4gIC8qIFJlc2V0IGV4cGFuZCAqL1xuICAudWstY2hpbGQtd2lkdGgtMS0xXFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS0yXFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS0zXFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS00XFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS01XFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS02XFxAcyA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQHMgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWNoaWxkLXdpZHRoLTEtMVxcQG0gPiAqIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtMS0yXFxAbSA+ICoge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQG0gPiAqIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQG0gPiAqIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC0xLTVcXEBtID4gKiB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtMS02XFxAbSA+ICoge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA2KTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQG0gPiAqIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtZXhwYW5kXFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICB9XG4gIC8qIFJlc2V0IGV4cGFuZCAqL1xuICAudWstY2hpbGQtd2lkdGgtMS0xXFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS0yXFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS0zXFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS00XFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS01XFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS02XFxAbSA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQG0gPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgfVxufVxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51ay1jaGlsZC13aWR0aC0xLTFcXEBsID4gKiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtMlxcQGwgPiAqIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC0xLTNcXEBsID4gKiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC0xLTRcXEBsID4gKiB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtMS01XFxAbCA+ICoge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtNlxcQGwgPiAqIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gNik7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEBsID4gKiB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLWV4cGFuZFxcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSB7XG4gICAgZmxleDogMTtcbiAgICBtaW4td2lkdGg6IDFweDtcbiAgfVxuICAvKiBSZXNldCBleHBhbmQgKi9cbiAgLnVrLWNoaWxkLXdpZHRoLTEtMVxcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtMlxcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtNVxcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtNlxcQGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEBsID4gOm5vdChbY2xhc3MqPXVrLXdpZHRoXSkge1xuICAgIGZsZXg6IGluaXRpYWw7XG4gIH1cbn1cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC51ay1jaGlsZC13aWR0aC0xLTFcXEB4bCA+ICoge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC0xLTJcXEB4bCA+ICoge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHhsID4gKiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC0xLTRcXEB4bCA+ICoge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLTEtNVxcQHhsID4gKiB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAudWstY2hpbGQtd2lkdGgtMS02XFxAeGwgPiAqIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gNik7XG4gIH1cbiAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEB4bCA+ICoge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC51ay1jaGlsZC13aWR0aC1leHBhbmRcXEB4bCA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICB9XG4gIC8qIFJlc2V0IGV4cGFuZCAqL1xuICAudWstY2hpbGQtd2lkdGgtMS0xXFxAeGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtMlxcQHhsID4gOm5vdChbY2xhc3MqPXVrLXdpZHRoXSksXG4gIC51ay1jaGlsZC13aWR0aC0xLTNcXEB4bCA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtMS00XFxAeGwgPiA6bm90KFtjbGFzcyo9dWstd2lkdGhdKSxcbiAgLnVrLWNoaWxkLXdpZHRoLTEtNVxcQHhsID4gOm5vdChbY2xhc3MqPXVrLXdpZHRoXSksXG4gIC51ay1jaGlsZC13aWR0aC0xLTZcXEB4bCA+IDpub3QoW2NsYXNzKj11ay13aWR0aF0pLFxuICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQHhsID4gOm5vdChbY2xhc3MqPXVrLXdpZHRoXSkge1xuICAgIGZsZXg6IGluaXRpYWw7XG4gIH1cbn1cbi8qIFNpbmdsZSBXaWR0aHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIGBtYXgtd2lkdGhgIGlzIG5lZWRlZCBmb3IgdGhlIHBpeGVsLWJhc2VkIGNsYXNzZXNcbiAqL1xuW2NsYXNzKj11ay13aWR0aF0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIEhhbHZlcyAqL1xuLnVrLXdpZHRoLTEtMiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi8qIFRoaXJkcyAqL1xuLnVrLXdpZHRoLTEtMyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbn1cblxuLnVrLXdpZHRoLTItMyB7XG4gIHdpZHRoOiBjYWxjKDIwMCUgLyAzKTtcbn1cblxuLyogUXVhcnRlcnMgKi9cbi51ay13aWR0aC0xLTQge1xuICB3aWR0aDogMjUlO1xufVxuXG4udWstd2lkdGgtMy00IHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLyogRmlmdGhzICovXG4udWstd2lkdGgtMS01IHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnVrLXdpZHRoLTItNSB7XG4gIHdpZHRoOiA0MCU7XG59XG5cbi51ay13aWR0aC0zLTUge1xuICB3aWR0aDogNjAlO1xufVxuXG4udWstd2lkdGgtNC01IHtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLyogU2l4dGhzICovXG4udWstd2lkdGgtMS02IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xufVxuXG4udWstd2lkdGgtNS02IHtcbiAgd2lkdGg6IGNhbGMoNTAwJSAvIDYpO1xufVxuXG4vKiBQaXhlbCAqL1xuLnVrLXdpZHRoLXNtYWxsIHtcbiAgd2lkdGg6IDE1MHB4O1xufVxuXG4udWstd2lkdGgtbWVkaXVtIHtcbiAgd2lkdGg6IDMwMHB4O1xufVxuXG4udWstd2lkdGgtbGFyZ2Uge1xuICB3aWR0aDogNDUwcHg7XG59XG5cbi51ay13aWR0aC14bGFyZ2Uge1xuICB3aWR0aDogNjAwcHg7XG59XG5cbi51ay13aWR0aC0yeGxhcmdlIHtcbiAgd2lkdGg6IDc1MHB4O1xufVxuXG4vKiBBdXRvICovXG4udWstd2lkdGgtYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBFeHBhbmQgKi9cbi51ay13aWR0aC1leHBhbmQge1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDFweDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAvKiBXaG9sZSAqL1xuICAudWstd2lkdGgtMS0xXFxAcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLyogSGFsdmVzICovXG4gIC51ay13aWR0aC0xLTJcXEBzIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC8qIFRoaXJkcyAqL1xuICAudWstd2lkdGgtMS0zXFxAcyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICB9XG4gIC51ay13aWR0aC0yLTNcXEBzIHtcbiAgICB3aWR0aDogY2FsYygyMDAlIC8gMyk7XG4gIH1cbiAgLyogUXVhcnRlcnMgKi9cbiAgLnVrLXdpZHRoLTEtNFxcQHMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnVrLXdpZHRoLTMtNFxcQHMge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLyogRmlmdGhzICovXG4gIC51ay13aWR0aC0xLTVcXEBzIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC51ay13aWR0aC0yLTVcXEBzIHtcbiAgICB3aWR0aDogNDAlO1xuICB9XG4gIC51ay13aWR0aC0zLTVcXEBzIHtcbiAgICB3aWR0aDogNjAlO1xuICB9XG4gIC51ay13aWR0aC00LTVcXEBzIHtcbiAgICB3aWR0aDogODAlO1xuICB9XG4gIC8qIFNpeHRocyAqL1xuICAudWstd2lkdGgtMS02XFxAcyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xuICB9XG4gIC51ay13aWR0aC01LTZcXEBzIHtcbiAgICB3aWR0aDogY2FsYyg1MDAlIC8gNik7XG4gIH1cbiAgLyogUGl4ZWwgKi9cbiAgLnVrLXdpZHRoLXNtYWxsXFxAcyB7XG4gICAgd2lkdGg6IDE1MHB4O1xuICB9XG4gIC51ay13aWR0aC1tZWRpdW1cXEBzIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbiAgLnVrLXdpZHRoLWxhcmdlXFxAcyB7XG4gICAgd2lkdGg6IDQ1MHB4O1xuICB9XG4gIC51ay13aWR0aC14bGFyZ2VcXEBzIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gIH1cbiAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBzIHtcbiAgICB3aWR0aDogNzUwcHg7XG4gIH1cbiAgLyogQXV0byAqL1xuICAudWstd2lkdGgtYXV0b1xcQHMge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC8qIEV4cGFuZCAqL1xuICAudWstd2lkdGgtZXhwYW5kXFxAcyB7XG4gICAgZmxleDogMTtcbiAgICBtaW4td2lkdGg6IDFweDtcbiAgfVxuICAvKiBSZXNldCBleHBhbmQgKi9cbiAgLnVrLXdpZHRoLTEtMVxcQHMsXG4gIC51ay13aWR0aC0xLTJcXEBzLFxuICAudWstd2lkdGgtMS0zXFxAcyxcbiAgLnVrLXdpZHRoLTItM1xcQHMsXG4gIC51ay13aWR0aC0xLTRcXEBzLFxuICAudWstd2lkdGgtMy00XFxAcyxcbiAgLnVrLXdpZHRoLTEtNVxcQHMsXG4gIC51ay13aWR0aC0yLTVcXEBzLFxuICAudWstd2lkdGgtMy01XFxAcyxcbiAgLnVrLXdpZHRoLTQtNVxcQHMsXG4gIC51ay13aWR0aC0xLTZcXEBzLFxuICAudWstd2lkdGgtNS02XFxAcyxcbiAgLnVrLXdpZHRoLXNtYWxsXFxAcyxcbiAgLnVrLXdpZHRoLW1lZGl1bVxcQHMsXG4gIC51ay13aWR0aC1sYXJnZVxcQHMsXG4gIC51ay13aWR0aC14bGFyZ2VcXEBzLFxuICAudWstd2lkdGgtMnhsYXJnZVxcQHMsXG4gIC51ay13aWR0aC1hdXRvXFxAcyB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLyogV2hvbGUgKi9cbiAgLnVrLXdpZHRoLTEtMVxcQG0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC8qIEhhbHZlcyAqL1xuICAudWstd2lkdGgtMS0yXFxAbSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAvKiBUaGlyZHMgKi9cbiAgLnVrLXdpZHRoLTEtM1xcQG0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgfVxuICAudWstd2lkdGgtMi0zXFxAbSB7XG4gICAgd2lkdGg6IGNhbGMoMjAwJSAvIDMpO1xuICB9XG4gIC8qIFF1YXJ0ZXJzICovXG4gIC51ay13aWR0aC0xLTRcXEBtIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC51ay13aWR0aC0zLTRcXEBtIHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC8qIEZpZnRocyAqL1xuICAudWstd2lkdGgtMS01XFxAbSB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAudWstd2lkdGgtMi01XFxAbSB7XG4gICAgd2lkdGg6IDQwJTtcbiAgfVxuICAudWstd2lkdGgtMy01XFxAbSB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxuICAudWstd2lkdGgtNC01XFxAbSB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxuICAvKiBTaXh0aHMgKi9cbiAgLnVrLXdpZHRoLTEtNlxcQG0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA2KTtcbiAgfVxuICAudWstd2lkdGgtNS02XFxAbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAwJSAvIDYpO1xuICB9XG4gIC8qIFBpeGVsICovXG4gIC51ay13aWR0aC1zbWFsbFxcQG0ge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgfVxuICAudWstd2lkdGgtbWVkaXVtXFxAbSB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICB9XG4gIC51ay13aWR0aC1sYXJnZVxcQG0ge1xuICAgIHdpZHRoOiA0NTBweDtcbiAgfVxuICAudWstd2lkdGgteGxhcmdlXFxAbSB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICB9XG4gIC51ay13aWR0aC0yeGxhcmdlXFxAbSB7XG4gICAgd2lkdGg6IDc1MHB4O1xuICB9XG4gIC8qIEF1dG8gKi9cbiAgLnVrLXdpZHRoLWF1dG9cXEBtIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAvKiBFeHBhbmQgKi9cbiAgLnVrLXdpZHRoLWV4cGFuZFxcQG0ge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAxcHg7XG4gIH1cbiAgLyogUmVzZXQgZXhwYW5kICovXG4gIC51ay13aWR0aC0xLTFcXEBtLFxuICAudWstd2lkdGgtMS0yXFxAbSxcbiAgLnVrLXdpZHRoLTEtM1xcQG0sXG4gIC51ay13aWR0aC0yLTNcXEBtLFxuICAudWstd2lkdGgtMS00XFxAbSxcbiAgLnVrLXdpZHRoLTMtNFxcQG0sXG4gIC51ay13aWR0aC0xLTVcXEBtLFxuICAudWstd2lkdGgtMi01XFxAbSxcbiAgLnVrLXdpZHRoLTMtNVxcQG0sXG4gIC51ay13aWR0aC00LTVcXEBtLFxuICAudWstd2lkdGgtMS02XFxAbSxcbiAgLnVrLXdpZHRoLTUtNlxcQG0sXG4gIC51ay13aWR0aC1zbWFsbFxcQG0sXG4gIC51ay13aWR0aC1tZWRpdW1cXEBtLFxuICAudWstd2lkdGgtbGFyZ2VcXEBtLFxuICAudWstd2lkdGgteGxhcmdlXFxAbSxcbiAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBtLFxuICAudWstd2lkdGgtYXV0b1xcQG0ge1xuICAgIGZsZXg6IGluaXRpYWw7XG4gIH1cbn1cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAvKiBXaG9sZSAqL1xuICAudWstd2lkdGgtMS0xXFxAbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLyogSGFsdmVzICovXG4gIC51ay13aWR0aC0xLTJcXEBsIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC8qIFRoaXJkcyAqL1xuICAudWstd2lkdGgtMS0zXFxAbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICB9XG4gIC51ay13aWR0aC0yLTNcXEBsIHtcbiAgICB3aWR0aDogY2FsYygyMDAlIC8gMyk7XG4gIH1cbiAgLyogUXVhcnRlcnMgKi9cbiAgLnVrLXdpZHRoLTEtNFxcQGwge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnVrLXdpZHRoLTMtNFxcQGwge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLyogRmlmdGhzICovXG4gIC51ay13aWR0aC0xLTVcXEBsIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC51ay13aWR0aC0yLTVcXEBsIHtcbiAgICB3aWR0aDogNDAlO1xuICB9XG4gIC51ay13aWR0aC0zLTVcXEBsIHtcbiAgICB3aWR0aDogNjAlO1xuICB9XG4gIC51ay13aWR0aC00LTVcXEBsIHtcbiAgICB3aWR0aDogODAlO1xuICB9XG4gIC8qIFNpeHRocyAqL1xuICAudWstd2lkdGgtMS02XFxAbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xuICB9XG4gIC51ay13aWR0aC01LTZcXEBsIHtcbiAgICB3aWR0aDogY2FsYyg1MDAlIC8gNik7XG4gIH1cbiAgLyogUGl4ZWwgKi9cbiAgLnVrLXdpZHRoLXNtYWxsXFxAbCB7XG4gICAgd2lkdGg6IDE1MHB4O1xuICB9XG4gIC51ay13aWR0aC1tZWRpdW1cXEBsIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbiAgLnVrLXdpZHRoLWxhcmdlXFxAbCB7XG4gICAgd2lkdGg6IDQ1MHB4O1xuICB9XG4gIC51ay13aWR0aC14bGFyZ2VcXEBsIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gIH1cbiAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBsIHtcbiAgICB3aWR0aDogNzUwcHg7XG4gIH1cbiAgLyogQXV0byAqL1xuICAudWstd2lkdGgtYXV0b1xcQGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC8qIEV4cGFuZCAqL1xuICAudWstd2lkdGgtZXhwYW5kXFxAbCB7XG4gICAgZmxleDogMTtcbiAgICBtaW4td2lkdGg6IDFweDtcbiAgfVxuICAvKiBSZXNldCBleHBhbmQgKi9cbiAgLnVrLXdpZHRoLTEtMVxcQGwsXG4gIC51ay13aWR0aC0xLTJcXEBsLFxuICAudWstd2lkdGgtMS0zXFxAbCxcbiAgLnVrLXdpZHRoLTItM1xcQGwsXG4gIC51ay13aWR0aC0xLTRcXEBsLFxuICAudWstd2lkdGgtMy00XFxAbCxcbiAgLnVrLXdpZHRoLTEtNVxcQGwsXG4gIC51ay13aWR0aC0yLTVcXEBsLFxuICAudWstd2lkdGgtMy01XFxAbCxcbiAgLnVrLXdpZHRoLTQtNVxcQGwsXG4gIC51ay13aWR0aC0xLTZcXEBsLFxuICAudWstd2lkdGgtNS02XFxAbCxcbiAgLnVrLXdpZHRoLXNtYWxsXFxAbCxcbiAgLnVrLXdpZHRoLW1lZGl1bVxcQGwsXG4gIC51ay13aWR0aC1sYXJnZVxcQGwsXG4gIC51ay13aWR0aC14bGFyZ2VcXEBsLFxuICAudWstd2lkdGgtMnhsYXJnZVxcQGwsXG4gIC51ay13aWR0aC1hdXRvXFxAbCB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgfVxufVxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLyogV2hvbGUgKi9cbiAgLnVrLXdpZHRoLTEtMVxcQHhsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAvKiBIYWx2ZXMgKi9cbiAgLnVrLXdpZHRoLTEtMlxcQHhsIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC8qIFRoaXJkcyAqL1xuICAudWstd2lkdGgtMS0zXFxAeGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgfVxuICAudWstd2lkdGgtMi0zXFxAeGwge1xuICAgIHdpZHRoOiBjYWxjKDIwMCUgLyAzKTtcbiAgfVxuICAvKiBRdWFydGVycyAqL1xuICAudWstd2lkdGgtMS00XFxAeGwge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnVrLXdpZHRoLTMtNFxcQHhsIHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC8qIEZpZnRocyAqL1xuICAudWstd2lkdGgtMS01XFxAeGwge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLnVrLXdpZHRoLTItNVxcQHhsIHtcbiAgICB3aWR0aDogNDAlO1xuICB9XG4gIC51ay13aWR0aC0zLTVcXEB4bCB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxuICAudWstd2lkdGgtNC01XFxAeGwge1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cbiAgLyogU2l4dGhzICovXG4gIC51ay13aWR0aC0xLTZcXEB4bCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xuICB9XG4gIC51ay13aWR0aC01LTZcXEB4bCB7XG4gICAgd2lkdGg6IGNhbGMoNTAwJSAvIDYpO1xuICB9XG4gIC8qIFBpeGVsICovXG4gIC51ay13aWR0aC1zbWFsbFxcQHhsIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbiAgLnVrLXdpZHRoLW1lZGl1bVxcQHhsIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbiAgLnVrLXdpZHRoLWxhcmdlXFxAeGwge1xuICAgIHdpZHRoOiA0NTBweDtcbiAgfVxuICAudWstd2lkdGgteGxhcmdlXFxAeGwge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgfVxuICAudWstd2lkdGgtMnhsYXJnZVxcQHhsIHtcbiAgICB3aWR0aDogNzUwcHg7XG4gIH1cbiAgLyogQXV0byAqL1xuICAudWstd2lkdGgtYXV0b1xcQHhsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAvKiBFeHBhbmQgKi9cbiAgLnVrLXdpZHRoLWV4cGFuZFxcQHhsIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICB9XG4gIC8qIFJlc2V0IGV4cGFuZCAqL1xuICAudWstd2lkdGgtMS0xXFxAeGwsXG4gIC51ay13aWR0aC0xLTJcXEB4bCxcbiAgLnVrLXdpZHRoLTEtM1xcQHhsLFxuICAudWstd2lkdGgtMi0zXFxAeGwsXG4gIC51ay13aWR0aC0xLTRcXEB4bCxcbiAgLnVrLXdpZHRoLTMtNFxcQHhsLFxuICAudWstd2lkdGgtMS01XFxAeGwsXG4gIC51ay13aWR0aC0yLTVcXEB4bCxcbiAgLnVrLXdpZHRoLTMtNVxcQHhsLFxuICAudWstd2lkdGgtNC01XFxAeGwsXG4gIC51ay13aWR0aC0xLTZcXEB4bCxcbiAgLnVrLXdpZHRoLTUtNlxcQHhsLFxuICAudWstd2lkdGgtc21hbGxcXEB4bCxcbiAgLnVrLXdpZHRoLW1lZGl1bVxcQHhsLFxuICAudWstd2lkdGgtbGFyZ2VcXEB4bCxcbiAgLnVrLXdpZHRoLXhsYXJnZVxcQHhsLFxuICAudWstd2lkdGgtMnhsYXJnZVxcQHhsLFxuICAudWstd2lkdGgtYXV0b1xcQHhsIHtcbiAgICBmbGV4OiBpbml0aWFsO1xuICB9XG59XG4vKiBJbnRyaW5zaWMgV2lkdGhzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay13aWR0aC1tYXgtY29udGVudCB7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLnVrLXdpZHRoLW1pbi1jb250ZW50IHtcbiAgd2lkdGg6IG1pbi1jb250ZW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSGVpZ2h0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbltjbGFzcyo9dWstaGVpZ2h0XSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qXG4gKiBPbmx5IHdvcmtzIGlmIHBhcmVudCBlbGVtZW50IGhhcyBhIGhlaWdodCBzZXRcbiAqL1xuLnVrLWhlaWdodC0xLTEge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qXG4gKiBVc2VmdWwgdG8gY3JlYXRlIGltYWdlIHRlYXNlcnNcbiAqL1xuLnVrLWhlaWdodC12aWV3cG9ydCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4udWstaGVpZ2h0LXZpZXdwb3J0LTIge1xuICBtaW4taGVpZ2h0OiAyMDB2aDtcbn1cblxuLnVrLWhlaWdodC12aWV3cG9ydC0zIHtcbiAgbWluLWhlaWdodDogMzAwdmg7XG59XG5cbi51ay1oZWlnaHQtdmlld3BvcnQtNCB7XG4gIG1pbi1oZWlnaHQ6IDQwMHZoO1xufVxuXG4vKlxuICogUGl4ZWxcbiAqIFVzZWZ1bCBmb3IgYG92ZXJmbG93OiBhdXRvYFxuICovXG4udWstaGVpZ2h0LXNtYWxsIHtcbiAgaGVpZ2h0OiAxNTBweDtcbn1cblxuLnVrLWhlaWdodC1tZWRpdW0ge1xuICBoZWlnaHQ6IDMwMHB4O1xufVxuXG4udWstaGVpZ2h0LWxhcmdlIHtcbiAgaGVpZ2h0OiA0NTBweDtcbn1cblxuLnVrLWhlaWdodC1tYXgtc21hbGwge1xuICBtYXgtaGVpZ2h0OiAxNTBweDtcbn1cblxuLnVrLWhlaWdodC1tYXgtbWVkaXVtIHtcbiAgbWF4LWhlaWdodDogMzAwcHg7XG59XG5cbi51ay1oZWlnaHQtbWF4LWxhcmdlIHtcbiAgbWF4LWhlaWdodDogNDUwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUZXh0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGV4dC1sZWFkIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4udWstdGV4dC1tZXRhIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM5OTk7XG59XG4udWstdGV4dC1tZXRhID4gYSB7XG4gIGNvbG9yOiAjOTk5O1xufVxuLnVrLXRleHQtbWV0YSA+IGE6aG92ZXIge1xuICBjb2xvcjogIzY2NjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBTaXplIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGV4dC1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi51ay10ZXh0LWxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi51ay10ZXh0LWRlZmF1bHQge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qIFdlaWdodCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGV4dC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi51ay10ZXh0LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi51ay10ZXh0LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4udWstdGV4dC1saWdodGVyIHtcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG59XG5cbi51ay10ZXh0LWJvbGRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qIFN0eWxlIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay10ZXh0LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogVHJhbnNmb3JtIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay10ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xufVxuXG4udWstdGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi51ay10ZXh0LWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLyogRGVjb3JhdGlvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdGV4dC1kZWNvcmF0aW9uLW5vbmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogQ29sb3IgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay10ZXh0LW11dGVkIHtcbiAgY29sb3I6ICM5OTkgIWltcG9ydGFudDtcbn1cblxuLnVrLXRleHQtZW1waGFzaXMge1xuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xufVxuXG4udWstdGV4dC1wcmltYXJ5IHtcbiAgY29sb3I6ICMxZTg3ZjAgIWltcG9ydGFudDtcbn1cblxuLnVrLXRleHQtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMyMjIgIWltcG9ydGFudDtcbn1cblxuLnVrLXRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMzJkMjk2ICFpbXBvcnRhbnQ7XG59XG5cbi51ay10ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2ZhYTA1YSAhaW1wb3J0YW50O1xufVxuXG4udWstdGV4dC1kYW5nZXIge1xuICBjb2xvcjogI2YwNTA2ZSAhaW1wb3J0YW50O1xufVxuXG4vKiBCYWNrZ3JvdW5kIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBUaGUgYmFja2dyb3VuZCBjbGlwcyB0byB0aGUgZm9yZWdyb3VuZCB0ZXh0LiBXb3JrcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBEZWZhdWx0IGNvbG9yIGlzIHNldCB0byB0cmFuc3BhcmVudC5cbiAqIDMuIENvbnRhaW5lciBmaXRzIHRoZSB0ZXh0XG4gKiA0LiBTdHlsZVxuICovXG4udWstdGV4dC1iYWNrZ3JvdW5kIHtcbiAgLyogMSAqL1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLyogMiAqL1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLyogMyAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDQgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlODdmMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMWU4N2YwIDAlLCAjNDExZWYwIDEwMCUpO1xufVxuXG4vKiBBbGlnbm1lbnQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay10ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi51ay10ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnVrLXRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi51ay10ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnVrLXRleHQtbGVmdFxcQHMge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAudWstdGV4dC1yaWdodFxcQHMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLXRleHQtY2VudGVyXFxAcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay10ZXh0LWxlZnRcXEBtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLXRleHQtcmlnaHRcXEBtIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay10ZXh0LWNlbnRlclxcQG0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLXRleHQtbGVmdFxcQGwge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAudWstdGV4dC1yaWdodFxcQGwge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLXRleHQtY2VudGVyXFxAbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC51ay10ZXh0LWxlZnRcXEB4bCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay10ZXh0LXJpZ2h0XFxAeGwge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLXRleHQtY2VudGVyXFxAeGwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG59XG4vKlxuICogVmVydGljYWxcbiAqL1xuLnVrLXRleHQtdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xufVxuXG4udWstdGV4dC1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG59XG5cbi51ay10ZXh0LWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcbn1cblxuLnVrLXRleHQtYmFzZWxpbmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbn1cblxuLyogV3JhcCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFByZXZlbnQgdGV4dCBmcm9tIHdyYXBwaW5nIG9udG8gbXVsdGlwbGUgbGluZXNcbiAqL1xuLnVrLXRleHQtbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLypcbiAqIDEuIE1ha2Ugc3VyZSBhIG1heC13aWR0aCBpcyBzZXQgYWZ0ZXIgd2hpY2ggdHJ1bmNhdGlvbiBjYW4gb2NjdXJcbiAqIDIuIFByZXZlbnQgdGV4dCBmcm9tIHdyYXBwaW5nIG9udG8gbXVsdGlwbGUgbGluZXMsIGFuZCB0cnVuY2F0ZSB3aXRoIGFuIGVsbGlwc2lzXG4gKiAzLiBGaXggZm9yIHRhYmxlIGNlbGxzXG4gKi9cbi51ay10ZXh0LXRydW5jYXRlIHtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDIgKi9cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIDIgKi9cbnRoLnVrLXRleHQtdHJ1bmNhdGUsXG50ZC51ay10ZXh0LXRydW5jYXRlIHtcbiAgbWF4LXdpZHRoOiAwO1xufVxuXG4vKlxuICogV3JhcCBsb25nIHdvcmRzIG9udG8gdGhlIG5leHQgbGluZSBhbmQgYnJlYWsgdGhlbSBpZiB0aGV5IGFyZSB0b28gbG9uZyB0byBmaXQuXG4gKiAxLiBNYWtlIGl0IHdvcmsgd2l0aCB0YWJsZSBjZWxscyBpbiBhbGwgYnJvd3NlcnMuXG4gKiBOb3RlOiBOb3QgdXNpbmcgYGh5cGhlbnM6IGF1dG9gIGJlY2F1c2UgaXQgaHlwaGVuYXRlcyB0ZXh0IGV2ZW4gaWYgbm90IG5lZWRlZC5cbiAqL1xuLnVrLXRleHQtYnJlYWsge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xufVxuXG4vKiAxICovXG50aC51ay10ZXh0LWJyZWFrLFxudGQudWstdGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi8qIFN0cm9rZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRleHQtc3Ryb2tlIHtcbiAgLXdlYmtpdC10ZXh0LXN0cm9rZTogY2FsYygxLjRweCArIDAuMDAyZW0pO1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb2x1bW5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuW2NsYXNzKj11ay1jb2x1bW4tXSB7XG4gIGNvbHVtbi1nYXA6IDMwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICBbY2xhc3MqPXVrLWNvbHVtbi1dIHtcbiAgICBjb2x1bW4tZ2FwOiA0MHB4O1xuICB9XG59XG4vKlxuICogRml4IGltYWdlIDFweCBsaW5lIHdyYXBwaW5nIGludG8gdGhlIG5leHQgY29sdW1uIGluIENocm9tZVxuICovXG5bY2xhc3MqPXVrLWNvbHVtbi1dIGltZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi8qIERpdmlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIERvdWJsZSB0aGUgY29sdW1uIGdhcFxuICovXG4udWstY29sdW1uLWRpdmlkZXIge1xuICBjb2x1bW4tcnVsZTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gIC8qIDEgKi9cbiAgY29sdW1uLWdhcDogNjBweDtcbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51ay1jb2x1bW4tZGl2aWRlciB7XG4gICAgY29sdW1uLWdhcDogODBweDtcbiAgfVxufVxuLyogV2lkdGggbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1jb2x1bW4tMS0yIHtcbiAgY29sdW1uLWNvdW50OiAyO1xufVxuXG4udWstY29sdW1uLTEtMyB7XG4gIGNvbHVtbi1jb3VudDogMztcbn1cblxuLnVrLWNvbHVtbi0xLTQge1xuICBjb2x1bW4tY291bnQ6IDQ7XG59XG5cbi51ay1jb2x1bW4tMS01IHtcbiAgY29sdW1uLWNvdW50OiA1O1xufVxuXG4udWstY29sdW1uLTEtNiB7XG4gIGNvbHVtbi1jb3VudDogNjtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstY29sdW1uLTEtMlxcQHMge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgfVxuICAudWstY29sdW1uLTEtM1xcQHMge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgfVxuICAudWstY29sdW1uLTEtNFxcQHMge1xuICAgIGNvbHVtbi1jb3VudDogNDtcbiAgfVxuICAudWstY29sdW1uLTEtNVxcQHMge1xuICAgIGNvbHVtbi1jb3VudDogNTtcbiAgfVxuICAudWstY29sdW1uLTEtNlxcQHMge1xuICAgIGNvbHVtbi1jb3VudDogNjtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWNvbHVtbi0xLTJcXEBtIHtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gIH1cbiAgLnVrLWNvbHVtbi0xLTNcXEBtIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gIH1cbiAgLnVrLWNvbHVtbi0xLTRcXEBtIHtcbiAgICBjb2x1bW4tY291bnQ6IDQ7XG4gIH1cbiAgLnVrLWNvbHVtbi0xLTVcXEBtIHtcbiAgICBjb2x1bW4tY291bnQ6IDU7XG4gIH1cbiAgLnVrLWNvbHVtbi0xLTZcXEBtIHtcbiAgICBjb2x1bW4tY291bnQ6IDY7XG4gIH1cbn1cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstY29sdW1uLTEtMlxcQGwge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgfVxuICAudWstY29sdW1uLTEtM1xcQGwge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgfVxuICAudWstY29sdW1uLTEtNFxcQGwge1xuICAgIGNvbHVtbi1jb3VudDogNDtcbiAgfVxuICAudWstY29sdW1uLTEtNVxcQGwge1xuICAgIGNvbHVtbi1jb3VudDogNTtcbiAgfVxuICAudWstY29sdW1uLTEtNlxcQGwge1xuICAgIGNvbHVtbi1jb3VudDogNjtcbiAgfVxufVxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnVrLWNvbHVtbi0xLTJcXEB4bCB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICB9XG4gIC51ay1jb2x1bW4tMS0zXFxAeGwge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgfVxuICAudWstY29sdW1uLTEtNFxcQHhsIHtcbiAgICBjb2x1bW4tY291bnQ6IDQ7XG4gIH1cbiAgLnVrLWNvbHVtbi0xLTVcXEB4bCB7XG4gICAgY29sdW1uLWNvdW50OiA1O1xuICB9XG4gIC51ay1jb2x1bW4tMS02XFxAeGwge1xuICAgIGNvbHVtbi1jb3VudDogNjtcbiAgfVxufVxuLyogTWFrZSBlbGVtZW50IHNwYW4gYWNyb3NzIGFsbCBjb2x1bW5zXG4gKiBEb2VzIG5vdCB3b3JrIGluIEZpcmVmb3ggeWV0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1jb2x1bW4tc3BhbiB7XG4gIGNvbHVtbi1zcGFuOiBhbGw7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb3ZlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogV29ya3Mgd2l0aCBpZnJhbWVzIGFuZCBlbWJlZGRlZCBjb250ZW50XG4gKiAxLiBVc2UgYXR0cmlidXRlIHRvIGFwcGx5IHRyYW5zZm9ybSBpbnN0YW50bHkuIE5lZWRlZCBpZiB0cmFuc2Zvcm0gaXMgdHJhbnNpdGlvbmVkLlxuICogMi4gUmVzZXQgcmVzcG9uc2l2ZW5lc3MgZm9yIGVtYmVkZGVkIGNvbnRlbnRcbiAqIDMuIENlbnRlciBvYmplY3RcbiAqIE5vdGU6IFBlcmNlbnQgdmFsdWVzIG9uIHRoZSBgdG9wYCBwcm9wZXJ0eSBvbmx5IHdvcmtzIGlmIHRoaXMgZWxlbWVudFxuICogICAgICAgaXMgYWJzb2x1dGUgcG9zaXRpb25lZCBvciBpZiB0aGUgY29udGFpbmVyIGhhcyBhIGhlaWdodFxuICovXG4vKiAxICovXG5bdWstY292ZXJdOndoZXJlKGNhbnZhcywgaWZyYW1lLCBzdmcpLFxuW2RhdGEtdWstY292ZXJdOndoZXJlKGNhbnZhcywgaWZyYW1lLCBzdmcpIHtcbiAgLyogMiAqL1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIC8qIDMgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICAtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS14OiAtNTAlO1xuICAtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS15OiAtNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteCksIHZhcigtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS15KSk7XG59XG5cbmlmcmFtZVt1ay1jb3Zlcl0sXG5pZnJhbWVbZGF0YS11ay1jb3Zlcl0ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuW3VrLWNvdmVyXTp3aGVyZShpbWcsIHZpZGVvKSxcbltkYXRhLXVrLWNvdmVyXTp3aGVyZShpbWcsIHZpZGVvKSB7XG4gIC8qIDMgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLyogQ29udGFpbmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBQYXJlbnQgY29udGFpbmVyIHdoaWNoIGNsaXBzIHJlc2l6ZWQgb2JqZWN0XG4gKiAyLiBOZWVkZWQgaWYgdGhlIGNoaWxkIGlzIHBvc2l0aW9uZWQgYWJzb2x1dGUuIFNlZSBub3RlIGFib3ZlXG4gKi9cbi51ay1jb3Zlci1jb250YWluZXIge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIDIgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQmFja2dyb3VuZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBDb2xvclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYmFja2dyb3VuZC1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnVrLWJhY2tncm91bmQtbXV0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xufVxuXG4udWstYmFja2dyb3VuZC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlODdmMDtcbn1cblxuLnVrLWJhY2tncm91bmQtc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbn1cblxuLyogU2l6ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYmFja2dyb3VuZC1jb3Zlcixcbi51ay1iYWNrZ3JvdW5kLWNvbnRhaW4sXG4udWstYmFja2dyb3VuZC13aWR0aC0xLTEsXG4udWstYmFja2dyb3VuZC1oZWlnaHQtMS0xIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnVrLWJhY2tncm91bmQtY292ZXIge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4udWstYmFja2dyb3VuZC1jb250YWluIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuXG4udWstYmFja2dyb3VuZC13aWR0aC0xLTEge1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWhlaWdodC0xLTEge1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbn1cblxuLyogUG9zaXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWJhY2tncm91bmQtdG9wLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi51ay1iYWNrZ3JvdW5kLXRvcC1jZW50ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbn1cblxuLnVrLWJhY2tncm91bmQtdG9wLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwO1xufVxuXG4udWstYmFja2dyb3VuZC1jZW50ZXItbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xufVxuXG4udWstYmFja2dyb3VuZC1jZW50ZXItY2VudGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbn1cblxuLnVrLWJhY2tncm91bmQtY2VudGVyLXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJvdHRvbS1sZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xufVxuXG4udWstYmFja2dyb3VuZC1ib3R0b20tY2VudGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJvdHRvbS1yaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcbn1cblxuLyogUmVwZWF0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1iYWNrZ3JvdW5kLW5vcmVwZWF0IHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLyogQXR0YWNobWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstYmFja2dyb3VuZC1maXhlZCB7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG59XG5cbi8qXG4gKiBFeGNsdWRlIHRvdWNoIGRldmljZXMgYmVjYXVzZSBgZml4ZWRgIGRvZXNuJ3Qgd29yayBvbiBpT1MgYW5kIEFuZHJvaWRcbiAqL1xuQG1lZGlhIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgLnVrLWJhY2tncm91bmQtZml4ZWQge1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xuICB9XG59XG4vKiBJbWFnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBQaG9uZSBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDMxOXB4KSB7XG4gIC51ay1iYWNrZ3JvdW5kLWltYWdlXFxAcyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudWstYmFja2dyb3VuZC1pbWFnZVxcQG0ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAudWstYmFja2dyb3VuZC1pbWFnZVxcQGwge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogRGVza3RvcCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTlweCkge1xuICAudWstYmFja2dyb3VuZC1pbWFnZVxcQHhsIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIEJsZW5kIG1vZGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLW11bHRpcGx5IHtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbn1cblxuLnVrLWJhY2tncm91bmQtYmxlbmQtc2NyZWVuIHtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBzY3JlZW47XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG92ZXJsYXk7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWRhcmtlbiB7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogZGFya2VuO1xufVxuXG4udWstYmFja2dyb3VuZC1ibGVuZC1saWdodGVuIHtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBsaWdodGVuO1xufVxuXG4udWstYmFja2dyb3VuZC1ibGVuZC1jb2xvci1kb2RnZSB7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogY29sb3ItZG9kZ2U7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWNvbG9yLWJ1cm4ge1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGNvbG9yLWJ1cm47XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWhhcmQtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGhhcmQtbGlnaHQ7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLXNvZnQtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IHNvZnQtbGlnaHQ7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWRpZmZlcmVuY2Uge1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XG59XG5cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWV4Y2x1c2lvbiB7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogZXhjbHVzaW9uO1xufVxuXG4udWstYmFja2dyb3VuZC1ibGVuZC1odWUge1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGh1ZTtcbn1cblxuLnVrLWJhY2tncm91bmQtYmxlbmQtc2F0dXJhdGlvbiB7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogc2F0dXJhdGlvbjtcbn1cblxuLnVrLWJhY2tncm91bmQtYmxlbmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGNvbG9yO1xufVxuXG4udWstYmFja2dyb3VuZC1ibGVuZC1sdW1pbm9zaXR5IHtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBsdW1pbm9zaXR5O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQWxpZ25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIERlZmF1bHRcbiAqL1xuW2NsYXNzKj11ay1hbGlnbl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuKiArIFtjbGFzcyo9dWstYWxpZ25dIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLypcbiAqIENlbnRlclxuICovXG4udWstYWxpZ24tY2VudGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLypcbiAqIExlZnQvUmlnaHRcbiAqL1xuLnVrLWFsaWduLWxlZnQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udWstYWxpZ24tcmlnaHQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMzBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1hbGlnbi1sZWZ0XFxAcyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnVrLWFsaWduLXJpZ2h0XFxAcyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1hbGlnbi1sZWZ0XFxAbSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnVrLWFsaWduLXJpZ2h0XFxAbSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstYWxpZ24tbGVmdFxcQGwge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnVrLWFsaWduLXJpZ2h0XFxAbCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnVrLWFsaWduLWxlZnQsXG4gIC51ay1hbGlnbi1sZWZ0XFxAcyxcbiAgLnVrLWFsaWduLWxlZnRcXEBtLFxuICAudWstYWxpZ24tbGVmdFxcQGwge1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgfVxuICAudWstYWxpZ24tcmlnaHQsXG4gIC51ay1hbGlnbi1yaWdodFxcQHMsXG4gIC51ay1hbGlnbi1yaWdodFxcQG0sXG4gIC51ay1hbGlnbi1yaWdodFxcQGwge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59XG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudWstYWxpZ24tbGVmdFxcQHhsIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAudWstYWxpZ24tcmlnaHRcXEB4bCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTVkdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEZpbGwgYWxsIFNWRyBlbGVtZW50cyB3aXRoIHRoZSBjdXJyZW50IHRleHQgY29sb3IgaWYgbm8gYGZpbGxgIGF0dHJpYnV0ZSBpcyBzZXRcbiAqIDIuIFNldCB0aGUgZmlsbCBhbmQgc3Ryb2tlIGNvbG9yIG9mIGFsbCBTVkcgZWxlbWVudHMgdG8gdGhlIGN1cnJlbnQgdGV4dCBjb2xvclxuICovXG4vKiAxICovXG4udWstc3ZnLFxuLnVrLXN2Zzpub3QoLnVrLXByZXNlcnZlKSBbZmlsbCo9XCIjXCJdOm5vdCgudWstcHJlc2VydmUpIHtcbiAgZmlsbDogY3VycmVudGNvbG9yO1xufVxuXG4udWstc3ZnOm5vdCgudWstcHJlc2VydmUpIFtzdHJva2UqPVwiI1wiXTpub3QoLnVrLXByZXNlcnZlKSB7XG4gIHN0cm9rZTogY3VycmVudGNvbG9yO1xufVxuXG4vKlxuICogRml4IEZpcmVmb3ggYmx1cnJ5IFNWRyByZW5kZXJpbmc6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDY4MzVcbiAqL1xuLnVrLXN2ZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVXRpbGl0eVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBQYW5lbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstcGFuZWwge1xuICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG4udWstcGFuZWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qXG4gKiBTY3JvbGxhYmxlXG4gKi9cbi51ay1wYW5lbC1zY3JvbGxhYmxlIHtcbiAgaGVpZ2h0OiAxNzBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHJlc2l6ZTogYm90aDtcbn1cblxuLyogQ2xlYXJmaXhcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIGB0YWJsZS1jZWxsYCBpcyB1c2VkIHdpdGggYDo6YmVmb3JlYCBiZWNhdXNlIGB0YWJsZWAgY3JlYXRlcyBhIDFweCBnYXAgd2hlbiBpdCBiZWNvbWVzIGEgZmxleCBpdGVtLCBvbmx5IGluIFdlYmtpdFxuICogMi4gYHRhYmxlYCBpcyB1c2VkIGFnYWluIHdpdGggYDo6YWZ0ZXJgIGJlY2F1c2UgYGNsZWFyYCBvbmx5IHdvcmtzIHdpdGggYmxvY2sgZWxlbWVudHMuXG4gKiBOb3RlOiBgZGlzcGxheTogYmxvY2tgIHdpdGggYG92ZXJmbG93OiBoaWRkZW5gIGlzIGN1cnJlbnRseSBub3Qgd29ya2luZyBpbiB0aGUgbGF0ZXN0IFNhZmFyaVxuICovXG4vKiAxICovXG4udWstY2xlYXJmaXg6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG59XG5cbi8qIDIgKi9cbi51ay1jbGVhcmZpeDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi8qIEZsb2F0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqL1xuLnVrLWZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnVrLWZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiAxICovXG5bY2xhc3MqPXVrLWZsb2F0LV0ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE92ZXJmbG93XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1vdmVyZmxvdy1oaWRkZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKlxuICogRW5hYmxlIHNjcm9sbGJhcnMgaWYgY29udGVudCBpcyBjbGlwcGVkXG4gKi9cbi51ay1vdmVyZmxvdy1hdXRvIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi51ay1vdmVyZmxvdy1hdXRvID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBCb3ggU2l6aW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1ib3gtc2l6aW5nLWNvbnRlbnQge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLnVrLWJveC1zaXppbmctYm9yZGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogUmVzaXplXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1yZXNpemUge1xuICByZXNpemU6IGJvdGg7XG59XG5cbi51ay1yZXNpemUtaG9yaXpvbnRhbCB7XG4gIHJlc2l6ZTogaG9yaXpvbnRhbDtcbn1cblxuLnVrLXJlc2l6ZS12ZXJ0aWNhbCB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qIERpc3BsYXlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWRpc3BsYXktYmxvY2sge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4udWstZGlzcGxheS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbn1cblxuLnVrLWRpc3BsYXktaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi8qIElubGluZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gQ29udGFpbmVyIGZpdHMgaXRzIGNvbnRlbnRcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKiAzLiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqIDQuIEJlaGF2ZSBsaWtlIG1vc3QgaW5saW5lLWJsb2NrIGVsZW1lbnRzXG4gKiA1LiBGb3JjZSBuZXcgbGF5ZXIgd2l0aG91dCBjcmVhdGluZyBhIG5ldyBzdGFja2luZyBjb250ZXh0XG4gKiAgICB0byBmaXggMXB4IGdsaXRjaCB3aGVuIGNvbWJpbmVkIHdpdGggb3ZlcmxheXMgYW5kIHRyYW5zaXRpb25zIGluIFdlYmtpdFxuICogNi4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICovXG5bY2xhc3MqPXVrLWlubGluZV0ge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMiAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIDMgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiA0ICovXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qIDUgKi9cbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51ay1pbmxpbmUtY2xpcCB7XG4gIC8qIDYgKi9cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogUmVzcG9uc2l2ZSBvYmplY3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBQcmVzZXJ2ZSBvcmlnaW5hbCBkaW1lbnNpb25zXG4gKiBCZWNhdXNlIGBpbWcsIGB2aWRlb2AsIGBjYW52YXNgIGFuZCAgYGF1ZGlvYCBhcmUgYWxyZWFkeSByZXNwb25zaXZlIGJ5IGRlZmF1bHQsIHNlZSBCYXNlIGNvbXBvbmVudFxuICovXG4udWstcHJlc2VydmUtd2lkdGgsXG4udWstcHJlc2VydmUtd2lkdGggY2FudmFzLFxuLnVrLXByZXNlcnZlLXdpZHRoIGltZyxcbi51ay1wcmVzZXJ2ZS13aWR0aCBzdmcsXG4udWstcHJlc2VydmUtd2lkdGggdmlkZW8ge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi8qXG4gKiBSZXNwb25zaXZlbmVzc1xuICogQ29ycmVjdHMgYG1heC13aWR0aGAgYW5kIGBtYXgtaGVpZ2h0YCBiZWhhdmlvciBpZiBwYWRkaW5nIGFuZCBib3JkZXIgYXJlIHVzZWRcbiAqL1xuLnVrLXJlc3BvbnNpdmUtd2lkdGgsXG4udWstcmVzcG9uc2l2ZS1oZWlnaHQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKlxuICogMS4gU2V0IGEgbWF4aW11bSB3aWR0aC4gYGltcG9ydGFudGAgbmVlZGVkIHRvIG92ZXJyaWRlIGB1ay1wcmVzZXJ2ZS13aWR0aCBpbWdgXG4gKiAyLiBBdXRvIHNjYWxlIHRoZSBoZWlnaHQuIE9ubHkgbmVlZGVkIGlmIGBoZWlnaHRgIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gKi9cbi51ay1yZXNwb25zaXZlLXdpZHRoIHtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgLyogMiAqL1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qXG4gKiAxLiBTZXQgYSBtYXhpbXVtIGhlaWdodC4gT25seSB3b3JrcyBpZiB0aGUgcGFyZW50IGVsZW1lbnQgaGFzIGEgZml4ZWQgaGVpZ2h0XG4gKiAyLiBBdXRvIHNjYWxlIHRoZSB3aWR0aC4gT25seSBuZWVkZWQgaWYgYHdpZHRoYCBhdHRyaWJ1dGUgaXMgcHJlc2VudFxuICogMy4gUmVzZXQgbWF4LXdpZHRoLCB3aGljaCBgaW1nLCBgdmlkZW9gLCBgY2FudmFzYCBhbmQgIGBhdWRpb2AgYWxyZWFkeSBoYXZlIGJ5IGRlZmF1bHRcbiAqL1xuLnVrLXJlc3BvbnNpdmUtaGVpZ2h0IHtcbiAgLyogMSAqL1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAvKiAyICovXG4gIHdpZHRoOiBhdXRvO1xuICAvKiAzICovXG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLypcbiAqIEZpeCBpbml0aWFsIGlmcmFtZSB3aWR0aC4gV2l0aG91dCB0aGUgdmlld3BvcnQgaXMgZXhwYW5kZWQgb24gaU9TIGRldmljZXNcbiAqL1xuW3VrLXJlc3BvbnNpdmVdLFxuW2RhdGEtdWstcmVzcG9uc2l2ZV0ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE9iamVjdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstb2JqZWN0LWNvdmVyIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi51ay1vYmplY3QtY29udGFpbiB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi51ay1vYmplY3QtZmlsbCB7XG4gIG9iamVjdC1maXQ6IGZpbGw7XG59XG5cbi51ay1vYmplY3Qtbm9uZSB7XG4gIG9iamVjdC1maXQ6IG5vbmU7XG59XG5cbi51ay1vYmplY3Qtc2NhbGUtZG93biB7XG4gIG9iamVjdC1maXQ6IHNjYWxlLWRvd247XG59XG5cbi8qXG4gKiBQb3NpdGlvblxuICovXG4udWstb2JqZWN0LXRvcC1sZWZ0IHtcbiAgb2JqZWN0LXBvc2l0aW9uOiAwIDA7XG59XG5cbi51ay1vYmplY3QtdG9wLWNlbnRlciB7XG4gIG9iamVjdC1wb3NpdGlvbjogNTAlIDA7XG59XG5cbi51ay1vYmplY3QtdG9wLXJpZ2h0IHtcbiAgb2JqZWN0LXBvc2l0aW9uOiAxMDAlIDA7XG59XG5cbi51ay1vYmplY3QtY2VudGVyLWxlZnQge1xuICBvYmplY3QtcG9zaXRpb246IDAgNTAlO1xufVxuXG4udWstb2JqZWN0LWNlbnRlci1jZW50ZXIge1xuICBvYmplY3QtcG9zaXRpb246IDUwJSA1MCU7XG59XG5cbi51ay1vYmplY3QtY2VudGVyLXJpZ2h0IHtcbiAgb2JqZWN0LXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cblxuLnVrLW9iamVjdC1ib3R0b20tbGVmdCB7XG4gIG9iamVjdC1wb3NpdGlvbjogMCAxMDAlO1xufVxuXG4udWstb2JqZWN0LWJvdHRvbS1jZW50ZXIge1xuICBvYmplY3QtcG9zaXRpb246IDUwJSAxMDAlO1xufVxuXG4udWstb2JqZWN0LWJvdHRvbS1yaWdodCB7XG4gIG9iamVjdC1wb3NpdGlvbjogMTAwJSAxMDAlO1xufVxuXG4vKiBCb3JkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWJvcmRlci1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi51ay1ib3JkZXItcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xufVxuXG4udWstYm9yZGVyLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi8qXG4gKiBGaXggYG92ZXJmbG93OiBoaWRkZW5gIHRvIGJlIGlnbm9yZWQgd2l0aCBib3JkZXItcmFkaXVzIGFuZCBDU1MgdHJhbnNmb3JtcyBpbiBXZWJraXRcbiAqL1xuLnVrLWlubGluZS1jbGlwW2NsYXNzKj11ay1ib3JkZXItXSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuXG4vKiBCb3gtc2hhZG93XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1ib3gtc2hhZG93LXNtYWxsIHtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi51ay1ib3gtc2hhZG93LW1lZGl1bSB7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLnVrLWJveC1zaGFkb3ctbGFyZ2Uge1xuICBib3gtc2hhZG93OiAwIDE0cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xufVxuXG4udWstYm94LXNoYWRvdy14bGFyZ2Uge1xuICBib3gtc2hhZG93OiAwIDI4cHggNTBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xufVxuXG4vKlxuICogSG92ZXJcbiAqL1xuW2NsYXNzKj11ay1ib3gtc2hhZG93LWhvdmVyXSB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBlYXNlLWluLW91dDtcbn1cblxuLnVrLWJveC1zaGFkb3ctaG92ZXItc21hbGw6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cblxuLnVrLWJveC1zaGFkb3ctaG92ZXItbWVkaXVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4udWstYm94LXNoYWRvdy1ob3Zlci1sYXJnZTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMTRweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG59XG5cbi51ay1ib3gtc2hhZG93LWhvdmVyLXhsYXJnZTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMjhweCA1MHB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG59XG5cbi8qIEJveC1zaGFkb3cgYm90dG9tXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBTZXQgcG9zaXRpb24uXG4gKiAyLiBTZXQgc3R5bGVcbiAqIDMuIEZpeCBzaGFkb3cgYmVpbmcgY2xpcHBlZCBpbiBTYWZhcmkgaWYgY29udGFpbmVyIGlzIGFuaW1hdGVkXG4gKi9cbkBzdXBwb3J0cyAoZmlsdGVyOiBibHVyKDApKSB7XG4gIC51ay1ib3gtc2hhZG93LWJvdHRvbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC51ay1ib3gtc2hhZG93LWJvdHRvbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0zMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgLyogMiAqL1xuICAgIGhlaWdodDogMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICM0NDQ7XG4gICAgZmlsdGVyOiBibHVyKDIwcHgpO1xuICAgIC8qIDMgKi9cbiAgICB3aWxsLWNoYW5nZTogZmlsdGVyO1xuICB9XG59XG4vKiBEcm9wIGNhcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gRmlyZWZveCBkb2Vzbid0IGFwcGx5IGA6OmZpcnN0LWxldHRlcmAgaWYgdGhlIGZpcnN0IGxldHRlciBpcyBpbnNpZGUgY2hpbGQgZWxlbWVudHNcbiAqICAgIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDAwNFxuICogMi4gSW4gRmlyZWZveCwgYSBmbG9hdGluZyBgOjpmaXJzdC1sZXR0ZXJgIGRvZXNuJ3QgaGF2ZSBhIGxpbmUgYm94IGFuZCB0aGVyZSBmb3Igbm8gYGxpbmUtaGVpZ2h0YFxuICogICAgaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE3OTMzXG4gKi9cbi51ay1kcm9wY2FwOjpmaXJzdC1sZXR0ZXIsXG4udWstZHJvcGNhcCA+IHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGZvbnQtc2l6ZTogNC41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAtMnB4O1xufVxuXG4vKiAyICovXG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAudWstZHJvcGNhcDo6Zmlyc3QtbGV0dGVyLFxuICAudWstZHJvcGNhcCA+IHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjElO1xuICB9XG59XG4vKiBMb2dvXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBTdHlsZVxuICogMi4gUmVxdWlyZWQgZm9yIGBhYFxuICogMy4gQmVoYXZlIGxpa2UgaW1hZ2UgYnV0IGNhbiBiZSBvdmVycmlkZGVuIHRocm91Z2ggZmxleCB1dGlsaXR5IGNsYXNzZXNcbiAqL1xuLnVrLWxvZ28ge1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBjb2xvcjogIzMzMztcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIDMgKi9cbjp3aGVyZSgudWstbG9nbykge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIEhvdmVyICovXG4udWstbG9nbzpob3ZlciB7XG4gIGNvbG9yOiAjMzMzO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnVrLWxvZ28gOndoZXJlKGltZywgc3ZnLCB2aWRlbykge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnVrLWxvZ28taW52ZXJzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIERpc2FibGVkIFN0YXRlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBEcmFnIFN0YXRlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBOZWVkZWQgaWYgbW92aW5nIG92ZXIgZWxlbWVudHMgd2l0aCBoYXZlIHRoZWlyIG93biBjdXJzb3Igb24gaG92ZXIsIGUuZy4gbGlua3Mgb3IgYnV0dG9uc1xuICogMi4gRml4IGRyYWdnaW5nIG92ZXIgaWZyYW1lc1xuICovXG4udWstZHJhZyxcbi51ay1kcmFnICoge1xuICBjdXJzb3I6IG1vdmU7XG59XG5cbi8qIDIgKi9cbi51ay1kcmFnIGlmcmFtZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBEcmFnb3ZlciBTdGF0ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQ3JlYXRlIGEgYm94LXNoYWRvdyB3aGVuIGRyYWdnaW5nIGEgZmlsZSBvdmVyIHRoZSB1cGxvYWQgYXJlYVxuICovXG4udWstZHJhZ292ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDEwMCwgMTAwLCAxMDAsIDAuMyk7XG59XG5cbi8qIEJsZW5kIG1vZGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1ibGVuZC1tdWx0aXBseSB7XG4gIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbn1cblxuLnVrLWJsZW5kLXNjcmVlbiB7XG4gIG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG59XG5cbi51ay1ibGVuZC1vdmVybGF5IHtcbiAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7XG59XG5cbi51ay1ibGVuZC1kYXJrZW4ge1xuICBtaXgtYmxlbmQtbW9kZTogZGFya2VuO1xufVxuXG4udWstYmxlbmQtbGlnaHRlbiB7XG4gIG1peC1ibGVuZC1tb2RlOiBsaWdodGVuO1xufVxuXG4udWstYmxlbmQtY29sb3ItZG9kZ2Uge1xuICBtaXgtYmxlbmQtbW9kZTogY29sb3ItZG9kZ2U7XG59XG5cbi51ay1ibGVuZC1jb2xvci1idXJuIHtcbiAgbWl4LWJsZW5kLW1vZGU6IGNvbG9yLWJ1cm47XG59XG5cbi51ay1ibGVuZC1oYXJkLWxpZ2h0IHtcbiAgbWl4LWJsZW5kLW1vZGU6IGhhcmQtbGlnaHQ7XG59XG5cbi51ay1ibGVuZC1zb2Z0LWxpZ2h0IHtcbiAgbWl4LWJsZW5kLW1vZGU6IHNvZnQtbGlnaHQ7XG59XG5cbi51ay1ibGVuZC1kaWZmZXJlbmNlIHtcbiAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XG59XG5cbi51ay1ibGVuZC1leGNsdXNpb24ge1xuICBtaXgtYmxlbmQtbW9kZTogZXhjbHVzaW9uO1xufVxuXG4udWstYmxlbmQtaHVlIHtcbiAgbWl4LWJsZW5kLW1vZGU6IGh1ZTtcbn1cblxuLnVrLWJsZW5kLXNhdHVyYXRpb24ge1xuICBtaXgtYmxlbmQtbW9kZTogc2F0dXJhdGlvbjtcbn1cblxuLnVrLWJsZW5kLWNvbG9yIHtcbiAgbWl4LWJsZW5kLW1vZGU6IGNvbG9yO1xufVxuXG4udWstYmxlbmQtbHVtaW5vc2l0eSB7XG4gIG1peC1ibGVuZC1tb2RlOiBsdW1pbm9zaXR5O1xufVxuXG4vKiBUcmFuc2Zvcm1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstdHJhbnNmb3JtLWNlbnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vKiBUcmFuc2Zvcm0gT3JpZ2luXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRyYW5zZm9ybS1vcmlnaW4tdG9wLWxlZnQge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG59XG5cbi51ay10cmFuc2Zvcm0tb3JpZ2luLXRvcC1jZW50ZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbn1cblxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tdG9wLXJpZ2h0IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xufVxuXG4udWstdHJhbnNmb3JtLW9yaWdpbi1jZW50ZXItbGVmdCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xufVxuXG4udWstdHJhbnNmb3JtLW9yaWdpbi1jZW50ZXItcmlnaHQge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTtcbn1cblxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tYm90dG9tLWxlZnQge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG59XG5cbi51ay10cmFuc2Zvcm0tb3JpZ2luLWJvdHRvbS1jZW50ZXIge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTtcbn1cblxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tYm90dG9tLXJpZ2h0IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRmxleFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi51ay1mbGV4LWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4vKiBBbGlnbm1lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFsaWduIGl0ZW1zIGFsb25nIHRoZSBtYWluIGF4aXMgb2YgdGhlIGN1cnJlbnQgbGluZSBvZiB0aGUgZmxleCBjb250YWluZXJcbiAqIFJvdzogSG9yaXpvbnRhbFxuICovXG4udWstZmxleC1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4udWstZmxleC1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnVrLWZsZXgtcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4udWstZmxleC1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4udWstZmxleC1hcm91bmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstZmxleC1sZWZ0XFxAcyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC51ay1mbGV4LWNlbnRlclxcQHMge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC51ay1mbGV4LXJpZ2h0XFxAcyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuICAudWstZmxleC1iZXR3ZWVuXFxAcyB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC51ay1mbGV4LWFyb3VuZFxcQHMge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstZmxleC1sZWZ0XFxAbSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC51ay1mbGV4LWNlbnRlclxcQG0ge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC51ay1mbGV4LXJpZ2h0XFxAbSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuICAudWstZmxleC1iZXR3ZWVuXFxAbSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC51ay1mbGV4LWFyb3VuZFxcQG0ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG59XG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLWZsZXgtbGVmdFxcQGwge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAudWstZmxleC1jZW50ZXJcXEBsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAudWstZmxleC1yaWdodFxcQGwge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgLnVrLWZsZXgtYmV0d2VlblxcQGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAudWstZmxleC1hcm91bmRcXEBsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgfVxufVxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnVrLWZsZXgtbGVmdFxcQHhsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLnVrLWZsZXgtY2VudGVyXFxAeGwge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC51ay1mbGV4LXJpZ2h0XFxAeGwge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgLnVrLWZsZXgtYmV0d2VlblxcQHhsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgLnVrLWZsZXgtYXJvdW5kXFxAeGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG59XG4vKlxuICogQWxpZ24gaXRlbXMgaW4gdGhlIGNyb3NzIGF4aXMgb2YgdGhlIGN1cnJlbnQgbGluZSBvZiB0aGUgZmxleCBjb250YWluZXJcbiAqIFJvdzogVmVydGljYWxcbiAqL1xuLnVrLWZsZXgtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4udWstZmxleC10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLnVrLWZsZXgtbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnVrLWZsZXgtYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1mbGV4LXN0cmV0Y2hcXEBzIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICAudWstZmxleC10b3BcXEBzIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAudWstZmxleC1taWRkbGVcXEBzIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC51ay1mbGV4LWJvdHRvbVxcQHMge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWZsZXgtc3RyZXRjaFxcQG0ge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIC51ay1mbGV4LXRvcFxcQG0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC51ay1mbGV4LW1pZGRsZVxcQG0ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnVrLWZsZXgtYm90dG9tXFxAbSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG59XG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLWZsZXgtc3RyZXRjaFxcQGwge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIC51ay1mbGV4LXRvcFxcQGwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC51ay1mbGV4LW1pZGRsZVxcQGwge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnVrLWZsZXgtYm90dG9tXFxAbCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG59XG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudWstZmxleC1zdHJldGNoXFxAeGwge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIC51ay1mbGV4LXRvcFxcQHhsIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAudWstZmxleC1taWRkbGVcXEB4bCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAudWstZmxleC1ib3R0b21cXEB4bCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG59XG4vKiBEaXJlY3Rpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLWZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLnVrLWZsZXgtcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi51ay1mbGV4LWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi51ay1mbGV4LWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1mbGV4LXJvd1xcQHMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLnVrLWZsZXgtY29sdW1uXFxAcyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWZsZXgtcm93XFxAbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAudWstZmxleC1jb2x1bW5cXEBtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLWZsZXgtcm93XFxAbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAudWstZmxleC1jb2x1bW5cXEBsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudWstZmxleC1yb3dcXEB4bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAudWstZmxleC1jb2x1bW5cXEB4bCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLyogV3JhcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstZmxleC1ub3dyYXAge1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLnVrLWZsZXgtd3JhcCB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnVrLWZsZXgtd3JhcC1yZXZlcnNlIHtcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XG59XG5cbi8qXG4gKiBBbGlnbnMgaXRlbXMgd2l0aGluIHRoZSBmbGV4IGNvbnRhaW5lciB3aGVuIHRoZXJlIGlzIGV4dHJhIHNwYWNlIGluIHRoZSBjcm9zcy1heGlzXG4gKiBPbmx5IHdvcmtzIGlmIHRoZXJlIGlzIG1vcmUgdGhhbiBvbmUgbGluZSBvZiBmbGV4IGl0ZW1zXG4gKi9cbi51ay1mbGV4LXdyYXAtc3RyZXRjaCB7XG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG59XG5cbi51ay1mbGV4LXdyYXAtdG9wIHtcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLnVrLWZsZXgtd3JhcC1taWRkbGUge1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG59XG5cbi51ay1mbGV4LXdyYXAtYm90dG9tIHtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG59XG5cbi51ay1mbGV4LXdyYXAtYmV0d2VlbiB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi51ay1mbGV4LXdyYXAtYXJvdW5kIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4vKiBJdGVtIG9yZGVyaW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBEZWZhdWx0IGlzIDBcbiAqL1xuLnVrLWZsZXgtZmlyc3Qge1xuICBvcmRlcjogLTE7XG59XG5cbi51ay1mbGV4LWxhc3Qge1xuICBvcmRlcjogOTk7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnVrLWZsZXgtZmlyc3RcXEBzIHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLnVrLWZsZXgtbGFzdFxcQHMge1xuICAgIG9yZGVyOiA5OTtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWZsZXgtZmlyc3RcXEBtIHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLnVrLWZsZXgtbGFzdFxcQG0ge1xuICAgIG9yZGVyOiA5OTtcbiAgfVxufVxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51ay1mbGV4LWZpcnN0XFxAbCB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC51ay1mbGV4LWxhc3RcXEBsIHtcbiAgICBvcmRlcjogOTk7XG4gIH1cbn1cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC51ay1mbGV4LWZpcnN0XFxAeGwge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAudWstZmxleC1sYXN0XFxAeGwge1xuICAgIG9yZGVyOiA5OTtcbiAgfVxufVxuLyogSXRlbSBkaW1lbnNpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBJbml0aWFsOiAwIDEgYXV0b1xuICogQ29udGVudCBkaW1lbnNpb25zLCBidXQgc2hyaW5rc1xuICovXG4udWstZmxleC1pbml0aWFsIHtcbiAgZmxleDogaW5pdGlhbDtcbn1cblxuLypcbiAqIE5vIEZsZXg6IDAgMCBhdXRvXG4gKiBDb250ZW50IGRpbWVuc2lvbnNcbiAqL1xuLnVrLWZsZXgtbm9uZSB7XG4gIGZsZXg6IG5vbmU7XG59XG5cbi8qXG4gKiBSZWxhdGl2ZSBGbGV4OiAxIDEgYXV0b1xuICogU3BhY2UgaXMgYWxsb2NhdGVkIGNvbnNpZGVyaW5nIGNvbnRlbnRcbiAqL1xuLnVrLWZsZXgtYXV0byB7XG4gIGZsZXg6IGF1dG87XG59XG5cbi8qXG4gKiBBYnNvbHV0ZSBGbGV4OiAxIDEgMCVcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBzb2xlbHkgYmFzZWQgb24gZmxleFxuICovXG4udWstZmxleC0xIHtcbiAgZmxleDogMTtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstZmxleC1pbml0aWFsXFxAcyB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgfVxuICAudWstZmxleC1ub25lXFxAcyB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAudWstZmxleC0xXFxAcyB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnVrLWZsZXgtaW5pdGlhbFxcQG0ge1xuICAgIGZsZXg6IGluaXRpYWw7XG4gIH1cbiAgLnVrLWZsZXgtbm9uZVxcQG0ge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cbiAgLnVrLWZsZXgtMVxcQG0ge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstZmxleC1pbml0aWFsXFxAbCB7XG4gICAgZmxleDogaW5pdGlhbDtcbiAgfVxuICAudWstZmxleC1ub25lXFxAbCB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAudWstZmxleC0xXFxAbCB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnVrLWZsZXgtaW5pdGlhbFxcQHhsIHtcbiAgICBmbGV4OiBpbml0aWFsO1xuICB9XG4gIC51ay1mbGV4LW5vbmVcXEB4bCB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAudWstZmxleC0xXFxAeGwge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBNYXJnaW5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIERlZmF1bHRcbiAqL1xuLnVrLW1hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbiogKyAudWstbWFyZ2luIHtcbiAgbWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXRvcCB7XG4gIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tbGVmdCB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tcmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLyogWFNtYWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1tYXJnaW4teHNtYWxsIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4qICsgLnVrLW1hcmdpbi14c21hbGwge1xuICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi14c21hbGwtdG9wIHtcbiAgbWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4teHNtYWxsLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDVweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXhzbWFsbC1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDVweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXhzbWFsbC1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNtYWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1tYXJnaW4tc21hbGwge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4qICsgLnVrLW1hcmdpbi1zbWFsbCB7XG4gIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1zbWFsbC10b3Age1xuICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tc21hbGwtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXNtYWxsLWxlZnQge1xuICBtYXJnaW4tbGVmdDogMTBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXNtYWxsLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qIE1lZGl1bVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbWFyZ2luLW1lZGl1bSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbiogKyAudWstbWFyZ2luLW1lZGl1bSB7XG4gIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1tZWRpdW0tdG9wIHtcbiAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLW1lZGl1bS1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tbWVkaXVtLWxlZnQge1xuICBtYXJnaW4tbGVmdDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLW1lZGl1bS1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBMYXJnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbWFyZ2luLWxhcmdlIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuKiArIC51ay1tYXJnaW4tbGFyZ2Uge1xuICBtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tbGFyZ2UtdG9wIHtcbiAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLWxhcmdlLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1sYXJnZS1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1sYXJnZS1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLW1hcmdpbi1sYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgfVxuICAqICsgLnVrLW1hcmdpbi1sYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogNzBweCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4tbGFyZ2UtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLW1hcmdpbi1sYXJnZS1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDcwcHggIWltcG9ydGFudDtcbiAgfVxuICAudWstbWFyZ2luLWxhcmdlLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiA3MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLW1hcmdpbi1sYXJnZS1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFhMYXJnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstbWFyZ2luLXhsYXJnZSB7XG4gIG1hcmdpbi1ib3R0b206IDcwcHg7XG59XG5cbiogKyAudWstbWFyZ2luLXhsYXJnZSB7XG4gIG1hcmdpbi10b3A6IDcwcHggIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi14bGFyZ2UtdG9wIHtcbiAgbWFyZ2luLXRvcDogNzBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXhsYXJnZS1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiA3MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4teGxhcmdlLWxlZnQge1xuICBtYXJnaW4tbGVmdDogNzBweCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXhsYXJnZS1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogNzBweCAhaW1wb3J0YW50O1xufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLW1hcmdpbi14bGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDE0MHB4O1xuICB9XG4gICogKyAudWstbWFyZ2luLXhsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMTQwcHggIWltcG9ydGFudDtcbiAgfVxuICAudWstbWFyZ2luLXhsYXJnZS10b3Age1xuICAgIG1hcmdpbi10b3A6IDE0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLW1hcmdpbi14bGFyZ2UtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNDBweCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4teGxhcmdlLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAxNDBweCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4teGxhcmdlLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE0MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIEF1dG9cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLW1hcmdpbi1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tYXV0by10b3Age1xuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tYXV0by1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tYXV0by1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1hdXRvLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tYXV0by12ZXJ0aWNhbCB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1tYXJnaW4tYXV0b1xcQHMge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLW1hcmdpbi1hdXRvLWxlZnRcXEBzIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4tYXV0by1yaWdodFxcQHMge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstbWFyZ2luLWF1dG9cXEBtIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4tYXV0by1sZWZ0XFxAbSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudWstbWFyZ2luLWF1dG8tcmlnaHRcXEBtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC51ay1tYXJnaW4tYXV0b1xcQGwge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLW1hcmdpbi1hdXRvLWxlZnRcXEBsIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4tYXV0by1yaWdodFxcQGwge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudWstbWFyZ2luLWF1dG9cXEB4bCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudWstbWFyZ2luLWF1dG8tbGVmdFxcQHhsIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4tYXV0by1yaWdodFxcQHhsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLyogUmVtb3ZlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1tYXJnaW4tcmVtb3ZlIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tcmVtb3ZlLXRvcCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1yZW1vdmUtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLXJlbW92ZS1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1yZW1vdmUtcmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1yZW1vdmUtdmVydGljYWwge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1yZW1vdmUtYWRqYWNlbnQgKyAqLFxuLnVrLW1hcmdpbi1yZW1vdmUtZmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tcmVtb3ZlLWxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAudWstbWFyZ2luLXJlbW92ZS1sZWZ0XFxAcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWstbWFyZ2luLXJlbW92ZS1yaWdodFxcQHMge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWstbWFyZ2luLXJlbW92ZS1sZWZ0XFxAbSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAudWstbWFyZ2luLXJlbW92ZS1yaWdodFxcQG0ge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLW1hcmdpbi1yZW1vdmUtbGVmdFxcQGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnVrLW1hcmdpbi1yZW1vdmUtcmlnaHRcXEBsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnVrLW1hcmdpbi1yZW1vdmUtbGVmdFxcQHhsIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0XFxAeGwge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogUGFkZGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstcGFkZGluZyB7XG4gIHBhZGRpbmc6IDMwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstcGFkZGluZyB7XG4gICAgcGFkZGluZzogNDBweDtcbiAgfVxufVxuLyogU21hbGxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXBhZGRpbmctc21hbGwge1xuICBwYWRkaW5nOiAxNXB4O1xufVxuXG4vKiBMYXJnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udWstcGFkZGluZy1sYXJnZSB7XG4gIHBhZGRpbmc6IDQwcHg7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstcGFkZGluZy1sYXJnZSB7XG4gICAgcGFkZGluZzogNzBweDtcbiAgfVxufVxuLyogUmVtb3ZlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1wYWRkaW5nLXJlbW92ZSB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnVrLXBhZGRpbmctcmVtb3ZlLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1wYWRkaW5nLXJlbW92ZS1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4udWstcGFkZGluZy1yZW1vdmUtbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4udWstcGFkZGluZy1yZW1vdmUtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1wYWRkaW5nLXJlbW92ZS12ZXJ0aWNhbCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1wYWRkaW5nLXJlbW92ZS1ob3Jpem9udGFsIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFBvc2l0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbjpyb290IHtcbiAgLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0OiAwcHg7XG59XG5cbi8qIERpcmVjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIFByZXZlbnQgY29udGVudCBvdmVyZmxvdy5cbiAqL1xuW2NsYXNzKj11ay1wb3NpdGlvbi10b3BdLFxuW2NsYXNzKj11ay1wb3NpdGlvbi1ib3R0b21dLFxuW2NsYXNzKj11ay1wb3NpdGlvbi1sZWZ0XSxcbltjbGFzcyo9dWstcG9zaXRpb24tcmlnaHRdLFxuW2NsYXNzKj11ay1wb3NpdGlvbi1jZW50ZXJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAodmFyKC0tdWstcG9zaXRpb24tbWFyZ2luLW9mZnNldCkgKiAyKSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qXG4gKiBFZGdlc1xuICogRG9uJ3QgdXNlIGB3aWR0aDogMTAwJWAgYmVjYXVzZSBpdCdzIHdyb25nIGlmIHRoZSBwYXJlbnQgaGFzIHBhZGRpbmcuXG4gKi9cbi51ay1wb3NpdGlvbi10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4udWstcG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLXJpZ2h0IHtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKlxuICogQ29ybmVyc1xuICovXG4udWstcG9zaXRpb24tdG9wLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi10b3AtcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4udWstcG9zaXRpb24tYm90dG9tLWxlZnQge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1ib3R0b20tcmlnaHQge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKlxuICogQ2VudGVyXG4gKiAxLiBGaXggdGV4dCB3cmFwcGluZyBpZiBjb250ZW50IGlzIGxhcmdlciB0aGFuIDUwJSBvZiB0aGUgY29udGFpbmVyLlxuICogICAgVXNpbmcgYG1heC1jb250ZW50YCByZXF1aXJlcyBgbWF4LXdpZHRoYCBvZiAxMDAlIHdoaWNoIGlzIHNldCBnZW5lcmFsbHkuXG4gKi9cbi51ay1wb3NpdGlvbi1jZW50ZXIge1xuICB0b3A6IGNhbGMoNTAlIC0gdmFyKC0tdWstcG9zaXRpb24tbWFyZ2luLW9mZnNldCkpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIHZhcigtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQpKTtcbiAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteDogLTUwJTtcbiAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteTogLTUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXgpLCB2YXIoLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteSkpO1xuICAvKiAxICovXG4gIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLyogVmVydGljYWwgKi9cbltjbGFzcyo9dWstcG9zaXRpb24tY2VudGVyLWxlZnRdLFxuW2NsYXNzKj11ay1wb3NpdGlvbi1jZW50ZXItcmlnaHRdLFxuLnVrLXBvc2l0aW9uLWNlbnRlci12ZXJ0aWNhbCB7XG4gIHRvcDogY2FsYyg1MCUgLSB2YXIoLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0KSk7XG4gIC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXk6IC01MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIHZhcigtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS15KSk7XG59XG5cbi51ay1wb3NpdGlvbi1jZW50ZXItbGVmdCB7XG4gIGxlZnQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1jZW50ZXItcmlnaHQge1xuICByaWdodDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLWNlbnRlci12ZXJ0aWNhbCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4udWstcG9zaXRpb24tY2VudGVyLWxlZnQtb3V0IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLnVrLXBvc2l0aW9uLWNlbnRlci1yaWdodC1vdXQge1xuICBsZWZ0OiAxMDAlO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG59XG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1wb3NpdGlvbi10b3AtY2VudGVyLFxuLnVrLXBvc2l0aW9uLWJvdHRvbS1jZW50ZXIsXG4udWstcG9zaXRpb24tY2VudGVyLWhvcml6b250YWwge1xuICBsZWZ0OiBjYWxjKDUwJSAtIHZhcigtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQpKTtcbiAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteDogLTUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXgpLCAwKTtcbiAgLyogMSAqL1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG59XG5cbi51ay1wb3NpdGlvbi10b3AtY2VudGVyIHtcbiAgdG9wOiAwO1xufVxuXG4udWstcG9zaXRpb24tYm90dG9tLWNlbnRlciB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnVrLXBvc2l0aW9uLWNlbnRlci1ob3Jpem9udGFsIHtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG59XG5cbi8qXG4gKiBDb3ZlclxuICovXG4udWstcG9zaXRpb24tY292ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLyogTWFyZ2luXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1wb3NpdGlvbi1zbWFsbCB7XG4gIG1hcmdpbjogMTVweDtcbiAgLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0OiAxNXB4O1xufVxuXG4udWstcG9zaXRpb24tbWVkaXVtIHtcbiAgbWFyZ2luOiAzMHB4O1xuICAtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQ6IDMwcHg7XG59XG5cbi51ay1wb3NpdGlvbi1sYXJnZSB7XG4gIG1hcmdpbjogMzBweDtcbiAgLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0OiAzMHB4O1xufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnVrLXBvc2l0aW9uLWxhcmdlIHtcbiAgICBtYXJnaW46IDUwcHg7XG4gICAgLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0OiA1MHB4O1xuICB9XG59XG4vKiBTY2hlbWVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1wb3NpdGlvbi1yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xufVxuXG4udWstcG9zaXRpb24tYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbn1cblxuLnVrLXBvc2l0aW9uLWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi51ay1wb3NpdGlvbi1zdGlja3kge1xuICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XG59XG5cbi8qIExheWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1wb3NpdGlvbi16LWluZGV4IHtcbiAgei1pbmRleDogMTtcbn1cblxuLnVrLXBvc2l0aW9uLXotaW5kZXgtemVybyB7XG4gIHotaW5kZXg6IDA7XG59XG5cbi51ay1wb3NpdGlvbi16LWluZGV4LW5lZ2F0aXZlIHtcbiAgei1pbmRleDogLTE7XG59XG5cbi51ay1wb3NpdGlvbi16LWluZGV4LWhpZ2gge1xuICB6LWluZGV4OiA5OTA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUcmFuc2l0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFRyYW5zaXRpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBUaGUgdG9nZ2xlIGlzIHRyaWdnZXJlZCBvbiB0b3VjaCBkZXZpY2VzIGJ5IHR3byBtZXRob2RzOlxuICogMS4gVXNpbmcgYDpmb2N1c2AgYW5kIHRhYmluZGV4XG4gKiAyLiBVc2luZyBgOmhvdmVyYCBhbmQgYSBgdG91Y2hzdGFydGAgZXZlbnQgbGlzdGVuZXIgcmVnaXN0ZXJlZCBvbiB0aGUgZG9jdW1lbnRcbiAqICAgIChEb2Vzbid0IHdvcmsgb24gU3VyZmFjZSB0b3VjaCBkZXZpY2VzKVxuICovXG46d2hlcmUoLnVrLXRyYW5zaXRpb24tZmFkZSksXG46d2hlcmUoW2NsYXNzKj11ay10cmFuc2l0aW9uLXNjYWxlXSksXG46d2hlcmUoW2NsYXNzKj11ay10cmFuc2l0aW9uLXNsaWRlXSkge1xuICAtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS14OiAwO1xuICAtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS15OiAwO1xufVxuXG4udWstdHJhbnNpdGlvbi1mYWRlLFxuW2NsYXNzKj11ay10cmFuc2l0aW9uLXNjYWxlXSxcbltjbGFzcyo9dWstdHJhbnNpdGlvbi1zbGlkZV0ge1xuICAtLXVrLXRyYW5zbGF0ZS14OiAwO1xuICAtLXVrLXRyYW5zbGF0ZS15OiAwO1xuICAtLXVrLXNjYWxlLXg6IDE7XG4gIC0tdWstc2NhbGUteTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXgpLCB2YXIoLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteSkpIHRyYW5zbGF0ZSh2YXIoLS11ay10cmFuc2xhdGUteCksIHZhcigtLXVrLXRyYW5zbGF0ZS15KSkgc2NhbGUodmFyKC0tdWstc2NhbGUteCksIHZhcigtLXVrLXNjYWxlLXkpKTtcbiAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtLCBmaWx0ZXI7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qXG4gKiBGYWRlXG4gKi9cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciAudWstdHJhbnNpdGlvbi1mYWRlLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzIC51ay10cmFuc2l0aW9uLWZhZGUsXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMtd2l0aGluIC51ay10cmFuc2l0aW9uLWZhZGUsXG4udWstdHJhbnNpdGlvbi1hY3RpdmUudWstYWN0aXZlIC51ay10cmFuc2l0aW9uLWZhZGUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKlxuICogU2NhbGVcbiAqIDEuIE1ha2UgaW1hZ2UgcmVuZGVyaW5nIHRoZSBzYW1lIGR1cmluZyB0aGUgdHJhbnNpdGlvbiBhcyBiZWZvcmUgYW5kIGFmdGVyLiBQcmVmaXhlZCBiZWNhdXNlIG9mIFNhZmFyaS5cbiAqL1xuLyogMSAqL1xuW2NsYXNzKj11ay10cmFuc2l0aW9uLXNjYWxlXSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udWstdHJhbnNpdGlvbi1zY2FsZS11cCB7XG4gIC0tdWstc2NhbGUteDogMTtcbiAgLS11ay1zY2FsZS15OiAxO1xufVxuXG4udWstdHJhbnNpdGlvbi1zY2FsZS1kb3duIHtcbiAgLS11ay1zY2FsZS14OiAxLjAzO1xuICAtLXVrLXNjYWxlLXk6IDEuMDM7XG59XG5cbi8qIFNob3cgKi9cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciAudWstdHJhbnNpdGlvbi1zY2FsZS11cCxcbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpmb2N1cyAudWstdHJhbnNpdGlvbi1zY2FsZS11cCxcbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpmb2N1cy13aXRoaW4gLnVrLXRyYW5zaXRpb24tc2NhbGUtdXAsXG4udWstdHJhbnNpdGlvbi1hY3RpdmUudWstYWN0aXZlIC51ay10cmFuc2l0aW9uLXNjYWxlLXVwIHtcbiAgLS11ay1zY2FsZS14OiAxLjAzO1xuICAtLXVrLXNjYWxlLXk6IDEuMDM7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciAudWstdHJhbnNpdGlvbi1zY2FsZS1kb3duLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzIC51ay10cmFuc2l0aW9uLXNjYWxlLWRvd24sXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMtd2l0aGluIC51ay10cmFuc2l0aW9uLXNjYWxlLWRvd24sXG4udWstdHJhbnNpdGlvbi1hY3RpdmUudWstYWN0aXZlIC51ay10cmFuc2l0aW9uLXNjYWxlLWRvd24ge1xuICAtLXVrLXNjYWxlLXg6IDE7XG4gIC0tdWstc2NhbGUteTogMTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLypcbiAqIFNsaWRlXG4gKi9cbi51ay10cmFuc2l0aW9uLXNsaWRlLXRvcCB7XG4gIC0tdWstdHJhbnNsYXRlLXk6IC0xMDAlO1xufVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS1ib3R0b20ge1xuICAtLXVrLXRyYW5zbGF0ZS15OiAxMDAlO1xufVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS1sZWZ0IHtcbiAgLS11ay10cmFuc2xhdGUteDogLTEwMCU7XG59XG5cbi51ay10cmFuc2l0aW9uLXNsaWRlLXJpZ2h0IHtcbiAgLS11ay10cmFuc2xhdGUteDogMTAwJTtcbn1cblxuLnVrLXRyYW5zaXRpb24tc2xpZGUtdG9wLXNtYWxsIHtcbiAgLS11ay10cmFuc2xhdGUteTogY2FsYygtMSAqIDEwcHgpO1xufVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS1ib3R0b20tc21hbGwge1xuICAtLXVrLXRyYW5zbGF0ZS15OiAxMHB4O1xufVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS1sZWZ0LXNtYWxsIHtcbiAgLS11ay10cmFuc2xhdGUteDogY2FsYygtMSAqIDEwcHgpO1xufVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS1yaWdodC1zbWFsbCB7XG4gIC0tdWstdHJhbnNsYXRlLXg6IDEwcHg7XG59XG5cbi51ay10cmFuc2l0aW9uLXNsaWRlLXRvcC1tZWRpdW0ge1xuICAtLXVrLXRyYW5zbGF0ZS15OiBjYWxjKC0xICogNTBweCk7XG59XG5cbi51ay10cmFuc2l0aW9uLXNsaWRlLWJvdHRvbS1tZWRpdW0ge1xuICAtLXVrLXRyYW5zbGF0ZS15OiA1MHB4O1xufVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS1sZWZ0LW1lZGl1bSB7XG4gIC0tdWstdHJhbnNsYXRlLXg6IGNhbGMoLTEgKiA1MHB4KTtcbn1cblxuLnVrLXRyYW5zaXRpb24tc2xpZGUtcmlnaHQtbWVkaXVtIHtcbiAgLS11ay10cmFuc2xhdGUteDogNTBweDtcbn1cblxuLyogU2hvdyAqL1xuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmhvdmVyIFtjbGFzcyo9dWstdHJhbnNpdGlvbi1zbGlkZV0sXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMgW2NsYXNzKj11ay10cmFuc2l0aW9uLXNsaWRlXSxcbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpmb2N1cy13aXRoaW4gW2NsYXNzKj11ay10cmFuc2l0aW9uLXNsaWRlXSxcbi51ay10cmFuc2l0aW9uLWFjdGl2ZS51ay1hY3RpdmUgW2NsYXNzKj11ay10cmFuc2l0aW9uLXNsaWRlXSB7XG4gIC0tdWstdHJhbnNsYXRlLXg6IDA7XG4gIC0tdWstdHJhbnNsYXRlLXk6IDA7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIE9wYWNpdHkgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRyYW5zaXRpb24tb3BhcXVlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogRHVyYXRpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRyYW5zaXRpb24tc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuN3M7XG59XG5cbi8qIERpc2FibGUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnVrLXRyYW5zaXRpb24tZGlzYWJsZSxcbi51ay10cmFuc2l0aW9uLWRpc2FibGUgKiB7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFZpc2liaWxpdHlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEhpZGRlblxuICogYGhpZGRlbmAgYXR0cmlidXRlIGFsc28gc2V0IGhlcmUgdG8gbWFrZSBpdCBzdHJvbmdlclxuICovXG5baGlkZGVuXSxcbi51ay1oaWRkZW4sXG4udWstaGlkZGVuLWVtcHR5OmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC51ay1oaWRkZW5cXEBzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51ay1oaWRkZW5cXEBtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudWstaGlkZGVuXFxAbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAudWstaGlkZGVuXFxAeGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLypcbiAqIFZpc2libGVcbiAqL1xuLyogUGhvbmUgcG9ydHJhaXQgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAzMTlweCkge1xuICAudWstdmlzaWJsZVxcQHMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBzbWFsbGVyICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnVrLXZpc2libGVcXEBtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnVrLXZpc2libGVcXEBsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIERlc2t0b3AgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAxNTk5cHgpIHtcbiAgLnVrLXZpc2libGVcXEB4bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBWaXNpYmlsaXR5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51ay1pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLyogQmFzZWQgb24gdGhlIFN0YXRlIG9mIHRoZSBQYXJlbnQgRWxlbWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogTWluZCB0aGF0IGBkaXNwbGF5OiBub25lYCwgYHZpc2liaWxpdHk6IGhpZGRlbmAgYW5kIGBvcGFjaXR5OiAwYFxuICogcmVtb3ZlIHRoZSBlbGVtZW50IGZyb20gdGhlIGFjY2Vzc2liaWxpdHkgdHJlZSBhbmQgdGhhdFxuICogYGRpc3BsYXk6IG5vbmVgIGFuZCBgdmlzaWJpbGl0eTogaGlkZGVuYCBhcmUgbm90IGZvY3VzYWJsZS5cbiAqXG4gKiBUaGUgdGFyZ2V0IHN0YXlzIHZpc2libGUgaWYgYW55IGVsZW1lbnQgd2l0aGluIHJlY2VpdmVzIGZvY3VzIHRocm91Z2gga2V5Ym9hcmQuXG4gKi9cbi8qXG4gKiBSZW1vdmUgc3BhY2Ugd2hlbiBoaWRkZW4uXG4gKiAxLiBSZW1vdmUgZnJvbSBkb2N1bWVudCBmbG93LlxuICogMi4gSGlkZSBlbGVtZW50IGFuZCBzaHJpbmsgaXRzIGRpbWVuc2lvbi4gQ3VycmVudCBicm93c2VycyBhbmQgc2NyZWVuIHJlYWRlcnNcbiAqICAgIGtlZXAgdGhlIGVsZW1lbnQgaW4gdGhlIGFjY2Vzc2liaWxpdHkgdHJlZSBldmVuIHdpdGggemVybyBkaW1lbnNpb25zLlxuICogICAgVXNpbmcgYHRhYmluZGV4PVwiLTFcImAgd2lsbCBzaG93IHRoZSBlbGVtZW50IG9uIHRvdWNoIGRldmljZXMuXG4gKiAgICBOb3RlOiBgY2xpcC1wYXRoYCBkb2Vzbid0IHdvcmsgd2l0aCBgdGFiaW5kZXhgIG9uIHRvdWNoIGRldmljZXMuXG4gKi9cbi51ay1oaWRkZW4tdmlzdWFsbHk6bm90KDpmb2N1cyk6bm90KDphY3RpdmUpOm5vdCg6Zm9jdXMtd2l0aGluKSxcbi51ay12aXNpYmxlLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSAudWstaGlkZGVuLWhvdmVyOm5vdCg6Zm9jdXMtdmlzaWJsZSk6bm90KDpoYXMoOmZvY3VzLXZpc2libGUpKSxcbi51ay12aXNpYmxlLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSAudWstaGlkZGVuLWhvdmVyOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIC8qIDEgKi9cbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIC8qIDIgKi9cbiAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gKiBLZWVwIHNwYWNlIHdoZW4gaGlkZGVuLlxuICogSGlkZSBlbGVtZW50IHdpdGhvdXQgc2hyaW5raW5nIGl0cyBkaW1lbnNpb24uXG4gKiBOb3RlOiBgY2xpcC1wYXRoYCBkb2Vzbid0IHdvcmsgd2l0aCBob3ZlciBmb3IgZWxlbWVudHMgb3V0c2lkZSBvZiB0aGUgdG9nZ2xlIGJveC5cbiAqL1xuLnVrLXZpc2libGUtdG9nZ2xlOm5vdCg6aG92ZXIpOm5vdCg6Zm9jdXMpIC51ay1pbnZpc2libGUtaG92ZXI6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBCYXNlZCBvbiBIb3ZlciBDYXBhYmlsaXR5IG9mIHRoZSBQb2ludGluZyBEZXZpY2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEhvdmVyXG4gKi9cbi8qIEhpZGUgaWYgcHJpbWFyeSBwb2ludGluZyBkZXZpY2UgZG9lc24ndCBzdXBwb3J0IGhvdmVyLCBlLmcuIHRvdWNoIHNjcmVlbnMuICovXG5AbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gIC51ay1oaWRkZW4tdG91Y2gge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogSGlkZSBpZiBwcmltYXJ5IHBvaW50aW5nIGRldmljZSBzdXBwb3J0cyBob3ZlciwgZS5nLiBtaWNlLiAqL1xuQG1lZGlhIChob3Zlcikge1xuICAudWstaGlkZGVuLW5vdG91Y2gge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEludmVyc2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEltcGxlbWVudGVkIGNsYXNzIGRlcGVuZHMgb24gdGhlIGdlbmVyYWwgdGhlbWUgY29sb3JcbiAqIGB1ay1saWdodGAgaXMgZm9yIGxpZ2h0IGNvbG9ycyBvbiBkYXJrIGJhY2tncm91bmRzXG4gKiBgdWstZGFya2AgaXMgb3IgZGFyayBjb2xvcnMgb24gbGlnaHQgYmFja2dyb3VuZHNcbiAqL1xuLnVrLWxpZ2h0LCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvciksIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvciksIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHksIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pLCAudWstb3ZlcmxheS1wcmltYXJ5LCAudWstb2ZmY2FudmFzLWJhciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIC8qIFdlYmtpdCAqL1xuICAvKiBGaXJlZm94ICovXG4gIC8qIFdlYmtpdCAqL1xuICAvKiBGaXJlZm94ICovXG59XG4udWstbGlnaHQgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjEzJTIyJTIwaGVpZ2h0JTNEJTIyMTMlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxMyUyMDEzJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NyZWN0JTIwZmlsbCUzRCUyMnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSUyMiUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIweCUzRCUyMjAlMjIlMjB5JTNEJTIyNiUyMiUyMCUyRiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIycmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpJTIyJTIwd2lkdGglM0QlMjIxJTIyJTIwaGVpZ2h0JTNEJTIyMTMlMjIlMjB4JTNEJTIyNiUyMiUyMHklM0QlMjIwJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnVrLWxpZ2h0IC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW9wZW4gPiAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW9wZW4gPiAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstb3BlbiA+IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW9wZW4gPiAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstb3BlbiA+IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEzJTIwMTMlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIycmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpJTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnVrLWxpZ2h0IC51ay1hcnRpY2xlLW1ldGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWFydGljbGUtbWV0YSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1hcnRpY2xlLW1ldGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWFydGljbGUtbWV0YSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1hcnRpY2xlLW1ldGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1hcnRpY2xlLW1ldGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1hcnRpY2xlLW1ldGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWFydGljbGUtbWV0YSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYXJ0aWNsZS1tZXRhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1hcnRpY2xlLW1ldGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1hcnRpY2xlLW1ldGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1iYWRnZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYmFkZ2UsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYmFkZ2UsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJhZGdlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJhZGdlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYmFkZ2UsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1iYWRnZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYmFkZ2UsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJhZGdlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1iYWRnZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJhZGdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICM2NjYgIWltcG9ydGFudDtcbn1cbi51ay1saWdodCBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IGEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgYSwgLnVrLW92ZXJsYXktcHJpbWFyeSBhLCAudWstb2ZmY2FudmFzLWJhciBhLFxuLnVrLWxpZ2h0IC51ay1saW5rLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluayxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluayxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmssXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmssXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGluayxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGluayxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbmssXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1saW5rLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpbmsge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCBhOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGE6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGE6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgYTpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSBhOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciBhOmhvdmVyLFxuLnVrLWxpZ2h0IC51ay1saW5rOmhvdmVyLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluazpob3Zlcixcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluazpob3Zlcixcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbms6aG92ZXIsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbms6aG92ZXIsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGluazpob3Zlcixcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rOmhvdmVyLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGluazpob3Zlcixcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbms6aG92ZXIsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1saW5rOmhvdmVyLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpbms6aG92ZXIsXG4udWstbGlnaHQgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmssXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmssXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmssXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluayxcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rIHtcbiAgY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgOm5vdChwcmUpID4gY29kZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6bm90KHByZSkgPiBjb2RlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgOm5vdChwcmUpID4gY29kZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6bm90KHByZSkgPiBjb2RlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgOm5vdChwcmUpID4gY29kZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgOm5vdChwcmUpID4gY29kZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgOm5vdChwcmUpID4gY29kZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSA6bm90KHByZSkgPiBjb2RlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIDpub3QocHJlKSA+IGNvZGUsIC51ay1vdmVybGF5LXByaW1hcnkgOm5vdChwcmUpID4gY29kZSwgLnVrLW9mZmNhbnZhcy1iYXIgOm5vdChwcmUpID4gY29kZSxcbi51ay1saWdodCA6bm90KHByZSkgPiBrYmQsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIDpub3QocHJlKSA+IGtiZCxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6bm90KHByZSkgPiBrYmQsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIDpub3QocHJlKSA+IGtiZCxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6bm90KHByZSkgPiBrYmQsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSA6bm90KHByZSkgPiBrYmQsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSA6bm90KHByZSkgPiBrYmQsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IDpub3QocHJlKSA+IGtiZCxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgOm5vdChwcmUpID4ga2JkLFxuLnVrLW92ZXJsYXktcHJpbWFyeSA6bm90KHByZSkgPiBrYmQsXG4udWstb2ZmY2FudmFzLWJhciA6bm90KHByZSkgPiBrYmQsXG4udWstbGlnaHQgOm5vdChwcmUpID4gc2FtcCxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgOm5vdChwcmUpID4gc2FtcCxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6bm90KHByZSkgPiBzYW1wLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6bm90KHByZSkgPiBzYW1wLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIDpub3QocHJlKSA+IHNhbXAsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSA6bm90KHByZSkgPiBzYW1wLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgOm5vdChwcmUpID4gc2FtcCxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgOm5vdChwcmUpID4gc2FtcCxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgOm5vdChwcmUpID4gc2FtcCxcbi51ay1vdmVybGF5LXByaW1hcnkgOm5vdChwcmUpID4gc2FtcCxcbi51ay1vZmZjYW52YXMtYmFyIDpub3QocHJlKSA+IHNhbXAge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4udWstbGlnaHQgZW0sIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgZW0sIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBlbSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBlbSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGVtLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBlbSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgZW0sIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgZW0sIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgZW0sIC51ay1vdmVybGF5LXByaW1hcnkgZW0sIC51ay1vZmZjYW52YXMtYmFyIGVtIHtcbiAgY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgaDEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoMSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoMSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGgxLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBoMSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgaDEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgaDEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgaDEsIC51ay1vdmVybGF5LXByaW1hcnkgaDEsIC51ay1vZmZjYW52YXMtYmFyIGgxLCAudWstbGlnaHQgLnVrLWgxLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oMSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oMSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oMSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWgxLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1oMSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaDEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWgxLCAudWstb2ZmY2FudmFzLWJhciAudWstaDEsXG4udWstbGlnaHQgaDIsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGgyLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGgyLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoMixcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoMixcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IGgyLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgaDIsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IGgyLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBoMixcbi51ay1vdmVybGF5LXByaW1hcnkgaDIsXG4udWstb2ZmY2FudmFzLWJhciBoMiwgLnVrLWxpZ2h0IC51ay1oMiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWgyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWgyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaDIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oMiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaDIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWgyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1oMiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWgyLFxuLnVrLWxpZ2h0IGgzLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoMyxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoMyxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDMsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDMsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBoMyxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGgzLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSBoMyxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgaDMsXG4udWstb3ZlcmxheS1wcmltYXJ5IGgzLFxuLnVrLW9mZmNhbnZhcy1iYXIgaDMsIC51ay1saWdodCAudWstaDMsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWgzLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWgzLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oMywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oMywgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWgzLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaDMsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWgzLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oMywgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaDMsIC51ay1vZmZjYW52YXMtYmFyIC51ay1oMyxcbi51ay1saWdodCBoNCxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDQsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDQsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGg0LFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGg0LFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgaDQsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBoNCxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgaDQsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGg0LFxuLnVrLW92ZXJsYXktcHJpbWFyeSBoNCxcbi51ay1vZmZjYW52YXMtYmFyIGg0LCAudWstbGlnaHQgLnVrLWg0LCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oNCwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oNCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDQsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDQsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oNCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWg0LCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1oNCwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaDQsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWg0LCAudWstb2ZmY2FudmFzLWJhciAudWstaDQsXG4udWstbGlnaHQgaDUsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGg1LFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGg1LFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoNSxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoNSxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IGg1LFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgaDUsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IGg1LFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBoNSxcbi51ay1vdmVybGF5LXByaW1hcnkgaDUsXG4udWstb2ZmY2FudmFzLWJhciBoNSwgLnVrLWxpZ2h0IC51ay1oNSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaDUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWg1LCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWg1LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaDUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oNSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaDUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWg1LCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1oNSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWg1LFxuLnVrLWxpZ2h0IGg2LFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoNixcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBoNixcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDYsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaDYsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBoNixcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGg2LFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSBoNixcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgaDYsXG4udWstb3ZlcmxheS1wcmltYXJ5IGg2LFxuLnVrLW9mZmNhbnZhcy1iYXIgaDYsIC51ay1saWdodCAudWstaDYsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWg2LCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWg2LCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oNiwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oNiwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWg2LCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaDYsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWg2LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oNiwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaDYsIC51ay1vZmZjYW52YXMtYmFyIC51ay1oNixcbi51ay1saWdodCAudWstaGVhZGluZy1zbWFsbCxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctc21hbGwsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctc21hbGwsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLXNtYWxsLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLXNtYWxsLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmctc21hbGwsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy1zbWFsbCxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmctc21hbGwsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLXNtYWxsLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaGVhZGluZy1zbWFsbCxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1oZWFkaW5nLXNtYWxsLFxuLnVrLWxpZ2h0IC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbWVkaXVtLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbWVkaXVtLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmctbWVkaXVtLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy1tZWRpdW0sXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1oZWFkaW5nLW1lZGl1bSxcbi51ay1saWdodCAudWstaGVhZGluZy1sYXJnZSxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbGFyZ2UsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbGFyZ2UsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLWxhcmdlLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLWxhcmdlLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmctbGFyZ2UsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy1sYXJnZSxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmctbGFyZ2UsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLWxhcmdlLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaGVhZGluZy1sYXJnZSxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1oZWFkaW5nLWxhcmdlLFxuLnVrLWxpZ2h0IC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmcteGxhcmdlLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmcteGxhcmdlLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmcteGxhcmdlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy14bGFyZ2UsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1oZWFkaW5nLXhsYXJnZSxcbi51ay1saWdodCAudWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLTJ4bGFyZ2UsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLTJ4bGFyZ2UsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctMnhsYXJnZSxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oZWFkaW5nLTJ4bGFyZ2UsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhlYWRpbmctMnhsYXJnZSxcbi51ay1saWdodCAudWstaGVhZGluZy0zeGxhcmdlLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy0zeGxhcmdlLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLTN4bGFyZ2UsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLTN4bGFyZ2UsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctM3hsYXJnZSxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oZWFkaW5nLTN4bGFyZ2UsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy0zeGxhcmdlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy0zeGxhcmdlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy0zeGxhcmdlLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaGVhZGluZy0zeGxhcmdlLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhlYWRpbmctM3hsYXJnZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IGJsb2NrcXVvdGUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYmxvY2txdW90ZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGJsb2NrcXVvdGUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYmxvY2txdW90ZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGJsb2NrcXVvdGUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IGJsb2NrcXVvdGUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGJsb2NrcXVvdGUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgYmxvY2txdW90ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBibG9ja3F1b3RlLCAudWstb3ZlcmxheS1wcmltYXJ5IGJsb2NrcXVvdGUsIC51ay1vZmZjYW52YXMtYmFyIGJsb2NrcXVvdGUge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCBibG9ja3F1b3RlIGZvb3RlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBibG9ja3F1b3RlIGZvb3RlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGJsb2NrcXVvdGUgZm9vdGVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGJsb2NrcXVvdGUgZm9vdGVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYmxvY2txdW90ZSBmb290ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IGJsb2NrcXVvdGUgZm9vdGVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBibG9ja3F1b3RlIGZvb3RlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSBibG9ja3F1b3RlIGZvb3RlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBibG9ja3F1b3RlIGZvb3RlciwgLnVrLW92ZXJsYXktcHJpbWFyeSBibG9ja3F1b3RlIGZvb3RlciwgLnVrLW9mZmNhbnZhcy1iYXIgYmxvY2txdW90ZSBmb290ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IGhyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGhyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaHIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgaHIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBociwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgaHIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGhyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IGhyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGhyLCAudWstb3ZlcmxheS1wcmltYXJ5IGhyLCAudWstb2ZmY2FudmFzLWJhciBociwgLnVrLWxpZ2h0IC51ay1ociwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaHIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaHIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaHIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1ociwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaHIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWhyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1ociwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IDpmb2N1cy12aXNpYmxlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIDpmb2N1cy12aXNpYmxlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgOmZvY3VzLXZpc2libGUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgOmZvY3VzLXZpc2libGUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSA6Zm9jdXMtdmlzaWJsZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgOmZvY3VzLXZpc2libGUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIDpmb2N1cy12aXNpYmxlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IDpmb2N1cy12aXNpYmxlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIDpmb2N1cy12aXNpYmxlLCAudWstb3ZlcmxheS1wcmltYXJ5IDpmb2N1cy12aXNpYmxlLCAudWstb2ZmY2FudmFzLWJhciA6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+ICogPiAqLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+ICogPiAqLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYnJlYWRjcnVtYiA+ICogPiAqLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1icmVhZGNydW1iID4gKiA+ICosIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWstbGlnaHQgLnVrLWJyZWFkY3J1bWIgPiAqID4gOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1icmVhZGNydW1iID4gKiA+IDpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1icmVhZGNydW1iID4gKiA+IDpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1icmVhZGNydW1iID4gKiA+IDpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJyZWFkY3J1bWIgPiAqID4gOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1icmVhZGNydW1iID4gKiA+IDpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJyZWFkY3J1bWIgPiAqID4gOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJyZWFkY3J1bWIgPiA6bGFzdC1jaGlsZCA+ICosIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJyZWFkY3J1bWIgPiA6bGFzdC1jaGlsZCA+ICosIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+IDpsYXN0LWNoaWxkID4gKiwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJyZWFkY3J1bWIgPiA6bGFzdC1jaGlsZCA+ICosIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqLCAudWstb2ZmY2FudmFzLWJhciAudWstYnJlYWRjcnVtYiA+IDpsYXN0LWNoaWxkID4gKiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnJlYWRjcnVtYiA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1icmVhZGNydW1iID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnJlYWRjcnVtYiA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1icmVhZGNydW1iID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstYnV0dG9uLWRlZmF1bHQsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1kZWZhdWx0LCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1kZWZhdWx0LCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdCwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1kZWZhdWx0LCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLWRlZmF1bHQsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1kZWZhdWx0LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tZGVmYXVsdCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLWRlZmF1bHQsIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLWJ1dHRvbi1kZWZhdWx0OmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdDpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdDpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWRlZmF1bHQ6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWRlZmF1bHQ6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tZGVmYXVsdDpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1kZWZhdWx0OmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tZGVmYXVsdDpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLWRlZmF1bHQ6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJ1dHRvbi1kZWZhdWx0OmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstYnV0dG9uLWRlZmF1bHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdDphY3RpdmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdDphY3RpdmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tZGVmYXVsdDphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1kZWZhdWx0OmFjdGl2ZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLCAudWstb2ZmY2FudmFzLWJhciAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLFxuLnVrLWxpZ2h0IC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1kZWZhdWx0LnVrLWFjdGl2ZSxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1kZWZhdWx0LnVrLWFjdGl2ZSxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWRlZmF1bHQudWstYWN0aXZlLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1kZWZhdWx0LnVrLWFjdGl2ZSxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUsXG4udWstb2ZmY2FudmFzLWJhciAudWstYnV0dG9uLWRlZmF1bHQudWstYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLWJ1dHRvbi1wcmltYXJ5LCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tcHJpbWFyeSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tcHJpbWFyeSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXByaW1hcnksIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXByaW1hcnksIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tcHJpbWFyeSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1wcmltYXJ5LCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tcHJpbWFyeSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXByaW1hcnksIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJ1dHRvbi1wcmltYXJ5LCAudWstb2ZmY2FudmFzLWJhciAudWstYnV0dG9uLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzY2Njtcbn1cbi51ay1saWdodCAudWstYnV0dG9uLXByaW1hcnk6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tcHJpbWFyeTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tcHJpbWFyeTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXByaW1hcnk6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tcHJpbWFyeTpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLXByaW1hcnk6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDIuMjUsIDI0Mi4yNSwgMjQyLjI1KTtcbiAgY29sb3I6ICM2NjY7XG59XG4udWstbGlnaHQgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXByaW1hcnk6YWN0aXZlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXByaW1hcnk6YWN0aXZlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXByaW1hcnk6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tcHJpbWFyeTphY3RpdmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSxcbi51ay1saWdodCAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tcHJpbWFyeS51ay1hY3RpdmUsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tcHJpbWFyeS51ay1hY3RpdmUsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1wcmltYXJ5LnVrLWFjdGl2ZSxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tcHJpbWFyeS51ay1hY3RpdmUsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJ1dHRvbi1wcmltYXJ5LnVrLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMjkuNSwgMjI5LjUsIDIyOS41KTtcbiAgY29sb3I6ICM2NjY7XG59XG4udWstbGlnaHQgLnVrLWJ1dHRvbi1zZWNvbmRhcnksIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1zZWNvbmRhcnksIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXNlY29uZGFyeSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXNlY29uZGFyeSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tc2Vjb25kYXJ5LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXNlY29uZGFyeSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1zZWNvbmRhcnksIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1zZWNvbmRhcnksIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1zZWNvbmRhcnksIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJ1dHRvbi1zZWNvbmRhcnksIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICM2NjY7XG59XG4udWstbGlnaHQgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXNlY29uZGFyeTpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXNlY29uZGFyeTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tc2Vjb25kYXJ5OmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXNlY29uZGFyeTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0Mi4yNSwgMjQyLjI1LCAyNDIuMjUpO1xuICBjb2xvcjogIzY2Njtcbn1cbi51ay1saWdodCAudWstYnV0dG9uLXNlY29uZGFyeTphY3RpdmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6YWN0aXZlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6YWN0aXZlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXNlY29uZGFyeTphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLXNlY29uZGFyeTphY3RpdmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSxcbi51ay1saWdodCAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1zZWNvbmRhcnkudWstYWN0aXZlLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUsXG4udWstb2ZmY2FudmFzLWJhciAudWstYnV0dG9uLXNlY29uZGFyeS51ay1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjI5LjUsIDIyOS41LCAyMjkuNSk7XG4gIGNvbG9yOiAjNjY2O1xufVxuLnVrLWxpZ2h0IC51ay1idXR0b24tdGV4dCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXRleHQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXRleHQsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0LCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXRleHQsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tdGV4dCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXRleHQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi10ZXh0LCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1idXR0b24tdGV4dCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJ1dHRvbi10ZXh0IHtcbiAgY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLWJ1dHRvbi10ZXh0OjpiZWZvcmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0OjpiZWZvcmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXRleHQ6OmJlZm9yZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXRleHQ6OmJlZm9yZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tdGV4dDo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXRleHQ6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi10ZXh0OjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi10ZXh0OjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi10ZXh0OjpiZWZvcmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWJ1dHRvbi10ZXh0OjpiZWZvcmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tdGV4dDo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstYnV0dG9uLXRleHQ6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0OmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0OmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tdGV4dDpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tdGV4dDpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi10ZXh0OmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLXRleHQ6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi10ZXh0OmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tdGV4dDpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLXRleHQ6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tdGV4dDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1idXR0b24tdGV4dDpkaXNhYmxlZCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0OmRpc2FibGVkLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi10ZXh0OmRpc2FibGVkLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tdGV4dDpkaXNhYmxlZCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi10ZXh0OmRpc2FibGVkLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1idXR0b24tdGV4dDpkaXNhYmxlZCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJ1dHRvbi10ZXh0OmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstYnV0dG9uLWxpbmssIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1saW5rLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1saW5rLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tbGluaywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1idXR0b24tbGluaywgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1saW5rLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYnV0dG9uLWxpbmssIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWJ1dHRvbi1saW5rLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tbGluaywgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstYnV0dG9uLWxpbmssIC51ay1vZmZjYW52YXMtYmFyIC51ay1idXR0b24tbGluayB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1idXR0b24tbGluazpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWxpbms6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYnV0dG9uLWxpbms6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1saW5rOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWJ1dHRvbi1saW5rOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLWxpbms6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1idXR0b24tbGluazpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYnV0dG9uLWxpbms6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWJ1dHRvbi1saW5rOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1idXR0b24tbGluazpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWJ1dHRvbi1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodC51ay1jYXJkLWJhZGdlLCAudWstY2FyZC1iYWRnZS51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvciksIC51ay1jYXJkLWJhZGdlLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpLCAudWstY2FyZC1iYWRnZS51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvciksIC51ay1jYXJkLWJhZGdlLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpLCAudWstY2FyZC1iYWRnZS51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5LCAudWstY2FyZC1wcmltYXJ5ID4gLnVrLWNhcmQtYmFkZ2U6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pLCAudWstY2FyZC1iYWRnZS51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHksIC51ay1jYXJkLXNlY29uZGFyeSA+IC51ay1jYXJkLWJhZGdlOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSwgLnVrLWNhcmQtYmFkZ2UudWstb3ZlcmxheS1wcmltYXJ5LCAudWstY2FyZC1iYWRnZS51ay1vZmZjYW52YXMtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICM2NjY7XG59XG4udWstbGlnaHQgLnVrLWNsb3NlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jbG9zZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jbG9zZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2xvc2UsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2xvc2UsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1jbG9zZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWNsb3NlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1jbG9zZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2xvc2UsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWNsb3NlLCAudWstb2ZmY2FudmFzLWJhciAudWstY2xvc2Uge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1jbG9zZTpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2xvc2U6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2xvc2U6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNsb3NlOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNsb3NlOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstY2xvc2U6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1jbG9zZTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstY2xvc2U6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWNsb3NlOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1jbG9zZTpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWNsb3NlOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstY29sdW1uLWRpdmlkZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNvbHVtbi1kaXZpZGVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNvbHVtbi1kaXZpZGVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jb2x1bW4tZGl2aWRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jb2x1bW4tZGl2aWRlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWNvbHVtbi1kaXZpZGVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY29sdW1uLWRpdmlkZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWNvbHVtbi1kaXZpZGVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1jb2x1bW4tZGl2aWRlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstY29sdW1uLWRpdmlkZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1jb2x1bW4tZGl2aWRlciB7XG4gIGNvbHVtbi1ydWxlLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLWRpdmlkZXItaWNvbiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci1pY29uLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRpdmlkZXItaWNvbiwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci1pY29uLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRpdmlkZXItaWNvbiwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWRpdmlkZXItaWNvbiwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWRpdmlkZXItaWNvbiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstZGl2aWRlci1pY29uLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kaXZpZGVyLWljb24sIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWRpdmlkZXItaWNvbiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWRpdmlkZXItaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjAlMjIlMjBoZWlnaHQlM0QlMjIyMCUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDIwJTIwMjAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjJub25lJTIyJTIwc3Ryb2tlJTNEJTIycmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMiUyMiUyMGN4JTNEJTIyMTAlMjIlMjBjeSUzRCUyMjEwJTIyJTIwciUzRCUyMjclMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIik7XG59XG4udWstbGlnaHQgLnVrLWRpdmlkZXItaWNvbjo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLWljb246OmJlZm9yZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLWljb246OmJlZm9yZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci1pY29uOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci1pY29uOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1kaXZpZGVyLWljb246OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWRpdmlkZXItaWNvbjo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1kaXZpZGVyLWljb246OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZGl2aWRlci1pY29uOjpiZWZvcmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWRpdmlkZXItaWNvbjo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstZGl2aWRlci1pY29uOjpiZWZvcmUsXG4udWstbGlnaHQgLnVrLWRpdmlkZXItaWNvbjo6YWZ0ZXIsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLWljb246OmFmdGVyLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLWljb246OmFmdGVyLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci1pY29uOjphZnRlcixcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci1pY29uOjphZnRlcixcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1kaXZpZGVyLWljb246OmFmdGVyLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWRpdmlkZXItaWNvbjo6YWZ0ZXIsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1kaXZpZGVyLWljb246OmFmdGVyLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZGl2aWRlci1pY29uOjphZnRlcixcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLWRpdmlkZXItaWNvbjo6YWZ0ZXIsXG4udWstb2ZmY2FudmFzLWJhciAudWstZGl2aWRlci1pY29uOjphZnRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi51ay1saWdodCAudWstZGl2aWRlci1zbWFsbDo6YWZ0ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRpdmlkZXItc21hbGw6OmFmdGVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRpdmlkZXItc21hbGw6OmFmdGVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLXNtYWxsOjphZnRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLXNtYWxsOjphZnRlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWRpdmlkZXItc21hbGw6OmFmdGVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZGl2aWRlci1zbWFsbDo6YWZ0ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWRpdmlkZXItc21hbGw6OmFmdGVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kaXZpZGVyLXNtYWxsOjphZnRlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZGl2aWRlci1zbWFsbDo6YWZ0ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1kaXZpZGVyLXNtYWxsOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi51ay1saWdodCAudWstZGl2aWRlci12ZXJ0aWNhbCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZGl2aWRlci12ZXJ0aWNhbCwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLXZlcnRpY2FsLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kaXZpZGVyLXZlcnRpY2FsLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRpdmlkZXItdmVydGljYWwsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1kaXZpZGVyLXZlcnRpY2FsLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZGl2aWRlci12ZXJ0aWNhbCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstZGl2aWRlci12ZXJ0aWNhbCwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZGl2aWRlci12ZXJ0aWNhbCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZGl2aWRlci12ZXJ0aWNhbCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWRpdmlkZXItdmVydGljYWwge1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1kb3RuYXYgPiAqID4gKiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZG90bmF2ID4gKiA+ICosIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZG90bmF2ID4gKiA+ICosIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+ICogPiAqLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+ICogPiAqLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstZG90bmF2ID4gKiA+ICosIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kb3RuYXYgPiAqID4gKiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstZG90bmF2ID4gKiA+ICosIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWRvdG5hdiA+ICogPiAqLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1kb3RuYXYgPiAqID4gKiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWRvdG5hdiA+ICogPiAqIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLnVrLWxpZ2h0IC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+ICogPiA6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+ICogPiA6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZG90bmF2ID4gKiA+IDpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWRvdG5hdiA+ICogPiA6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstZG90bmF2ID4gKiA+IDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi51ay1saWdodCAudWstZG90bmF2ID4gKiA+IDphY3RpdmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+ICogPiA6YWN0aXZlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+ICogPiA6YWN0aXZlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kb3RuYXYgPiAqID4gOmFjdGl2ZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kb3RuYXYgPiAqID4gOmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWRvdG5hdiA+ICogPiA6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZG90bmF2ID4gKiA+IDphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWRvdG5hdiA+ICogPiA6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kb3RuYXYgPiAqID4gOmFjdGl2ZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZG90bmF2ID4gKiA+IDphY3RpdmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1kb3RuYXYgPiAqID4gOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi51ay1saWdodCAudWstZG90bmF2ID4gLnVrLWFjdGl2ZSA+ICosIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kb3RuYXYgPiAudWstYWN0aXZlID4gKiwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1kb3RuYXYgPiAudWstYWN0aXZlID4gKiwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZG90bmF2ID4gLnVrLWFjdGl2ZSA+ICosIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1kb3RuYXYgPiAudWstYWN0aXZlID4gKiwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZG90bmF2ID4gLnVrLWFjdGl2ZSA+ICosIC51ay1vZmZjYW52YXMtYmFyIC51ay1kb3RuYXYgPiAudWstYWN0aXZlID4gKiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi51ay1saWdodCAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjaywgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstb2ZmY2FudmFzLWJhciAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNDIuMjUsIDI0Mi4yNSwgMjQyLjI1LCAwLjEpO1xufVxuLnVrLWxpZ2h0IC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjaywgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjaywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjaywgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC51ay1vZmZjYW52YXMtYmFyIC51ay1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssXG4udWstbGlnaHQgLnVrLXJhbmdlOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6YWN0aXZlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6YWN0aXZlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhbmdlOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFuZ2U6YWN0aXZlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayxcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLXJhbmdlOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssXG4udWstb2ZmY2FudmFzLWJhciAudWstcmFuZ2U6YWN0aXZlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQyLjI1LCAyNDIuMjUsIDI0Mi4yNSwgMC4xNSk7XG59XG4udWstbGlnaHQgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRyYWNrLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTo6LW1vei1yYW5nZS10cmFjaywgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTo6LW1vei1yYW5nZS10cmFjaywgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2ssIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2ssIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTo6LW1vei1yYW5nZS10cmFjaywgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRyYWNrLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTo6LW1vei1yYW5nZS10cmFjaywgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2ssIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRyYWNrLCAudWstb2ZmY2FudmFzLWJhciAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0Mi4yNSwgMjQyLjI1LCAyNDIuMjUsIDAuMSk7XG59XG4udWstbGlnaHQgLnVrLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRyYWNrLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10cmFjaywgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10cmFjaywgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2ssIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2ssIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10cmFjaywgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRyYWNrLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10cmFjaywgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2ssIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRyYWNrLCAudWstb2ZmY2FudmFzLWJhciAudWstcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0Mi4yNSwgMjQyLjI1LCAyNDIuMjUsIDAuMTUpO1xufVxuLnVrLWxpZ2h0IC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBiYWNrZ3JvdW5kOiByZ2IoMTI3LjUsIDEyNy41LCAxMjcuNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIyOS41LCAyMjkuNSwgMjI5LjUpO1xufVxuLnVrLWxpZ2h0IC51ay1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRodW1iLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRodW1iLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRodW1iLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYmFja2dyb3VuZDogcmdiKDEyNy41LCAxMjcuNSwgMTI3LjUpO1xuICBib3JkZXItY29sb3I6IHJnYigyMjkuNSwgMjI5LjUsIDIyOS41KTtcbn1cbi51ay1saWdodCAudWstaW5wdXQsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0LCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0LCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dCwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWlucHV0LCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaW5wdXQsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWlucHV0LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pbnB1dCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaW5wdXQsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pbnB1dCxcbi51ay1saWdodCAudWstc2VsZWN0LFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VsZWN0LFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWxlY3QsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWxlY3QsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlbGVjdCxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zZWxlY3QsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VsZWN0LFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VsZWN0LFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VsZWN0LFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc2VsZWN0LFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlbGVjdCxcbi51ay1saWdodCAudWstdGV4dGFyZWEsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0YXJlYSxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dGFyZWEsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0YXJlYSxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dGFyZWEsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGV4dGFyZWEsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dGFyZWEsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10ZXh0YXJlYSxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRleHRhcmVhLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGV4dGFyZWEsXG4udWstb2ZmY2FudmFzLWJhciAudWstdGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1pbnB1dDpmb2N1cywgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaW5wdXQ6Zm9jdXMsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaW5wdXQ6Zm9jdXMsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0OmZvY3VzLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0OmZvY3VzLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pbnB1dDpmb2N1cywgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWlucHV0OmZvY3VzLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pbnB1dDpmb2N1cywgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWlucHV0OmZvY3VzLFxuLnVrLWxpZ2h0IC51ay1zZWxlY3Q6Zm9jdXMsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWxlY3Q6Zm9jdXMsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlbGVjdDpmb2N1cyxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlbGVjdDpmb2N1cyxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VsZWN0OmZvY3VzLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlbGVjdDpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWxlY3Q6Zm9jdXMsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWxlY3Q6Zm9jdXMsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWxlY3Q6Zm9jdXMsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWxlY3Q6Zm9jdXMsXG4udWstb2ZmY2FudmFzLWJhciAudWstc2VsZWN0OmZvY3VzLFxuLnVrLWxpZ2h0IC51ay10ZXh0YXJlYTpmb2N1cyxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHRhcmVhOmZvY3VzLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0YXJlYTpmb2N1cyxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHRhcmVhOmZvY3VzLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0YXJlYTpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay10ZXh0YXJlYTpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10ZXh0YXJlYTpmb2N1cyxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRleHRhcmVhOmZvY3VzLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dGFyZWE6Zm9jdXMsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay10ZXh0YXJlYTpmb2N1cyxcbi51ay1vZmZjYW52YXMtYmFyIC51ay10ZXh0YXJlYTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0OjpwbGFjZWhvbGRlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0OjpwbGFjZWhvbGRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWlucHV0OjpwbGFjZWhvbGRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaW5wdXQ6OnBsYWNlaG9sZGVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHRhcmVhOjpwbGFjZWhvbGRlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHRhcmVhOjpwbGFjZWhvbGRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRleHRhcmVhOjpwbGFjZWhvbGRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAudWstb2ZmY2FudmFzLWJhciAudWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDI0JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIycmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwOSUyMDYlMjAxNSUyMDYlMjIlMjAlMkYlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTMlMjA5JTIwOCUyMDE1JTIwOCUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiKTtcbn1cbi51ay1saWdodCAudWstaW5wdXRbbGlzdF06aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0W2xpc3RdOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWlucHV0W2xpc3RdOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dFtsaXN0XTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dFtsaXN0XTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWlucHV0W2xpc3RdOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaW5wdXRbbGlzdF06aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWlucHV0W2xpc3RdOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pbnB1dFtsaXN0XTpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaW5wdXRbbGlzdF06aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pbnB1dFtsaXN0XTpob3Zlcixcbi51ay1saWdodCAudWstaW5wdXRbbGlzdF06Zm9jdXMsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dFtsaXN0XTpmb2N1cyxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaW5wdXRbbGlzdF06Zm9jdXMsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pbnB1dFtsaXN0XTpmb2N1cyxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaW5wdXRbbGlzdF06Zm9jdXMsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaW5wdXRbbGlzdF06Zm9jdXMsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaW5wdXRbbGlzdF06Zm9jdXMsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1pbnB1dFtsaXN0XTpmb2N1cyxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWlucHV0W2xpc3RdOmZvY3VzLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaW5wdXRbbGlzdF06Zm9jdXMsXG4udWstb2ZmY2FudmFzLWJhciAudWstaW5wdXRbbGlzdF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyNCUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTIlMjA4JTIwNiUyMDE2JTIwNiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiKTtcbn1cbi51ay1saWdodCAudWstcmFkaW8sIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYWRpbywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYWRpbywgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXJhZGlvLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcmFkaW8sIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXJhZGlvLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYWRpbywgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstcmFkaW8sIC51ay1vZmZjYW52YXMtYmFyIC51ay1yYWRpbyxcbi51ay1saWdodCAudWstY2hlY2tib3gsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveCxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3gsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveCxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3gsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3gsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3gsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1jaGVja2JveCxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWNoZWNrYm94LFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstY2hlY2tib3gsXG4udWstb2ZmY2FudmFzLWJhciAudWstY2hlY2tib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1yYWRpbzpmb2N1cywgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFkaW86Zm9jdXMsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFkaW86Zm9jdXMsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmZvY3VzLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmZvY3VzLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstcmFkaW86Zm9jdXMsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYWRpbzpmb2N1cywgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstcmFkaW86Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhZGlvOmZvY3VzLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1yYWRpbzpmb2N1cywgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXJhZGlvOmZvY3VzLFxuLnVrLWxpZ2h0IC51ay1jaGVja2JveDpmb2N1cyxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmZvY3VzLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDpmb2N1cyxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmZvY3VzLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1jaGVja2JveDpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1jaGVja2JveDpmb2N1cyxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWNoZWNrYm94OmZvY3VzLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6Zm9jdXMsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1jaGVja2JveDpmb2N1cyxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1jaGVja2JveDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1yYWRpbzpjaGVja2VkLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYWRpbzpjaGVja2VkLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmNoZWNrZWQsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmNoZWNrZWQsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFkaW86Y2hlY2tlZCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXJhZGlvOmNoZWNrZWQsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYWRpbzpjaGVja2VkLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1yYWRpbzpjaGVja2VkLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYWRpbzpjaGVja2VkLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1yYWRpbzpjaGVja2VkLCAudWstb2ZmY2FudmFzLWJhciAudWstcmFkaW86Y2hlY2tlZCxcbi51ay1saWdodCAudWstY2hlY2tib3g6Y2hlY2tlZCxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmNoZWNrZWQsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmNoZWNrZWQsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDpjaGVja2VkLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDpjaGVja2VkLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWNoZWNrYm94OmNoZWNrZWQsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6Y2hlY2tlZCxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWNoZWNrYm94OmNoZWNrZWQsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1jaGVja2JveDpjaGVja2VkLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstY2hlY2tib3g6Y2hlY2tlZCxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1jaGVja2JveDpjaGVja2VkLFxuLnVrLWxpZ2h0IC51ay1jaGVja2JveDppbmRldGVybWluYXRlLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1jaGVja2JveDppbmRldGVybWluYXRlLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1jaGVja2JveDppbmRldGVybWluYXRlLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFkaW86Y2hlY2tlZDpmb2N1cywgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFkaW86Y2hlY2tlZDpmb2N1cywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYWRpbzpjaGVja2VkOmZvY3VzLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstcmFkaW86Y2hlY2tlZDpmb2N1cywgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsIC51ay1vZmZjYW52YXMtYmFyIC51ay1yYWRpbzpjaGVja2VkOmZvY3VzLFxuLnVrLWxpZ2h0IC51ay1jaGVja2JveDpjaGVja2VkOmZvY3VzLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmNoZWNrZWQ6Zm9jdXMsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmNoZWNrZWQ6Zm9jdXMsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1jaGVja2JveDpjaGVja2VkOmZvY3VzLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWNoZWNrYm94OmNoZWNrZWQ6Zm9jdXMsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1jaGVja2JveDpjaGVja2VkOmZvY3VzLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWNoZWNrYm94OmNoZWNrZWQ6Zm9jdXMsXG4udWstbGlnaHQgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGU6Zm9jdXMsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZTpmb2N1cyxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZTpmb2N1cyxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGU6Zm9jdXMsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZTpmb2N1cyxcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGU6Zm9jdXMsXG4udWstb2ZmY2FudmFzLWJhciAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuLnVrLWxpZ2h0IC51ay1yYWRpbzpjaGVja2VkLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1yYWRpbzpjaGVja2VkLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmNoZWNrZWQsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXJhZGlvOmNoZWNrZWQsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcmFkaW86Y2hlY2tlZCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXJhZGlvOmNoZWNrZWQsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYWRpbzpjaGVja2VkLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1yYWRpbzpjaGVja2VkLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1yYWRpbzpjaGVja2VkLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1yYWRpbzpjaGVja2VkLCAudWstb2ZmY2FudmFzLWJhciAudWstcmFkaW86Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTYlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE2JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIlMjM2NjYlMjIlMjBjeCUzRCUyMjglMjIlMjBjeSUzRCUyMjglMjIlMjByJTNEJTIyMiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi51ay1saWdodCAudWstY2hlY2tib3g6Y2hlY2tlZCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6Y2hlY2tlZCwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDpjaGVja2VkLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDpjaGVja2VkLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmNoZWNrZWQsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1jaGVja2JveDpjaGVja2VkLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6Y2hlY2tlZCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3g6Y2hlY2tlZCwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6Y2hlY2tlZCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstY2hlY2tib3g6Y2hlY2tlZCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWNoZWNrYm94OmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE0JTIyJTIwaGVpZ2h0JTNEJTIyMTElMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNCUyMDExJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiUyMzY2NiUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMSUyMDUlMjA3LjUlMjAyJTIwNSUyMDElMjA1LjUlMjA1JTIwMTAlMjAxMyUyMDEuNSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiKTtcbn1cbi51ay1saWdodCAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDppbmRldGVybWluYXRlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1jaGVja2JveDppbmRldGVybWluYXRlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1jaGVja2JveDppbmRldGVybWluYXRlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE2JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NyZWN0JTIwZmlsbCUzRCUyMiUyMzY2NiUyMiUyMHglM0QlMjIzJTIyJTIweSUzRCUyMjglMjIlMjB3aWR0aCUzRCUyMjEwJTIyJTIwaGVpZ2h0JTNEJTIyMSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi51ay1saWdodCAudWstZm9ybS1sYWJlbCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZm9ybS1sYWJlbCwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1mb3JtLWxhYmVsLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1mb3JtLWxhYmVsLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWZvcm0tbGFiZWwsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1mb3JtLWxhYmVsLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZm9ybS1sYWJlbCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstZm9ybS1sYWJlbCwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZm9ybS1sYWJlbCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZm9ybS1sYWJlbCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWZvcm0tbGFiZWwge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstZm9ybS1pY29uLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1mb3JtLWljb24sIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZm9ybS1pY29uLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1mb3JtLWljb24sIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZm9ybS1pY29uLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstZm9ybS1pY29uLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZm9ybS1pY29uLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1mb3JtLWljb24sIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWZvcm0taWNvbiwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZm9ybS1pY29uLCAudWstb2ZmY2FudmFzLWJhciAudWstZm9ybS1pY29uIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstZm9ybS1pY29uOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1mb3JtLWljb246aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZm9ybS1pY29uOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1mb3JtLWljb246aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZm9ybS1pY29uOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstZm9ybS1pY29uOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZm9ybS1pY29uOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1mb3JtLWljb246aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWZvcm0taWNvbjpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZm9ybS1pY29uOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstZm9ybS1pY29uOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstZ3JpZC1kaXZpZGVyID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi51ay1saWdodCAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLWhlYWRpbmctZGl2aWRlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1kaXZpZGVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctZGl2aWRlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1kaXZpZGVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctZGl2aWRlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWhlYWRpbmctZGl2aWRlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWhlYWRpbmctZGl2aWRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy1kaXZpZGVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLWRpdmlkZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWhlYWRpbmctZGl2aWRlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhlYWRpbmctZGl2aWRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi51ay1saWdodCAudWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLWJ1bGxldDo6YmVmb3JlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1oZWFkaW5nLWJ1bGxldDo6YmVmb3JlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctYnVsbGV0OjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1oZWFkaW5nLWJ1bGxldDo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaGVhZGluZy1idWxsZXQ6OmJlZm9yZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhlYWRpbmctYnVsbGV0OjpiZWZvcmUge1xuICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1oZWFkaW5nLWxpbmUgPiA6OmJlZm9yZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1saW5lID4gOjpiZWZvcmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1saW5lID4gOjpiZWZvcmUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy1saW5lID4gOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLWxpbmUgPiA6OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy1saW5lID4gOjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1oZWFkaW5nLWxpbmUgPiA6OmJlZm9yZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLFxuLnVrLWxpZ2h0IC51ay1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1saW5lID4gOjphZnRlcixcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaGVhZGluZy1saW5lID4gOjphZnRlcixcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy1saW5lID4gOjphZnRlcixcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaGVhZGluZy1saW5lID4gOjphZnRlcixcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLWljb24tbGluaywgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1saW5rLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tbGluaywgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1saW5rLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tbGluaywgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWljb24tbGluaywgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tbGluaywgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1saW5rLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29uLWxpbmssIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWljb24tbGluaywgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWljb24tbGluayB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWstbGlnaHQgLnVrLWljb24tbGluazpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1saW5rOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tbGluazpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1saW5rOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tbGluazpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWljb24tbGluazpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tbGluazpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1saW5rOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29uLWxpbms6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWljb24tbGluazpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWljb24tbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLWljb24tbGluazphY3RpdmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tbGluazphY3RpdmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1saW5rOmFjdGl2ZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1saW5rOmFjdGl2ZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29uLWxpbms6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1saW5rOmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tbGluazphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWljb24tbGluazphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tbGluazphY3RpdmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWljb24tbGluazphY3RpdmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pY29uLWxpbms6YWN0aXZlLFxuLnVrLWxpZ2h0IC51ay1hY3RpdmUgPiAudWstaWNvbi1saW5rLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYWN0aXZlID4gLnVrLWljb24tbGluayxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYWN0aXZlID4gLnVrLWljb24tbGluayxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWFjdGl2ZSA+IC51ay1pY29uLWxpbmssXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWFjdGl2ZSA+IC51ay1pY29uLWxpbmssXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstYWN0aXZlID4gLnVrLWljb24tbGluayxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1hY3RpdmUgPiAudWstaWNvbi1saW5rLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstYWN0aXZlID4gLnVrLWljb24tbGluayxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWFjdGl2ZSA+IC51ay1pY29uLWxpbmssXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1hY3RpdmUgPiAudWstaWNvbi1saW5rLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWFjdGl2ZSA+IC51ay1pY29uLWxpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1pY29uLWJ1dHRvbiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1idXR0b24sIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1idXR0b24sIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tYnV0dG9uLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tYnV0dG9uLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1idXR0b24sIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29uLWJ1dHRvbiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1idXR0b24sIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tYnV0dG9uLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pY29uLWJ1dHRvbiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWljb24tYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1pY29uLWJ1dHRvbjpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1idXR0b246aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1idXR0b246aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tYnV0dG9uOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb24tYnV0dG9uOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1idXR0b246aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29uLWJ1dHRvbjpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1idXR0b246aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tYnV0dG9uOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pY29uLWJ1dHRvbjpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWljb24tYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstaWNvbi1idXR0b246YWN0aXZlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29uLWJ1dHRvbjphY3RpdmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1idXR0b246YWN0aXZlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29uLWJ1dHRvbjphY3RpdmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstaWNvbi1idXR0b246YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstaWNvbi1idXR0b246YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaWNvbi1idXR0b246YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1pY29uLWJ1dHRvbjphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWljb24tYnV0dG9uOmFjdGl2ZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstaWNvbi1idXR0b246YWN0aXZlLCAudWstb2ZmY2FudmFzLWJhciAudWstaWNvbi1idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1pY29ubmF2ID4gKiA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb25uYXYgPiAqID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29ubmF2ID4gKiA+IGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb25uYXYgPiAqID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29ubmF2ID4gKiA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1pY29ubmF2ID4gKiA+IGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29ubmF2ID4gKiA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWljb25uYXYgPiAqID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaWNvbm5hdiA+ICogPiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pY29ubmF2ID4gKiA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pY29ubmF2ID4gKiA+IGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb25uYXYgPiAqID4gYTpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb25uYXYgPiAqID4gYTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWljb25uYXYgPiAqID4gYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaWNvbm5hdiA+ICogPiBhOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb25uYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWljb25uYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWljb25uYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstaWNvbm5hdiA+IC51ay1hY3RpdmUgPiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1sYWJlbCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGFiZWwsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGFiZWwsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxhYmVsLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxhYmVsLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGFiZWwsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1sYWJlbCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGFiZWwsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxhYmVsLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1sYWJlbCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICM2NjY7XG59XG4udWstbGlnaHQgYS51ay1saW5rLW11dGVkLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEudWstbGluay1tdXRlZCwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEudWstbGluay1tdXRlZCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstbXV0ZWQsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstbXV0ZWQsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IGEudWstbGluay1tdXRlZCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgYS51ay1saW5rLW11dGVkLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IGEudWstbGluay1tdXRlZCwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBhLnVrLWxpbmstbXV0ZWQsIC51ay1vdmVybGF5LXByaW1hcnkgYS51ay1saW5rLW11dGVkLCAudWstb2ZmY2FudmFzLWJhciBhLnVrLWxpbmstbXV0ZWQsXG4udWstbGlnaHQgLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay1tdXRlZCBhLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay1tdXRlZCBhLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLW11dGVkIGEsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGluay1tdXRlZCBhLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1saW5rLW11dGVkIGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IGEudWstbGluay1tdXRlZDpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstbXV0ZWQ6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstbXV0ZWQ6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYS51ay1saW5rLW11dGVkOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYS51ay1saW5rLW11dGVkOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBhLnVrLWxpbmstbXV0ZWQ6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIGEudWstbGluay1tdXRlZDpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSBhLnVrLWxpbmstbXV0ZWQ6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgYS51ay1saW5rLW11dGVkOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IGEudWstbGluay1tdXRlZDpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgYS51ay1saW5rLW11dGVkOmhvdmVyLFxuLnVrLWxpZ2h0IC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstbXV0ZWQgYTpob3Zlcixcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstbXV0ZWQgYTpob3Zlcixcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay1tdXRlZCBhOmhvdmVyLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstbXV0ZWQgYTpob3Zlcixcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4udWstb2ZmY2FudmFzLWJhciAudWstbGluay1tdXRlZCBhOmhvdmVyLFxuLnVrLWxpZ2h0IC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLW11dGVkLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLW11dGVkLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLW11dGVkLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstbXV0ZWQsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgYS51ay1saW5rLXRleHQ6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYS51ay1saW5rLXRleHQ6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstdGV4dDpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstdGV4dDpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEudWstbGluay10ZXh0OmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSBhLnVrLWxpbmstdGV4dDpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgYS51ay1saW5rLXRleHQ6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgYS51ay1saW5rLXRleHQ6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgYS51ay1saW5rLXRleHQ6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgYS51ay1saW5rLXRleHQ6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIGEudWstbGluay10ZXh0OmhvdmVyLFxuLnVrLWxpZ2h0IC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdGV4dCBhOmhvdmVyLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdGV4dCBhOmhvdmVyLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstdGV4dCBhOmhvdmVyLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGluay10ZXh0IGE6aG92ZXIsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1vZmZjYW52YXMtYmFyIC51ay1saW5rLXRleHQgYTpob3Zlcixcbi51ay1saWdodCAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstdGV4dCxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLXRleHQsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLXRleHQsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay10ZXh0LFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay10ZXh0LFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLXRleHQsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstdGV4dCxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLXRleHQsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay10ZXh0LFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstdGV4dCxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCBhLnVrLWxpbmstaGVhZGluZzpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSBhLnVrLWxpbmstaGVhZGluZzpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEudWstbGluay1oZWFkaW5nOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIGEudWstbGluay1oZWFkaW5nOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgYS51ay1saW5rLWhlYWRpbmc6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IGEudWstbGluay1oZWFkaW5nOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBhLnVrLWxpbmstaGVhZGluZzpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSBhLnVrLWxpbmstaGVhZGluZzpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSBhLnVrLWxpbmstaGVhZGluZzpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSBhLnVrLWxpbmstaGVhZGluZzpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgYS51ay1saW5rLWhlYWRpbmc6aG92ZXIsXG4udWstbGlnaHQgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay1oZWFkaW5nIGE6aG92ZXIsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay1oZWFkaW5nIGE6aG92ZXIsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGluay1oZWFkaW5nIGE6aG92ZXIsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLWhlYWRpbmcgYTpob3Zlcixcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLWxpZ2h0IC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1oZWFkaW5nLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstaGVhZGluZyxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstaGVhZGluZyxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLWhlYWRpbmcsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLWhlYWRpbmcsXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstaGVhZGluZyxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1oZWFkaW5nLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstaGVhZGluZyxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLWhlYWRpbmcsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1oZWFkaW5nLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLWhlYWRpbmcge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LW11dGVkID4gOjptYXJrZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LW11dGVkID4gOjptYXJrZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1saXN0LW11dGVkID4gOjptYXJrZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpc3QtbXV0ZWQgPiA6Om1hcmtlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyLCAudWstb2ZmY2FudmFzLWJhciAudWstbGlzdC1tdXRlZCA+IDo6bWFya2VyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xufVxuLnVrLWxpZ2h0IC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtZW1waGFzaXMgPiA6Om1hcmtlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtZW1waGFzaXMgPiA6Om1hcmtlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWxpc3QtZW1waGFzaXMgPiA6Om1hcmtlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGlzdC1lbXBoYXNpcyA+IDo6bWFya2VyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1saXN0LWVtcGhhc2lzID4gOjptYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuLnVrLWxpZ2h0IC51ay1saXN0LXByaW1hcnkgPiA6Om1hcmtlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1wcmltYXJ5ID4gOjptYXJrZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1wcmltYXJ5ID4gOjptYXJrZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtcHJpbWFyeSA+IDo6bWFya2VyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtcHJpbWFyeSA+IDo6bWFya2VyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1wcmltYXJ5ID4gOjptYXJrZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LXByaW1hcnkgPiA6Om1hcmtlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1wcmltYXJ5ID4gOjptYXJrZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpc3QtcHJpbWFyeSA+IDo6bWFya2VyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1saXN0LXByaW1hcnkgPiA6Om1hcmtlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpc3QtcHJpbWFyeSA+IDo6bWFya2VyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cbi51ay1saWdodCAudWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LXNlY29uZGFyeSA+IDo6bWFya2VyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LXNlY29uZGFyeSA+IDo6bWFya2VyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3Qtc2Vjb25kYXJ5ID4gOjptYXJrZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1saXN0LXNlY29uZGFyeSA+IDo6bWFya2VyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpc3Qtc2Vjb25kYXJ5ID4gOjptYXJrZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuLnVrLWxpZ2h0IC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtYnVsbGV0ID4gOjpiZWZvcmUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtYnVsbGV0ID4gOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1idWxsZXQgPiA6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxpc3QtYnVsbGV0ID4gOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstbGlzdC1idWxsZXQgPiA6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyNiUyMiUyMGhlaWdodCUzRCUyMjYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjA2JTIwNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSUyMiUyMGN4JTNEJTIyMyUyMiUyMGN5JTNEJTIyMyUyMiUyMHIlM0QlMjIzJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnVrLWxpZ2h0IC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMiksIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMiksIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3QtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMiksIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMiksIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMiksIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLWxpc3QtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMiksIC51ay1vZmZjYW52YXMtYmFyIC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMikge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1zdHJpcGVkID4gKjpudGgtb2YtdHlwZShvZGQpLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1zdHJpcGVkID4gKjpudGgtb2YtdHlwZShvZGQpLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1zdHJpcGVkID4gKjpudGgtb2YtdHlwZShvZGQpLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LXN0cmlwZWQgPiAqOm50aC1vZi10eXBlKG9kZCksIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpc3Qtc3RyaXBlZCA+ICo6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1saXN0LXN0cmlwZWQgPiA6bnRoLW9mLXR5cGUob2RkKSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1zdHJpcGVkID4gOm50aC1vZi10eXBlKG9kZCksIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbGlzdC1zdHJpcGVkID4gOm50aC1vZi10eXBlKG9kZCksIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1zdHJpcGVkID4gOm50aC1vZi10eXBlKG9kZCksIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1saXN0LXN0cmlwZWQgPiA6bnRoLW9mLXR5cGUob2RkKSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbGlzdC1zdHJpcGVkID4gOm50aC1vZi10eXBlKG9kZCksIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1saXN0LXN0cmlwZWQgPiA6bnRoLW9mLXR5cGUob2RkKSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLnVrLWxpZ2h0IC51ay1tYXJrZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW1hcmtlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1tYXJrZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW1hcmtlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1tYXJrZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1tYXJrZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1tYXJrZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW1hcmtlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbWFya2VyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1tYXJrZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1tYXJrZXIge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBjb2xvcjogIzY2Njtcbn1cbi51ay1saWdodCAudWstbWFya2VyOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1tYXJrZXI6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbWFya2VyOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1tYXJrZXI6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbWFya2VyOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbWFya2VyOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbWFya2VyOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1tYXJrZXI6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW1hcmtlcjpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbWFya2VyOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbWFya2VyOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG59XG4udWstbGlnaHQgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYTpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGE6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGE6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYTpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWstbGlnaHQgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstbmF2LXByaW1hcnkgPiBsaSA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgPiBsaSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LXByaW1hcnkgPiBsaSA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWstbGlnaHQgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXByaW1hcnkgPiBsaSA+IGE6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1oZWFkZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWhlYWRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWhlYWRlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1oZWFkZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWhlYWRlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1oZWFkZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWhlYWRlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtZGl2aWRlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtZGl2aWRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtZGl2aWRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1kaXZpZGVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSA+IGxpID4gYSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXNlY29uZGFyeSA+IGxpID4gYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSA+IGxpID4gYTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXNlY29uZGFyeSA+IGxpID4gYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4udWstbGlnaHQgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YnRpdGxlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXNlY29uZGFyeSA+IGxpID4gYTpob3ZlciAudWstbmF2LXN1YnRpdGxlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhOmhvdmVyIC51ay1uYXYtc3VidGl0bGUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaS51ay1hY3RpdmUgPiBhIC51ay1uYXYtc3VidGl0bGUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaS51ay1hY3RpdmUgPiBhIC51ay1uYXYtc3VidGl0bGUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEgLnVrLW5hdi1zdWJ0aXRsZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaS51ay1hY3RpdmUgPiBhIC51ay1uYXYtc3VidGl0bGUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1oZWFkZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1oZWFkZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWhlYWRlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1oZWFkZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtaGVhZGVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWhlYWRlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtZGl2aWRlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWRpdmlkZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1kaXZpZGVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1kaXZpZGVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtZGl2aWRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWRpdmlkZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1kaXZpZGVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtZGl2aWRlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBhOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYudWstbmF2LWRpdmlkZXIgPiA6bm90KC51ay1uYXYtZGl2aWRlcikgKyA6bm90KC51ay1uYXYtaGVhZGVyLCAudWstbmF2LWRpdmlkZXIpLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXYudWstbmF2LWRpdmlkZXIgPiA6bm90KC51ay1uYXYtZGl2aWRlcikgKyA6bm90KC51ay1uYXYtaGVhZGVyLCAudWstbmF2LWRpdmlkZXIpLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdi51ay1uYXYtZGl2aWRlciA+IDpub3QoLnVrLW5hdi1kaXZpZGVyKSArIDpub3QoLnVrLW5hdi1oZWFkZXIsIC51ay1uYXYtZGl2aWRlciksIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXYudWstbmF2LWRpdmlkZXIgPiA6bm90KC51ay1uYXYtZGl2aWRlcikgKyA6bm90KC51ay1uYXYtaGVhZGVyLCAudWstbmF2LWRpdmlkZXIpLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdi51ay1uYXYtZGl2aWRlciA+IDpub3QoLnVrLW5hdi1kaXZpZGVyKSArIDpub3QoLnVrLW5hdi1oZWFkZXIsIC51ay1uYXYtZGl2aWRlcikge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLW5hdiA+IGxpID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItbmF2ID4gbGk6aG92ZXIgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItbmF2ID4gbGk6aG92ZXIgPiBhLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1uYXYgPiBsaTpob3ZlciA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXZiYXItbmF2ID4gbGk6aG92ZXIgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdmJhci1uYXYgPiBsaTpob3ZlciA+IGEsXG4udWstbGlnaHQgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpID4gYVthcmlhLWV4cGFuZGVkPXRydWVdLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpID4gYVthcmlhLWV4cGFuZGVkPXRydWVdLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0sXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLW5hdiA+IGxpID4gYVthcmlhLWV4cGFuZGVkPXRydWVdLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGFbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1uYXZiYXItbmF2ID4gbGkgPiBhOmFjdGl2ZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpID4gYTphY3RpdmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpID4gYTphY3RpdmUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLW5hdiA+IGxpID4gYTphY3RpdmUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhOmFjdGl2ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLW5hdiA+IGxpID4gYTphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1uYXZiYXItbmF2ID4gbGkgPiBhOmFjdGl2ZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLW5hdmJhci1uYXYgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci1uYXYgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2YmFyLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdmJhci1uYXYgPiBsaS51ay1hY3RpdmUgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstbmF2YmFyLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstbmF2YmFyLWl0ZW0sIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1pdGVtLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci1pdGVtLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItaXRlbSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItaXRlbSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdmJhci1pdGVtLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2YmFyLWl0ZW0sIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdmJhci1pdGVtLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1uYXZiYXItaXRlbSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2YmFyLWl0ZW0sIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXZiYXItaXRlbSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLW5hdmJhci10b2dnbGUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci10b2dnbGUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLXRvZ2dsZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLXRvZ2dsZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItdG9nZ2xlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLXRvZ2dsZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci10b2dnbGUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdmJhci10b2dnbGUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci10b2dnbGUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdmJhci10b2dnbGUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1uYXZiYXItdG9nZ2xlIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstbmF2YmFyLXRvZ2dsZTpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLXRvZ2dsZTpob3ZlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItdG9nZ2xlOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItdG9nZ2xlOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci10b2dnbGU6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1uYXZiYXItdG9nZ2xlOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2YmFyLXRvZ2dsZTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLXRvZ2dsZTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbmF2YmFyLXRvZ2dsZTpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbmF2YmFyLXRvZ2dsZTpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLW5hdmJhci10b2dnbGU6aG92ZXIsXG4udWstbGlnaHQgLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdLFxuLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbmF2YmFyLXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdLFxuLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1uYXZiYXItdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0sXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbmF2YmFyLXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdLFxuLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1vdmVybGF5LXByaW1hcnkgLnVrLW5hdmJhci10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSxcbi51ay1vZmZjYW52YXMtYmFyIC51ay1uYXZiYXItdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1wYWdpbmF0aW9uID4gKiA+ICosIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXBhZ2luYXRpb24gPiAqID4gKiwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1wYWdpbmF0aW9uID4gKiA+ICosIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXBhZ2luYXRpb24gPiAqID4gKiwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1wYWdpbmF0aW9uID4gKiA+ICosIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1wYWdpbmF0aW9uID4gKiA+ICosIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1wYWdpbmF0aW9uID4gKiA+ICosIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXBhZ2luYXRpb24gPiAqID4gKiwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcGFnaW5hdGlvbiA+ICogPiAqLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1wYWdpbmF0aW9uID4gKiA+ICosIC51ay1vZmZjYW52YXMtYmFyIC51ay1wYWdpbmF0aW9uID4gKiA+ICoge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1wYWdpbmF0aW9uID4gKiA+IDpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcGFnaW5hdGlvbiA+ICogPiA6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcGFnaW5hdGlvbiA+ICogPiA6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXBhZ2luYXRpb24gPiAqID4gOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXBhZ2luYXRpb24gPiAqID4gOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstcGFnaW5hdGlvbiA+ICogPiA6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1wYWdpbmF0aW9uID4gKiA+IDpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstcGFnaW5hdGlvbiA+ICogPiA6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXBhZ2luYXRpb24gPiAqID4gOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1wYWdpbmF0aW9uID4gKiA+IDpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXBhZ2luYXRpb24gPiAqID4gOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1wYWdpbmF0aW9uID4gLnVrLWFjdGl2ZSA+ICosIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1wYWdpbmF0aW9uID4gLnVrLWFjdGl2ZSA+ICosIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1wYWdpbmF0aW9uID4gLnVrLWFjdGl2ZSA+ICosIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXBhZ2luYXRpb24gPiAudWstYWN0aXZlID4gKiwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqLCAudWstb2ZmY2FudmFzLWJhciAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstcGFnaW5hdGlvbiA+IC51ay1kaXNhYmxlZCA+ICosIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiAqLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiAqLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1wYWdpbmF0aW9uID4gLnVrLWRpc2FibGVkID4gKiwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1wYWdpbmF0aW9uID4gLnVrLWRpc2FibGVkID4gKiwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiAqLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstcGFnaW5hdGlvbiA+IC51ay1kaXNhYmxlZCA+ICosIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiAqLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1wYWdpbmF0aW9uID4gLnVrLWRpc2FibGVkID4gKiwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstcGFnaW5hdGlvbiA+IC51ay1kaXNhYmxlZCA+ICosIC51ay1vZmZjYW52YXMtYmFyIC51ay1wYWdpbmF0aW9uID4gLnVrLWRpc2FibGVkID4gKiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWstbGlnaHQgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWlucHV0LCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWlucHV0LCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtaW5wdXQsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlYXJjaC1pbnB1dCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb24sIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb24ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb246aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb246aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbjpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb246aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbjpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4udWstbGlnaHQgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstb2ZmY2FudmFzLWJhciAudWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4udWstbGlnaHQgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0LCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0LCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi51ay1saWdodCAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstb2ZmY2FudmFzLWJhciAudWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbi51ay1saWdodCAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0LCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0LCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1tZWRpdW0gLnVrLXNlYXJjaC1pbnB1dCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0LCAudWstb2ZmY2FudmFzLWJhciAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1tZWRpdW0gLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1tZWRpdW0gLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC1tZWRpdW0gLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0LCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0LCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0OmZvY3VzLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cywgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbi51ay1saWdodCAudWstc2VhcmNoLXRvZ2dsZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLXRvZ2dsZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtdG9nZ2xlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtdG9nZ2xlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC10b2dnbGUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2gtdG9nZ2xlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoLXRvZ2dsZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2VhcmNoLXRvZ2dsZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2VhcmNoLXRvZ2dsZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc2VhcmNoLXRvZ2dsZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNlYXJjaC10b2dnbGUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC10b2dnbGU6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNlYXJjaC10b2dnbGU6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2VhcmNoLXRvZ2dsZTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNlYXJjaC10b2dnbGU6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstc2VhcmNoLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLXNsaWRlbmF2LCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zbGlkZW5hdiwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zbGlkZW5hdiwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2xpZGVuYXYsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2xpZGVuYXYsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zbGlkZW5hdiwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNsaWRlbmF2LCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zbGlkZW5hdiwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc2xpZGVuYXYsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXNsaWRlbmF2LCAudWstb2ZmY2FudmFzLWJhciAudWstc2xpZGVuYXYge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuLnVrLWxpZ2h0IC51ay1zbGlkZW5hdjpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2xpZGVuYXY6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2xpZGVuYXY6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNsaWRlbmF2OmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNsaWRlbmF2OmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc2xpZGVuYXY6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zbGlkZW5hdjpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2xpZGVuYXY6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNsaWRlbmF2OmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zbGlkZW5hdjpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNsaWRlbmF2OmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG59XG4udWstbGlnaHQgLnVrLXNsaWRlbmF2OmFjdGl2ZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2xpZGVuYXY6YWN0aXZlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNsaWRlbmF2OmFjdGl2ZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc2xpZGVuYXY6YWN0aXZlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXNsaWRlbmF2OmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXNsaWRlbmF2OmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXNsaWRlbmF2OmFjdGl2ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc2xpZGVuYXY6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zbGlkZW5hdjphY3RpdmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXNsaWRlbmF2OmFjdGl2ZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXNsaWRlbmF2OmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2ID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2ID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAqID4gOmZpcnN0LWNoaWxkLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstc3VibmF2ID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zdWJuYXYgPiAqID4gOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstc3VibmF2ID4gKiA+IGE6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdiA+ICogPiBhOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdiA+ICogPiBhOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAqID4gYTpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAqID4gYTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdiA+ICogPiBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2ID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdiA+ICogPiBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zdWJuYXYgPiAqID4gYTpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc3VibmF2ID4gKiA+IGE6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zdWJuYXYgPiAqID4gYTpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLXN1Ym5hdiA+IC51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXN1Ym5hdiA+IC51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2ID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXN1Ym5hdiA+IC51ay1hY3RpdmUgPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstc3VibmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi51ay1saWdodCAudWstc3VibmF2LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zdWJuYXYtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc3VibmF2LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zdWJuYXYtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKTpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2LXBpbGwgPiAqID4gOmZpcnN0LWNoaWxkLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2LXBpbGwgPiAqID4gOmZpcnN0LWNoaWxkLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc3VibmF2LXBpbGwgPiAqID4gOmZpcnN0LWNoaWxkLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zdWJuYXYtcGlsbCA+ICogPiA6Zmlyc3QtY2hpbGQsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2LXBpbGwgPiAqID4gYTpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstc3VibmF2LXBpbGwgPiAqID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstc3VibmF2LXBpbGwgPiAqID4gYTphY3RpdmUsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6YWN0aXZlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6YWN0aXZlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmFjdGl2ZSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6YWN0aXZlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2LXBpbGwgPiAqID4gYTphY3RpdmUsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmFjdGl2ZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc3VibmF2LXBpbGwgPiAqID4gYTphY3RpdmUsIC51ay1vZmZjYW52YXMtYmFyIC51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtcGlsbCA+IC51ay1hY3RpdmUgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYtcGlsbCA+IC51ay1hY3RpdmUgPiBhLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdi1waWxsID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zdWJuYXYtcGlsbCA+IC51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXN1Ym5hdi1waWxsID4gLnVrLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzY2Njtcbn1cbi51ay1saWdodCAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAudWstZGlzYWJsZWQgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1zdWJuYXYgPiAudWstZGlzYWJsZWQgPiBhLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXN1Ym5hdiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1zdWJuYXYgPiAudWstZGlzYWJsZWQgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXN1Ym5hdiA+IC51ay1kaXNhYmxlZCA+IGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay10YWI6OmJlZm9yZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiOjpiZWZvcmUsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiOjpiZWZvcmUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYjo6YmVmb3JlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYjo6YmVmb3JlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGFiOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWI6OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdGFiOjpiZWZvcmUsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRhYjo6YmVmb3JlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay10YWI6OmJlZm9yZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRhYjo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4udWstbGlnaHQgLnVrLXRhYiA+ICogPiBhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWIgPiAqID4gYSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWIgPiAqID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiID4gKiA+IGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiID4gKiA+IGEsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay10YWIgPiAqID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRhYiA+ICogPiBhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10YWIgPiAqID4gYSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGFiID4gKiA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXRhYiA+ICogPiBhLCAudWstb2ZmY2FudmFzLWJhciAudWstdGFiID4gKiA+IGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLnVrLWxpZ2h0IC51ay10YWIgPiAqID4gYTpob3ZlciwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiID4gKiA+IGE6aG92ZXIsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiID4gKiA+IGE6aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYiA+ICogPiBhOmhvdmVyLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYiA+ICogPiBhOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGFiID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWIgPiAqID4gYTpob3ZlciwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdGFiID4gKiA+IGE6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRhYiA+ICogPiBhOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay10YWIgPiAqID4gYTpob3ZlciwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRhYiA+ICogPiBhOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstdGFiID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYiA+IC51ay1hY3RpdmUgPiBhLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYiA+IC51ay1hY3RpdmUgPiBhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWIgPiAudWstYWN0aXZlID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWIgPiAudWstYWN0aXZlID4gYSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXRhYiA+IC51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGFiID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRhYiA+IC51ay1hY3RpdmUgPiBhLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWIgPiAudWstYWN0aXZlID4gYSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGFiID4gLnVrLWFjdGl2ZSA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay10YWIgPiAudWstYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG59XG4udWstbGlnaHQgLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFiID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWIgPiAudWstZGlzYWJsZWQgPiBhLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGFiID4gLnVrLWRpc2FibGVkID4gYSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXRhYiA+IC51ay1kaXNhYmxlZCA+IGEsIC51ay1vZmZjYW52YXMtYmFyIC51ay10YWIgPiAudWstZGlzYWJsZWQgPiBhIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay1vZmZjYW52YXMtYmFyIC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbi51ay1saWdodCAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbi51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cbi51ay1saWdodCAudWstdGV4dC1sZWFkLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LWxlYWQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1sZWFkLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LWxlYWQsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1sZWFkLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGV4dC1sZWFkLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dC1sZWFkLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10ZXh0LWxlYWQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRleHQtbGVhZCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGV4dC1sZWFkLCAudWstb2ZmY2FudmFzLWJhciAudWstdGV4dC1sZWFkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi51ay1saWdodCAudWstdGV4dC1tZXRhLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LW1ldGEsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1tZXRhLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LW1ldGEsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1tZXRhLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGV4dC1tZXRhLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dC1tZXRhLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10ZXh0LW1ldGEsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRleHQtbWV0YSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGV4dC1tZXRhLCAudWstb2ZmY2FudmFzLWJhciAudWstdGV4dC1tZXRhIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstdGV4dC1tdXRlZCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1tdXRlZCwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LW11dGVkLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LW11dGVkLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHQtbXV0ZWQsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay10ZXh0LW11dGVkLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dC1tdXRlZCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdGV4dC1tdXRlZCwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dC1tdXRlZCwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGV4dC1tdXRlZCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRleHQtbXV0ZWQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG59XG4udWstbGlnaHQgLnVrLXRleHQtZW1waGFzaXMsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHQtZW1waGFzaXMsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1lbXBoYXNpcywgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1lbXBoYXNpcywgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LWVtcGhhc2lzLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGV4dC1lbXBoYXNpcywgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRleHQtZW1waGFzaXMsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRleHQtZW1waGFzaXMsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRleHQtZW1waGFzaXMsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXRleHQtZW1waGFzaXMsIC51ay1vZmZjYW52YXMtYmFyIC51ay10ZXh0LWVtcGhhc2lzIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cbi51ay1saWdodCAudWstdGV4dC1wcmltYXJ5LCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LXByaW1hcnksIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1wcmltYXJ5LCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LXByaW1hcnksIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGV4dC1wcmltYXJ5LCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGV4dC1wcmltYXJ5LCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dC1wcmltYXJ5LCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10ZXh0LXByaW1hcnksIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRleHQtcHJpbWFyeSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGV4dC1wcmltYXJ5LCAudWstb2ZmY2FudmFzLWJhciAudWstdGV4dC1wcmltYXJ5IHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cbi51ay1saWdodCAudWstdGV4dC1zZWNvbmRhcnksIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHQtc2Vjb25kYXJ5LCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRleHQtc2Vjb25kYXJ5LCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LXNlY29uZGFyeSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10ZXh0LXNlY29uZGFyeSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXRleHQtc2Vjb25kYXJ5LCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGV4dC1zZWNvbmRhcnksIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRleHQtc2Vjb25kYXJ5LCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10ZXh0LXNlY29uZGFyeSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdGV4dC1zZWNvbmRhcnksIC51ay1vZmZjYW52YXMtYmFyIC51ay10ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG4udWstbGlnaHQgLnVrLXRodW1ibmF2ID4gKiA+ICo6OmFmdGVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10aHVtYm5hdiA+ICogPiAqOjphZnRlciwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10aHVtYm5hdiA+ICogPiAqOjphZnRlciwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGh1bWJuYXYgPiAqID4gKjo6YWZ0ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGh1bWJuYXYgPiAqID4gKjo6YWZ0ZXIsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay10aHVtYm5hdiA+ICogPiAqOjphZnRlciwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRodW1ibmF2ID4gKiA+ICo6OmFmdGVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10aHVtYm5hdiA+ICogPiAqOjphZnRlciwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdGh1bWJuYXYgPiAqID4gKjo6YWZ0ZXIsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXRodW1ibmF2ID4gKiA+ICo6OmFmdGVyLCAudWstb2ZmY2FudmFzLWJhciAudWstdGh1bWJuYXYgPiAqID4gKjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDAuNCkpO1xufVxuLnVrLWxpZ2h0IC51ay10b3RvcCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdG90b3AsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdG90b3AsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRvdG9wLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRvdG9wLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdG90b3AsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10b3RvcCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdG90b3AsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRvdG9wLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay10b3RvcCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRvdG9wIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi51ay1saWdodCAudWstdG90b3A6aG92ZXIsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRvdG9wOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRvdG9wOmhvdmVyLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10b3RvcDpob3ZlciwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10b3RvcDpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXRvdG9wOmhvdmVyLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstdG90b3A6aG92ZXIsIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgLnVrLXRvdG9wOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10b3RvcDpob3ZlciwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstdG90b3A6aG92ZXIsIC51ay1vZmZjYW52YXMtYmFyIC51ay10b3RvcDpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4udWstbGlnaHQgLnVrLXRvdG9wOmFjdGl2ZSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdG90b3A6YWN0aXZlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRvdG9wOmFjdGl2ZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdG90b3A6YWN0aXZlLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRvdG9wOmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXRvdG9wOmFjdGl2ZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRvdG9wOmFjdGl2ZSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdG90b3A6YWN0aXZlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10b3RvcDphY3RpdmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLXRvdG9wOmFjdGl2ZSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRvdG9wOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1sb2dvLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1sb2dvLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxvZ28sIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxvZ28sIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbG9nbywgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxvZ28sIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1sb2dvLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1sb2dvLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1sb2dvLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1sb2dvLCAudWstb2ZmY2FudmFzLWJhciAudWstbG9nbyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1sb2dvOmhvdmVyLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1sb2dvOmhvdmVyLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxvZ286aG92ZXIsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxvZ286aG92ZXIsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbG9nbzpob3ZlciwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLWxvZ286aG92ZXIsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1sb2dvOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1sb2dvOmhvdmVyLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1sb2dvOmhvdmVyLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1sb2dvOmhvdmVyLCAudWstb2ZmY2FudmFzLWJhciAudWstbG9nbzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnVrLWxpZ2h0IC51ay1sb2dvOmhhcygudWstbG9nby1pbnZlcnNlKSA+IDpub3QocGljdHVyZTpoYXMoLnVrLWxvZ28taW52ZXJzZSkpOm5vdCgudWstbG9nby1pbnZlcnNlKSwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbG9nbzpoYXMoLnVrLWxvZ28taW52ZXJzZSkgPiA6bm90KHBpY3R1cmU6aGFzKC51ay1sb2dvLWludmVyc2UpKTpub3QoLnVrLWxvZ28taW52ZXJzZSksIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbG9nbzpoYXMoLnVrLWxvZ28taW52ZXJzZSkgPiA6bm90KHBpY3R1cmU6aGFzKC51ay1sb2dvLWludmVyc2UpKTpub3QoLnVrLWxvZ28taW52ZXJzZSksIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxvZ286aGFzKC51ay1sb2dvLWludmVyc2UpID4gOm5vdChwaWN0dXJlOmhhcygudWstbG9nby1pbnZlcnNlKSk6bm90KC51ay1sb2dvLWludmVyc2UpLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLWxvZ286aGFzKC51ay1sb2dvLWludmVyc2UpID4gOm5vdChwaWN0dXJlOmhhcygudWstbG9nby1pbnZlcnNlKSk6bm90KC51ay1sb2dvLWludmVyc2UpLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbG9nbzpoYXMoLnVrLWxvZ28taW52ZXJzZSkgPiA6bm90KHBpY3R1cmU6aGFzKC51ay1sb2dvLWludmVyc2UpKTpub3QoLnVrLWxvZ28taW52ZXJzZSksIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1sb2dvOmhhcygudWstbG9nby1pbnZlcnNlKSA+IDpub3QocGljdHVyZTpoYXMoLnVrLWxvZ28taW52ZXJzZSkpOm5vdCgudWstbG9nby1pbnZlcnNlKSwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstbG9nbzpoYXMoLnVrLWxvZ28taW52ZXJzZSkgPiA6bm90KHBpY3R1cmU6aGFzKC51ay1sb2dvLWludmVyc2UpKTpub3QoLnVrLWxvZ28taW52ZXJzZSksIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxvZ286aGFzKC51ay1sb2dvLWludmVyc2UpID4gOm5vdChwaWN0dXJlOmhhcygudWstbG9nby1pbnZlcnNlKSk6bm90KC51ay1sb2dvLWludmVyc2UpLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1sb2dvOmhhcygudWstbG9nby1pbnZlcnNlKSA+IDpub3QocGljdHVyZTpoYXMoLnVrLWxvZ28taW52ZXJzZSkpOm5vdCgudWstbG9nby1pbnZlcnNlKSwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLWxvZ286aGFzKC51ay1sb2dvLWludmVyc2UpID4gOm5vdChwaWN0dXJlOmhhcygudWstbG9nby1pbnZlcnNlKSk6bm90KC51ay1sb2dvLWludmVyc2UpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi51ay1saWdodCAudWstbG9nby1pbnZlcnNlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1sb2dvLWludmVyc2UsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbG9nby1pbnZlcnNlLCAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1sb2dvLWludmVyc2UsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstbG9nby1pbnZlcnNlLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstbG9nby1pbnZlcnNlLCAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstbG9nby1pbnZlcnNlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1sb2dvLWludmVyc2UsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWxvZ28taW52ZXJzZSwgLnVrLW92ZXJsYXktcHJpbWFyeSAudWstbG9nby1pbnZlcnNlLCAudWstb2ZmY2FudmFzLWJhciAudWstbG9nby1pbnZlcnNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udWstbGlnaHQgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLXNlY3Rpb24tc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPXVrLWNhcmQtbWVkaWFdKSAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay1vdmVybGF5LXByaW1hcnkgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjEzJTIyJTIwaGVpZ2h0JTNEJTIyMTMlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxMyUyMDEzJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NyZWN0JTIwZmlsbCUzRCUyMnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSUyMiUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIweCUzRCUyMjAlMjIlMjB5JTNEJTIyNiUyMiUyMCUyRiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIycmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpJTIyJTIwd2lkdGglM0QlMjIxJTIyJTIwaGVpZ2h0JTNEJTIyMTMlMjIlMjB4JTNEJTIyNiUyMiUyMHklM0QlMjIwJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnVrLWxpZ2h0IC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW9wZW4gPiAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLW9wZW4gPiAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstb3BlbiA+IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSwgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLW9wZW4gPiAudWstYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAudWstb2ZmY2FudmFzLWJhciAudWstb3BlbiA+IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEzJTIwMTMlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIycmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpJTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnVrLWxpZ2h0IC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCwgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCwgLnVrLWNhcmQtc2Vjb25kYXJ5LnVrLWNhcmQtYm9keSAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSkgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLCAudWstb3ZlcmxheS1wcmltYXJ5IC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCwgLnVrLW9mZmNhbnZhcy1iYXIgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLWxpZ2h0IC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbi51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgLnVrLXRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbi51ay10aWxlLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgLnVrLXRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbi51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pIC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstb3ZlcmxheS1wcmltYXJ5IC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQsXG4udWstb2ZmY2FudmFzLWJhciAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4vKlxuICogUGFzcyBkcm9wYmFyIGJlaGluZCBjb2xvciB0byBKU1xuICovXG4qIHtcbiAgLS11ay1pbnZlcnNlOiBpbml0aWFsO1xufVxuXG4udWstbGlnaHQsIC51ay1zZWN0aW9uLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvciksIC51ay1zZWN0aW9uLXNlY29uZGFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSwgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSwgLnVrLXRpbGUtc2Vjb25kYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpLCAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSwgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSksIC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHksIC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj11ay1jYXJkLW1lZGlhXSksIC51ay1vdmVybGF5LXByaW1hcnksIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgLS11ay1pbnZlcnNlOiBsaWdodDtcbn1cblxuLnVrLWRhcmssIC51ay1zZWN0aW9uLWRlZmF1bHQ6bm90KC51ay1wcmVzZXJ2ZS1jb2xvciksIC51ay1zZWN0aW9uLW11dGVkOm5vdCgudWstcHJlc2VydmUtY29sb3IpLCAudWstdGlsZS1kZWZhdWx0Om5vdCgudWstcHJlc2VydmUtY29sb3IpLCAudWstdGlsZS1tdXRlZDpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSwgLnVrLWNhcmQtZGVmYXVsdC51ay1jYXJkLWJvZHksIC51ay1jYXJkLWRlZmF1bHQgPiA6bm90KFtjbGFzcyo9dWstY2FyZC1tZWRpYV0pLCAudWstb3ZlcmxheS1kZWZhdWx0LCAudWstZHJvcGJhciwgLnVrLW5hdmJhci1jb250YWluZXI6bm90KC51ay1uYXZiYXItdHJhbnNwYXJlbnQpLCAudWstbmF2YmFyLWRyb3Bkb3duLCAudWstZHJvcGRvd24ge1xuICAtLXVrLWludmVyc2U6IGRhcms7XG59XG5cbi51ay1pbnZlcnNlLWxpZ2h0IHtcbiAgLS11ay1pbnZlcnNlOiBsaWdodCAhaW1wb3J0YW50O1xufVxuXG4udWstaW52ZXJzZS1kYXJrIHtcbiAgLS11ay1pbnZlcnNlOiBkYXJrICFpbXBvcnRhbnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQcmludFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxufVxuKiB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG5odG1sLm1lbnUtaXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgY29sb3I6ICMwMDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1IHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6ICMzMTU0QTE7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiA1OHB4O1xuICBsaW5lLWhlaWdodDogNzBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDUxcHg7XG4gIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc2VjdGlvbi1Ib21lcGFnZSBoNCwgLmFib3V0QmxvY2sgaDQge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbmEge1xuICBjb2xvcjogIzMxNTRBMTtcbn1cblxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMzE1NEExO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmEuYnV0dG9uLFxuYnV0dG9uLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmEuYnV0dG9uOmhvdmVyLFxuYnV0dG9uLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRTY3NEM7XG59XG5cbmEuYnV0dG9uLnJlZCxcbmJ1dHRvbi5idXR0b24ucmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VFNjc0Qztcbn1cblxuYS5idXR0b24ucmVkOmhvdmVyLFxuYnV0dG9uLmJ1dHRvbi5yZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xufVxuXG5lbSB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4qW3RyYW5zaXRpb25dIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiA1NXB4O1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDAgMzBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IDE2OXB4O1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uaGVhZGVyIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiA5NTBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi50aXRsZUhvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nOiA1MHB4IDIwcHggMjBweDtcbiAgbGVmdDogY2FsYyg1MCUgLSA2MjBweCk7XG4gIHdpZHRoOiA2NDBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnRpdGxlSG9sZGVyIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogNjZweDtcbiAgbGluZS1oZWlnaHQ6IDgzcHg7XG4gIG1hcmdpbjogMDtcbn1cblxuLnRpdGxlSG9sZGVyIC5zdWJ0aXRlbCB7XG4gIGZvbnQtc2l6ZTogNjZweDtcbiAgbGluZS1oZWlnaHQ6IDgzcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLnRpdGxlSG9sZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMzAwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi5pbnRyb0NvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTI0MHB4O1xuICBtYXJnaW46IDAgYXV0byAxMDBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaW50cm9Db250YWluZXIgLmludHJvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvaG9tZV9pbnRyb19ibG9jay5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBwYWRkaW5nOiA3MHB4IDEwMHB4IDcwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogI2ZmZjtcbiAgbWluLWhlaWdodDogMjY1cHg7XG59XG5cbi5pbnRyb0NvbnRhaW5lciAuaW50cm86OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAzMDAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmV2ZW5lbWVudGVuQ3RhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvZXZlbnRfYmxvY2suc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgcGFkZGluZzogNjVweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMjY1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmV2ZW5lbWVudGVuQ3RhIGg0IHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5ldmVuZW1lbnRlbkN0YSAuYnV0dG9uSG9sZGVyIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLmV2ZW5lbWVudGVuQ3RhIC5idXR0b24ge1xuICBwYWRkaW5nOiAxOXB4IDMwcHggMjBweCA5MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiAudGVrc3Qge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmV2ZW5lbWVudGVuQ3RhIC5idXR0b246aG92ZXIgLnRla3N0IHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmV2ZW5lbWVudGVuQ3RhIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiAuaWNvbiB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQ0M3MUY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbjpob3ZlciAuaWNvbiB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiAuaWNvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvY2FsZW5kYXJfc3Rhci5zdmcpO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMzcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uaXRlbUNvbHVtbi5oaWRlLnVrLWdyaWQtbWFyZ2luIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmFib3V0QmxvY2tzQ29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWJvdXRCbG9ja3NDb250YWluZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA0MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG59XG5cbi5hYm91dEJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHggMTAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5hYm91dEJsb2NrcyAuc2Nyb2xsZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICB0b3A6IDIwMHB4O1xuICBsZWZ0OiAtODBweDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5hYm91dEJsb2NrcyAuc2Nyb2xsZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2Fycm93X2JsYWNrLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbGVmdDogLTI1cHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTtcbiAgYW5pbWF0aW9uOiBib3VuY2UgMXMgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSkgcm90YXRlKDkwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwcHgsIC01MCUpIHJvdGF0ZSg5MGRlZyk7XG4gIH1cbn1cbi5hYm91dEJsb2Nrc0ludHJvIHtcbiAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuXG4uYWJvdXRCbG9ja3NSaWdodCB7XG4gIG1hcmdpbi10b3A6IC0xNzVweDtcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIG9wYWNpdHk6IDA7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jazo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoIzAwMCwgdHJhbnNwYXJlbnQpO1xuICBvcGFjaXR5OiAwLjY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jayBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jayAuYWJvdXRCbG9ja0NvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTBweDtcbiAgbGVmdDogNTBweDtcbiAgcmlnaHQ6IDUwcHg7XG4gIGJvdHRvbTogNTBweDtcbiAgei1pbmRleDogNTtcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrIC5hYm91dEJsb2NrQ29udGVudCBoNCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYWJvdXRCbG9ja3MgLmFib3V0QmxvY2sgLmFib3V0QmxvY2tDb250ZW50IC5idXR0b25Ib2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYWJvdXRCbG9ja3MgLmFib3V0QmxvY2s6aG92ZXI6OmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrOmhvdmVyIC5hYm91dEJsb2NrQ29udGVudCBhLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMzE1NEExO1xufVxuXG4uZXZlbmVtZW50Q29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZXZlbmVtZW50SW50cm9Ib2xkZXIge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZXZlbmVtZW50SW50cm9Ib2xkZXIgLmV2ZW5lbWVudEludHJvIHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gNjVweDtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0NBQ0FDQTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5kZWVsbmVtZXJIb2xkZXIge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmc6IDhweCAxMHB4IDhweCAzNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTczOTI3O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuZGVlbG5lbWVySG9sZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9rYWRvSWNvblNtYWxsLnN2Z1wiKTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5kZWVsbmVtZXJIb2xkZXIgc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQuY3VzdG9tIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuaW1hZ2VIb2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmltYWdlSG9sZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuaW1hZ2VIb2xkZXIgLnJlYWRNb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQ6aG92ZXIgLmltYWdlSG9sZGVyIC5yZWFkTW9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQ6aG92ZXIgLmltYWdlSG9sZGVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5pbWFnZUhvbGRlciBpbWcge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAycHgpO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IC0xO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmV1cm9JY29uIGltZyB7XG4gIHdpZHRoOiAxNHB4O1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50OmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMxNTRBMTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciwgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciBoNSwgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciAuZXZlbnRDYXQge1xuICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuZXZlbnRDb250ZW50SG9sZGVyIHtcbiAgcGFkZGluZzogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnRDYXQge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjODI4MjgyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAub21zY2hyaWp2aW5nIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciBoNSB7XG4gIG1hcmdpbjogMTVweCAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLmRhdGUge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDQUNBQ0E7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIC5ldXJvSWNvbiB7XG4gIG1hcmdpbi1yaWdodDogMTFweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnREZXRhaWwgLmNsb2NrSWNvbiB7XG4gIHdpZHRoOiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMzMTU0QTE7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5ldmVudHNTbGlkZXJIb2xkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICBwYWRkaW5nOiA3NXB4IDIwcHggNzVweCAwO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5ldmVudHNTbGlkZXJIb2xkZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAzMDAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHM6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDYwRTM3O1xufVxuXG4uZXZlbmVtZW50ZW5MYXJnZUN0YSAuYWxsRXZlbnRzIC5hbGxFdmVudHNUZWtzdCB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4uZXZlbmVtZW50ZW5MYXJnZUN0YSAuYWxsRXZlbnRzIC5hbGxFdmVudHNUZWtzdCAudGVrc3Q6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3Bpamx0amUuc3ZnKTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcmlnaHQ6IC01MHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTtcbn1cblxuLyogZXZlbmVtZW50IGluZGllbmVuICovXG4uZXZlbnRGb3JtIHRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZm9ybSAubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGNvbG9yOiAjMzE1NEExO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uYWxnb2xpYS1wbGFjZXMge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5hbGdvbGlhLXBsYWNlcyAuYXAtZHJvcGRvd24tbWVudSAuYXAtZm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmFwLWlucHV0LWljb24ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uYXAtc3VnZ2VzdGlvbiBlbSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiAjNjZDMDdEO1xufVxuXG4uYXAtaW5wdXQsXG4uYXAtaGludCB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgaGVpZ2h0OiA1NXB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMTdweDtcbn1cblxuLmFwLXN1Z2dlc3Rpb24taWNvbiBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tdG9wOiAxMXB4O1xufVxuXG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLmZsYXRwaWNrci1tb250aERyb3Bkb3duLW1vbnRocyB7XG4gIG1hcmdpbi1yaWdodDogNTBweCAhaW1wb3J0YW50O1xufVxuXG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLmZsYXRwaWNrci1tb250aERyb3Bkb3duLW1vbnRocyxcbi5mbGF0cGlja3ItY3VycmVudC1tb250aCBpbnB1dC5jdXIteWVhciB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLCAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLCAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZSwgLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQuaW5SYW5nZSwgLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5pblJhbmdlLCAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5pblJhbmdlLCAuZmxhdHBpY2tyLWRheS5zZWxlY3RlZDpmb2N1cywgLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZTpmb2N1cywgLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2U6Zm9jdXMsIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkOmhvdmVyLCAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlOmhvdmVyLCAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZTpob3ZlciwgLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQucHJldk1vbnRoRGF5LCAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnByZXZNb250aERheSwgLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UucHJldk1vbnRoRGF5LCAuZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5uZXh0TW9udGhEYXksIC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UubmV4dE1vbnRoRGF5LCAuZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5uZXh0TW9udGhEYXkge1xuICBiYWNrZ3JvdW5kOiAjNjZDMDdEICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzY2QzA3RCAhaW1wb3J0YW50O1xufVxuXG4uZGF0ZXBpY2tlcl9ob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlciBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlciAudWstaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE1cHg7XG4gIHRvcDogMThweDtcbiAgY29sb3I6ICMzMTU0QTE7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlci5ldmVudCAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA1NXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VDNjc0QztcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmRhdGVwaWNrZXJfaG9sZGVyLmV2ZW50OmhvdmVyIC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U3MzkyNztcbn1cblxuLmRhdGVwaWNrZXJfaG9sZGVyLmV2ZW50IC5pY29uOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvY2FsZW5kYXJfd2hpdGUuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB3aWR0aDogMjNweDtcbiAgaGVpZ2h0OiAyN3B4O1xufVxuXG5mb3JtIC5sYWJlbC5tdWx0aXBsZV9kYXlfaXRlbSxcbi5tdWx0aXBsZV9kYXlfaXRlbSxcbmZvcm0gLmxhYmVsLnNpbmdsZV9kYXlfaXRlbSxcbi5zaW5nbGVfZGF5X2l0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmZvcm0gLmxhYmVsLm11bHRpcGxlX2RheV9pdGVtLmFjdGl2ZSxcbi5tdWx0aXBsZV9kYXlfaXRlbS5hY3RpdmUsXG5mb3JtIC5sYWJlbC5zaW5nbGVfZGF5X2l0ZW0uYWN0aXZlLFxuLnNpbmdsZV9kYXlfaXRlbS5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZm9ybSAuc3dpdGNoIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogMjlweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm9yZGVyOiAycHggc29saWQgIzMxNTRBMTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5mb3JtIC5zd2l0Y2ggLmNpcmNsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDE5cHg7XG4gIGhlaWdodDogMTlweDtcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M5YzljOTtcbiAgbGVmdDogNHB4O1xuICB0b3A6IDNweDtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xufVxuXG5mb3JtIC5zd2l0Y2guYWN0aXZlIC5jaXJjbGUge1xuICBsZWZ0OiAyM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xufVxuXG4uc3dpdGNoX2xhYmVsIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4jYWZiZWVsZGluZy11cGxvYWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ua2llc19hZmJlZWxkaW5nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGhlaWdodDogNTVweDtcbiAgcGFkZGluZzogMTFweCAxNXB4IDExcHggMzBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmtpZXNfYWZiZWVsZGluZyAudWstaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgY29sb3I6ICMzMTU0QTE7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuaDMuZ2VnZXZlbnNfZ2VicnVpa2VyIHtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbmgzLmdlZ2V2ZW5zX2V2ZW5lbWVudCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi5lcnJvciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbn1cblxuLmVycm9ycyB7XG4gIGNvbG9yOiByZWQ7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7XG59XG5cbiNldmVuZW5lbnQtZm9ybXVsaWVyIGJ1dHRvbi5idXR0b24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IDU1cHg7XG59XG5cbi53b3JkU2xpZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLndvcmRTbGlkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53b3JkU2xpZGVyIHVsIGxpIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ud29yZFNsaWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW4tdG9wOiAtM3B4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ud29yZFNsaWRlcl93b3JkcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBhbmltYXRpb24tbmFtZTogd29yZFNsaWRlcjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tZHVyYXRpb246IDIwcztcbn1cblxuLndvcmRTbGlkZXJfd29yZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQGtleWZyYW1lcyB3b3JkU2xpZGVyIHtcbiAgMCUsIDklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIDExJSwgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIH1cbiAgMjIlLCAzMSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTtcbiAgfVxuICAzMyUsIDQyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMCUpO1xuICB9XG4gIDQ0JSwgNTMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwJSk7XG4gIH1cbiAgNTUlLCA2NCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICA2NiUsIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MCUpO1xuICB9XG4gIDc3JSwgODYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwJSk7XG4gIH1cbiAgODglLCA5NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTkwJSk7XG4gIH1cbn1cbi5hZGRFdmVudEN0YUNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDA7XG59XG5cbi5hZGRFdmVudEN0YSB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmFkZEV2ZW50Q3RhIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFkZEV2ZW50Q3RhIC50ZWtzdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmFkZEV2ZW50Q3RhIC50ZWtzdCBhIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwMHB4IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogNjcwcHg7XG59XG5cbi5pbXByZXNzaWVIb2xkZXIgLnNsaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHM7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZSAuc2xpZGVUZWtzdCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjhzO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZS5hY3RpdmUgLnNsaWRlVGVrc3Qge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZSAuc2xpZGVJbWFnZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjhzO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZS5hY3RpdmUgLnNsaWRlSW1hZ2Uge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZS5hY3RpdmUge1xuICB6LWluZGV4OiAxO1xufVxuXG4uc2xpZGVUZWtzdEhvbGRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9yZWRfYmxvY2tfc2xpZGVyLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBwYWRkaW5nOiAxMTVweCA5NXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gNjkwcHgpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgd2lkdGg6IDc3MHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luLXRvcDogODBweDtcbiAgei1pbmRleDogMTtcbn1cblxuLnNsaWRlSW1hZ2VIb2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gODBweCk7XG4gIHRvcDogMDtcbiAgbWF4LWhlaWdodDogNjcwcHg7XG4gIG1heC13aWR0aDogMTA0MHB4O1xufVxuXG4ucHJvZ3Jlc3NDb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHB4O1xuICBsZWZ0OiBjYWxjKDUwJSAtIDcxMHB4KTtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ucHJvZ3Jlc3NDb250YWluZXIgLml0ZW1Db3VudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnByb2dyZXNzTGluZUNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDE1MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAyMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucHJvZ3Jlc3NMaW5lQ29udGFpbmVyIC5saW5lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJiO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5wcm9ncmVzc0NvbnRhaW5lciAucHJvZ3Jlc3Mge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcHg7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbn1cblxuLmFycm93SG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5hcnJvd0hvbGRlciBpbWcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5hcnJvd0hvbGRlciAuYXJyb3dOZXh0IGltZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFycm93SG9sZGVyIC5hcnJvd1ByZXYgaW1nIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qIExhbmRpbmdzcGFnaW5hICAqL1xuLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNjBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyIHtcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbn1cblxuLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMDBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciBwIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbWFyZ2luLXRvcDogNDVweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIC5idXR0b25Ib2xkZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ubGFuZGluZ3NIZWFkZXIgLmltYWdlSG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4ubGFuZGluZ3NIZWFkZXIgLmltYWdlSG9sZGVyIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4vKiBHZWVuIGhlYWRlciAqL1xuLmxhbmRpbmdzSGVhZGVyLmdlZW5faGVhZGVyIHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG59XG5cbi5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG5cbi5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvbGFuZGluZ19oZWFkZXIuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgdG9wOiAtMTQwcHg7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDU1MHB4KTtcbn1cblxuLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyLmdlZW5faGVhZGVyIC5sYW5kaW5nc1RpdGxlSG9sZGVyIHtcbiAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyLmdlZW5faGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIG1hcmdpbi1yaWdodDogMTAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKiBDYWxsIHRvIGFjdGlvbiAqL1xuLmNhbGxUb0FjdGlvbkhvbGRlciB7XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uY2FsbFRvQWN0aW9uSG9sZGVyIC5pbWFnZUhvbGRlciB7XG4gIG1hcmdpbi10b3A6IDEwMHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uSG9sZGVyIC5pbWFnZUhvbGRlciBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gIHBhZGRpbmc6IDEwMHB4IDEwMHB4IDEwMHB4IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciBoMyB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VDNjc0QztcbiAgd2lkdGg6IDcwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IC03MHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmNhbGxUb0FjdGlvblRla3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogODBweDtcbn1cblxuLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIC5idXR0b24ge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiB7XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBtYXJnaW46IDMwcHggYXV0bztcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCB7XG4gIHBhZGRpbmc6IDAgMjBweCAyMDBweCAxMDBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IGgxIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBsaW5lLWhlaWdodDogNTVweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5pbWFnZV9jb2x1bW4gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiBhLmJhY2ssIC5sYW5kaW5nc0hlYWRlciBhLmJhY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIGEuYmFjazo6YmVmb3JlLCAubGFuZGluZ3NIZWFkZXIgYS5iYWNrOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL2JsdWVfYXJyb3cuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGxlZnQ6IDBweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIGEuYmFjazpob3Zlcjo6YmVmb3JlLCAubGFuZGluZ3NIZWFkZXIgYS5iYWNrOmhvdmVyOjpiZWZvcmUge1xuICBsZWZ0OiAtM3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9ibGFja19hcnJvdy5zdmdcIik7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiBhLmJhY2s6aG92ZXIsIC5sYW5kaW5nc0hlYWRlciBhLmJhY2s6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC02MHB4O1xuICBsZWZ0OiA0MHB4O1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiA1MHB4IDgwcHg7XG4gIG1pbi1oZWlnaHQ6IDIxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzA1NEEwO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2JsdWVfd2F2ZS5zdmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xufVxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrLmV2ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IC0xNDBweCAwIC04MHB4IDIwcHg7XG4gIGJvdHRvbTogdW5zZXQ7XG4gIGxlZnQ6IHVuc2V0O1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sucmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VDNjc0QztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3JlZF9pbnRyb193YXZlLnN2Zyk7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay5ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9ncmVlbl9ibG9ja193YXZlLnN2Zyk7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayBzcGFuLmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayBzcGFuLnZhbHVlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTEwcHgpO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sud2lua2VsIHNwYW4ubGFiZWwge1xuICB3aWR0aDogMTEwcHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay53aW5rZWwgc3Bhbi52YWx1ZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG59XG5cbi5oZWFkZXJfaW50cm9fdGVrc3Qge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiA1MHB4IGF1dG87XG4gIHBhZGRpbmc6IDBweCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaGVhZGVyX2ludHJvX3Rla3N0ID4gKiB7XG4gIG1heC13aWR0aDogNjAwcHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaW1hZ2VIb2xkZXIge1xuICBtaW4taGVpZ2h0OiA2MDBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5pbWFnZUhvbGRlciBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiB1bnNldDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrIHtcbiAgd2lkdGg6IDU3JTtcbiAgYm90dG9tOiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvcmVkX3dhdmUuc3ZnKTtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIGgxIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDU4cHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gIHBhZGRpbmc6IDU1cHggNTBweCAwIDEwMHB4O1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2tfaW50cm8ge1xuICBtYXgtd2lkdGg6IDQ0NXB4O1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2sgLmljb29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNTdweDtcbiAgaGVpZ2h0OiA1N3B4O1xuICByaWdodDogMTE5cHg7XG4gIHRvcDogLTU2cHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5kZXRhaWwge1xuICBtYXJnaW4tYm90dG9tOiAxNTBweDtcbn1cblxuLmFib3V0QmxvY2tzQ29udGFpbmVyLmN1c3RvbSB7XG4gIG1hcmdpbjogMTAwcHggMCAwO1xufVxuXG4udWl0Z2VsaWNodGVXaW5rZWxIb2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbn1cblxuLnVpdGdlbGljaHRlV2lua2VsSG9sZGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3dpbmtlbF9yZWRfd2F2ZS5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0b3A6IDEyMHB4O1xuICBsZWZ0OiAtNzBweDtcbiAgei1pbmRleDogMztcbn1cblxuLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCB7XG4gIG1pbi1oZWlnaHQ6IDMyMHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczMTY3O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIC5jYWxsVG9BY3Rpb25UZWtzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbn1cblxuLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCBoNSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIGgzIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCAuYnV0dG9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNTtcbiAgYm90dG9tOiAxMDBweDtcbn1cblxuLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCAub3ZlcnZpZXdCdXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIG1hcmdpbjogMzBweCAyMHB4IDAgMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2suZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZDMDdEO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvZ3JlZW5fd2F2ZS5zdmcpO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmxhcmdlQmFja2dyb3VuZCAuYWJvdXRCbG9ja3NDb250YWluZXI6OmJlZm9yZSB7XG4gIGhlaWdodDogNzAlO1xufVxuXG4ubmV3c0NvbnRhaW5lciB7XG4gIG1hcmdpbjogMTAwcHggMCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uZXdzSW50cm9Db250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm5ld3NDb250YWluZXIud2F0VGVEb2VuIHtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG5cbi5maWx0ZXJDb250YWluZXIge1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiA0MHB4IGF1dG8gNjBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZmlsdGVySG9sZGVyIHtcbiAgcGFkZGluZzogNjVweCA4MHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xufVxuXG4uZmlsdGVyQ29udGFpbmVyIGlucHV0IHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZmlsdGVySG9sZGVyIC5uaWNlLXNlbGVjdCB7XG4gIGhlaWdodDogNTVweDtcbiAgbGluZS1oZWlnaHQ6IDU1cHg7XG59XG5cbi5maWx0ZXJIb2xkZXIgLm5pY2Utc2VsZWN0IHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmZpbHRlckhvbGRlciAubmljZS1zZWxlY3QgLm9wdGlvbiB7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZmlsdGVySG9sZGVyIC5uaWNlLXNlbGVjdDo6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2ZmZjtcbiAgcmlnaHQ6IDIzcHg7XG59XG5cbi5maWx0ZXJIb2xkZXIgLm5pY2Utc2VsZWN0LmNhdGVnb3JpZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDU1cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5maWx0ZXJIb2xkZXIgLm5pY2Utc2VsZWN0LmNhdGVnb3JpZTpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2Nztcbn1cblxuLmZpbHRlckhvbGRlciBpbnB1dCB7XG4gIHBhZGRpbmc6IDAgNTVweCAwIDIwcHg7XG59XG5cbi5maWx0ZXJIb2xkZXIgLmlucHV0U2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmlsdGVySG9sZGVyIC5pbnB1dFNlYXJjaCAuc2VhcmNoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDU1cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4uZmlsdGVySG9sZGVyIC5pbnB1dFNlYXJjaDpob3ZlciAuc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2Nztcbn1cblxuLmZpbHRlckhvbGRlciAuaW5wdXRTZWFyY2ggLnNlYXJjaDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3NlYXJjaF9pY29uX3doaXRlLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjlweDtcbn1cblxuLmZpbHRlckhvbGRlciAuaW5wdXRTZWFyY2ggLnNlYXJjaC5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xufVxuXG4uZmlsdGVySG9sZGVyIC5pbnB1dFNlYXJjaDpob3ZlciAuc2VhcmNoLnJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNzM5Mjc7XG59XG5cbi5maWx0ZXJIb2xkZXIuZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZDMDdEO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvZ3JlZW5fZmlsdGVyX3dhdmUuc3ZnKTtcbn1cblxuLmZpbHRlckhvbGRlci5ncmVlbiAub3B0aW9uLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNjZDMDdEO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZmlsdGVySG9sZGVyLmJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvYmx1ZV9maWx0ZXJfd2F2ZS5zdmcpO1xufVxuXG4uZmlsdGVySG9sZGVyLmJsdWUgLm9wdGlvbi5hY3RpdmUge1xuICBjb2xvcjogIzMxNTRBMTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmZpbHRlckhvbGRlci5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvcmVkX2ZpbHRlcl93YXZlLnN2Zyk7XG59XG5cbi5maWx0ZXJIb2xkZXIucmVkIC5vcHRpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNFQzY3NEM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5maWx0ZXJIb2xkZXIuYmx1ZSAubmljZS1zZWxlY3QuY2F0ZWdvcmllOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmZpbHRlckhvbGRlci5ibHVlIC5uaWNlLXNlbGVjdC5jYXRlZ29yaWU6aG92ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNzM5Mjc7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlciAudWstaWNvbi5kYXRlX2NsZWFyIHtcbiAgcmlnaHQ6IDU4cHg7XG4gIHRvcDogMTlweDtcbiAgei1pbmRleDogNDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlciAudWstaWNvbi5kYXRlX2NsZWFyLmFjdGl2ZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5uZXdzQ29udGFpbmVyLnRvcE9mZnNldCB7XG4gIG1hcmdpbjogODBweCAwO1xufVxuXG4uZXZlbnREZXRhaWwgLmxvY2F0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi5ldmVudERldGFpbCAubG9jYXRpb24ud2lua2VsIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyLm5ld3Mge1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbn1cblxuLmxvY2F0aW9uSWNvbiB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBtYXJnaW4tbGVmdDogLTNweDtcbiAgY29sb3I6ICMzMTU0QTE7XG59XG5cbi5sb2NhdGlvbkljb24uYmxhY2sge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciAubG9jYXRpb25JY29uLmJsYWNrIHtcbiAgY29sb3I6ICMzMTU0QTE7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIC5ldXJvSWNvbi5wYXJraW5nIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIC5ldmVudERldGFpbCAuZXVyb0ljb24ud2F0VGVEb2VuIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIC5ldmVudERldGFpbCAucGFya2luZ0ljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMjhweDtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnREZXRhaWwgLnBhcmtpbmdJY29uOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9wYXJrZXJlbl9ibHVlLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay5wYXJraW5nIHNwYW4ubGFiZWwge1xuICB3aWR0aDogMTUwcHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay5wYXJraW5nIHNwYW4udmFsdWUge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xufVxuXG4uaXRlbUNvbHVtbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICBvcGFjaXR5OiAxO1xuICBoZWlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDE7XG59XG5cbi5pdGVtQ29sdW1uLmhpZGUge1xuICBoZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5sb2FkTW9yZUJ1dHRvbkhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmxvYWRNb3JlQnV0dG9uSG9sZGVyIC5sYWFkX21lZXIge1xuICBjb2xvcjogIzMxNTRBMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sb2FkTW9yZUJ1dHRvbkNvbnRhaW5lci5oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxvYWRNb3JlQnV0dG9uSG9sZGVyIC5sYWFkX21lZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvYmx1ZV9hcnJvdy5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgcmlnaHQ6IC0yMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ubG9hZE1vcmVCdXR0b25Ib2xkZXIgLmxhYWRfbWVlcjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uZmlsdGVyQ29udGFpbmVyLmV2ZW50RmlsdGVyIC5idXR0b25Ib2xkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zZWN0aW9uLWV2ZW5lbWVudGVuT3ZlcnppY2h0IC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogI0VDNjc0QyAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNFQzY3NEMgIWltcG9ydGFudDtcbn1cblxuLmJ1dHRvbi5maWx0ZXJCdXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICBoZWlnaHQ6IDU1cHg7XG4gIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5idXR0b24uZmlsdGVyQnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U3MzkyNztcbn1cblxuLnpvZWtzdWdnZXN0aWVzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnpvZWtzdWdnZXN0aWVzIC5sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnpvZWtzdWdnZXN0aWVzIC52YWx1ZSB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLnpvZWtzdWdnZXN0aWVzIC52YWx1ZTpob3ZlciB7XG4gIGNvbG9yOiAjRUM2NzRDO1xufVxuXG4uc2hhcmVDb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLmNvbnRlbnRfZ3JleV9ob2xkZXIge1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwcHggYXV0bztcbiAgcGFkZGluZzogOTVweCAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjdGQjtcbn1cblxuLmNvbnRlbnRfZ3JleV9ob2xkZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICByaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGN0ZCO1xufVxuXG4uY29udGVudF9ncmV5IHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIHBhZGRpbmc6IDBweCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uY29udGVudF9ncmV5IC5jb250ZW50X2Jsb2NrIHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbn1cblxuLmNvbnRlbnRfZ3JleSAuY29udGVudF9ibG9jayAub3BlbmluZ3NUaXRlbCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmNvbnRlbnRfZ3JleSAuY29udGVudF9ibG9jayAub3BlbmluZ3N0aWpkZW5UYWJlbCB7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG4uY29udGVudF9ncmV5IC5jb250ZW50X2Jsb2NrIC5vcGVuaW5nc3RpamRlblRhYmVsIC5jb2x1bW5fcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbi5zbWFsbF90ZXh0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICM5OTk7XG59XG5cbi5zbWFsbF90ZXh0LmN1c3RvbSB7XG4gIG1hcmdpbi1ib3R0b206IDdweDtcbn1cblxuLnNtYWxsX3RleHQgc3Ryb25nIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5zaWRlX2Jsb2NrIHtcbiAgcGFkZGluZzogMzBweCAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBjb2xvcjogIzAwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5zaWRlX2Jsb2NrIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2lkZV9ibG9jayAuYmxvY2tfaW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjRDMTdDO1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5zaWRlX2Jsb2NrLmthZG8gLmJsb2NrX2luZGljYXRvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNzM5Mjc7XG59XG5cbi5zaWRlX2Jsb2NrLmthZG8gLmJsb2NrX2luZGljYXRvciAuaWNvb24ge1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4uc2lkZV9ibG9jay5rYWRvIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnNpZGVfYmxvY2sgLmJsb2NrX2luZGljYXRvciAuaWNvb24ge1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuXG4uc2lkZV9ibG9jayAuYmxvY2tfaW5kaWNhdG9yIC5pY29vbi5ldXJvIHtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbn1cblxuLnNpZGVfYmxvY2sgLmJsb2NrX3RhYmxlX2lkaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4uc2lkZV9ibG9jayAuYmxvY2tfdGFibGVfaWRpY2F0b3IgLmljb29uIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbn1cblxuLnNpZGVfYmxvY2sgLmJsb2NrX2luZGljYXRvciAudWstaWNvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi5zaWRlX2Jsb2NrIC51ay1pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLnNpZGVfYmxvY2sgLnNvY2lhbF9pY29ucyB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U0ZTRlNDtcbn1cblxuLnNpZGVfYmxvY2sgLnNvY2lhbF9pY29ucyAudWstaWNvbi1idXR0b24ge1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkVDNjMzO1xuICBjb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuXG4uc2lkZV9ibG9jayAuc29jaWFsX2ljb25zIC51ay1pY29uLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzMDU0QTA7XG59XG5cbi5zaWRlX2Jsb2NrIC5jb2x1bW5fcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5zaWRlX2Jsb2NrIHRyIHtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnJlZF9idXR0b25zIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLnJlZF9idXR0b25zIGEuYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRTY3NEM7XG59XG5cbi5yZWRfYnV0dG9ucyBhLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNjNBMjg7XG59XG5cbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Qge1xuICB3aWR0aDogMTc1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUU2NzRDO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIGhlaWdodDogNjJweDtcbiAgbGluZS1oZWlnaHQ6IDYycHg7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U2M0EyODtcbn1cblxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdDo6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2ZmZjtcbiAgaGVpZ2h0OiA5cHg7XG4gIHJpZ2h0OiAyNXB4O1xuICB0b3A6IDQyJTtcbiAgd2lkdGg6IDlweDtcbn1cblxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdCAudWstaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogOXB4O1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0IC5saXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VFNjc0QztcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoNjgsIDY4LCA2OCwgMC4xMSk7XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cblxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdCAub3B0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0OmFjdGl2ZSxcbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Qub3Blbixcbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTYzQTI4O1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0IC5vcHRpb246aG92ZXIsXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0IC5vcHRpb24uZm9jdXMsXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0IC5vcHRpb24uc2VsZWN0ZWQuZm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTYzQTI4O1xufVxuXG4uZm9vdGVyX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gIHBhZGRpbmc6IDExNXB4IDAgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZm9vdGVyX2NvbnRhaW5lciAudHdlbnRlTG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG59XG5cbi5mb290ZXIge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweCAxMDBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5mb290ZXIgLmZvb3RlclRpdGVsIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5mb290ZXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mb290ZXIgYTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogLTVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuXG4uZm9vdGVyIGE6aG92ZXI6OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwJTtcbn1cblxuLmZvb3RlciB1bCB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLmZvb3RlciBzdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZm9vdGVyIC5jb250YWN0SWNvbiB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmZvb3RlckJvdHRvbSB7XG4gIG1heC13aWR0aDogMTI0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogODBweCAyMHB4IDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5kaXNjbGFpbWVyX2hvbGRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW06IGNlbnRlcjtcbn1cblxuLmNvcHlyaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMDBweDtcbn1cblxuLmRpc2NsYWltZXJfbWVudSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZGlzY2xhaW1lcl9tZW51IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZjtcbn1cblxuLmRpc2NsYWltZXJfbWVudSBsaTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4uZGlzY2xhaW1lcl9tZW51IGxpIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGlzY2xhaW1lcl9tZW51IGxpIGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgbGVmdDogNTAlO1xuICBib3R0b206IC01cHg7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbn1cblxuLmRpc2NsYWltZXJfbWVudSBsaSBhOmhvdmVyOjpiZWZvcmUge1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMCU7XG59XG5cbi5mYWNlYm9vayB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLmZvb3RlckJvdHRvbUNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZvb3RlckJvdHRvbUNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvZm9vdGVyX3dhdmUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5mb290ZXJCb3R0b20gLnNvY2lhbHMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmZvb3RlckJvdHRvbSAuc29jaWFsSWNvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4uZm9vdGVyQm90dG9tIC5zb2NpYWxJY29uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbn1cblxuLmZvb3RlckJvdHRvbSAuc29jaWFsSWNvbi5saW5rZWRpbiB7XG4gIGhlaWdodDogMjhweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG5cbi5zdGlja3lTY3JvbGxlciB7XG4gIHdpZHRoOiA2NHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogLTE1MHB4O1xuICBib3R0b206IDUwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gIHotaW5kZXg6IDEwMDAwO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc3RpY2t5U2Nyb2xsZXIuYWN0aXZlIHtcbiAgcmlnaHQ6IDMwcHg7XG59XG5cbi5zdGlja3lTY3JvbGxlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvcGlqbHRqZS5zdmdcIik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB3aWR0aDogMjNweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5mb290ZXIgLnNuZWxNZW51IC5saXN0SXRlbSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxMHB4KTtcbn1cblxuLnN0aWNreVNjcm9sbGVyOmhvdmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjI1KTtcbn1cblxuLnNlY3Rpb24td2F0VGVEb2VuIC5jb250ZW50X2Jsb2NrIC5jb21wb25lbnQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uYnV0dG9uc1RhYmxldERvd24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGF0ZXBpY2tlcl9ob2xkZXIuZXZlbnQgaW5wdXRbdHlwZT1kYXRlXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnRvZ2dsZUZpbHRlciB7XG4gIHdpZHRoOiAyMDBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VDNjc0QztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMnB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm9vdGVyRGlzY2xhaW1lckhvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG4gIG9wYWNpdHk6IDAuODtcbiAgcGFkZGluZzogMCAwIDIwcHg7XG59XG5cbi5mb290ZXJEaXNjbGFpbWVyIHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmZvb3RlckRpc2NsYWltZXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogMTAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mb290ZXJEaXNjbGFpbWVyIGltZyB7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLWxlZnQ6IDcwcHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG5cbi5mb290ZXJEaXNjbGFpbWVyIC5kaXNjbGFpbWVySG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mb290ZXJEaXNjbGFpbWVyIC5kaXNjbGFpbWVyVGVrc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wb3B1cCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAtMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiA0MHB4IDMwcHggNTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIG1heC13aWR0aDogNDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4ucG9wdXAuc2hvdyB7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLnBvcHVwX2Nsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDI1cHg7XG4gIHJpZ2h0OiAyNXB4O1xufVxuXG4ucG9wdXAgaDIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xufVxuXG4ucG9wdXAgLnRla3N0IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLmZpbGVfc2l6ZV9lcnJvciB7XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiAjZjAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLmZpbGVfc2l6ZV9lcnJvci5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZHVlX25vdGlmaWNhdGlvbiB7XG4gIHBhZGRpbmc6IDdweCAxNXB4IDlweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0U2M0EyODtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZHVlX25vdGlmaWNhdGlvbiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi5yZXN1bHRhdGVuIHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDEwMHB4O1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5yZXN1bHRhdGVuIC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiA4MHB4O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5yZXN1bHRhdGVuIC5zZWFyY2hfaXRlbSB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMxNTRBMTtcbn1cblxuLm5pZXV3c2JyaWVmSG9sZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2NztcbiAgcGFkZGluZzogOTBweCAwO1xufVxuXG4ubmlldXdzYnJpZWZDb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm5pZXV3c2JyaWVmQ29udGFpbmVyIC50ZWtzdEhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm5pZXV3c2JyaWVmQ29udGFpbmVyIC50ZWtzdEhvbGRlciBoMiB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiA0NnB4O1xufVxuXG4ubmlldXdzYnJpZWZDb250YWluZXIgLmlucHV0SG9sZGVyIHtcbiAgbWF4LXdpZHRoOiA1NzBweDtcbiAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubmlldXdzYnJpZWZDb250YWluZXIgLmlucHV0SG9sZGVyIGlucHV0IHtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMCAxODVweCAwIDMwcHg7XG59XG5cbi5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gIHdpZHRoOiAxNjVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGhlaWdodDogNTVweDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm5pZXV3c2JyaWVmQ29udGFpbmVyIC5pbnB1dEhvbGRlciBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xufVxuXG4udXBsb2FkX2Zvcm0ge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiAwcHggYXV0byAxMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4jZm90by11cGxvYWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udXBsb2FkX2Zvcm0gLmZpbGVuYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjRUU2NzRDO1xufVxuXG4udXBsb2FkX2Zvcm0gLmJ1dHRvbi51cGxvYWQuZm90b191cGxvYWQge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4udXBsb2FkX2Zvcm0gLmJ1dHRvbi51cGxvYWQuZm90b191cGxvYWQuaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzdWJtaXQtZm90byB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzdWJtaXQtZm90by5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1vYmlsZUhlYWRlckN0YSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHotaW5kZXg6IDU7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cbi5tb2JpbGVIZWFkZXJDdGEgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDEzcHggOXB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL2V2ZW50X2Jsb2NrLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubW9iaWxlSGVhZGVyQ3RhIC5pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnVpLXdpZGdldCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5OTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLnVpLXdpZGdldCBsaSB7XG4gIGNvbG9yOiAjMDAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmctdG9wOiA2cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI5cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4udWktd2lkZ2V0IGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbn1cblxuLmNvbnRlbnRfZ3JleV9ob2xkZXIgLmRpc2NsYWltZXIge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBtYXgtd2lkdGg6IDQ3MHB4O1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3Ige1xuICBtYXJnaW4tbGVmdDogNDVweDtcbn1cblxuLmxhbmd1YWdlLXNlbGVjdG9yIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgb3BhY2l0eTogMC42O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmxhbmd1YWdlLXNlbGVjdG9yIGEuYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5sYW5ndWFnZS1zZWxlY3RvciBzcGFuIHtcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDAuNjtcbiAgbWFyZ2luOiAwIDdweCAwIDZweDtcbn1cblxuLmxhbmd1YWdlLXNlbGVjdG9yLm1vYmlsZS1sYW5ndWFnZS1zZWxlY3RvciB7XG4gIG1hcmdpbi1sZWZ0OiA0NXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMzlweDtcbiAgdG9wOiAyNHB4O1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3IubW9iaWxlLWxhbmd1YWdlLXNlbGVjdG9yIGEge1xuICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLmxhbmd1YWdlLXNlbGVjdG9yLm1vYmlsZS1sYW5ndWFnZS1zZWxlY3RvciBzcGFuIHtcbiAgY29sb3I6ICMzMTU0QTE7XG59XG5cbi5uaWV1d3NicmllZkNvbnRhaW5lciBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hZHZlbnRza2FsZW5kZXJDb250YWluZXIge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczMTY3O1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWR2ZW50c0hlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1LjV2dztcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hZHZlbnRza2FsZW5kZXJDb250YWluZXIgaDEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmFkdmVudHNrYWxlbmRlckNvbnRhaW5lciAuaW50cm8ge1xuICBtYXgtd2lkdGg6IDQ3MHB4O1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5hZHZlbnRzTmlldXdzYnJpZWZjb250YWluZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmFkdmVudHNOaWV1d3NicmllZmNvbnRhaW5lci5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXgtd2lkdGg6IDQ3MHB4O1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5hZHZlbnRzTmlldXdzYnJpZWZjb250YWluZXIubmlldXdzYnJpZWZDb250YWluZXIgLmlucHV0SG9sZGVyIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmFkdmVudHNOaWV1d3NicmllZmNvbnRhaW5lci5uaWV1d3NicmllZkNvbnRhaW5lciAudGVrc3RIb2xkZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYWR2ZW50c05pZXV3c2JyaWVmY29udGFpbmVyLm5pZXV3c2JyaWVmQ29udGFpbmVyIC5mdWktdHlwZS1lbWFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi5hZHZlbnRzTmlldXdzYnJpZWZjb250YWluZXIubmlldXdzYnJpZWZDb250YWluZXIgLmZ1aS1jaGVja2JveC1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5hZHZlbnRza2FsZW5kZXJDb250YWluZXIgc3ZnLmthbGVuZGVyYm9vbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWR2ZW50IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNjtcbn1cbi5hZHZlbnQuYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xufVxuLmFkdmVudC5hY3RpdmU6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSk7XG59XG4uYWR2ZW50IC5rcmFzIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuLmFkdmVudC5jbGlja2VkIHtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uYWR2ZW50LmNsaWNrZWQgLmtyYXMge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmxha2Uge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG4uZmxha2VbeT1cIjg4XCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlODg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUuMXM7XG59XG5cbi5mbGFrZVt5PVwiNDk2XCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNDk2O1xuICBhbmltYXRpb24tZHVyYXRpb246IDE2cztcbn1cblxuLmZsYWtlW3k9XCIxMDRcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2UxMDQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTdzO1xufVxuXG4uZmxha2VbeT1cIjMxOVwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTMxOTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS41cztcbn1cblxuLmZsYWtlW3k9XCIyMjNcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2UyMjM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTYuN3M7XG59XG5cbi5mbGFrZVt5PVwiODEwXCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlODEwO1xuICBhbmltYXRpb24tZHVyYXRpb246IDE3LjJzO1xufVxuXG4uZmxha2VbeT1cIjUzN1wiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTUzNztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS4zcztcbn1cblxuLmZsYWtlW3k9XCI4NzBcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2U4NzA7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTYuNXM7XG59XG5cbi5mbGFrZVt5PVwiMTA1NFwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTEwNTQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTcuNHM7XG59XG5cbi5mbGFrZVt5PVwiNjQ2XCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNjQ2O1xuICBhbmltYXRpb24tZHVyYXRpb246IDE1LjlzO1xufVxuXG4uZmxha2VbeT1cIjcyMFwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTcyMDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNi4zcztcbn1cblxuLmZsYWtlW3k9XCI2NDRcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2U2NDQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTcuMnM7XG59XG5cbi5mbGFrZVt5PVwiMTAxOVwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTEwMTk7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUuMjVzO1xufVxuXG4uZmxha2VbeT1cIjEyMTJcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2UxMjEyO1xuICBhbmltYXRpb24tZHVyYXRpb246IDE2LjhzO1xufVxuXG4uZmxha2VbeT1cIjkxOVwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTkxOTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNy43N3M7XG59XG5cbi5mbGFrZVt5PVwiNzUxXCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNzUxO1xuICBhbmltYXRpb24tZHVyYXRpb246IDE1LjEzcztcbn1cblxuLmZsYWtlW3k9XCI2ODRcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2U2ODQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTYuNTZzO1xufVxuXG4uZmxha2VbeT1cIjU3MlwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTU3MjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNy43cztcbn1cblxuLmZsYWtlW3k9XCIzMDVcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2UzMDU7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUuMDVzO1xufVxuXG4uZmxha2VbeT1cIjQ2N1wiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTQ2NztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNi44NXM7XG59XG5cbi5mbGFrZVt5PVwiODY2XCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlODY2O1xuICBhbmltYXRpb24tZHVyYXRpb246IDE3LjE1cztcbn1cblxuLmZsYWtlW3k9XCI5MThcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2U5MTg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUuOHM7XG59XG5cbi5mbGFrZVt5PVwiNDc2XCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNDc2O1xuICBhbmltYXRpb24tZHVyYXRpb246IDE2LjU1cztcbn1cblxuLmZsYWtlW3k9XCIzMDhcIl0ge1xuICBhbmltYXRpb24tbmFtZTogZmxha2UzMDg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTcuOTVzO1xufVxuXG4uZmxha2VbeT1cIjE1NVwiXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTE1NTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS4zM3M7XG59XG5cbi5mbGFrZVt5PVwiNDkzXCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNDkzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDE2LjY2cztcbn1cblxuLmZsYWtlW3k9XCIxMTgzXCJdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlMTE4MztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNy40NnM7XG59XG5cbkBrZXlmcmFtZXMgZmxha2U0OTYge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA2NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5NzRweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDY2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDk5NXB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA2NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDk2cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDY4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NzVweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxha2U4OCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDkzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzODdweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE0MDNweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTg4cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDk2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTEwNCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDkyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzNzFweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDkzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzODdweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgOTQlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwNHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODhweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxha2UzMTkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA3OCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTU3cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA3OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTcycHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMTlweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgODElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwNHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTIyMyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDg0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyNTJweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDg1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyNjhweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgODYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIyM3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA4NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjA3cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlODEwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNDQlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjY2cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA0NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2ODFweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNDYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA0NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzk1cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNTM3IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNjMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOTM4cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA2NCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5NTRweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUzN3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA2NiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTIxcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlODcwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjA1cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA0MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MjFweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNDIlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTg3MHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA0MyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODU0cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlMTA1NCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDI4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQyMXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDM3cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDU0cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDMxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDM4cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNjQ2IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNTYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoODI5cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA1NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4NDVweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNTglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY0NnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA1OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjMwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNzIwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNTElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzU0cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA1MiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3NzFweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNTMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcyMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA1NCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzA0cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNjQ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNTYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoODMxcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA1NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4NDdweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNTglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY0NHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA1OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjI4cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlMTAxOSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQ1NnB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMzElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDcycHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDMyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDE5cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDMzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAzcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlMTIxMiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDE4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI2M3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjc5cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjEycHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDIxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTk2cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlOTE5IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMzclIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTU2cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAzOCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1NzJweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgMzklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTkxOXB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTAzcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNzUxIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNDglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzIzcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA0OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3NDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTc1MXB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA1MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzM1cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNjg0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNTMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzkwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA1NCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4MDdweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTY4NHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA1NiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjY4cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlNTcyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOTAzcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA2MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5MTlweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNjIlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTU3MnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA2MyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTU2cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlMzA1IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNzklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTE2OXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTE4NnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA4MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzA1cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDgyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yODlweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxha2U0Njcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA2NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA2OCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDE2cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDY5JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NjdweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQ1MXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTg2NiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwOXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNDElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjI1cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDQyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04NjZweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNDMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTg1MHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTkxOCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDM3JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDU1N3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMzglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTczcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDM5JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC05MThweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTkwMnB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTQ3NiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDY3JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDBweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDY4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMTZweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQ3NnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDYwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYWtlMzA4IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNzglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTE2NnB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNzklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTE4M3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzA4cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDgxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yOTJweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmxha2UxNTUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA4OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMzE5cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMzM2cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDkxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNTVweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgOTIlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzOXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTQ5MyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDY2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDk4MXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgNjclIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOTk4cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIDY4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00OTNweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgNjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQ3N3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGFrZTExODMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyOTJweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIDIxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwOHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAyMiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTE4M3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAyMyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTE2N3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLm1lbnVSZWNodHNDb250YWluZXI6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAubWVudV9jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuZm9vdGVyX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmZvb3RlckJvdHRvbUNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWFnZXMvZm9vdGVyX3dhdmUtc29saWQuc3ZnXCIpO1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmhvbWUtYmxvY2tzIHtcbiAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ob21lLWJsb2Nrczo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNjAwMHB4O1xuICBsZWZ0OiAtMTAwMHB4O1xuICB0b3A6IDA7XG4gIGhlaWdodDogNDYwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuaG9tZS1ibG9ja3MgLmJsb2suZmlyc3QtaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAyMDVweDtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ob21lLWJsb2NrcyAuYmxvayBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlLnNlY3Rpb24taG9tZXBhZ2VEZSAubGFuZGluZ3NIZWFkZXJDb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiAtMjA1cHg7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyB7XG4gIHBhZGRpbmc6IDI1cHggMzBweCA4NXB4IDMwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9ib3R0b20tZ3JlZW4uc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmJsb2staXRlbXMuaXRlbXMtMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9ib3R0b20tZ3JlZW4uc3ZnKTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zLml0ZW1zLTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2JvdHRvbS1ibHVlLnN2Zyk7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcy5pdGVtcy0xIGg0LCAuc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcy5pdGVtcy0xIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zLml0ZW1zLTMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvYm90dG9tLXJlZC5zdmcpO1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcy5pdGVtcy0zIGg0IHtcbiAgY29sb3I6ICNmZmY7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyBoNCB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIGNvbG9yOiAjMDAwO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyB1bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAxN3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvbGlqc3QtcGlqbC1ibGFjay5zdmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgOHB4IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zLml0ZW1zLTEgbGkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvbGlqc3QtcGlqbC5zdmcpO1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmJsb2staXRlbXMgbGkgYSB7XG4gIGNvbG9yOiAjMDAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyBsaSBhLnVybCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9leHRlcm5lLWxpbmstYmxhY2suc3ZnKTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zIGxpIGEuZW50cnkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvaW50ZXJuZS1saW5rLWJsYWNrLnN2Zyk7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcy5pdGVtcy0xIGxpIGEudXJsIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2V4dGVybmUtbGluay5zdmcpO1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmJsb2staXRlbXMuaXRlbXMtMSBsaSBhLmVudHJ5IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2ludGVybmUtbGluay5zdmcpO1xufVxuLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmJsb2staXRlbXMgLmJ1dHRvbkhvbGRlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyAuYnV0dG9uIHtcbiAgcGFkZGluZzogMTlweCAzMHB4IDIwcHggOTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zIC5idXR0b24gLnRla3N0IHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyAuYnV0dG9uOmhvdmVyIC50ZWtzdCB7XG4gIG9wYWNpdHk6IDA7XG59XG4uc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcyAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zIC5idXR0b24gLmljb24ge1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNDNzFGO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zIC5idXR0b246aG92ZXIgLmljb24ge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5ibG9rLWl0ZW1zIC5idXR0b24gLmljb246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2NhbGVuZGFyX3N0YXIuc3ZnKTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzM3B4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIC5sYW5ndWFnZS1zZWxlY3Rvci5tb2JpbGUtbGFuZ3VhZ2Utc2VsZWN0b3Ige1xuICByaWdodDogMjBweDtcbiAgdG9wOiAxOXB4O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmJsb2staXRlbXMge1xuICAgIHBhZGRpbmc6IDE1cHggMjBweCA1MHB4IDIwcHg7XG4gIH1cbiAgLnNpdGUtaGVuZ2Vsb1Byb21vdGllRGUgLmJsb2staXRlbXMgaDQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxuICAuc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAuYmxvay1pdGVtcy5pdGVtcy0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2l0ZS1oZW5nZWxvUHJvbW90aWVEZSAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5jb21wb25lbnQge1xuICBtYXJnaW46IDcwcHggMDtcbn1cblxuLmNvbXBvbmVudCB1bCxcbi5jb21wb25lbnQgb2wge1xuICBwYWRkaW5nLWxlZnQ6IDE3cHg7XG59XG5cbi5jb21wb25lbnQgdWwgbGksXG4uY29tcG9uZW50IG9sIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4uY29tcG9uZW50X2dyaWQge1xuICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgbWFyZ2luOiAwcHggYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uY29tcG9uZW50X2dyaWQuZnVsbCB7XG4gIG1heC13aWR0aDogMTQ0MHB4O1xufVxuXG4uY29tcG9uZW50X2dyaWQgLmltYWdlVGl0bGUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzY1QjMyRTtcbn1cblxuLmNvbXBvbmVudF9ncmlkIC50ZXh0X29uZV9jb2x1bW4ge1xuICBtYXgtd2lkdGg6IDk4NHB4O1xuICBtYXJnaW46IDBweCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmNvbXBvbmVudF9ncmlkIC50ZXh0X29uZV9jb2x1bW4gcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbXBvbmVudC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uY29tcG9uZW50LmJ1dHRvbiAuY29tcG9uZW50X2dyaWQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZXh0cmFfdG9wX21hcmdpbiB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbmJ1dHRvbi5leHRyYV90b3BfbWFyZ2luIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnF1b3RlIHNwYW4ge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLnBseXIgYnV0dG9uOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5nYWxsZXJ5IC5jb21wb25lbnRfZ3JpZCBwIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5jb21wb25lbnQgaDMge1xuICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLmNvbXBvbmVudC50ZWtzdCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDk4Mjtcbn1cblxuLmNvbXBvbmVudC50ZWtzdCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY1QjMyRTtcbn1cblxuLmNvbXBvbmVudC5xdW90ZSB7XG4gIG1hcmdpbjogLTUwcHggMCAxMDBweDtcbn1cblxuLmNvbXBvbmVudC5mb3JtdWxpZXIgZm9ybSB7XG4gIHBhZGRpbmc6IDUwcHggODBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZjZmZTtcbiAgbWF4LXdpZHRoOiA5ODVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5jb21wb25lbnQuZm9ybXVsaWVyIGlucHV0LFxuLmNvbXBvbmVudC5mb3JtdWxpZXIgdGV4dGFyZWEsXG4uY29tcG9uZW50LmZvcm11bGllciAubmljZS1zZWxlY3Qge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uY29tcG9uZW50LmZvcm11bGllciB0ZXh0YXJlYSB7XG4gIGhlaWdodDogMTI1cHg7XG59XG5cbi5jb21wb25lbnQuZm9ybXVsaWVyIGlucHV0W3R5cGU9cmFkaW9dLFxuLmNvbXBvbmVudC5mb3JtdWxpZXIgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmNvbXBvbmVudC5mb3JtdWxpZXIgLm11bHRpX29wdGlvbnMge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucXVvdGVIb2xkZXIge1xuICBtYXgtd2lkdGg6IDQ4MHB4O1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgLmN0YSB7XG4gICAgcGFkZGluZzogNTBweCA1MHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5jb21wb25lbnQucXVvdGUge1xuICAgIG1hcmdpbjogLTUwcHggMCA3NXB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg1MHB4KSB7XG4gIC5jb21wb25lbnQge1xuICAgIG1hcmdpbjogNTBweCAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jb21wb25lbnQge1xuICAgIG1hcmdpbjogMjVweCAwO1xuICB9XG4gIC5jdGEge1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgfVxuICAuY3RhIC5jdGFfdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG4gIH1cbiAgLmNvbXBvbmVudC5xdW90ZSB7XG4gICAgbWFyZ2luOiAyNXB4IDAgNzVweDtcbiAgfVxuICAucXVvdGVIb2xkZXIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuY29tcG9uZW50LmZvcm11bGllciBmb3JtIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG4gIC5jb21wb25lbnQgaDMge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgfVxufVxuLm5pY2Utc2VsZWN0IHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjMDAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGVhcjogYm90aDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIk11bGlcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBoZWlnaHQ6IDY1cHg7XG4gIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5uaWNlLXNlbGVjdDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogI2RiZGJkYjtcbn1cblxuLm5pY2Utc2VsZWN0OmFjdGl2ZSwgLm5pY2Utc2VsZWN0Lm9wZW4sIC5uaWNlLXNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzk5OTtcbn1cblxuLm5pY2Utc2VsZWN0OmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMDA7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICMwMDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEzcHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyNXB4O1xuICB0b3A6IDM5JTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA2NiUgNjYlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA2NiUgNjYlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxM3B4O1xufVxuXG4ubmljZS1zZWxlY3Qub3BlbjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG59XG5cbi5uaWNlLXNlbGVjdC5vcGVuIC5saXN0IHtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGVZKDApO1xufVxuXG4ubmljZS1zZWxlY3QuZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6ICNlZGVkZWQ7XG4gIGNvbG9yOiAjOTk5O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm5pY2Utc2VsZWN0LmRpc2FibGVkOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xufVxuXG4ubmljZS1zZWxlY3Qud2lkZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubmljZS1zZWxlY3Qud2lkZSAubGlzdCB7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm5pY2Utc2VsZWN0LnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ubmljZS1zZWxlY3QucmlnaHQgLmxpc3Qge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLm5pY2Utc2VsZWN0LnNtYWxsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xufVxuXG4ubmljZS1zZWxlY3Quc21hbGw6YWZ0ZXIge1xuICBoZWlnaHQ6IDRweDtcbiAgd2lkdGg6IDRweDtcbn1cblxuLm5pY2Utc2VsZWN0LnNtYWxsIC5vcHRpb24ge1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgbWluLWhlaWdodDogMzRweDtcbn1cblxuLm5pY2Utc2VsZWN0IC5saXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSg2OCwgNjgsIDY4LCAwLjExKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KSB0cmFuc2xhdGVZKC0yMXB4KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC43NSkgdHJhbnNsYXRlWSgtMjFweCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC43NSkgdHJhbnNsYXRlWSgtMjFweCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNSwgMCwgMCwgMS4yNSksIG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEuMjUpLCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICB6LWluZGV4OiA5O1xufVxuXG4ubmljZS1zZWxlY3QgLmxpc3Q6aG92ZXIgLm9wdGlvbjpub3QoOmhvdmVyKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi5uaWNlLXNlbGVjdCAub3B0aW9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWluLWhlaWdodDogNDBweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyOXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLm5pY2Utc2VsZWN0IC5vcHRpb246aG92ZXIsIC5uaWNlLXNlbGVjdCAub3B0aW9uLmZvY3VzLCAubmljZS1zZWxlY3QgLm9wdGlvbi5zZWxlY3RlZC5mb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG59XG5cbi5uaWNlLXNlbGVjdCAub3B0aW9uLnNlbGVjdGVkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLm5pY2Utc2VsZWN0IC5vcHRpb24uZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLm5vLWNzc3BvaW50ZXJldmVudHMgLm5pY2Utc2VsZWN0IC5saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5vLWNzc3BvaW50ZXJldmVudHMgLm5pY2Utc2VsZWN0Lm9wZW4gLmxpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaHRtbC5ub19vdmVyZmxvdyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5maXhlZF9ob2xkZXIge1xuICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDE4MnB4O1xufVxuXG4vKiNwYWdlLXdyYXBwZXIgPiAudWstc3RpY2t5LXBsYWNlaG9sZGVyIHtcbiAgICBoZWlnaHQ6IDEyMHB4ICFpbXBvcnRhbnQ7XG59Ki9cbi5tZW51X2NvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4IDA7XG59XG5cbi5tZW51X2hvbGRlciB7XG4gIG1heC13aWR0aDogMTI0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogODBweDtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfY29udGFpbmVyIHtcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIGEgaW1nIHtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIC5tZW51X3RvZ2dsZSB7XG4gIHJpZ2h0OiAxMHB4O1xufVxuXG4ubWVudV9ob2xkZXIuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbn1cblxuLm1lbnVfaG9sZGVyIC5sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDQ1cHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5tZW51X2hvbGRlciAubG9nb19tb2JpbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbi1yaWdodDogNDVweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLm1lbnVfaG9sZGVyIC5sb2dvIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZW51IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAyNHB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG59XG5cbi5tZW51IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDUwcHg7XG59XG5cbi5tZW51IHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgNzVweDtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG59XG5cbi5tZW51IHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDc1cHg7XG59XG5cbi5tZW51IGEge1xuICBjb2xvcjogIzI3MzE2Nztcbn1cblxuLm1lbnUgPiB1bCA+IGxpID4gYSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLm1lbnVfdG9nZ2xlIHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLm1lbnVfdG9nZ2xlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9waWpsdGplLnN2Z1wiKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAyM3B4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLyogY3VzdG9tIG1lbnUga2xldXJlbiBsYW5kaW5nc3BhZ2luYSAqL1xuLnNlY3Rpb24tbGFuZGluZ3NwYWdpbmEgLmZpeGVkX2hvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG59XG5cbi5zZWN0aW9uLWxhbmRpbmdzcGFnaW5hIC5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnNlY3Rpb24tbGFuZGluZ3NwYWdpbmEgLmZpeGVkX2hvbGRlci5nZWVuX2hlYWRlciAubWVudV9jb250YWluZXIgLm1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xufVxuXG4uc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyLCAuc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLmdlZW5faGVhZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIC5tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnNlY3Rpb24tbGFuZGluZ3NwYWdpbmEgLmZpeGVkX2hvbGRlci5nZWVuX2hlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWVudV9iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGNhbGMoNDE0cHggLSA1MHZ3KTtcbiAgaGVpZ2h0OiAxODZweDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvbWVudV93YXZlLnN2Zyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLm1lbnU6aG92ZXIgLm1lbnVfYmFja2dyb3VuZCxcbi5tZW51LmFjdGl2ZSAubWVudV9iYWNrZ3JvdW5kIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1lbnUudG9nZ2xlQ2xvc2UgLm1lbnVfYmFja2dyb3VuZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm1lbnUudG9nZ2xlQ2xvc2UgdWwgLnN1Ym1lbnUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xufVxuXG4ubWVudS50b2dnbGVDbG9zZSAubWVudV90b2dnbGU6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxODBkZWcpICFpbXBvcnRhbnQ7XG59XG5cbi5tZW51X2xpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWVudSB1bCAuc3VibWVudSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nLXRvcDogNjBweDtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbn1cblxuLm1lbnU6aG92ZXIgdWwgLnN1Ym1lbnUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubWVudTpob3ZlciAubWVudV90b2dnbGU6OmJlZm9yZSxcbi5tZW51LmFjdGl2ZSAubWVudV90b2dnbGU6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTtcbn1cblxuLm1lbnUgPiB1bCA+IGxpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2NztcbiAgbGVmdDogNTAlO1xuICBib3R0b206IC0yNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG59XG5cbi5tZW51ID4gdWwgPiBsaTpob3Zlcjo6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMCU7XG59XG5cbi5tZW51IHVsIC5zdWJtZW51IGxpIHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tZW51IHVsIC5zdWJtZW51IGxpIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogLTVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuXG4ubWVudSB1bCAuc3VibWVudSBsaSBhOmhvdmVyOjphZnRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwJTtcbn1cblxuLm1lbnUgdWwgLmFjdGl2ZVRvcCA+IGEge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzMxNTRBMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5tZW51OmhvdmVyIHVsIC5hY3RpdmVUb3AgPiBhIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMyNzMxNjc7XG59XG5cbi5tZW51IHVsIC5hY3RpdmVUb3A6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIGhlaWdodDogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLm1lbnU6aG92ZXIgdWwgLmFjdGl2ZVRvcDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2Nztcbn1cblxuLm1lbnUgdWwgLmFjdGl2ZSBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC01cHg7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uaGFtYnVyZ2VyX2hvbGRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICByaWdodDogMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB6LWluZGV4OiA1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG59XG5cbi5oYW1idXJnZXIge1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlciAubGluZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGxlZnQ6IDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmhhbWJ1cmdlciAubGluZS5saW5lX3RvcCB7XG4gIHRvcDogM3B4O1xuICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG59XG5cbi5tZW51LmFjdGl2ZSAuaGFtYnVyZ2VyIC5saW5lLmxpbmVfdG9wIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdG9wOiAxM3B4O1xufVxuXG4uaGFtYnVyZ2VyIC5saW5lLmxpbmVfbWlkZGxlIHtcbiAgdG9wOiBjYWxjKDUwJSAtIDJweCk7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbn1cblxuLmhhbWJ1cmdlciAubGluZS5saW5lX2JvdHRvbSB7XG4gIGJvdHRvbTogNHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG59XG5cbi5tZW51LmFjdGl2ZSAuaGFtYnVyZ2VyIC5saW5lLmxpbmVfYm90dG9tIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICBib3R0b206IDE0cHg7XG59XG5cbi5tZW51LmFjdGl2ZSAuaGFtYnVyZ2VyIC5saW5lLmxpbmVfbWlkZGxlIHtcbiAgd2lkdGg6IDA7XG4gIGxlZnQ6IDE1cHg7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi50b3BNZW51SG9sZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ2NjRhYTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjRzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDYycHg7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLnRvcE1lbnVIb2xkZXIudWstYWN0aXZlIHtcbiAgcGFkZGluZzogMTVweCAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC50b3BNZW51SG9sZGVyIHtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4vKi50b3BNZW51SG9sZGVyLmhpZGUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufSovXG4udG9wTWVudUNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTI0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMCAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciBpbnB1dCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDY2NGFhO1xuICBwYWRkaW5nOiAwIDg1cHggMCAyNXB4O1xuICBtYXJnaW4tbGVmdDogNjBweDtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjQTJCMUQ0O1xuICBoZWlnaHQ6IDMycHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMzBweCAjNDY2NGFhIGluc2V0ICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgMC42cztcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNBMkIxRDQ7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIgLnNlYXJjaEljb24sXG4ubWVudVpvZWtlbkhvbGRlciAuaW5wdXRfaG9sZGVyIC5zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxOHB4O1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDIycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjZzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIuZm9jdXMgLnNlYXJjaEljb24sXG4ubWVudVpvZWtlbkhvbGRlciAuaW5wdXRfaG9sZGVyLmZvY3VzIC5zZWFyY2gge1xuICBsZWZ0OiBjYWxjKDEwMCUgLSAzMHB4KTtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlci5mb2N1cyBpbnB1dCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlciAuc2VhcmNoSWNvbiBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIgLnNlYXJjaCBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIgLmNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNnM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlciAuY2xvc2UgaW1nIHtcbiAgd2lkdGg6IDE3cHg7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIuZm9jdXMgLmNsb3NlIHtcbiAgcmlnaHQ6IC0yMHB4O1xufVxuXG4ubWVudVJlY2h0cyB7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZW51UmVjaHRzQ29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubWVudVJlY2h0c0NvbnRhaW5lcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogNjAwMHB4O1xuICB0b3A6IC0xNXB4O1xuICBoZWlnaHQ6IDYycHg7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4ubWVudVJlY2h0cyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBtYXJnaW46IDA7XG59XG5cbi5tZW51UmVjaHRzIHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWVudVJlY2h0cyB1bCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xufVxuXG4ubWVudVJlY2h0cyB1bCBsaSBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5tb2JpZWxNZW51Wm9la2VuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbn1cblxuLnRvcE1lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYnV0dG9uLWhvbGRlci1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgLm1lbnVfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gIC5tZW51IHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjA5cHgpO1xuICB9XG4gIC5tZW51IHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDgzcHg7XG4gIH1cbiAgLm1lbnUgdWwgbGkge1xuICAgIG1hcmdpbjogMCA1NXB4O1xuICB9XG4gIC5tZW51X2JhY2tncm91bmQge1xuICAgIGxlZnQ6IC0xNTBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgLm1lbnUgdWwgbGkge1xuICAgIG1hcmdpbjogMCA0NXB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAudG9wTWVudUhvbGRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudG9wTWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUgPiB1bCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tbGVmdDogMjdweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG4gIH1cbiAgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAubWVudV9jb250YWluZXIuYWN0aXZlIC5tZW51ID4gdWwge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAubWVudSB1bCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5tZW51X2hvbGRlciAubG9nb19tb2JpbGUgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDg1cHg7XG4gIH1cbiAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfaG9sZGVyIC5sb2dvIGltZyB7XG4gICAgbWF4LXdpZHRoOiA2NXB4O1xuICB9XG4gIC5tZW51X2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcztcbiAgfVxuICAubWVudV9jb250YWluZXIuYWN0aXZlIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAwMDE7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgLm1lbnVfdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oYW1idXJnZXJfaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudTpob3ZlciB1bCAuc3VibWVudSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLm1lbnVfYmFja2dyb3VuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubWVudSA+IHVsID4gbGksXG4gIC5tZW51ID4gdWwgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB9XG4gIC5tZW51ID4gdWwgPiBsaTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm1lbnUgdWwgLmFjdGl2ZVRvcCA+IGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5tZW51OmhvdmVyIHVsIC5hY3RpdmVUb3AgPiBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAubWVudSB1bCAuc3VibWVudSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gIH1cbiAgLm1lbnUgdWwgLmhhc19zdWIuYWN0aXZlU3ViIC5zdWJtZW51IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5tZW51IHVsIC5oYXNfc3ViID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tZW51IHVsIC5oYXNfc3ViID4gYTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL2Fycm93X3doaXRlLnN2Z1wiKTtcbiAgICB3aWR0aDogMTlweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgdG9wOiA0cHg7XG4gICAgcmlnaHQ6IC0zMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG4gIC5tZW51IHVsIC5oYXNfc3ViLmFjdGl2ZVN1YiA+IGE6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIH1cbiAgLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5tZW51IHVsIC5zdWJtZW51IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLnN0aWNrX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLm1lbnUgdWwgLmFjdGl2ZVRvcDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5tZW51ID4gdWwgPiBsaSA+IGEge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLm1lbnVfY29udGFpbmVyLCAubWVudV9ob2xkZXIsIC5tZW51IHtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gIH1cbiAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5maXhlZF9ob2xkZXIudWstYWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgfVxuICAubWVudV9jb250YWluZXIuYWN0aXZlIC5tZW51X2hvbGRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAubWVudV9jb250YWluZXIuYWN0aXZlIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5tZW51X2NvbnRhaW5lci5hY3RpdmUgLm1lbnVfaG9sZGVyLCAubWVudV9jb250YWluZXIuYWN0aXZlIC5tZW51IHtcbiAgICBoZWlnaHQ6IDk1cHg7XG4gIH1cbiAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSAubWVudV9ob2xkZXIsIC5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5tZW51X2NvbnRhaW5lci5hY3RpdmUgLm1lbnUge1xuICAgIGhlaWdodDogNzVweDtcbiAgfVxuICAubWVudS5hY3RpdmUgLm1vYmllbE1lbnVab2VrZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAubW9iaWVsTWVudVpvZWtlbiB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDc3cHg7XG4gIH1cbiAgLm1vYmllbE1lbnVab2VrZW4gaW5wdXQge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NjY0YWE7XG4gICAgcGFkZGluZzogMCA4NXB4IDAgMjVweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAzMHB4ICM0NjY0YWEgaW5zZXQgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjZzO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIH1cbiAgLm1vYmllbE1lbnVab2VrZW4gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAubW9iaWVsTWVudVpvZWtlbiAuaW5wdXRfaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLm1vYmllbE1lbnVab2VrZW4gLmlucHV0X2hvbGRlciAuc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG4gIC5tb2JpZWxNZW51Wm9la2VuIC5pbnB1dF9ob2xkZXIgLnNlYXJjaCBpbWcge1xuICAgIHdpZHRoOiAxOHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5tZW51ID4gdWwgPiBsaSwgLm1lbnUgPiB1bCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuICAubWVudSA+IHVsID4gbGkgPiBhIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbiAgLm1lbnUgdWwgLmhhc19zdWIgPiBhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudSB1bCAuaGFzX3N1YiA+IGE6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLm1lbnVfaG9sZGVyIC5tZW51IHVsIHtcbiAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuICB9XG4gIC5tZW51X2hvbGRlciAubWVudSB1bC5tb2JpbGVIb29mZE1lbnUge1xuICAgIG1hcmdpbi10b3A6IDE0MHB4O1xuICB9XG4gIC5tZW51IHVsIC5oYXNfc3ViLmFjdGl2ZVN1YiAuc3VibWVudSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gIH1cbiAgLm1lbnVfY29udGFpbmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltYWdlcy9tZW51YmFja2dyb3VuZC5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIC5tZW51X2NvbnRhaW5lci5hY3RpdmU6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5tZW51X2NvbnRhaW5lci5hY3RpdmUgLm1lbnVfaG9sZGVyIHtcbiAgICB6LWluZGV4OiA1O1xuICB9XG4gIC5idXR0b24taG9sZGVyLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDYwcHggIWltcG9ydGFudDtcbiAgICAvKiY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9tZW51YmFja2dyb3VuZC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfSovXG4gIH1cbiAgYS5tZW51LWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogLTE7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmc6IDE3cHggMjBweCAxN3B4IDcwcHggIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgYS5tZW51LWJ1dHRvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL2NhZGVhdUljb24uc3ZnXCIpO1xuICAgIHdpZHRoOiA1NnB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAubWVudV9jb250YWluZXIuYWN0aXZlIGEubWVudS1idXR0b24ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5tZW51U2VhcmNoSWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA4MHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpO1xuICB9XG4gIC5maXhlZF9ob2xkZXIudWstYWN0aXZlIHtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcGx5ci1wcm9ncmVzcyB7XG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNXB4IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcGx5ci1wb3B1cCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBwbHlyLWZhZGUtaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4ucGx5ciB7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGZvbnQtZmFtaWx5OiBBdmVuaXIsIFwiQXZlbmlyIE5leHRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIlNlZ29lIFVJXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2U7XG59XG5cbi5wbHlyIGF1ZGlvLCAucGx5ciB2aWRlbyB7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyIGJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucGx5ciBidXR0b246OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wbHlyOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLnBseXItLWZ1bGwtdWkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ucGx5ci0tZnVsbC11aSAqLCAucGx5ci0tZnVsbC11aSA6OmFmdGVyLCAucGx5ci0tZnVsbC11aSA6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGEsIC5wbHlyLS1mdWxsLXVpIGJ1dHRvbiwgLnBseXItLWZ1bGwtdWkgaW5wdXQsIC5wbHlyLS1mdWxsLXVpIGxhYmVsIHtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbi5wbHlyX19iYWRnZSB7XG4gIGJhY2tncm91bmQ6ICM0ZjViNWY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogM3B4IDRweDtcbn1cblxuLnBseXItLWZ1bGwtdWkgOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBseXJfX2NhcHRpb25zIHtcbiAgYW5pbWF0aW9uOiBwbHlyLWZhZGUtaW4gMC4zcyBlYXNlO1xuICBib3R0b206IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyX19jYXB0aW9ucyAucGx5cl9fY2FwdGlvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICBsaW5lLWhlaWdodDogMTg1JTtcbiAgcGFkZGluZzogMC4yZW0gMC41ZW07XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuLnBseXJfX2NhcHRpb25zIC5wbHlyX19jYXB0aW9uIGRpdiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLnBseXJfX2NhcHRpb25zIHNwYW46ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBseXJfX2NhcHRpb25zIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wbHlyX19jYXB0aW9ucyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG59XG4ucGx5ci0tY2FwdGlvbnMtYWN0aXZlIC5wbHlyX19jYXB0aW9ucyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGx5cjpub3QoLnBseXItLWhpZGUtY29udHJvbHMpIC5wbHlyX19jb250cm9sczpub3QoOmVtcHR5KSB+IC5wbHlyX19jYXB0aW9ucyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG59XG5cbi5wbHlyX19jb250cm9sIHtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiA3cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnBseXJfX2NvbnRyb2wgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgaGVpZ2h0OiAxOHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IDE4cHg7XG59XG5cbi5wbHlyX19jb250cm9sOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLnBseXJfX2NvbnRyb2wucGx5cl9fdGFiLWZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuYS5wbHlyX19jb250cm9sIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hLnBseXJfX2NvbnRyb2w6OmFmdGVyLCBhLnBseXJfX2NvbnRyb2w6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wbHlyX19jb250cm9sLnBseXJfX2NvbnRyb2wtLXByZXNzZWQgLmljb24tLW5vdC1wcmVzc2VkLCAucGx5cl9fY29udHJvbC5wbHlyX19jb250cm9sLS1wcmVzc2VkIC5sYWJlbC0tbm90LXByZXNzZWQsIC5wbHlyX19jb250cm9sOm5vdCgucGx5cl9fY29udHJvbC0tcHJlc3NlZCkgLmljb24tLXByZXNzZWQsIC5wbHlyX19jb250cm9sOm5vdCgucGx5cl9fY29udHJvbC0tcHJlc3NlZCkgLmxhYmVsLS1wcmVzc2VkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBseXItLWF1ZGlvIC5wbHlyX19jb250cm9sLnBseXJfX3RhYi1mb2N1cywgLnBseXItLWF1ZGlvIC5wbHlyX19jb250cm9sOmhvdmVyLCAucGx5ci0tYXVkaW8gLnBseXJfX2NvbnRyb2xbYXJpYS1leHBhbmRlZD10cnVlXSB7XG4gIGJhY2tncm91bmQ6ICNFQzY3NEM7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ucGx5ci0tdmlkZW8gLnBseXJfX2NvbnRyb2wgc3ZnIHtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSk7XG59XG5cbi5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbC5wbHlyX190YWItZm9jdXMsIC5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbDpob3ZlciwgLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9sW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kOiAjRUM2NzRDO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnBseXJfX2NvbnRyb2wtLW92ZXJsYWlkIHtcbiAgYmFja2dyb3VuZDogI0VDNjc0QztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IDUwJTtcbiAgcGFkZGluZzogMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5wbHlyX19jb250cm9sLS1vdmVybGFpZCBzdmcge1xuICBsZWZ0OiAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBseXJfX2NvbnRyb2wtLW92ZXJsYWlkOmZvY3VzLCAucGx5cl9fY29udHJvbC0tb3ZlcmxhaWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRUM2NzRDO1xufVxuXG4ucGx5ci0tcGxheWluZyAucGx5cl9fY29udHJvbC0tb3ZlcmxhaWQge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9sLS1vdmVybGFpZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGx5ci0tZnVsbC11aSA6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5cl9fY29udHJvbHMge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wbHlyX19jb250cm9scyAucGx5cl9fbWVudSwgLnBseXJfX2NvbnRyb2xzIC5wbHlyX19wcm9ncmVzcywgLnBseXJfX2NvbnRyb2xzIC5wbHlyX190aW1lLCAucGx5cl9fY29udHJvbHMgLnBseXJfX3ZvbHVtZSwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2wge1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4ucGx5cl9fY29udHJvbHMgLnBseXJfX21lbnUgKyAucGx5cl9fY29udHJvbCwgLnBseXJfX2NvbnRyb2xzIC5wbHlyX19wcm9ncmVzcyArIC5wbHlyX19jb250cm9sLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbCArIC5wbHlyX19jb250cm9sLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbCArIC5wbHlyX19tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbn1cblxuLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkICsgW2RhdGEtcGx5cj1wYXVzZV0ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ucGx5cl9fY29udHJvbHM6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBseXJfX2NvbnRyb2xzIC5wbHlyX19tZW51LCAucGx5cl9fY29udHJvbHMgLnBseXJfX3Byb2dyZXNzLCAucGx5cl9fY29udHJvbHMgLnBseXJfX3RpbWUsIC5wbHlyX19jb250cm9scyAucGx5cl9fdm9sdW1lLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cbn1cbi5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbHMge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICBjb2xvcjogIzRmNWI1ZjtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9scyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDAuNykpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMjBweCA1cHggNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAwLjRzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiAzO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9scyB7XG4gICAgcGFkZGluZzogMzVweCAxMHB4IDEwcHg7XG4gIH1cbn1cbi5wbHlyLS12aWRlby5wbHlyLS1oaWRlLWNvbnRyb2xzIC5wbHlyX19jb250cm9scyB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG59XG5cbi5wbHlyIFtkYXRhLXBseXI9YWlycGxheV0sIC5wbHlyIFtkYXRhLXBseXI9Y2FwdGlvbnNdLCAucGx5ciBbZGF0YS1wbHlyPWZ1bGxzY3JlZW5dLCAucGx5ciBbZGF0YS1wbHlyPXBpcF0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5ci0tYWlycGxheS1zdXBwb3J0ZWQgW2RhdGEtcGx5cj1haXJwbGF5XSwgLnBseXItLWNhcHRpb25zLWVuYWJsZWQgW2RhdGEtcGx5cj1jYXB0aW9uc10sIC5wbHlyLS1mdWxsc2NyZWVuLWVuYWJsZWQgW2RhdGEtcGx5cj1mdWxsc2NyZWVuXSwgLnBseXItLXBpcC1zdXBwb3J0ZWQgW2RhdGEtcGx5cj1waXBdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucGx5cl9fdmlkZW8tZW1iZWQge1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBseXJfX3ZpZGVvLWVtYmVkIGlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyLS1mdWxsLXVpIC5wbHlyX192aWRlby1lbWJlZCA+IC5wbHlyX192aWRlby1lbWJlZF9fY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDI0MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zOC4yODEyNSUpO1xufVxuXG4ucGx5cl9fbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBseXJfX21lbnUgLnBseXJfX2NvbnRyb2wgc3ZnIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnBseXJfX21lbnUgLnBseXJfX2NvbnRyb2xbYXJpYS1leHBhbmRlZD10cnVlXSBzdmcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5wbHlyX19tZW51IC5wbHlyX19jb250cm9sW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLnBseXJfX3Rvb2x0aXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIHtcbiAgYW5pbWF0aW9uOiBwbHlyLXBvcHVwIDAuMnMgZWFzZTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvdHRvbTogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGNvbG9yOiAjNGY1YjVmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0zcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgPiBkaXYge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSwgd2lkdGggMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lcjo6YWZ0ZXIge1xuICBib3JkZXI6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE1cHg7XG4gIHRvcDogMTAwJTtcbiAgd2lkdGg6IDA7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgW3JvbGU9bWVudV0ge1xuICBwYWRkaW5nOiA3cHg7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgW3JvbGU9bWVudWl0ZW1dLCAucGx5cl9fbWVudV9fY29udGFpbmVyIFtyb2xlPW1lbnVpdGVtcmFkaW9dIHtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIFtyb2xlPW1lbnVpdGVtXTpmaXJzdC1jaGlsZCwgLnBseXJfX21lbnVfX2NvbnRhaW5lciBbcm9sZT1tZW51aXRlbXJhZGlvXTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzRmNWI1ZjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiA0cHggMTFweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wgPiBzcGFuIHtcbiAgYWxpZ24taXRlbXM6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sOjphZnRlciB7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wtLWZvcndhcmQge1xuICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sLS1mb3J3YXJkOjphZnRlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDc5LCA5MSwgOTUsIDAuOCk7XG4gIHJpZ2h0OiA1cHg7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wtLWZvcndhcmQucGx5cl9fdGFiLWZvY3VzOjphZnRlciwgLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tZm9yd2FyZDpob3Zlcjo6YWZ0ZXIge1xuICBib3JkZXItbGVmdC1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sLS1iYWNrIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luOiA3cHg7XG4gIG1hcmdpbi1ib3R0b206IDNweDtcbiAgcGFkZGluZy1sZWZ0OiAyOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxNHB4KTtcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tYmFjazo6YWZ0ZXIge1xuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoNzksIDkxLCA5NSwgMC44KTtcbiAgbGVmdDogN3B4O1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sLS1iYWNrOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjYjdjNWNkO1xuICBib3gtc2hhZG93OiAwIDFweCAwICNmZmY7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMXB4O1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTAwJTtcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tYmFjay5wbHlyX190YWItZm9jdXM6OmFmdGVyLCAucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sLS1iYWNrOmhvdmVyOjphZnRlciB7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb10ge1xuICBwYWRkaW5nLWxlZnQ6IDdweDtcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOjphZnRlciwgLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb106OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBoZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgd2lkdGg6IDE2cHg7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogNnB4O1xuICBsZWZ0OiAxMnB4O1xuICBvcGFjaXR5OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgd2lkdGg6IDZweDtcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dW2FyaWEtY2hlY2tlZD10cnVlXTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0VDNjc0Qztcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dW2FyaWEtY2hlY2tlZD10cnVlXTo6YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXS5wbHlyX190YWItZm9jdXM6OmJlZm9yZSwgLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX21lbnVfX3ZhbHVlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogLTVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAyOHB4O1xuICBjb2xvcjogI0VDNjc0QztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogNHB4O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgY3VycmVudENvbG9yIHZhcigtLXZhbHVlLCAwKSwgdHJhbnNwYXJlbnQgdmFyKC0tdmFsdWUsIDApKTtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoNDcsIDUyLCA2MSwgMC4yKTtcbiAgaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIHdpZHRoOiAxNHB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC01cHg7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSg0NywgNTIsIDYxLCAwLjIpO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgd2lkdGg6IDE0cHg7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogNHB4O1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC11cHBlciB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogNHB4O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSg0NywgNTIsIDYxLCAwLjIpO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgd2lkdGg6IDE0cHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otZm9jdXMtb3V0ZXIge1xuICBib3JkZXI6IDA7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdLnBseXJfX3RhYi1mb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggcmdiYSgyNiwgMTc1LCAyNTUsIDAuNSk7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdLnBseXJfX3RhYi1mb2N1czo6LW1vei1yYW5nZS10cmFjayB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCByZ2JhKDI2LCAxNzUsIDI1NSwgMC41KTtcbiAgb3V0bGluZTogMDtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV0ucGx5cl9fdGFiLWZvY3VzOjotbXMtdHJhY2sge1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggcmdiYSgyNiwgMTc1LCAyNTUsIDAuNSk7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbn1cblxuLnBseXItLWZ1bGwtdWkucGx5ci0tdmlkZW8gaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoNDcsIDUyLCA2MSwgMC4yKSwgMCAwIDAgM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuLnBseXItLWZ1bGwtdWkucGx5ci0tdmlkZW8gaW5wdXRbdHlwZT1yYW5nZV06YWN0aXZlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMiksIDAgMCAwIDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMiksIDAgMCAwIDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTgzLCAxOTcsIDIwNSwgMC42Nik7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxODMsIDE5NywgMjA1LCAwLjY2KTtcbn1cblxuLnBseXItLWZ1bGwtdWkucGx5ci0tYXVkaW8gaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTgzLCAxOTcsIDIwNSwgMC42Nik7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoNDcsIDUyLCA2MSwgMC4yKSwgMCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLnBseXItLWZ1bGwtdWkucGx5ci0tYXVkaW8gaW5wdXRbdHlwZT1yYW5nZV06YWN0aXZlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMiksIDAgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMiksIDAgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wbHlyX19wb3N0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTtcbn1cblxuLnBseXItLXN0b3BwZWQucGx5cl9fcG9zdGVyLWVuYWJsZWQgLnBseXJfX3Bvc3RlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wbHlyX190aW1lIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucGx5cl9fdGltZSArIC5wbHlyX190aW1lOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKBhFwiO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGx5cl9fdGltZSArIC5wbHlyX190aW1lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ucGx5ci0tdmlkZW8gLnBseXJfX3RpbWUge1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5wbHlyX190b29sdGlwIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvdHRvbTogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGNvbG9yOiAjNGY1YjVmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxlZnQ6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogNXB4IDcuNXB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMHB4KSBzY2FsZSgwLjgpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgMC4xcyBlYXNlLCBvcGFjaXR5IDAuMnMgMC4xcyBlYXNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB6LWluZGV4OiAyO1xufVxuXG4ucGx5cl9fdG9vbHRpcDo6YmVmb3JlIHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGJvdHRvbTogLTRweDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aWR0aDogMDtcbiAgei1pbmRleDogMjtcbn1cblxuLnBseXIgLnBseXJfX2NvbnRyb2wucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLCAucGx5ciAucGx5cl9fY29udHJvbDpob3ZlciAucGx5cl9fdG9vbHRpcCwgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSBzY2FsZSgxKTtcbn1cblxuLnBseXIgLnBseXJfX2NvbnRyb2w6aG92ZXIgLnBseXJfX3Rvb2x0aXAge1xuICB6LWluZGV4OiAzO1xufVxuXG4ucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCAucGx5cl9fdG9vbHRpcCwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgKyAucGx5cl9fY29udHJvbCAucGx5cl9fdG9vbHRpcCB7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwcHgpIHNjYWxlKDAuOCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbn1cblxuLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXA6OmJlZm9yZSwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgKyAucGx5cl9fY29udHJvbCAucGx5cl9fdG9vbHRpcDo6YmVmb3JlIHtcbiAgbGVmdDogMTZweDtcbn1cblxuLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZCAucGx5cl9fdG9vbHRpcCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMHB4KSBzY2FsZSgwLjgpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG59XG5cbi5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmxhc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXA6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxNnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbn1cblxuLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkICsgLnBseXJfX2NvbnRyb2wgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkICsgLnBseXJfX2NvbnRyb2wucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCArIC5wbHlyX19jb250cm9sOmhvdmVyIC5wbHlyX190b29sdGlwLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZC5wbHlyX190YWItZm9jdXMgLnBseXJfX3Rvb2x0aXAsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkOmhvdmVyIC5wbHlyX190b29sdGlwLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpsYXN0LWNoaWxkIC5wbHlyX190b29sdGlwLS12aXNpYmxlLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpsYXN0LWNoaWxkLnBseXJfX3RhYi1mb2N1cyAucGx5cl9fdG9vbHRpcCwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZDpob3ZlciAucGx5cl9fdG9vbHRpcCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHNjYWxlKDEpO1xufVxuXG4ucGx5ci0tdmlkZW8ge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGx5ci0tdmlkZW8ucGx5ci0tbWVudS1vcGVuIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xufVxuXG4ucGx5cl9fcHJvZ3Jlc3Mge1xuICBmbGV4OiAxO1xuICBsZWZ0OiA3cHg7XG4gIG1hcmdpbi1yaWdodDogMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGx5cl9fcHJvZ3Jlc3MgaW5wdXRbdHlwZT1yYW5nZV0sIC5wbHlyX19wcm9ncmVzc19fYnVmZmVyIHtcbiAgbWFyZ2luLWxlZnQ6IC03cHg7XG4gIG1hcmdpbi1yaWdodDogLTdweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDE0cHgpO1xufVxuXG4ucGx5cl9fcHJvZ3Jlc3MgaW5wdXRbdHlwZT1yYW5nZV0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5wbHlyX19wcm9ncmVzcyAucGx5cl9fdG9vbHRpcCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGVmdDogMDtcbn1cblxuLnBseXJfX3Byb2dyZXNzX19idWZmZXIge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG59XG5cbi5wbHlyX19wcm9ncmVzc19fYnVmZmVyOjotd2Via2l0LXByb2cgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTo6YWZ0ZXIsIC5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4LXNocmluazogMDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb106OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDZweDtcbiAgbGVmdDogMTJweDtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgb3BhY2l0eSAwLjNzIGVhc2U7XG4gIHdpZHRoOiA2cHg7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXVthcmlhLWNoZWNrZWQ9dHJ1ZV06OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNFQzY3NEM7XG59XG5cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXVthcmlhLWNoZWNrZWQ9dHJ1ZV06OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb10ucGx5cl9fdGFiLWZvY3VzOjpiZWZvcmUsIC5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19tZW51X192YWx1ZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMjhweDtcbiAgY29sb3I6ICNFQzY3NEM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBoZWlnaHQ6IDRweDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIGN1cnJlbnRDb2xvciB2YXIoLS12YWx1ZSwgMCksIHRyYW5zcGFyZW50IHZhcigtLXZhbHVlLCAwKSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMik7XG4gIGhlaWdodDogMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICB3aWR0aDogMTRweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogNHB4O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoNDcsIDUyLCA2MSwgMC4yKTtcbiAgaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIHdpZHRoOiAxNHB4O1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBoZWlnaHQ6IDRweDtcbn1cblxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFjayB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogNHB4O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtdXBwZXIge1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBoZWlnaHQ6IDRweDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2U7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQ6IDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGhlaWdodDogNHB4O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRodW1iIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoNDcsIDUyLCA2MSwgMC4yKTtcbiAgaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIHdpZHRoOiAxNHB4O1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRvb2x0aXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LWZvY3VzLW91dGVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXS5wbHlyX190YWItZm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoMjYsIDE3NSwgMjU1LCAwLjUpO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXS5wbHlyX190YWItZm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggcmdiYSgyNiwgMTc1LCAyNTUsIDAuNSk7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdLnBseXJfX3RhYi1mb2N1czo6LW1zLXRyYWNrIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoMjYsIDE3NSwgMjU1LCAwLjUpO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMiksIDAgMCAwIDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSg0NywgNTIsIDYxLCAwLjIpLCAwIDAgMCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi1tcy10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSg0NywgNTIsIDYxLCAwLjIpLCAwIDAgMCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4MywgMTk3LCAyMDUsIDAuNjYpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTgzLCAxOTcsIDIwNSwgMC42Nik7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4MywgMTk3LCAyMDUsIDAuNjYpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSksIDAgMCAwIDFweCByZ2JhKDQ3LCA1MiwgNjEsIDAuMiksIDAgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSg0NywgNTIsIDYxLCAwLjIpLCAwIDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi1tcy10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSg0NywgNTIsIDYxLCAwLjIpLCAwIDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4ucGx5cl9fcG9zdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5wbHlyLS1zdG9wcGVkLnBseXJfX3Bvc3Rlci1lbmFibGVkIC5wbHlyX19wb3N0ZXIge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ucGx5cl9fdGltZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnBseXJfX3RpbWUgKyAucGx5cl9fdGltZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigYRcIjtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBseXJfX3RpbWUgKyAucGx5cl9fdGltZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnBseXItLXZpZGVvIC5wbHlyX190aW1lIHtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ucGx5cl9fdG9vbHRpcCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3R0b206IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBjb2xvcjogIzRmNWI1ZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZWZ0OiA1MCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDVweCA3LjVweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTBweCkgc2NhbGUoMC44KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjJzIDAuMXMgZWFzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgei1pbmRleDogMjtcbn1cblxuLnBseXJfX3Rvb2x0aXA6OmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiA0cHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBib3R0b206IC00cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2lkdGg6IDA7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5wbHlyIC5wbHlyX19jb250cm9sLnBseXJfX3RhYi1mb2N1cyAucGx5cl9fdG9vbHRpcCwgLnBseXIgLnBseXJfX2NvbnRyb2w6aG92ZXIgLnBseXJfX3Rvb2x0aXAsIC5wbHlyX190b29sdGlwLS12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCkgc2NhbGUoMSk7XG59XG5cbi5wbHlyIC5wbHlyX19jb250cm9sOmhvdmVyIC5wbHlyX190b29sdGlwIHtcbiAgei1pbmRleDogMztcbn1cblxuLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkICsgLnBseXJfX2NvbnRyb2wgLnBseXJfX3Rvb2x0aXAge1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMHB4KSBzY2FsZSgwLjgpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG59XG5cbi5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkIC5wbHlyX190b29sdGlwOjpiZWZvcmUsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkICsgLnBseXJfX2NvbnRyb2wgLnBseXJfX3Rvb2x0aXA6OmJlZm9yZSB7XG4gIGxlZnQ6IDE2cHg7XG59XG5cbi5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmxhc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCkgc2NhbGUoMC44KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xufVxuXG4ucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpsYXN0LWNoaWxkIC5wbHlyX190b29sdGlwOjpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTZweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG59XG5cbi5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkIC5wbHlyX190b29sdGlwLS12aXNpYmxlLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCArIC5wbHlyX19jb250cm9sIC5wbHlyX190b29sdGlwLS12aXNpYmxlLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCArIC5wbHlyX19jb250cm9sLnBseXJfX3RhYi1mb2N1cyAucGx5cl9fdG9vbHRpcCwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgKyAucGx5cl9fY29udHJvbDpob3ZlciAucGx5cl9fdG9vbHRpcCwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLCAucGx5cl9fY29udHJvbHMgPiAucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZDpob3ZlciAucGx5cl9fdG9vbHRpcCwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZCAucGx5cl9fdG9vbHRpcC0tdmlzaWJsZSwgLnBseXJfX2NvbnRyb2xzID4gLnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZC5wbHlyX190YWItZm9jdXMgLnBseXJfX3Rvb2x0aXAsIC5wbHlyX19jb250cm9scyA+IC5wbHlyX19jb250cm9sOmxhc3QtY2hpbGQ6aG92ZXIgLnBseXJfX3Rvb2x0aXAge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTtcbn1cblxuLnBseXItLXZpZGVvIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBseXItLXZpZGVvLnBseXItLW1lbnUtb3BlbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucGx5cl9fdmlkZW8td3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbn1cblxuLnBseXJfX3Byb2dyZXNzIHtcbiAgZmxleDogMTtcbiAgbGVmdDogN3B4O1xuICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBseXJfX3Byb2dyZXNzIGlucHV0W3R5cGU9cmFuZ2VdLCAucGx5cl9fcHJvZ3Jlc3NfX2J1ZmZlciB7XG4gIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICBtYXJnaW4tcmlnaHQ6IC03cHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxNHB4KTtcbn1cblxuLnBseXJfX3Byb2dyZXNzIGlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4ucGx5cl9fcHJvZ3Jlc3MgLnBseXJfX3Rvb2x0aXAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxlZnQ6IDA7XG59XG5cbi5wbHlyX19wcm9ncmVzc19fYnVmZmVyIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xufVxuXG4ucGx5cl9fcHJvZ3Jlc3NfX2J1ZmZlcjo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kOiAwIDA7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZTtcbn1cblxuLnBseXJfX3Byb2dyZXNzX19idWZmZXI6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBtaW4td2lkdGg6IDRweDtcbn1cblxuLnBseXJfX3Byb2dyZXNzX19idWZmZXI6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgbWluLXdpZHRoOiA0cHg7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZTtcbn1cblxuLnBseXJfX3Byb2dyZXNzX19idWZmZXI6Oi1tcy1maWxsIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZTtcbn1cblxuLnBseXItLXZpZGVvIC5wbHlyX19wcm9ncmVzc19fYnVmZmVyIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuXG4ucGx5ci0tYXVkaW8gLnBseXJfX3Byb2dyZXNzX19idWZmZXIge1xuICBjb2xvcjogcmdiYSgxODMsIDE5NywgMjA1LCAwLjY2KTtcbn1cblxuLnBseXItLWxvYWRpbmcgLnBseXJfX3Byb2dyZXNzX19idWZmZXIge1xuICBhbmltYXRpb246IHBseXItcHJvZ3Jlc3MgMXMgbGluZWFyIGluZmluaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCByZ2JhKDQ3LCA1MiwgNjEsIDAuNikgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSg0NywgNTIsIDYxLCAwLjYpIDUwJSwgcmdiYSg0NywgNTIsIDYxLCAwLjYpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDI1cHg7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBseXItLXZpZGVvLnBseXItLWxvYWRpbmcgLnBseXJfX3Byb2dyZXNzX19idWZmZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuXG4ucGx5ci0tYXVkaW8ucGx5ci0tbG9hZGluZyAucGx5cl9fcHJvZ3Jlc3NfX2J1ZmZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTgzLCAxOTcsIDIwNSwgMC42Nik7XG59XG5cbi5wbHlyX192b2x1bWUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wbHlyX192b2x1bWUgaW5wdXRbdHlwZT1yYW5nZV0ge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGx5cl9fdm9sdW1lIHtcbiAgICBtYXgtd2lkdGg6IDkwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGx5cl9fdm9sdW1lIHtcbiAgICBtYXgtd2lkdGg6IDExMHB4O1xuICB9XG59XG4ucGx5ci0taXMtaW9zIC5wbHlyX192b2x1bWUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wbHlyLS1pcy1pb3MucGx5ci0tdmltZW8gW2RhdGEtcGx5cj1tdXRlXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyOmZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiB2aWRlbyB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiB2aWRlbyB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gdmlkZW8ge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wbHlyOmZ1bGxzY3JlZW4gdmlkZW8ge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGx5cjpmdWxsc2NyZWVuIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGx5cl9fdmlkZW8tZW1iZWQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fdmlkZW8tZW1iZWQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wbHlyOmZ1bGxzY3JlZW4gLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4ucGx5ci0tdmltZW8gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4ucGx5ci0tdmltZW8gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ucGx5cjpmdWxsc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBseXI6ZnVsbHNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbiArIHN2ZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbiArIHN2ZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4gKyBzdmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5cjpmdWxsc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4gKyBzdmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuLnBseXItLWhpZGUtY29udHJvbHMge1xuICBjdXJzb3I6IG5vbmU7XG59XG5cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4ucGx5ci0taGlkZS1jb250cm9scyB7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuLnBseXI6LW1zLWZ1bGxzY3JlZW4ucGx5ci0taGlkZS1jb250cm9scyB7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuLnBseXI6ZnVsbHNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xzIHtcbiAgY3Vyc29yOiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX2NhcHRpb25zIHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gIH1cbiAgLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fY2FwdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxuICAucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fY2FwdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxuICAucGx5cjpmdWxsc2NyZWVuIC5wbHlyX19jYXB0aW9ucyB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICB9XG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gdmlkZW8ge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby1lbWJlZCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuICsgc3ZnIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xzIHtcbiAgY3Vyc29yOiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX2NhcHRpb25zIHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gIH1cbn1cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiB2aWRlbyB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fdmlkZW8td3JhcHBlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4ucGx5ci0tdmltZW8gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4gKyBzdmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuLnBseXItLWhpZGUtY29udHJvbHMge1xuICBjdXJzb3I6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fY2FwdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxufVxuLnBseXI6LW1zLWZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gdmlkZW8ge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4gKyBzdmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGx5cjotbXMtZnVsbHNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xzIHtcbiAgY3Vyc29yOiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wbHlyOi1tcy1mdWxsc2NyZWVuIC5wbHlyX19jYXB0aW9ucyB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICB9XG59XG4ucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjayB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMDAwMDA7XG59XG5cbi5wbHlyLS1mdWxsc2NyZWVuLWZhbGxiYWNrIHZpZGVvIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjayAucGx5cl9fdmlkZW8td3JhcHBlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wbHlyLS1mdWxsc2NyZWVuLWZhbGxiYWNrIC5wbHlyX192aWRlby1lbWJlZCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjay5wbHlyLS12aW1lbyAucGx5cl9fdmlkZW8td3JhcHBlciB7XG4gIGhlaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnBseXItLWZ1bGxzY3JlZW4tZmFsbGJhY2sgLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjayAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuICsgc3ZnIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBseXItLWZ1bGxzY3JlZW4tZmFsbGJhY2sucGx5ci0taGlkZS1jb250cm9scyB7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjayAucGx5cl9fY2FwdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxufVxuLnBseXJfX2FkcyB7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvdHRvbTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4ucGx5cl9fYWRzID4gZGl2LCAucGx5cl9fYWRzID4gZGl2IGlmcmFtZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBseXJfX2Fkczo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQ3LCA1MiwgNjEsIDAuOCk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm90dG9tOiAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgY29udGVudDogYXR0cihkYXRhLWJhZGdlLXRleHQpO1xuICBmb250LXNpemU6IDExcHg7XG4gIHBhZGRpbmc6IDJweCA2cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB6LWluZGV4OiAzO1xufVxuXG4ucGx5cl9fYWRzOjphZnRlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wbHlyX19jdWVzIHtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogLTJweCAwIDA7XG4gIG9wYWNpdHk6IDAuODtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDNweDtcbiAgei1pbmRleDogMztcbn1cblxuLnBseXItLW5vLXRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wbHlyX19zci1vbmx5IHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuXG4ucGx5ciBbaGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuI3BhZ2Utd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNsb2FkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMDB2aDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTk5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuN3MgY3ViaWMtYmV6aWVyKDAuNzUsIDAsIDAuMzgsIDAuOTgpO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4jbG9hZGVyLmxvYWQge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNsb2FkZXIubG9hZC5sb2FkZWQge1xuICB0b3A6IDEwMCU7XG59XG5cbiNsb2FkZXIubG9hZGVkLnZpc2libGUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jbG9hZGVyLnVubG9hZHBhZ2Uge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTkyMHB4KSB7XG4gIC5zbGlkZUltYWdlSG9sZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IHVuc2V0O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE4MDBweCkge1xuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmltYWdlSG9sZGVyIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA5MDBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjUwcHgpIHtcbiAgLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDQ5MHB4O1xuICAgIHdpZHRoOiA3MDBweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmltYWdlSG9sZGVyIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA4MjBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjUwcHgpIHtcbiAgLnNsaWRlSW1hZ2VIb2xkZXIge1xuICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiA0OHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAudGl0bGVIb2xkZXIgLnN1YnRpdGVsLCAudGl0bGVIb2xkZXIgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDU2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDYzcHg7XG4gIH1cbiAgLmhlYWRlciBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDU1MHB4O1xuICB9XG4gIC5uZXdzQ29udGFpbmVyLnRvcE9mZnNldCB7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gIH1cbiAgLmFib3V0QmxvY2tzQ29udGFpbmVyLmN1c3RvbSB7XG4gICAgbWFyZ2luOiA1MHB4IDAgMDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmltYWdlSG9sZGVyIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuZGV0YWlsc19ibG9jayAuaWNvb24ge1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgdG9wOiAwcHg7XG4gIH1cbiAgLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgIHBhZGRpbmc6IDY1cHg7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWluLWhlaWdodDogMzc1cHg7XG4gIH1cbiAgLnNsaWRlSW1hZ2VIb2xkZXIgaW1nIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG4gIC5pbXByZXNzaWVIb2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xuICB9XG4gIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQzOXB4KSB7XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCB7XG4gICAgcGFkZGluZzogMCAyMHB4IDIwMHB4IDYwcHg7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5oZWFkX3Rla3N0IHtcbiAgICBwYWRkaW5nOiA1NXB4IDUwcHggMCA2MHB4O1xuICB9XG4gIC5sYW5kaW5nc0hlYWRlciAuaW50cm9Ib2xkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAucHJvZ3Jlc3NDb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIge1xuICAgIHBhZGRpbmc6IDc1cHggNzVweCA3NXB4IDA7XG4gIH1cbiAgLmFib3V0QmxvY2tzIC5zY3JvbGxlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzgwcHgpIHtcbiAgLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogNTBweCA1MHB4IDEwMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDQ1MHB4O1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCBoMSwgaDEge1xuICAgIGZvbnQtc2l6ZTogNDZweDtcbiAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgICBmb250LXNpemU6IDQ2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICBwYWRkaW5nOiA1MHB4IDQycHg7XG4gIH1cbiAgLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDQycHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM1MHB4KSB7XG4gIC5wcm9ncmVzc0NvbnRhaW5lciB7XG4gICAgYm90dG9tOiAtNTBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG4gIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5pbWFnZUhvbGRlciB7XG4gICAgbWluLWhlaWdodDogNTUwcHg7XG4gIH1cbiAgLmZpbHRlckhvbGRlciB7XG4gICAgcGFkZGluZzogNjVweCA1MHB4O1xuICB9XG4gIC5uZXdzQ29udGFpbmVyLnRvcE9mZnNldCB7XG4gICAgbWFyZ2luOiAzMHB4IDAgODBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjgwcHgpIHtcbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IHtcbiAgICBwYWRkaW5nOiAwIDIwcHggMCAyMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gICAgcGFkZGluZzogNTVweCA1MHB4IDAgMjBweDtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXJDb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNDBweCkge1xuICAudGl0bGVIb2xkZXIge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLnN0aWNreVNjcm9sbGVyIHtcbiAgICB3aWR0aDogNTRweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNTRweDtcbiAgICByaWdodDogMjBweDtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbiAgLmludHJvQ29udGFpbmVyIC5pbnRybyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG4gIC5pbnRyb0NvbnRhaW5lciAuaW50cm86OmJlZm9yZSB7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmFib3V0QmxvY2tzIC5zY3JvbGxlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sge1xuICAgIGxlZnQ6IDIwcHg7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrLmV2ZW50IHtcbiAgICBtYXJnaW46IC0xMjBweCAwIC04MHB4IDBweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmhlYWRfdGVrc3Qge1xuICAgIHBhZGRpbmc6IDAgMCAxNTBweCAwO1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayB7XG4gICAgYm90dG9tOiAtOTNweDtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gICAgcGFkZGluZzogNTVweCA1MHB4IDAgMHB4O1xuICB9XG4gIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIHtcbiAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICB9XG4gIC5hZHZlbnRza2FsZW5kZXJDb250YWluZXIgLmludHJvIHtcbiAgICBtYXgtd2lkdGg6IDM5dnc7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXJfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDAgMDtcbiAgfVxuICAuaW50cm9Db250YWluZXIgLmludHJvIHtcbiAgICBwYWRkaW5nOiA1MHB4IDIwcHg7XG4gIH1cbiAgLmV2ZW5lbWVudGVuQ3RhIHtcbiAgICBwYWRkaW5nOiA1MHB4IDIwcHg7XG4gIH1cbiAgLmFib3V0QmxvY2tzSW50cm8ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDQ1MHB4O1xuICAgIHdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG4gIC5zbGlkZUltYWdlSG9sZGVyIGltZyB7XG4gICAgaGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuaW1wcmVzc2llSG9sZGVyIHtcbiAgICBtaW4taGVpZ2h0OiA1NzBweDtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaW1hZ2VIb2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5oZWFkX3Rla3N0IHtcbiAgICBwYWRkaW5nOiA1NXB4IDBweCAwIDBweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2sge1xuICAgIGJvdHRvbTogMHB4O1xuICB9XG4gIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciBoMyB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cbiAgLm5ld3NDb250YWluZXIge1xuICAgIG1hcmdpbjogNzVweCAwIDA7XG4gIH1cbiAgLmZpbHRlckNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gIH1cbiAgLmZpbHRlckNvbnRhaW5lci5ldmVudEZpbHRlciAuYnV0dG9uSG9sZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5mb290ZXJCb3R0b20gLnNvY2lhbEljb24ge1xuICAgIGhlaWdodDogMjVweDtcbiAgfVxuICAuZm9vdGVyQm90dG9tIC5zb2NpYWxJY29uLmxpbmtlZGluIHtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cbiAgLmZhY2Vib29rIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIH1cbiAgLmZvb3RlckJvdHRvbSAuc29jaWFscyB7XG4gICAgd2lkdGg6IDE2MHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExNTBweCkge1xuICAudGl0bGVIb2xkZXIge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweCAyMHB4O1xuICAgIHdpZHRoOiA1NTBweDtcbiAgfVxuICAudGl0bGVIb2xkZXIgLnRpdGxlLCAudGl0bGVIb2xkZXIgLnN1YnRpdGVsIHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIH1cbiAgLnNlY3Rpb24tSG9tZXBhZ2UgaDQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuICAuYWJvdXRCbG9ja3MgLmFib3V0QmxvY2sgLmFib3V0QmxvY2tDb250ZW50IGg0IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCBoMSwgaDEge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBsaW5lLWhlaWdodDogNDlweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ5cHg7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuZXZlbnRzU2xpZGVySG9sZGVyIHtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggNDBweCAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuYWxsRXZlbnRzIC5hbGxFdmVudHNUZWtzdCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMgLmFsbEV2ZW50c1Rla3N0IC50ZWtzdDo6YmVmb3JlIHtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgcmlnaHQ6IC0zNXB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBhLmJhY2sge1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAuc2xpZGVJbWFnZUhvbGRlciBpbWcge1xuICAgIGhlaWdodDogNDgwcHg7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuICAuc2xpZGVUZWtzdEhvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtaW4taGVpZ2h0OiAzODBweDtcbiAgfVxuICAud29yZFNsaWRlciB7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICB9XG4gIC53b3JkU2xpZGVyIHVsIGxpIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG4gIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDUwcHggNTBweCAwO1xuICB9XG4gIC5pbnRyb0NvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwIGF1dG8gNTBweDtcbiAgfVxuICAucG9wdXAge1xuICAgIHBhZGRpbmc6IDQwcHggMzBweCA1MHB4O1xuICB9XG4gIC5tZW51IHVsIC5zdWJtZW51IHtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICB3aWR0aDogMTY4cHg7XG4gIH1cbiAgLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuaW50cm9Db250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvIDUwcHg7XG4gIH1cbiAgLmNvcHlyaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuZGV0YWlsc19ibG9ja19pbnRybyB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIC5idXR0b25zIHtcbiAgICBib3R0b206IDUwcHg7XG4gIH1cbiAgLndvcmRTbGlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgfVxuICAuc3RpY2t5U2Nyb2xsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm1lbnUgdWwgLnN1Ym1lbnUge1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxuICAubWVudSB1bCAuc3VibWVudSBsaSBhIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cbiAgLmZpeGVkX2hvbGRlciB7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICB9XG4gIC5sYW5ndWFnZS1zZWxlY3Rvci5tb2JpbGUtbGFuZ3VhZ2Utc2VsZWN0b3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCBoMSwgaDEge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQxcHg7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgfVxuICAuYWJvdXRCbG9ja3MgLmFib3V0QmxvY2sgLmFib3V0QmxvY2tDb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMHB4O1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgcmlnaHQ6IDMwcHg7XG4gICAgYm90dG9tOiA1MHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBhLmJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmltcHJlc3NpZUhvbGRlciB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gIH1cbiAgLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICBtaW4taGVpZ2h0OiAzMjBweDtcbiAgfVxuICAuc2xpZGVJbWFnZUhvbGRlciBpbWcge1xuICAgIGhlaWdodDogNDEwcHg7XG4gIH1cbiAgLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgaDMge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmNhbGxUb0FjdGlvblRla3N0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG4gIC5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Qge1xuICAgIGhlaWdodDogNTJweDtcbiAgICBsaW5lLWhlaWdodDogNTJweDtcbiAgICB3aWR0aDogMTM5cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG4gIC5yZWRfYnV0dG9ucyBhLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIH1cbiAgLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdCAub3B0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTNweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgfVxuICAuZmlsdGVySG9sZGVyIHtcbiAgICBwYWRkaW5nOiA2NXB4IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcbiAgLmRpc2NsYWltZXJfbWVudSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmRpc2NsYWltZXJfbWVudSBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrX2ludHJvIHtcbiAgICBtYXgtd2lkdGg6IDU0MHB4O1xuICB9XG4gIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciB7XG4gICAgcGFkZGluZzogMzBweCAzMHB4IDQwcHggMDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXI6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgbGVmdDogLTQwcHg7XG4gIH1cbiAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbDo6YWZ0ZXIge1xuICAgIGxlZnQ6IC00MHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCBoMSwgaDEge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAudGl0bGVIb2xkZXIgLnRpdGxlLCAudGl0bGVIb2xkZXIgLnN1YnRpdGVsIHtcbiAgICBmb250LXNpemU6IDQycHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gIH1cbiAgLnRpdGxlSG9sZGVyIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cbiAgLnBvcHVwIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxuICAucG9wdXAgLnRla3N0IHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmFib3V0QmxvY2tzIHtcbiAgICBwYWRkaW5nOiAwIDIwcHggNTBweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5Ib2xkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gIC5zbGlkZVRla3N0SG9sZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAyODBweDtcbiAgICBwYWRkaW5nOiA0MHB4IDQwcHggODBweDtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAuaW1wcmVzc2llSG9sZGVyIHtcbiAgICBtYXJnaW46IDgwcHggYXV0bztcbiAgfVxuICAuZm9vdGVyIC5mb290ZXJUaXRlbCB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBoMSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuc3VidGl0ZWwge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbiAgLndvcmRTbGlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gIH1cbiAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIGgzIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gIH1cbiAgLnF1b3RlSG9sZGVyIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cbiAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIC5jYWxsVG9BY3Rpb25UZWtzdCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG4gIGEuYnV0dG9uLCBidXR0b24uYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIH1cbiAgLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrIC5hYm91dEJsb2NrQ29udGVudCBoNCB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIC5uaWV1d3NicmllZkhvbGRlciB7XG4gICAgcGFkZGluZzogNjBweCAwO1xuICB9XG4gIC5uaWV1d3NicmllZkNvbnRhaW5lciAudGVrc3RIb2xkZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgfVxuICAubmlldXdzYnJpZWZDb250YWluZXIgLnRla3N0SG9sZGVyIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IGgxLCBoMSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuZXZlbnRDb250ZW50SG9sZGVyIGg1IHtcbiAgICBtYXJnaW46IDEwcHggMCA1cHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIC5ldmVudENvbnRlbnRIb2xkZXIgLmRhdGUge1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuc3VidGl0ZWwge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4ge1xuICAgIG1hcmdpbjogNXB4IGF1dG8gMzBweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgbGVmdDogNDBweDtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgbWluLWhlaWdodDogMTI2cHg7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2sgLmljb29uIHtcbiAgICB0b3A6IC01N3B4O1xuICB9XG4gIC5oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC50aXRsZUhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5hYm91dEJsb2Nrc1JpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbiAgLmV2ZW5lbWVudGVuSG9sZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuZXZlbnRzU2xpZGVySG9sZGVyOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmV2ZW50c1NsaWRlckhvbGRlciB7XG4gICAgcGFkZGluZzogNDBweCAyMHB4O1xuICB9XG4gIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMge1xuICAgIGhlaWdodDogMTIwcHg7XG4gIH1cbiAgLmFkZEV2ZW50Q3RhQ29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgMjBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAwIDIwcHggNTBweDtcbiAgfVxuICAubG9nb0NvbnRhaW5lciB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLmRpc2NsYWltZXJDb250YWluZXIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5jb3B5cmlnaHRIb2xkZXIge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5zb2NpYWxDb250YWluZXIge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5mb290ZXJCb3R0b21Db250YWluZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgfVxuICAuY29weXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIH1cbiAgLmRpc2NsYWltZXJfbWVudSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZm9vdGVyQm90dG9tIC5zb2NpYWxzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAyNXB4O1xuICAgIHJpZ2h0OiAyMHB4O1xuICB9XG4gIC5mb290ZXJCb3R0b20gLmZhY2Vib29rIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxuICAuZm9vdGVyQm90dG9tIC5zb2NpYWxJY29uLmxpbmtlZGluIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG4gIC5mb290ZXJCb3R0b20gLnNvY2lhbEljb24ge1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIHtcbiAgICBtaW4taGVpZ2h0OiAyMjBweDtcbiAgfVxuICAucmVkX2J1dHRvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbiAgfVxuICAucmVkX2J1dHRvbnMgYS5idXR0b24ge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG4gIC5zbGlkZVRla3N0SG9sZGVyIHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMTAwJTtcbiAgfVxuICAuc2xpZGVJbWFnZUhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiB1bnNldDtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnNsaWRlSW1hZ2VIb2xkZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5pbXByZXNzaWVIb2xkZXIgLnNsaWRlIHtcbiAgICBtaW4taGVpZ2h0OiAzNzBweDtcbiAgICBoZWlnaHQ6IHVuc2V0O1xuICB9XG4gIC5pbXByZXNzaWVIb2xkZXIge1xuICAgIG1pbi1oZWlnaHQ6IDc1MHB4O1xuICAgIG1hcmdpbjogNTBweCBhdXRvIDEwMHB4O1xuICB9XG4gIC5wcm9ncmVzc0NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICB9XG4gIC5zbGlkZVRla3N0SG9sZGVyIHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAzMjBweDtcbiAgICBwYWRkaW5nOiA1MHB4IDIwcHggMTAwcHg7XG4gIH1cbiAgLmxhbmRpbmdzSGVhZGVyIC5pbWFnZUhvbGRlciBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXIgLmltYWdlSG9sZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlcjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciB7XG4gICAgcGFkZGluZzogNTBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uSG9sZGVyIC5pbWFnZUhvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsOjphZnRlciB7XG4gICAgbGVmdDogMHB4O1xuICB9XG4gIC5mb290ZXJCb3R0b20gLnNvY2lhbHMge1xuICAgIHdpZHRoOiB1bnNldDtcbiAgfVxuICAuZmlsdGVySG9sZGVyIHtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gIH1cbiAgLmZpbHRlckhvbGRlciAudWstZ3JpZC1tYXJnaW4ge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbiAgZm9ybSAubGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbiAgLmJ1dHRvbnNUYWJsZXREb3duIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5idXR0b25zVGFibGV0RG93biAuYnV0dG9uLnRvbW9ycm93IHtcbiAgICBtYXJnaW46IDAgMTBweDtcbiAgfVxuICAvKi5tb2JpbGVUb2dnbGVGaWx0ZXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAubW9iaWxlVG9nZ2xlRmlsdGVyLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH0qL1xuICAudG9nZ2xlRmlsdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAudG9nZ2xlRmlsdGVyLmFjdGl2ZTo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDBkZWcpO1xuICB9XG4gIC50b2dnbGVGaWx0ZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvcGlqbHRqZS5zdmcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDEycHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICB9XG4gIC5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgYnV0dG9uIHtcbiAgICB3aWR0aDogMTEwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAwIDEyNXB4IDAgMTVweDtcbiAgfVxuICAubmlldXdzYnJpZWZDb250YWluZXIgLnRla3N0SG9sZGVyIGgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbiAgLnBvcHVwIC5idXR0b24ge1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cbiAgLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyLmdlZW5faGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgfVxuICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICB9XG4gIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlciAubGFuZGluZ3NUaXRsZUhvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxuICAudGl0bGVIb2xkZXIge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5pbnRyb0NvbnRhaW5lciAuaW50cm8ge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweCAzNXB4IDA7XG4gIH1cbiAgLmFib3V0QmxvY2tzIC51ay1zbGlkZXItY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICB9XG4gIC5hYm91dEJsb2Nrc1NsaWRlciAuYWJvdXRCbG9jayAuYWJvdXRCbG9ja0NvbnRlbnQge1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgcmlnaHQ6IDI1cHg7XG4gIH1cbiAgLmFib3V0QmxvY2tzU2xpZGVyIC5hYm91dEJsb2NrIC5hYm91dEJsb2NrQ29udGVudCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cbiAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyAuYWxsRXZlbnRzVGVrc3QgLnRla3N0OjpiZWZvcmUge1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIHJpZ2h0OiAyMHB4O1xuICB9XG4gIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMgLmFsbEV2ZW50c1Rla3N0IHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIH1cbiAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLm1vYmlsZUZvb3RlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG4gIC5tb2JpbGVGb290ZXIgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgLm1vYmlsZUZvb3RlciAudG9nZ2xlSXRlbSB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbiAgLm1vYmlsZUZvb3RlciAudG9nZ2xlSXRlbTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9hcnJvd193aGl0ZS5zdmcpO1xuICAgIHdpZHRoOiAxOXB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICB0b3A6IDhweDtcbiAgICByaWdodDogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAubW9iaWxlRm9vdGVyIC5hY3RpdmUgLnRvZ2dsZUl0ZW06OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxuICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW1Ib2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxN3B4IDA7XG4gIH1cbiAgLm1vYmlsZUZvb3RlciAuY29sbGFwc2VJdGVtSG9sZGVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW1Ib2xkZXIubGFzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW1Ib2xkZXIubGFzdDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5tb2JpbGVGb290ZXIgLmFjdGl2ZSAuY29sbGFwc2VJdGVtIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgfVxuICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW0gdWwge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAuZm9vdGVyX2NvbnRhaW5lciAudHdlbnRlTG9nbyB7XG4gICAgYm90dG9tOiAxNTBweDtcbiAgICB6LWluZGV4OiA1O1xuICB9XG4gIC5maWx0ZXJab2VrZW5Ib2xkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZpdHlwZXJjZW50SG9sZGVyIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbiAgLmV2ZW50Q29udGVudEhvbGRlciA+ICoge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gIH1cbiAgLmV2ZW50Q29udGVudEhvbGRlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL2Jsb2NrRG9vcnZlcndpanppbmcuc3ZnXCIpO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICByaWdodDogMjBweDtcbiAgICBib3R0b206IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgLmZpeGVkX2hvbGRlciB7XG4gICAgaGVpZ2h0OiA5NXB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAudGV4dENvbnRhaW5lciB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC50ZXh0Q29udGFpbmVyIC5oZWFkX3Rla3N0IHtcbiAgICBtYXgtd2lkdGg6IDc4dnc7XG4gICAgbWFyZ2luLXRvcDogLTUwcHg7XG4gICAgei1pbmRleDogNTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjBweCA0MHB4IDMwcHggMjBweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmltYWdlQ29udGFpbmVyIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubmV3c0ludHJvQ29udGFpbmVyIGgzLmN1c3RvbU1hcmdpbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuaW1hZ2VIb2xkZXIubW9iaWxlQmxvZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmltYWdlSG9sZGVyLm1vYmlsZUJsb2cgaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIubW9iaWxlQmxvZyB7XG4gICAgcGFkZGluZzogMjBweCAyMHB4IDgwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuZXZlbnRDb250ZW50SG9sZGVyLm1vYmlsZUJsb2cgaDUge1xuICAgIG1hcmdpbjogNXB4IDAgNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIubW9iaWxlQmxvZyA+ICoge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIubW9iaWxlQmxvZyAub21zY2hyaWp2aW5nLCAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIgLm9tc2NocmlqdmluZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiA3MHB4O1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cbiAgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDEzcHggMCByZ2IoMCAwIDAvMTAlKTtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4ge1xuICAgIG1hcmdpbjogNXB4IGF1dG8gMDtcbiAgfVxuICAubmV3c0NvbnRhaW5lci5ibHVlQmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogNDBweCAwIDA7XG4gIH1cbiAgLm5ld3NDb250YWluZXIudG9wT2Zmc2V0IHtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuICB9XG4gIC5maWx0ZXJDb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmhvbGRlcldpdGhCYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xuICB9XG4gIC5ob2xkZXJXaXRoQmFja2dyb3VuZC5vdmVybmFjaHRlbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgfVxuICAubmV3c0NvbnRhaW5lci53YXRUZURvZW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmZvb3RlckRpc2NsYWltZXIgaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogNzhweDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gIH1cbiAgLm1vYmlsZUZvb3RlciAuY29sbGFwc2VJdGVtIC5jb250YWN0SWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay5ldmVudCB7XG4gICAgbWFyZ2luOiAtNzVweCAwIC01MHB4IDIwcHg7XG4gIH1cbiAgLmFkdmVudHNIZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbiAgLmFkdmVudHNrYWxlbmRlckNvbnRhaW5lciBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTIwcHg7XG4gIH1cbiAgLmFkdmVudHNrYWxlbmRlckNvbnRhaW5lciAuaW50cm8ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuYWR2ZW50c2thbGVuZGVyQ29udGFpbmVyIHN2Zy5rYWxlbmRlcmJvb20ge1xuICAgIHdpZHRoOiAxNjAlO1xuICAgIG1heC13aWR0aDogMTYwJTtcbiAgICBtYXJnaW4tbGVmdDogLTMwdnc7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxuICAucG9wdXAge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweCAzMHB4O1xuICAgIG1heC13aWR0aDogMzIwcHg7XG4gIH1cbiAgLnBvcHVwIGgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIH1cbiAgLnRpdGxlSG9sZGVyIC50aXRsZSwgLnRpdGxlSG9sZGVyIC5zdWJ0aXRlbCB7XG4gICAgZm9udC1zaXplOiA0NnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1M3B4O1xuICB9XG4gIC5tZW51X2NvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmhlYWRfdGVrc3Qge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICBsZWZ0OiAyMHB4O1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayBzcGFuLmxhYmVsIHtcbiAgICB3aWR0aDogNzBweDtcbiAgfVxuICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sgc3Bhbi52YWx1ZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICB9XG4gIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gICAgcGFkZGluZzogMHB4IDIwcHggMCAyMHB4O1xuICB9XG4gIC5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5yZWRfYnV0dG9ucyBhLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nOiAxNnB4IDMwcHg7XG4gIH1cbiAgLnNpZGVfYmxvY2sge1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgfVxuICAuYWJvdXRCbG9ja3NDb250YWluZXIuY3VzdG9tIHtcbiAgICBtYXJnaW46IDUwcHggMCAwO1xuICB9XG4gIC5hYm91dEJsb2Nrc0ludHJvIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAuYWJvdXRCbG9ja3Mge1xuICAgIHBhZGRpbmc6IDAgMjBweCA1MHB4O1xuICB9XG4gIC51aXRnZWxpY2h0ZVdpbmtlbEhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gIC5mb290ZXIgLmZvb3RlclRpdGVsIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cbiAgLmFkZEV2ZW50Q3RhIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYWRkRXZlbnRDdGEgLnRla3N0IHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG4gIC5hYm91dEJsb2NrcyAuYWJvdXRCbG9jayAuYWJvdXRCbG9ja0NvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAuZXZlbnRDb250ZW50SG9sZGVyIC5ldmVudENhdCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG4gIC5pbnRyb0NvbnRhaW5lciAuaW50cm8sIC5ldmVuZW1lbnRlbkN0YSB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDU1cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmludHJvQ29udGFpbmVyIC5pbnRybyB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDM1cHggMDtcbiAgfVxuICAuaW50cm9Db250YWluZXIgLmludHJvOjpiZWZvcmUge1xuICAgIGxlZnQ6IC0yMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgfVxuICAucmVkX2J1dHRvbnMgYS5idXR0b24ge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmNhbGxUb0FjdGlvblRla3N0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5tZW51IHVsIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbiAgLnRpdGxlSG9sZGVyIC50aXRsZSwgLnRpdGxlSG9sZGVyIC5zdWJ0aXRlbCB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB9XG4gIC5zZWN0aW9uLUhvbWVwYWdlIGg0IHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbiAgLmFkZEV2ZW50Q3RhQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gIH1cbiAgLmFkZEV2ZW50Q3RhIC50ZWtzdCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMge1xuICAgIGhlaWdodDogODBweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgaDMge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgfVxuICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIC5vdmVydmlld0J1dHRvbiB7XG4gICAgbWFyZ2luOiAyMHB4IDIwcHggMCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTlweCAyMHB4IDIwcHggNzhweDtcbiAgfVxuICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuYWxsRXZlbnRzIC5hbGxFdmVudHNUZWtzdCB7XG4gICAgbGVmdDogMjBweDtcbiAgICB0b3A6IDMwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAuYnV0dG9uc1RhYmxldERvd24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLnRvZ2dsZUZpbHRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIC5jYWxsVG9BY3Rpb25UZWtzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIH1cbiAgLm1vYmllbE1lbnVab2VrZW4ge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC53b3JkU2xpZGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxcHg7XG4gIH1cbiAgLmZvb3Rlcl9jb250YWluZXIgLnR3ZW50ZUxvZ28ge1xuICAgIHdpZHRoOiA2MHB4O1xuICB9XG59XG4ubG9nbyAuc2hvcnQge1xuICB0cmFuc2l0aW9uOiBhbGwgMTAwMG1zO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAuc2hvcnQge1xuICB0cmFuc2l0aW9uOiBhbGwgMTAwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxMDAwbXM7XG59XG5cbi5sb2dvIC5sb25nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMTAwMG1zO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAjbGV0dGVyX2Uge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gI2xldHRlcl9uIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzIwbXM7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvICNsZXR0ZXJfZyB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDM0MG1zO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAjbGV0dGVyX2UyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzQwbXM7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvICNsZXR0ZXJfbCB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMzNW1zO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAjbGV0dGVyX28ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzNDBtcztcbn1cblxuLmxvZ28gI2xldHRlcl9lIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzgwbXM7XG59XG5cbi5sb2dvICNsZXR0ZXJfbiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDM2MG1zO1xufVxuXG4ubG9nbyAjbGV0dGVyX2cge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzNDBtcztcbn1cblxuLmxvZ28gI2xldHRlcl9lMiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMyMG1zO1xufVxuXG4ubG9nbyAjbGV0dGVyX2wge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbn1cblxuLmxvZ28gI2xldHRlcl9vIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXM7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvIC5sb25nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDBweCk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5sb2dvX21vYmlsZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvIHtcbiAgaGVpZ2h0OiA2MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYyg1MCUgLSA1NXB4KSk7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvIC5icmFja2V0IHtcbiAgdHJhbnNpdGlvbjogYWxsIDEwMDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG59XG5cbi5sb2dvIC5icmFja2V0IHtcbiAgdHJhbnNpdGlvbjogYWxsIDEwMDBtcztcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gLmJyYWNrZXQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAuc2hvcnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7XG59XG5cbi5sb2dvX21vYmlsZSAuc3RpY2t5TG9nbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvX21vYmlsZSAuc3RpY2t5TG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nb19tb2JpbGUgLnN0YXRpY0xvZ28ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5sb2dvX21vYmlsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAubG9nbyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59IiwiLy8gTmFtZTogICAgICAgICAgICBCYXNlXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmF1bHQgdmFsdWVzIGZvciBIVE1MIGVsZW1lbnRzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbGlua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWgxYCwgYHVrLWgyYCwgYHVrLWgzYCwgYHVrLWg0YCwgYHVrLWg1YCwgYHVrLWg2YFxuLy8gICAgICAgICAgICAgICAgICBgdWstaHJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJhc2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2V0IGBmb250LXNpemVgIHRvIHN1cHBvcnQgYHJlbWAgdW5pdHNcbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICogMy4gU3R5bGVcbiAqL1xuXG5odG1sIHtcbiAgICAvKiAxICovXG4gICAgZm9udC1mYW1pbHk6ICRiYXNlLWJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAkYmFzZS1ib2R5LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGJhc2UtYm9keS1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGJhc2UtYm9keS1saW5lLWhlaWdodDtcbiAgICAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgIC8qIDMgKi9cbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1ib2R5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLWJvZHktY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJhc2UtYm9keSkpIHtAaW5jbHVkZSBob29rLWJhc2UtYm9keSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHsgbWFyZ2luOiAwOyB9XG5cblxuLyogTGlua3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU3R5bGVcbiAqL1xuXG5hLFxuLnVrLWxpbmsge1xuICAgIGNvbG9yOiAkYmFzZS1saW5rLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGJhc2UtbGluay10ZXh0LWRlY29yYXRpb247XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWxpbmspKSB7QGluY2x1ZGUgaG9vay1iYXNlLWxpbmsoKTt9XG59XG5cbmE6aG92ZXIsXG4udWstbGluazpob3Zlcixcbi51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluayB7XG4gICAgY29sb3I6ICRiYXNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYmFzZS1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFzZS1saW5rLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1saW5rLWhvdmVyKCk7fVxufVxuXG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gRWRnZS5cbiAqIDIuIFRoZSBzaG9ydGhhbmQgZGVjbGFyYXRpb24gYHVuZGVybGluZSBkb3R0ZWRgIGlzIG5vdCBzdXBwb3J0ZWQgaW4gU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgICAvKiAxICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgIC8qIDIgKi9cbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHsgZm9udC13ZWlnaHQ6ICRiYXNlLXN0cm9uZy1mb250LXdlaWdodDsgfVxuXG4vKlxuICogMS4gQ29uc29sYXMgaGFzIGEgYmV0dGVyIGJhc2VsaW5lIGluIHJ1bm5pbmcgdGV4dCBjb21wYXJlZCB0byBgQ291cmllcmBcbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFN0eWxlXG4gKi9cblxuOm5vdChwcmUpID4gY29kZSxcbjpub3QocHJlKSA+IGtiZCxcbjpub3QocHJlKSA+IHNhbXAge1xuICAgIC8qIDEgKi9cbiAgICBmb250LWZhbWlseTogJGJhc2UtY29kZS1mb250LWZhbWlseTtcbiAgICAvKiAyICovXG4gICAgZm9udC1zaXplOiAkYmFzZS1jb2RlLWZvbnQtc2l6ZTtcbiAgICAvKiAzICovXG4gICAgY29sb3I6ICRiYXNlLWNvZGUtY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFzZS1jb2RlKSkge0BpbmNsdWRlIGhvb2stYmFzZS1jb2RlKCk7fVxufVxuXG4vKlxuICogRW1waGFzaXplXG4gKi9cblxuZW0geyBjb2xvcjogJGJhc2UtZW0tY29sb3I7IH1cblxuLypcbiAqIEluc2VydFxuICovXG5cbmlucyB7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtaW5zLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLWlucy1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBNYXJrXG4gKi9cblxubWFyayB7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtbWFyay1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFzZS1tYXJrLWNvbG9yO1xufVxuXG4vKlxuICogUXVvdGVcbiAqL1xuXG5xIHsgZm9udC1zdHlsZTogJGJhc2UtcXVvdGUtZm9udC1zdHlsZTsgfVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwgeyBmb250LXNpemU6ICRiYXNlLXNtYWxsLWZvbnQtc2l6ZTsgfVxuXG4vKlxuICogUHJldmVudHMgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7IHRvcDogLTAuNWVtOyB9XG5zdWIgeyBib3R0b206IC0wLjI1ZW07IH1cblxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gdGhlIGVsZW1lbnQgYW5kIHRoZSBib3R0b20gb2YgaXRzIHBhcmVudCBjb250YWluZXIuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5pZnJhbWUsXG5pbWcsXG5zdmcsXG52aWRlbyB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLypcbiAqIDEuIENvbnN0cmFpbiB0aGUgZWxlbWVudCB0byBpdHMgcGFyZW50IHdpZHRoLlxuICogMi4gUHJlc2VydmUgdGhlIGludHJpbnNpYyBhc3BlY3QgcmF0aW8gYW5kIGF1dG8tc2NhbGUgdGhlIGhlaWdodCBvZiBhbiBpbWFnZSBpZiB0aGUgYGhlaWdodGAgYXR0cmlidXRlIGlzIHByZXNlbnQuXG4gKiAzLiBUYWtlIGJvcmRlciBhbmQgcGFkZGluZyBpbnRvIGFjY291bnQuXG4gKi9cblxuY2FudmFzLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICAgIC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMiAqL1xuICAgIGhlaWdodDogYXV0bztcbiAgICAvKiAzICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLypcbiAqIERlcHJlY2F0ZWQ6IG9ubHkgbmVlZGVkIGZvciBgaW1nYCBlbGVtZW50cyB3aXRoIGB1ay1pbWdgXG4gKiAxLiBIaWRlIGBhbHRgIHRleHQgZm9yIGxhenkgbG9hZCBpbWFnZXMuXG4gKiAyLiBGaXggbGF6eSBsb2FkaW5nIGltYWdlcyBpZiBwYXJlbnQgZWxlbWVudCBpcyBzZXQgdG8gYGRpc3BsYXk6IGlubGluZWAgYW5kIGhhcyBgb3ZlcmZsb3c6IGhpZGRlbmAuXG4gKi9cblxuaW1nOm5vdChbc3JjXSkge1xuICAgIC8qIDEgKi9cbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLyogMiAqL1xuICAgIG1pbi13aWR0aDogMXB4O1xufVxuXG4vKlxuICogSWZyYW1lXG4gKiBSZW1vdmUgYm9yZGVyIGluIGFsbCBicm93c2Vyc1xuICovXG5cbmlmcmFtZSB7IGJvcmRlcjogMDsgfVxuXG5cbi8qIEJsb2NrIGVsZW1lbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIE1hcmdpbnNcbiAqL1xuXG5wLFxudWwsXG5vbCxcbmRsLFxucHJlLFxuYWRkcmVzcyxcbmZpZWxkc2V0LFxuZmlndXJlIHsgbWFyZ2luOiAwIDAgJGJhc2UtbWFyZ2luLXZlcnRpY2FsIDA7IH1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgcCxcbiogKyB1bCxcbiogKyBvbCxcbiogKyBkbCxcbiogKyBwcmUsXG4qICsgYWRkcmVzcyxcbiogKyBmaWVsZHNldCxcbiogKyBmaWd1cmUgeyBtYXJnaW4tdG9wOiAkYmFzZS1tYXJnaW4tdmVydGljYWw7IH1cblxuXG4vKiBIZWFkaW5nc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmgxLCAudWstaDEsXG5oMiwgLnVrLWgyLFxuaDMsIC51ay1oMyxcbmg0LCAudWstaDQsXG5oNSwgLnVrLWg1LFxuaDYsIC51ay1oNixcbi51ay1oZWFkaW5nLXNtYWxsLFxuLnVrLWhlYWRpbmctbWVkaXVtLFxuLnVrLWhlYWRpbmctbGFyZ2UsXG4udWstaGVhZGluZy14bGFyZ2UsXG4udWstaGVhZGluZy0yeGxhcmdlLFxuLnVrLWhlYWRpbmctM3hsYXJnZSB7XG4gICAgbWFyZ2luOiAwIDAgJGJhc2UtbWFyZ2luLXZlcnRpY2FsIDA7XG4gICAgZm9udC1mYW1pbHk6ICRiYXNlLWhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRiYXNlLWhlYWRpbmctZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRiYXNlLWhlYWRpbmctY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRiYXNlLWhlYWRpbmctdGV4dC10cmFuc2Zvcm07XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJhc2UtaGVhZGluZykpIHtAaW5jbHVkZSBob29rLWJhc2UtaGVhZGluZygpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgaDEsICogKyAudWstaDEsXG4qICsgaDIsICogKyAudWstaDIsXG4qICsgaDMsICogKyAudWstaDMsXG4qICsgaDQsICogKyAudWstaDQsXG4qICsgaDUsICogKyAudWstaDUsXG4qICsgaDYsICogKyAudWstaDYsXG4qICsgLnVrLWhlYWRpbmctc21hbGwsXG4qICsgLnVrLWhlYWRpbmctbWVkaXVtLFxuKiArIC51ay1oZWFkaW5nLWxhcmdlLFxuKiArIC51ay1oZWFkaW5nLXhsYXJnZSxcbiogKyAudWstaGVhZGluZy0yeGxhcmdlLFxuKiArIC51ay1oZWFkaW5nLTN4bGFyZ2UgeyBtYXJnaW4tdG9wOiAkYmFzZS1oZWFkaW5nLW1hcmdpbi10b3A7IH1cblxuLypcbiAqIFNpemVzXG4gKi9cblxuaDEsIC51ay1oMSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgxLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWgxKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oMSgpO31cbn1cblxuaDIsIC51ay1oMiB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMi1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgyLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWgyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oMigpO31cbn1cblxuaDMsIC51ay1oMyB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMy1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgzLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWgzKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oMygpO31cbn1cblxuaDQsIC51ay1oNCB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg0LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWg0KSkge0BpbmNsdWRlIGhvb2stYmFzZS1oNCgpO31cbn1cblxuaDUsIC51ay1oNSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg1LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWg1KSkge0BpbmNsdWRlIGhvb2stYmFzZS1oNSgpO31cbn1cblxuaDYsIC51ay1oNiB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNi1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg2LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWg2KSkge0BpbmNsdWRlIGhvb2stYmFzZS1oNigpO31cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICBoMSwgLnVrLWgxIHsgZm9udC1zaXplOiAkYmFzZS1oMS1mb250LXNpemUtbTsgfVxuICAgIGgyLCAudWstaDIgeyBmb250LXNpemU6ICRiYXNlLWgyLWZvbnQtc2l6ZS1tOyB9XG5cbn1cblxuXG4vKiBMaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnVsLFxub2wgeyBwYWRkaW5nLWxlZnQ6ICRiYXNlLWxpc3QtcGFkZGluZy1sZWZ0OyB9XG5cbi8qXG4gKiBSZXNldCBtYXJnaW4gZm9yIG5lc3RlZCBsaXN0c1xuICovXG5cbnVsID4gbGkgPiB1bCxcbnVsID4gbGkgPiBvbCxcbm9sID4gbGkgPiBvbCxcbm9sID4gbGkgPiB1bCB7IG1hcmdpbjogMDsgfVxuXG5cbi8qIERlc2NyaXB0aW9uIGxpc3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuZHQgeyBmb250LXdlaWdodDogYm9sZDsgfVxuZGQgeyBtYXJnaW4tbGVmdDogMDsgfVxuXG5cbi8qIEhvcml6b250YWwgcnVsZXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gQ2hyb21lLCBFZGdlIGFuZCBJRS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0LWFsaWduIGluIEVkZ2UgYW5kIElFLlxuICogMy4gU3R5bGVcbiAqL1xuXG5ociwgLnVrLWhyIHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogMiAqL1xuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgLyogMyAqL1xuICAgIG1hcmdpbjogMCAwICRiYXNlLWhyLW1hcmdpbi12ZXJ0aWNhbCAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAkYmFzZS1oci1ib3JkZXItd2lkdGggc29saWQgJGJhc2UtaHItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWhyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1ocigpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgaHIsXG4qICsgLnVrLWhyIHsgbWFyZ2luLXRvcDogJGJhc2UtaHItbWFyZ2luLXZlcnRpY2FsOyB9XG5cblxuLyogQWRkcmVzc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmFkZHJlc3MgeyBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuXG4vKiBCbG9ja3F1b3Rlc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRiYXNlLWJsb2NrcXVvdGUtbWFyZ2luLXZlcnRpY2FsIDA7XG4gICAgZm9udC1zaXplOiAkYmFzZS1ibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGJhc2UtYmxvY2txdW90ZS1saW5lLWhlaWdodDtcbiAgICBmb250LXN0eWxlOiAkYmFzZS1ibG9ja3F1b3RlLWZvbnQtc3R5bGU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJhc2UtYmxvY2txdW90ZSkpIHtAaW5jbHVkZSBob29rLWJhc2UtYmxvY2txdW90ZSgpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgYmxvY2txdW90ZSB7IG1hcmdpbi10b3A6ICRiYXNlLWJsb2NrcXVvdGUtbWFyZ2luLXZlcnRpY2FsOyB9XG5cbi8qXG4gKiBDb250ZW50XG4gKi9cblxuYmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZSB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuYmxvY2txdW90ZSBmb290ZXIge1xuICAgIG1hcmdpbi10b3A6ICRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLW1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkYmFzZS1ibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1ibG9ja3F1b3RlLWZvb3RlcigpO31cbn1cblxuXG4vKiBQcmVmb3JtYXR0ZWQgdGV4dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICAgIGZvbnQ6ICRiYXNlLXByZS1mb250LXNpemUgdW5xdW90ZShcIi9cIikgJGJhc2UtcHJlLWxpbmUtaGVpZ2h0ICRiYXNlLXByZS1mb250LWZhbWlseTtcbiAgICBjb2xvcjogJGJhc2UtcHJlLWNvbG9yO1xuICAgIC1tb3otdGFiLXNpemU6IDQ7XG4gICAgdGFiLXNpemU6IDQ7XG4gICAgLyogMSAqL1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLXByZSkpIHtAaW5jbHVkZSBob29rLWJhc2UtcHJlKCk7fVxufVxuXG5wcmUgY29kZSB7IGZvbnQtZmFtaWx5OiAkYmFzZS1wcmUtZm9udC1mYW1pbHk7IH1cblxuXG4vKiBGb2N1c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbjpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuOmZvY3VzLXZpc2libGUgeyBvdXRsaW5lOiAkYmFzZS1mb2N1cy1vdXRsaW5lLXdpZHRoICRiYXNlLWZvY3VzLW91dGxpbmUtc3R5bGUgJGJhc2UtZm9jdXMtb3V0bGluZTsgfVxuXG5cbi8qIFNlbGVjdGlvbiBwc2V1ZG8tZWxlbWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1zZWxlY3Rpb24tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhc2Utc2VsZWN0aW9uLWNvbG9yO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG5cbi8qIEhUTUw1IGVsZW1lbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5kZXRhaWxzLCAvKiAxICovXG5tYWluIHsgLyogMiAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkgeyBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cbi8qIFBhc3MgbWVkaWEgYnJlYWtwb2ludHMgdG8gSlNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQnJlYWtwb2ludHNcbiAqL1xuXG46cm9vdCB7XG4gICAgLS11ay1icmVha3BvaW50LXM6ICN7JGJyZWFrcG9pbnQtc21hbGx9O1xuICAgIC0tdWstYnJlYWtwb2ludC1tOiAjeyRicmVha3BvaW50LW1lZGl1bX07XG4gICAgLS11ay1icmVha3BvaW50LWw6ICN7JGJyZWFrcG9pbnQtbGFyZ2V9O1xuICAgIC0tdWstYnJlYWtwb2ludC14bDogI3skYnJlYWtwb2ludC14bGFyZ2V9O1xufVxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1iYXNlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtYm9keSgpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtbGluaygpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtbGluay1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtY29kZSgpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaGVhZGluZygpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaDEoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWgyKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1oMygpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaDQoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWg1KCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1oNigpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaHIoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWJsb2NrcXVvdGUoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1wcmUoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1saW5rKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWxpbmstaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtY29kZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oZWFkaW5nKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgxKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgzKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg1KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg2KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtYmxvY2txdW90ZS1mb290ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaHIoKXt9XG4iLCIkZ2xvYmFsLW1hcmdpbjogMjBweCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taXRlbS1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRpdGxlLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kZ2xvYmFsLWVtcGhhc2lzLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJGFjY29yZGlvbi10aXRsZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRnbG9iYWwtY29sb3I6ICM2NjYgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRpdGxlLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb250ZW50LW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGdsb2JhbC1pbnZlcnNlLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1hY2NvcmRpb24tdGl0bGUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWdsb2JhbC1jb2xvcjogcmdiYSgkZ2xvYmFsLWludmVyc2UtY29sb3IsIDAuNykgIWRlZmF1bHQ7XG4kaW52ZXJzZS1hY2NvcmRpb24tdGl0bGUtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmc6IDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy1yaWdodDogJGFsZXJ0LXBhZGRpbmcgKyAxNHB4ICFkZWZhdWx0O1xuJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kOiAjZjhmOGY4ICFkZWZhdWx0O1xuJGFsZXJ0LWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS10b3A6ICRhbGVydC1wYWRkaW5nICsgNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLXJpZ2h0OiAkYWxlcnQtcGFkZGluZyAhZGVmYXVsdDtcbiRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kOiAjMWU4N2YwICFkZWZhdWx0O1xuJGFsZXJ0LXByaW1hcnktYmFja2dyb3VuZDogbGlnaHRlbihtaXgod2hpdGUsICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kLCA0MCUpLCAyMCUpICFkZWZhdWx0O1xuJGFsZXJ0LXByaW1hcnktY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQ6ICMzMmQyOTYgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1iYWNrZ3JvdW5kOiBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQsIDQwJSksIDI1JSkgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1jb2xvcjogJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZDogI2ZhYTA1YSAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJhY2tncm91bmQ6IGxpZ2h0ZW4obWl4KHdoaXRlLCAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCwgNDUlKSwgMTUlKSAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWNvbG9yOiAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQ6ICNmMDUwNmUgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJhY2tncm91bmQ6IGxpZ2h0ZW4obWl4KHdoaXRlLCAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kLCA0MCUpLCAyMCUpICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1jb2xvcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRnbG9iYWwtZ3V0dGVyOiAzMHB4ICFkZWZhdWx0O1xuJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRhbGlnbi1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGdsb2JhbC1tZWRpdW0tZ3V0dGVyOiA0MHB4ICFkZWZhdWx0O1xuJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRhbmltYXRpb24tZHVyYXRpb246IDAuNXMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWZhZGUtZHVyYXRpb246IDAuOHMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLXN0cm9rZS1kdXJhdGlvbjogMnMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWtlbmJ1cm5zLWR1cmF0aW9uOiAxNXMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWZhc3QtZHVyYXRpb246IDAuMXMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZTogMTBweCAhZGVmYXVsdDtcbiRhbmltYXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZTogNTBweCAhZGVmYXVsdDtcbiRnbG9iYWwtbGFyZ2UtbWFyZ2luOiA3MHB4ICFkZWZhdWx0O1xuJGFydGljbGUtbWFyZ2luLXRvcDogJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kZ2xvYmFsLTJ4bGFyZ2UtZm9udC1zaXplOiAyLjYyNXJlbSAhZGVmYXVsdDtcbiRhcnRpY2xlLXRpdGxlLWZvbnQtc2l6ZS1tOiAkZ2xvYmFsLTJ4bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGFydGljbGUtdGl0bGUtZm9udC1zaXplOiAkYXJ0aWNsZS10aXRsZS1mb250LXNpemUtbSAqIDAuODUgIWRlZmF1bHQ7XG4kYXJ0aWNsZS10aXRsZS1saW5lLWhlaWdodDogMS4yICFkZWZhdWx0O1xuJGdsb2JhbC1zbWFsbC1mb250LXNpemU6IDAuODc1cmVtICFkZWZhdWx0O1xuJGFydGljbGUtbWV0YS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGFydGljbGUtbWV0YS1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGdsb2JhbC1tdXRlZC1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3I6IHJnYmEoJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuJGludmVyc2UtYXJ0aWNsZS1tZXRhLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZ2xvYmFsLWJhY2tncm91bmQ6ICNmZmYgIWRlZmF1bHQ7XG4kYmFja2dyb3VuZC1kZWZhdWx0LWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYWNrZ3JvdW5kLW11dGVkLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYWNrZ3JvdW5kLXByaW1hcnktYmFja2dyb3VuZDogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAjMjIyICFkZWZhdWx0O1xuJGJhY2tncm91bmQtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYmFkZ2Utc2l6ZTogMThweCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXZlcnRpY2FsOiAwICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmctaG9yaXpvbnRhbDogNXB4ICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJGJhZGdlLWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC1zaXplOiAxMXB4ICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZDogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFkZ2UtYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFkZ2UtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtYm9keS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZ2xvYmFsLWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWZvbnQtZmFtaWx5OiAkZ2xvYmFsLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJhc2UtYm9keS1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJGdsb2JhbC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZ2xvYmFsLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJhc2UtYm9keS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRnbG9iYWwtbGluay1jb2xvcjogIzFlODdmMCAhZGVmYXVsdDtcbiRiYXNlLWxpbmstY29sb3I6ICRnbG9iYWwtbGluay1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWxpbmstdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuJGdsb2JhbC1saW5rLWhvdmVyLWNvbG9yOiAjMGY2ZWNkICFkZWZhdWx0O1xuJGJhc2UtbGluay1ob3Zlci1jb2xvcjogJGdsb2JhbC1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtbGluay1ob3Zlci10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcbiRiYXNlLXN0cm9uZy1mb250LXdlaWdodDogYm9sZGVyICFkZWZhdWx0O1xuJGJhc2UtY29kZS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtY29kZS1mb250LWZhbWlseTogQ29uc29sYXMsIG1vbmFjbywgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGJhc2UtY29kZS1jb2xvcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYXNlLWVtLWNvbG9yOiAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhc2UtaW5zLWJhY2tncm91bmQ6ICNmZmQgIWRlZmF1bHQ7XG4kYmFzZS1pbnMtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1tYXJrLWJhY2tncm91bmQ6ICNmZmQgIWRlZmF1bHQ7XG4kYmFzZS1tYXJrLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtcXVvdGUtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuJGJhc2Utc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG4kYmFzZS1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGJhc2UtaGVhZGluZy1mb250LWZhbWlseTogJGdsb2JhbC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1oZWFkaW5nLXRleHQtdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xuJGdsb2JhbC1tZWRpdW0tbWFyZ2luOiA0MHB4ICFkZWZhdWx0O1xuJGJhc2UtaGVhZGluZy1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1lZGl1bS1tYXJnaW4gIWRlZmF1bHQ7XG4kYmFzZS1oMS1mb250LXNpemUtbTogJGdsb2JhbC0yeGxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWgxLWZvbnQtc2l6ZTogJGJhc2UtaDEtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0O1xuJGJhc2UtaDEtbGluZS1oZWlnaHQ6IDEuMiAhZGVmYXVsdDtcbiRnbG9iYWwteGxhcmdlLWZvbnQtc2l6ZTogMnJlbSAhZGVmYXVsdDtcbiRiYXNlLWgyLWZvbnQtc2l6ZS1tOiAkZ2xvYmFsLXhsYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oMi1mb250LXNpemU6ICRiYXNlLWgyLWZvbnQtc2l6ZS1tICogMC44NSAhZGVmYXVsdDtcbiRiYXNlLWgyLWxpbmUtaGVpZ2h0OiAxLjMgIWRlZmF1bHQ7XG4kZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZTogMS41cmVtICFkZWZhdWx0O1xuJGJhc2UtaDMtZm9udC1zaXplOiAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWgzLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kYmFzZS1oNC1mb250LXNpemU6ICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWg0LWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kYmFzZS1oNS1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtaDUtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRiYXNlLWg2LWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oNi1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGJhc2UtbGlzdC1wYWRkaW5nLWxlZnQ6IDMwcHggIWRlZmF1bHQ7XG4kYmFzZS1oci1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGdsb2JhbC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRiYXNlLWhyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZ2xvYmFsLWJvcmRlcjogI2U1ZTVlNSAhZGVmYXVsdDtcbiRiYXNlLWhyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWZvbnQtc2l6ZTogJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLW1hcmdpbi12ZXJ0aWNhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kZ2xvYmFsLXNtYWxsLW1hcmdpbjogMTBweCAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLW1hcmdpbi10b3A6ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kYmFzZS1wcmUtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLXByZS1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWZvbnQtZmFtaWx5OiAkYmFzZS1jb2RlLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtZm9jdXMtb3V0bGluZS13aWR0aDogMnB4ICFkZWZhdWx0O1xuJGJhc2UtZm9jdXMtb3V0bGluZS1zdHlsZTogZG90dGVkICFkZWZhdWx0O1xuJGJhc2UtZm9jdXMtb3V0bGluZTogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWZvY3VzLW91dGxpbmUtb2Zmc2V0OiAxcHggIWRlZmF1bHQ7XG4kYmFzZS1zZWxlY3Rpb24tYmFja2dyb3VuZDogIzM5ZiAhZGVmYXVsdDtcbiRiYXNlLXNlbGVjdGlvbi1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1saW5rLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1iYXNlLWxpbmstaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtY29kZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1lbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1oZWFkaW5nLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtYm9yZGVyOiByZ2JhKCRnbG9iYWwtaW52ZXJzZS1jb2xvciwgMC4yKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtaHItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1mb2N1cy1vdXRsaW5lOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiBcIi9cIiAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw6IDIwcHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZvbnQtc2l6ZTogJGJyZWFkY3J1bWItaXRlbS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1icmVhZGNydW1iLWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGdsb2JhbC1jb250cm9sLWhlaWdodDogNDBweCAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRidXR0b24tbGluZS1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1oZWlnaHQgLSAoJGJ1dHRvbi1ib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDtcbiRnbG9iYWwtY29udHJvbC1zbWFsbC1oZWlnaHQ6IDMwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLXNtYWxsLWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWNvbnRyb2wtc21hbGwtaGVpZ2h0IC0gKCRidXR0b24tYm9yZGVyLXdpZHRoICogMikgIWRlZmF1bHQ7XG4kZ2xvYmFsLWNvbnRyb2wtbGFyZ2UtaGVpZ2h0OiA1NXB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1saW5lLWhlaWdodDogJGdsb2JhbC1jb250cm9sLWxhcmdlLWhlaWdodCAtICgkYnV0dG9uLWJvcmRlci13aWR0aCAqIDIpICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGdsb2JhbC1zbWFsbC1ndXR0ZXI6IDE1cHggIWRlZmF1bHQ7XG4kYnV0dG9uLXNtYWxsLXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1ob3Zlci1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1ob3Zlci1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kaXNhYmxlZC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1kaXNhYmxlZC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tbGluay1saW5lLWhlaWdodDogJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidXR0b24tbGluay1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tbGluay1ob3Zlci1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tbGluay1ob3Zlci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmstZGlzYWJsZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1hY3RpdmUtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGludmVyc2UtYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkaW52ZXJzZS1idXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXRleHQtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi10ZXh0LWRpc2FibGVkLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tbGluay1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLWxpbmstaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWwtbDogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogcm91bmQoKCRnbG9iYWwtZ3V0dGVyICogMC41KSkgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLWw6IHJvdW5kKCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcbiRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWw6ICgkZ2xvYmFsLWd1dHRlciAqIDAuNSkgIWRlZmF1bHQ7XG4kY2FyZC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsLWw6IHJvdW5kKCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC1sYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGNhcmQtYmFkZ2UtdG9wOiAxNXB4ICFkZWZhdWx0O1xuJGNhcmQtYmFkZ2UtcmlnaHQ6IDE1cHggIWRlZmF1bHQ7XG4kY2FyZC1iYWRnZS1oZWlnaHQ6IDIycHggIWRlZmF1bHQ7XG4kY2FyZC1iYWRnZS1wYWRkaW5nLWhvcml6b250YWw6IDEwcHggIWRlZmF1bHQ7XG4kY2FyZC1iYWRnZS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLWJhZGdlLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1iYWRnZS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNhcmQtaG92ZXItYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC10aXRsZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtaG92ZXItYmFja2dyb3VuZDogJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1jb2xvci1tb2RlOiBkYXJrICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktdGl0bGUtY29sb3I6ICRjYXJkLXByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICRjYXJkLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktYmFja2dyb3VuZDogJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LXRpdGxlLWNvbG9yOiAkY2FyZC1zZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDogJGNhcmQtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogcm91bmQoKCRnbG9iYWwtbWFyZ2luICogMC42NjY2NykpICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogcm91bmQoKCRnbG9iYWwtbWFyZ2luICogMC42NjY2NykpICFkZWZhdWx0O1xuJGdsb2JhbC1sYXJnZS1ndXR0ZXI6IDcwcHggIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sOiAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sOiAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwtbDogJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sOiByb3VuZCgoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDogJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sOiByb3VuZCgoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgKiAwLjUpKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWNhcmQtYmFkZ2UtYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWNhcmQtYmFkZ2UtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGNsb3NlLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtY2xvc2UtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWNsb3NlLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kY29sdW1uLWd1dHRlcjogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY29sdW1uLWd1dHRlci1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY29sdW1uLWRpdmlkZXItcnVsZS1jb2xvcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kY29sdW1uLWRpdmlkZXItcnVsZS13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGludmVyc2UtY29sdW1uLWRpdmlkZXItcnVsZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRjb21tZW50LWhlYWRlci1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjb21tZW50LXRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGNvbW1lbnQtdGl0bGUtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRjb21tZW50LW1ldGEtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb21tZW50LW1ldGEtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRjb21tZW50LW1ldGEtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kY29tbWVudC1saXN0LW1hcmdpbi10b3A6ICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJGNvbW1lbnQtbGlzdC1wYWRkaW5nLWxlZnQ6IDMwcHggIWRlZmF1bHQ7XG4kY29tbWVudC1saXN0LXBhZGRpbmctbGVmdC1tOiAxMDBweCAhZGVmYXVsdDtcbiRjb250YWluZXItbWF4LXdpZHRoOiAxMjAwcHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLXhzbWFsbC1tYXgtd2lkdGg6IDc1MHB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci1zbWFsbC1tYXgtd2lkdGg6IDkwMHB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci1sYXJnZS1tYXgtd2lkdGg6IDE0MDBweCAhZGVmYXVsdDtcbiRjb250YWluZXIteGxhcmdlLW1heC13aWR0aDogMTYwMHB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsLW06ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjb3VudGRvd24tbnVtYmVyLWxpbmUtaGVpZ2h0OiAwLjggIWRlZmF1bHQ7XG4kY291bnRkb3duLW51bWJlci1mb250LXNpemU6IDJyZW0gIWRlZmF1bHQ7XG4kY291bnRkb3duLW51bWJlci1mb250LXNpemUtczogNHJlbSAhZGVmYXVsdDtcbiRjb3VudGRvd24tbnVtYmVyLWZvbnQtc2l6ZS1tOiA2cmVtICFkZWZhdWx0O1xuJGNvdW50ZG93bi1zZXBhcmF0b3ItbGluZS1oZWlnaHQ6IDEuNiAhZGVmYXVsdDtcbiRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcbiRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZS1zOiAycmVtICFkZWZhdWx0O1xuJGNvdW50ZG93bi1zZXBhcmF0b3ItZm9udC1zaXplLW06IDNyZW0gIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZGl2aWRlci1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi13aWR0aDogNTBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24taGVpZ2h0OiAyMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1jb2xvcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtdG9wOiA1MCUgIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtd2lkdGg6IDEwMCUgIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tbGluZS1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludGVybmFsLWRpdmlkZXItaWNvbi1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjIwJTIyJTIwaGVpZ2h0JTNEJTIyMjAlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyMCUyMDIwJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NjaXJjbGUlMjBmaWxsJTNEJTIybm9uZSUyMiUyMHN0cm9rZSUzRCUyMiMwMDAlMjIlMjBzdHJva2Utd2lkdGglM0QlMjIyJTIyJTIwY3glM0QlMjIxMCUyMiUyMGN5JTNEJTIyMTAlMjIlMjByJTNEJTIyNyUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuJGRpdmlkZXItc21hbGwtd2lkdGg6IDEwMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItc21hbGwtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkaXZpZGVyLXNtYWxsLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZGl2aWRlci12ZXJ0aWNhbC1oZWlnaHQ6IDEwMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItdmVydGljYWwtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kaXZpZGVyLWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kaXZpZGVyLWljb24tbGluZS1ib3JkZXI6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kaXZpZGVyLXNtYWxsLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLWRpdmlkZXItdmVydGljYWwtYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGRvdG5hdi1tYXJnaW4taG9yaXpvbnRhbDogMTJweCAhZGVmYXVsdDtcbiRkb3RuYXYtbWFyZ2luLXZlcnRpY2FsOiAkZG90bmF2LW1hcmdpbi1ob3Jpem9udGFsICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLXdpZHRoOiAxMHB4ICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLWhlaWdodDogJGRvdG5hdi1pdGVtLXdpZHRoICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLWJvcmRlci1yYWRpdXM6IDUwJSAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kOiByZ2JhKCRnbG9iYWwtY29sb3IsIDAuNikgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tb25jbGljay1iYWNrZ3JvdW5kOiByZ2JhKCRnbG9iYWwtY29sb3IsIDAuMikgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6IHJnYmEoJGdsb2JhbC1jb2xvciwgMC42KSAhZGVmYXVsdDtcbiRpbnZlcnNlLWRvdG5hdi1pdGVtLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2UtZG90bmF2LWl0ZW0taG92ZXItYmFja2dyb3VuZDogcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuOSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kb3RuYXYtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6IHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuJGludmVyc2UtZG90bmF2LWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6IHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjkpICFkZWZhdWx0O1xuJGdsb2JhbC16LWluZGV4OiAxMDAwICFkZWZhdWx0O1xuJGRyb3Atei1pbmRleDogJGdsb2JhbC16LWluZGV4ICsgMjAgIWRlZmF1bHQ7XG4kZHJvcC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGRyb3Atdmlld3BvcnQtbWFyZ2luOiAxNXB4ICFkZWZhdWx0O1xuJGRyb3Atd2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuJGRyb3AtcGFyZW50LWljb24tbWFyZ2luLWxlZnQ6IDAuMjVlbSAhZGVmYXVsdDtcbiRkcm9wYmFyLW1hcmdpbjogMCAhZGVmYXVsdDtcbiRkcm9wYmFyLXBhZGRpbmctdG9wOiAyNXB4ICFkZWZhdWx0O1xuJGRyb3BiYXItcGFkZGluZy1ib3R0b206ICRkcm9wYmFyLXBhZGRpbmctdG9wICFkZWZhdWx0O1xuJGRyb3BiYXItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuJGRyb3BiYXItcGFkZGluZy1ob3Jpem9udGFsLXM6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGRyb3BiYXItcGFkZGluZy1ob3Jpem9udGFsLW06ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRkcm9wYmFyLWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRkcm9wYmFyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGRyb3BiYXItY29sb3ItbW9kZTogZGFyayAhZGVmYXVsdDtcbiRkcm9wYmFyLWZvY3VzLW91dGxpbmU6ICRiYXNlLWZvY3VzLW91dGxpbmUgIWRlZmF1bHQ7XG4kZHJvcGJhci1sYXJnZS1wYWRkaW5nLXRvcDogNDBweCAhZGVmYXVsdDtcbiRkcm9wYmFyLWxhcmdlLXBhZGRpbmctYm90dG9tOiAkZHJvcGJhci1sYXJnZS1wYWRkaW5nLXRvcCAhZGVmYXVsdDtcbiRkcm9wZG93bi1tYXJnaW46ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGRyb3Bkb3duLXZpZXdwb3J0LW1hcmdpbjogMTVweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmc6IDI1cHggIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yLW1vZGU6IGRhcmsgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9jdXMtb3V0bGluZTogJGJhc2UtZm9jdXMtb3V0bGluZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1sYXJnZS1wYWRkaW5nOiA0MHB4ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRyb3BiYXItbWFyZ2luOiAkZHJvcGRvd24tbWFyZ2luICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRyb3BiYXItcGFkZGluZy10b3A6IDVweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kcm9wYmFyLXBhZGRpbmctYm90dG9tOiAkZHJvcGRvd24tcGFkZGluZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kcm9wYmFyLXZpZXdwb3J0LW1hcmdpbjogMTVweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kcm9wYmFyLXZpZXdwb3J0LW1hcmdpbi1zOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kcm9wYmFyLXZpZXdwb3J0LW1hcmdpbi1tOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZHJvcGJhci1sYXJnZS1wYWRkaW5nLXRvcDogJGRyb3Bkb3duLWxhcmdlLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZHJvcGJhci1sYXJnZS1wYWRkaW5nLWJvdHRvbTogJGRyb3Bkb3duLWxhcmdlLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LXN1YnRpdGxlLWZvbnQtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXYtaGVhZGVyLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXYtc3VibGlzdC1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcG5hdi1kcm9wYmFyLXotaW5kZXg6ICRnbG9iYWwtei1pbmRleCAtIDIwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAzcHggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iYWNrZ3JvdW5kOiBkYXJrZW4oJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1mb2N1cy1iYWNrZ3JvdW5kOiBkYXJrZW4oJGZvcm0tcmFuZ2UtdHJhY2stYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAxNXB4ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLW11dGVkLWJhY2tncm91bmQ6IHJnYmEoJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAwLjEpICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1yYW5nZS10cmFjay1iYWNrZ3JvdW5kOiBkYXJrZW4oJGludmVyc2UtZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMtYmFja2dyb3VuZDogZmFkZS1pbigkaW52ZXJzZS1mb3JtLXJhbmdlLXRyYWNrLWJhY2tncm91bmQsIDAuMDUpICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1yYW5nZS10aHVtYi1iYWNrZ3JvdW5kOiBkYXJrZW4oZmFkZS1pbigkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDEpLCA1MCUpICFkZWZhdWx0O1xuJGZvcm0taGVpZ2h0OiAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLWxpbmUtaGVpZ2h0OiAkZm9ybS1oZWlnaHQgLSAoMiogJGZvcm0tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRmb3JtLXBhZGRpbmctaG9yaXpvbnRhbDogMTBweCAhZGVmYXVsdDtcbiRmb3JtLXBhZGRpbmctdmVydGljYWw6IHJvdW5kKCRmb3JtLXBhZGRpbmctaG9yaXpvbnRhbCAqIDAuNikgIWRlZmF1bHQ7XG4kZm9ybS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZvY3VzLWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLWZvY3VzLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZGlzYWJsZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tZGlzYWJsZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLWhlaWdodDogJGdsb2JhbC1jb250cm9sLXNtYWxsLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLXBhZGRpbmctaG9yaXpvbnRhbDogOHB4ICFkZWZhdWx0O1xuJGZvcm0tc21hbGwtcGFkZGluZy12ZXJ0aWNhbDogcm91bmQoJGZvcm0tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsICogMC42KSAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLWxpbmUtaGVpZ2h0OiAkZm9ybS1zbWFsbC1oZWlnaHQgLSAoMiogJGZvcm0tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1sYXJnZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw6IDEycHggIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsOiByb3VuZCgkZm9ybS1sYXJnZS1wYWRkaW5nLWhvcml6b250YWwgKiAwLjYpICFkZWZhdWx0O1xuJGZvcm0tbGFyZ2UtbGluZS1oZWlnaHQ6ICRmb3JtLWxhcmdlLWhlaWdodCAtICgyKiAkZm9ybS1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGZvcm0tbGFyZ2UtZm9udC1zaXplOiAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1kYW5nZXItY29sb3I6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1zdWNjZXNzLWNvbG9yOiAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLXhzbWFsbDogNTBweCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLXNtYWxsOiAxMzBweCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLW1lZGl1bTogMjAwcHggIWRlZmF1bHQ7XG4kZm9ybS13aWR0aC1sYXJnZTogNTAwcHggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy1yaWdodDogMjBweCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pY29uLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LW9wdGlvbi1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1pY29uLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZGF0YWxpc3QtcGFkZGluZy1yaWdodDogMjBweCAhZGVmYXVsdDtcbiRmb3JtLWRhdGFsaXN0LWljb24tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tbWFyZ2luLXRvcDogLTRweCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tZm9jdXMtYmFja2dyb3VuZDogZGFya2VuKCRmb3JtLXJhZGlvLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWNoZWNrZWQtYmFja2dyb3VuZDogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMtYmFja2dyb3VuZDogZGFya2VuKCRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tZGlzYWJsZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tZGlzYWJsZWQtaWNvbi1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWxlZ2VuZC1mb250LXNpemU6ICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tbGVnZW5kLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kZm9ybS1zdGFja2VkLW1hcmdpbi1ib3R0b206IDVweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtbGFiZWwtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuJGZvcm0taG9yaXpvbnRhbC1sYWJlbC1tYXJnaW4tdG9wOiA3cHggIWRlZmF1bHQ7XG4kZm9ybS1ob3Jpem9udGFsLWNvbnRyb2xzLW1hcmdpbi1sZWZ0OiAyMTVweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtY29udHJvbHMtdGV4dC1wYWRkaW5nLXRvcDogN3B4ICFkZWZhdWx0O1xuJGZvcm0taWNvbi13aWR0aDogJGZvcm0taGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0taWNvbi1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWljb24taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1zZWxlY3QtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwOSUyMDYlMjAxNSUyMDYlMjIlMjAlMkYlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDEzJTIwOSUyMDglMjAxNSUyMDglMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1mb3JtLWRhdGFsaXN0LWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDI0JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTIlMjA4JTIwNiUyMDE2JTIwNiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tcmFkaW8taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNiUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTYlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBjeCUzRCUyMjglMjIlMjBjeSUzRCUyMjglMjIlMjByJTNEJTIyMiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNCUyMiUyMGhlaWdodCUzRCUyMjExJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTQlMjAxMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwNSUyMDcuNSUyMDIlMjA1JTIwMSUyMDUuNSUyMDUlMjAxMCUyMDEzJTIwMS41JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbmRldGVybWluYXRlLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTYlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE2JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHglM0QlMjIzJTIyJTIweSUzRCUyMjglMjIlMjB3aWR0aCUzRCUyMjEwJTIyJTIwaGVpZ2h0JTNEJTIyMSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tZm9jdXMtYmFja2dyb3VuZDogZmFkZS1pbigkaW52ZXJzZS1mb3JtLWJhY2tncm91bmQsIDAuMDUpICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1mb2N1cy1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1zZWxlY3QtaWNvbi1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLXJhZGlvLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1yYWRpby1mb2N1cy1iYWNrZ3JvdW5kOiBmYWRlLWluKCRpbnZlcnNlLWZvcm0tcmFkaW8tYmFja2dyb3VuZCwgMC4wNSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cy1iYWNrZ3JvdW5kOiBmYWRlLWluKCRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQsIDAuMSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0taWNvbi1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci12ZXJ0aWNhbC1sOiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sICFkZWZhdWx0O1xuJGdyaWQtc21hbGwtZ3V0dGVyLWhvcml6b250YWw6ICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtc21hbGwtZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbDogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1tZWRpdW0tZ3V0dGVyLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbDogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsLWw6ICRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWwgIWRlZmF1bHQ7XG4kZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZ3JpZC1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1ncmlkLWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOiA0cmVtICFkZWZhdWx0O1xuJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW06ICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODEyNSAhZGVmYXVsdDtcbiRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZTogJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW0gKiAwLjggIWRlZmF1bHQ7XG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLW06ICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODc1ICFkZWZhdWx0O1xuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICFkZWZhdWx0O1xuJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAqIDAuODUgIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDtcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1sOiA2cmVtICFkZWZhdWx0O1xuJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1tOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbCAhZGVmYXVsdDtcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplOiAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLW0gIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWw6IDhyZW0gIWRlZmF1bHQ7XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOiAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWwgIWRlZmF1bHQ7XG4kaGVhZGluZy0zeGxhcmdlLWZvbnQtc2l6ZTogJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDtcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLWw6IDExcmVtICFkZWZhdWx0O1xuJGhlYWRpbmctM3hsYXJnZS1mb250LXNpemUtbTogJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemUtbCAhZGVmYXVsdDtcbiRoZWFkaW5nLTN4bGFyZ2UtZm9udC1zaXplLWw6IDE1cmVtICFkZWZhdWx0O1xuJGhlYWRpbmctc21hbGwtbGluZS1oZWlnaHQ6IDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5nLW1lZGl1bS1saW5lLWhlaWdodDogMS4xICFkZWZhdWx0O1xuJGhlYWRpbmctbGFyZ2UtbGluZS1oZWlnaHQ6IDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5nLXhsYXJnZS1saW5lLWhlaWdodDogMSAhZGVmYXVsdDtcbiRoZWFkaW5nLTJ4bGFyZ2UtbGluZS1oZWlnaHQ6IDEgIWRlZmF1bHQ7XG4kaGVhZGluZy0zeGxhcmdlLWxpbmUtaGVpZ2h0OiAxICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1wYWRkaW5nLWJvdHRvbTogdW5xdW90ZSgnY2FsYyg1cHggKyAwLjFlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWRpdmlkZXItYm9yZGVyLXdpZHRoOiB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LXRvcDogdW5xdW90ZSgnY2FsYygtMC4xICogMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWhlaWdodDogdW5xdW90ZSgnY2FsYyg0cHggKyAwLjdlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWJ1bGxldC1tYXJnaW4tcmlnaHQ6IHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4yZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1idWxsZXQtYm9yZGVyLXdpZHRoOiB1bnF1b3RlKCdjYWxjKDVweCArIDAuMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLXRvcDogNTAlICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGg6IHVucXVvdGUoJ2NhbGMoMC4ycHggKyAwLjA1ZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLWhlaWdodDogJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLXdpZHRoOiAyMDAwcHggIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLW1hcmdpbi1ob3Jpem9udGFsOiB1bnF1b3RlKCdjYWxjKDVweCArIDAuM2VtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbDogMy43NXJlbSAhZGVmYXVsdDtcbiRoZWFkaW5nLXByaW1hcnktbGluZS1oZWlnaHQtbDogMS4xICFkZWZhdWx0O1xuJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbTogJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbCAqIDAuOSAhZGVmYXVsdDtcbiRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplOiAkaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sICogMC44ICFkZWZhdWx0O1xuJGhlYWRpbmctcHJpbWFyeS1saW5lLWhlaWdodDogMS4yICFkZWZhdWx0O1xuJGhlYWRpbmctaGVyby1mb250LXNpemUtbDogOHJlbSAhZGVmYXVsdDtcbiRoZWFkaW5nLWhlcm8tbGluZS1oZWlnaHQtbDogMSAhZGVmYXVsdDtcbiRoZWFkaW5nLWhlcm8tZm9udC1zaXplLW06ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplLWwgKiAwLjc1ICFkZWZhdWx0O1xuJGhlYWRpbmctaGVyby1saW5lLWhlaWdodC1tOiAxICFkZWZhdWx0O1xuJGhlYWRpbmctaGVyby1mb250LXNpemU6ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplLWwgKiAwLjUgIWRlZmF1bHQ7XG4kaGVhZGluZy1oZXJvLWxpbmUtaGVpZ2h0OiAxLjEgIWRlZmF1bHQ7XG4kaW52ZXJzZS1oZWFkaW5nLWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtaGVhZGluZy1idWxsZXQtYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtaGVhZGluZy1saW5lLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRoZWlnaHQtc21hbGwtaGVpZ2h0OiAxNTBweCAhZGVmYXVsdDtcbiRoZWlnaHQtbWVkaXVtLWhlaWdodDogMzAwcHggIWRlZmF1bHQ7XG4kaGVpZ2h0LWxhcmdlLWhlaWdodDogNDUwcHggIWRlZmF1bHQ7XG4kaWNvbi1pbWFnZS1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJGljb24tbGluay1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWxpbmstaG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWFjdGl2ZS1jb2xvcjogZGFya2VuKCRnbG9iYWwtY29sb3IsIDUlKSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1zaXplOiAzNnB4ICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGljb24tYnV0dG9uLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRpY29uLWJ1dHRvbi1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tbGluay1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbi1saW5rLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWxpbmstYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiBmYWRlLWluKCRpbnZlcnNlLWljb24tYnV0dG9uLWJhY2tncm91bmQsIDAuMDUpICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbi1idXR0b24taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiBmYWRlLWluKCRpbnZlcnNlLWljb24tYnV0dG9uLWJhY2tncm91bmQsIDAuMSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpY29ubmF2LW1hcmdpbi1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRpY29ubmF2LW1hcmdpbi12ZXJ0aWNhbDogJGljb25uYXYtbWFyZ2luLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kaWNvbm5hdi1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGljb25uYXYtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpY29ubmF2LWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbm5hdi1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29ubmF2LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb25uYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRsYWJlbC1wYWRkaW5nLXZlcnRpY2FsOiAwICFkZWZhdWx0O1xuJGxhYmVsLXBhZGRpbmctaG9yaXpvbnRhbDogJGdsb2JhbC1zbWFsbC1tYXJnaW4gIWRlZmF1bHQ7XG4kbGFiZWwtYmFja2dyb3VuZDogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGFiZWwtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRsYWJlbC1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGxhYmVsLXN1Y2Nlc3MtYmFja2dyb3VuZDogJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGFiZWwtc3VjY2Vzcy1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGxhYmVsLXdhcm5pbmctYmFja2dyb3VuZDogJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGFiZWwtd2FybmluZy1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGxhYmVsLWRhbmdlci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxhYmVsLWRhbmdlci1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbGFiZWwtYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxhYmVsLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRsZWFkZXItZmlsbC1jb250ZW50OiB1bnF1b3RlKCcuJykgIWRlZmF1bHQ7XG4kbGVhZGVyLWZpbGwtbWFyZ2luLWxlZnQ6ICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXotaW5kZXg6ICRnbG9iYWwtei1pbmRleCArIDEwICFkZWZhdWx0O1xuJGxpZ2h0Ym94LWJhY2tncm91bmQ6ICMwMDAgIWRlZmF1bHQ7XG4kbGlnaHRib3gtY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kbGlnaHRib3gtZm9jdXMtb3V0bGluZTogcmdiYSgyNTUsMjU1LDI1NSwwLjcpICFkZWZhdWx0O1xuJGxpZ2h0Ym94LWl0ZW0tbWF4LXdpZHRoOiAxMDB2dyAhZGVmYXVsdDtcbiRsaWdodGJveC1pdGVtLW1heC1oZWlnaHQ6IDEwMHZoICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRodW1ibmF2LXZlcnRpY2FsLXdpZHRoOiAxMDBweCAhZGVmYXVsdDtcbiRsaWdodGJveC10aHVtYm5hdi1oZWlnaHQ6IDEwMHB4ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LWNhcHRpb24tcGFkZGluZy12ZXJ0aWNhbDogMTBweCAhZGVmYXVsdDtcbiRsaWdodGJveC1jYXB0aW9uLXBhZGRpbmctaG9yaXpvbnRhbDogMTBweCAhZGVmYXVsdDtcbiRsaWdodGJveC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4zKSAhZGVmYXVsdDtcbiRsaWdodGJveC1jYXB0aW9uLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNykgIWRlZmF1bHQ7XG4kbGluay1tdXRlZC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLW11dGVkLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGxpbmstdGV4dC1ob3Zlci1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLWhlYWRpbmctaG92ZXItY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpbmstaGVhZGluZy1ob3Zlci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saW5rLW11dGVkLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saW5rLW11dGVkLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saW5rLXRleHQtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpbmstaGVhZGluZy1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsaXN0LW1hcmdpbi10b3A6ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtcGFkZGluZy1sZWZ0OiAzMHB4ICFkZWZhdWx0O1xuJGxpc3QtbWFya2VyLWhlaWdodDogKCRnbG9iYWwtbGluZS1oZWlnaHQgKiAxZW0pICFkZWZhdWx0O1xuJGxpc3QtbXV0ZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1lbXBoYXNpcy1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LXByaW1hcnktY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3Qtc2Vjb25kYXJ5LWNvbG9yOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3QtYnVsbGV0LWljb24tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1kaXZpZGVyLW1hcmdpbi10b3A6ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2UtbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kbGlzdC1sYXJnZS1kaXZpZGVyLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2Utc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LWxhcmdlLXN0cmlwZWQtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1saXN0LWJ1bGxldC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjYlMjIlMjBoZWlnaHQlM0QlMjI2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwNiUyMDYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwY3glM0QlMjIzJTIyJTIwY3klM0QlMjIzJTIyJTIwciUzRCUyMjMlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtbXV0ZWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtZW1waGFzaXMtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtcHJpbWFyeS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3Qtc2Vjb25kYXJ5LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtbGlzdC1kaXZpZGVyLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3Qtc3RyaXBlZC1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtYnVsbGV0LWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRtYXJnaW4tbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRtYXJnaW4teHNtYWxsLW1hcmdpbjogNXB4ICFkZWZhdWx0O1xuJG1hcmdpbi1zbWFsbC1tYXJnaW46ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJG1hcmdpbi1tZWRpdW0tbWFyZ2luOiAkZ2xvYmFsLW1lZGl1bS1tYXJnaW4gIWRlZmF1bHQ7XG4kbWFyZ2luLWxhcmdlLW1hcmdpbjogJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuJG1hcmdpbi1sYXJnZS1tYXJnaW4tbDogJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kbWFyZ2luLXhsYXJnZS1tYXJnaW46ICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJGdsb2JhbC14bGFyZ2UtbWFyZ2luOiAxNDBweCAhZGVmYXVsdDtcbiRtYXJnaW4teGxhcmdlLW1hcmdpbi1sOiAkZ2xvYmFsLXhsYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kbWFya2VyLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiRtYXJrZXItYmFja2dyb3VuZDogJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRtYXJrZXItY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRtYXJrZXItaG92ZXItY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW1hcmtlci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1tYXJrZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1tYXJrZXItaG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtei1pbmRleDogJGdsb2JhbC16LWluZGV4ICsgMTAgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjYpICFkZWZhdWx0O1xuJG1vZGFsLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLWhvcml6b250YWwtczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsLW06ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLXZlcnRpY2FsOiAkbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsICFkZWZhdWx0O1xuJG1vZGFsLXBhZGRpbmctdmVydGljYWwtczogNTBweCAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGFpbmVyLXdpZHRoOiAxMjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtYm9keS1wYWRkaW5nLWhvcml6b250YWw6IDIwcHggIWRlZmF1bHQ7XG4kbW9kYWwtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAyMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLXM6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG1vZGFsLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1zOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAyMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwgKiAwLjUpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwtczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmctdmVydGljYWwtczogKCRtb2RhbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLXMgKiAwLjUpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1iYWNrZ3JvdW5kOiAkbW9kYWwtZGlhbG9nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbDogMjBweCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogKCRtb2RhbC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsICogMC41KSAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsLXM6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsLXM6ICgkbW9kYWwtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1zICogMC41KSAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYmFja2dyb3VuZDogJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG1vZGFsLXRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC14bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAxLjMgIWRlZmF1bHQ7XG4kbW9kYWwtY2xvc2UtcG9zaXRpb246ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiRtb2RhbC1jbG9zZS1vdXRzaWRlLXBvc2l0aW9uOiAwICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtdHJhbnNsYXRlOiAxMDAlICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtY29sb3I6IGxpZ2h0ZW4oJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXItY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtaXRlbS1wYWRkaW5nLXZlcnRpY2FsOiA1cHggIWRlZmF1bHQ7XG4kbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAwICFkZWZhdWx0O1xuJG5hdi1zdWJsaXN0LXBhZGRpbmctdmVydGljYWw6IDVweCAhZGVmYXVsdDtcbiRuYXYtc3VibGlzdC1wYWRkaW5nLWxlZnQ6IDE1cHggIWRlZmF1bHQ7XG4kbmF2LXN1Ymxpc3QtZGVlcGVyLXBhZGRpbmctbGVmdDogMTVweCAhZGVmYXVsdDtcbiRuYXYtc3VibGlzdC1pdGVtLXBhZGRpbmctdmVydGljYWw6IDJweCAhZGVmYXVsdDtcbiRuYXYtcGFyZW50LWljb24tbWFyZ2luLWxlZnQ6IDAuMjVlbSAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLXBhZGRpbmctdmVydGljYWw6ICRuYXYtaXRlbS1wYWRkaW5nLXZlcnRpY2FsICFkZWZhdWx0O1xuJG5hdi1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAkbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsICFkZWZhdWx0O1xuJG5hdi1oZWFkZXItZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kbmF2LWhlYWRlci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4tdmVydGljYWw6IDVweCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDogMCAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1zdWJ0aXRsZS1mb250LXNpemU6IDEycHggIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtaGVhZGVyLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtc3VibGlzdC1mb250LXNpemU6ICRuYXYtZGVmYXVsdC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtc3VibGlzdC1saW5lLWhlaWdodDogJG5hdi1kZWZhdWx0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1mb250LXNpemU6ICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1zdWJ0aXRsZS1mb250LXNpemU6ICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1oZWFkZXItY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWRpdmlkZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1zdWJsaXN0LWZvbnQtc2l6ZTogJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LXN1Ymxpc3QtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktaXRlbS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbmF2LXNlY29uZGFyeS1zdWJ0aXRsZS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktc3VidGl0bGUtYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktaGVhZGVyLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktc3VibGlzdC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktc3VibGlzdC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LXN1Ymxpc3QtaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LW1lZGl1bS1saW5lLWhlaWdodDogMSAhZGVmYXVsdDtcbiRuYXYtbWVkaXVtLWZvbnQtc2l6ZS1sOiA0cmVtICFkZWZhdWx0O1xuJG5hdi1tZWRpdW0tZm9udC1zaXplLW06ICRuYXYtbWVkaXVtLWZvbnQtc2l6ZS1sICogMC44NzUgIWRlZmF1bHQ7XG4kbmF2LW1lZGl1bS1mb250LXNpemU6ICRuYXYtbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7XG4kbmF2LWxhcmdlLWxpbmUtaGVpZ2h0OiAxICFkZWZhdWx0O1xuJG5hdi1sYXJnZS1mb250LXNpemUtbTogNHJlbSAhZGVmYXVsdDtcbiRuYXYtbGFyZ2UtZm9udC1zaXplOiAkbmF2LWxhcmdlLWZvbnQtc2l6ZS1tICogMC44NSAhZGVmYXVsdDtcbiRuYXYtbGFyZ2UtZm9udC1zaXplLWw6IDZyZW0gIWRlZmF1bHQ7XG4kbmF2LXhsYXJnZS1saW5lLWhlaWdodDogMSAhZGVmYXVsdDtcbiRuYXYteGxhcmdlLWZvbnQtc2l6ZTogNHJlbSAhZGVmYXVsdDtcbiRuYXYteGxhcmdlLWZvbnQtc2l6ZS1tOiA2cmVtICFkZWZhdWx0O1xuJG5hdi14bGFyZ2UtZm9udC1zaXplLWw6IDhyZW0gIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXJzLW1hcmdpbi10b3A6IDVweCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlcnMtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlcnMtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcHJpbWFyeS1oZWFkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1zZWNvbmRhcnktaXRlbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWl0ZW0tYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXNlY29uZGFyeS1oZWFkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1zZWNvbmRhcnktZGl2aWRlci1ib3JkZXI6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1Ymxpc3QtaXRlbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXNlY29uZGFyeS1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VibGlzdC1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LWRpdmlkZXJzLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRuYXZiYXItYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5hdmJhci1nYXA6IDE1cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbG9yLW1vZGU6IGRhcmsgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1nYXA6IDE1cHggIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWhlaWdodDogODBweCAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAwICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tZm9udC1mYW1pbHk6ICRnbG9iYWwtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1vbmNsaWNrLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhcmVudC1pY29uLW1hcmdpbi1sZWZ0OiA0cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAwICFkZWZhdWx0O1xuJG5hdmJhci1pdGVtLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGUtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItc3VidGl0bGUtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbWFyZ2luOiAxNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1zaGlmdC1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLXZpZXdwb3J0LW1hcmdpbjogMTVweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nOiAyNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1jb2xvci1tb2RlOiBkYXJrICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1mb2N1cy1vdXRsaW5lOiAkYmFzZS1mb2N1cy1vdXRsaW5lICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZ3JpZC1ndXR0ZXItdmVydGljYWw6ICRuYXZiYXItZHJvcGRvd24tZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbGFyZ2Utc2hpZnQtbWFyZ2luOiAwICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1sYXJnZS1wYWRkaW5nOiA0MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLW1hcmdpbjogMCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1zaGlmdC1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItcGFkZGluZy10b3A6ICRuYXZiYXItZHJvcGRvd24tcGFkZGluZyAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1wYWRkaW5nLWJvdHRvbTogJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLXBhZGRpbmctdG9wICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLXZpZXdwb3J0LW1hcmdpbjogMTVweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci12aWV3cG9ydC1tYXJnaW4tczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItdmlld3BvcnQtbWFyZ2luLW06ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1sYXJnZS1zaGlmdC1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2UtcGFkZGluZy10b3A6ICRuYXZiYXItZHJvcGRvd24tbGFyZ2UtcGFkZGluZyAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1sYXJnZS1wYWRkaW5nLWJvdHRvbTogJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLWxhcmdlLXBhZGRpbmctdG9wICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LXN1YnRpdGxlLWZvbnQtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWhlYWRlci1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2stY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdmJhci1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXZiYXItdG9nZ2xlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXZiYXItdG9nZ2xlLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXBvc2l0aW9uOiAxMHB4ICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi16LWluZGV4OiAkZ2xvYmFsLXotaW5kZXggKyA0MCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24td2lkdGg6IDM1MHB4ICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLW1hcmdpbi10b3A6IDEwcHggIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZzogJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLW1lc3NhZ2UtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWZvbnQtc2l6ZTogJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLWNsb3NlLXRvcDogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXBhZGRpbmcgKyA1cHggIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLWNsb3NlLXJpZ2h0OiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZyAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5LWNvbG9yOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1zdWNjZXNzLWNvbG9yOiAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS13YXJuaW5nLWNvbG9yOiAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXItY29sb3I6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXotaW5kZXg6ICRnbG9iYWwtei1pbmRleCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFyLXdpZHRoOiAyNzBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFyLXBhZGRpbmctdmVydGljYWw6IDIwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1wYWRkaW5nLWhvcml6b250YWw6IDIwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci13aWR0aC1zOiAzNTBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFyLXBhZGRpbmctdmVydGljYWwtczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1wYWRkaW5nLWhvcml6b250YWwtczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uOiA1cHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNsb3NlLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY2xvc2UtcG9zaXRpb24tczogMTBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMSkgIWRlZmF1bHQ7XG4kb3ZlcmxheS1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG92ZXJsYXktcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kb3ZlcmxheS1kZWZhdWx0LWJhY2tncm91bmQ6IHJnYmEoJGdsb2JhbC1iYWNrZ3JvdW5kLCAwLjgpICFkZWZhdWx0O1xuJG92ZXJsYXktZGVmYXVsdC1jb2xvci1tb2RlOiBkYXJrICFkZWZhdWx0O1xuJG92ZXJsYXktcHJpbWFyeS1iYWNrZ3JvdW5kOiByZ2JhKCRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQsIDAuOCkgIWRlZmF1bHQ7XG4kb3ZlcmxheS1wcmltYXJ5LWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0O1xuJHBhZGRpbmctcGFkZGluZzogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcGFkZGluZy1wYWRkaW5nLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLXBhZGRpbmc6ICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtcGFkZGluZzogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtcGFkZGluZy1sOiAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsOiAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLXZlcnRpY2FsOiA1cHggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDogMTBweCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXBhZ2luYXRpb24taXRlbS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHBvc2l0aW9uLXNtYWxsLW1hcmdpbjogJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcG9zaXRpb24tbWVkaXVtLW1hcmdpbjogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcG9zaXRpb24tbGFyZ2UtbWFyZ2luOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRwb3NpdGlvbi1sYXJnZS1tYXJnaW4tbDogNTBweCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1oZWlnaHQ6IDE1cHggIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlYXJjaC1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRzZWFyY2gtcGxhY2Vob2xkZXItY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLWljb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtd2lkdGg6IDI0MHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1kZWZhdWx0LWhlaWdodDogJGdsb2JhbC1jb250cm9sLWhlaWdodCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1wYWRkaW5nLWhvcml6b250YWw6IDEwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtZm9jdXMtYmFja2dyb3VuZDogZGFya2VuKCRzZWFyY2gtZGVmYXVsdC1iYWNrZ3JvdW5kLCAyJSkgIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtaWNvbi13aWR0aDogMjBweCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1pY29uLXBhZGRpbmc6IDEwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci13aWR0aDogMjQwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1oZWlnaHQgIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6IDEwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1mb2N1cy1iYWNrZ3JvdW5kOiAkc2VhcmNoLW5hdmJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItaWNvbi13aWR0aDogMjBweCAhZGVmYXVsdDtcbiRzZWFyY2gtbmF2YmFyLWljb24tcGFkZGluZzogMTBweCAhZGVmYXVsdDtcbiRzZWFyY2gtbWVkaXVtLXdpZHRoOiA0MDBweCAhZGVmYXVsdDtcbiRzZWFyY2gtbWVkaXVtLWhlaWdodDogJGdsb2JhbC1jb250cm9sLWxhcmdlLWhlaWdodCAhZGVmYXVsdDtcbiRzZWFyY2gtbWVkaXVtLXBhZGRpbmctaG9yaXpvbnRhbDogMTJweCAhZGVmYXVsdDtcbiRzZWFyY2gtbWVkaXVtLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNlYXJjaC1tZWRpdW0tZm9udC1zaXplOiAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRzZWFyY2gtbWVkaXVtLWZvY3VzLWJhY2tncm91bmQ6IGRhcmtlbigkc2VhcmNoLW1lZGl1bS1iYWNrZ3JvdW5kLCAyJSkgIWRlZmF1bHQ7XG4kc2VhcmNoLW1lZGl1bS1pY29uLXdpZHRoOiAyNHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1tZWRpdW0taWNvbi1wYWRkaW5nOiAxMnB4ICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS13aWR0aDogNTAwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWxhcmdlLWhlaWdodDogOTBweCAhZGVmYXVsdDtcbiRzZWFyY2gtbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsOiAyMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzZWFyY2gtbGFyZ2UtZm9udC1zaXplOiAkZ2xvYmFsLTJ4bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1mb2N1cy1iYWNrZ3JvdW5kOiBkYXJrZW4oJHNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kLCAyJSkgIWRlZmF1bHQ7XG4kc2VhcmNoLWxhcmdlLWljb24td2lkdGg6IDQwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWxhcmdlLWljb24tcGFkZGluZzogMjBweCAhZGVmYXVsdDtcbiRzZWFyY2gtdG9nZ2xlLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHNlYXJjaC10b2dnbGUtaG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1wbGFjZWhvbGRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLWRlZmF1bHQtZm9jdXMtYmFja2dyb3VuZDogZmFkZS1pbigkaW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1iYWNrZ3JvdW5kLCAwLjA1KSAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1uYXZiYXItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtbmF2YmFyLWZvY3VzLWJhY2tncm91bmQ6IGZhZGUtaW4oJGludmVyc2Utc2VhcmNoLW5hdmJhci1iYWNrZ3JvdW5kLCAwLjA1KSAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1tZWRpdW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtbWVkaXVtLWZvY3VzLWJhY2tncm91bmQ6IGZhZGUtaW4oJGludmVyc2Utc2VhcmNoLW1lZGl1bS1iYWNrZ3JvdW5kLCAwLjA1KSAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1sYXJnZS1mb2N1cy1iYWNrZ3JvdW5kOiBmYWRlLWluKCRpbnZlcnNlLXNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kLCAwLjA1KSAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC10b2dnbGUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC10b2dnbGUtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRzZWN0aW9uLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLXBhZGRpbmctdmVydGljYWwtbTogJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kc2VjdGlvbi14c21hbGwtcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kc2VjdGlvbi1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLW1lZGl1bS1tYXJnaW4gIWRlZmF1bHQ7XG4kc2VjdGlvbi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbTogJGdsb2JhbC14bGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHNlY3Rpb24teGxhcmdlLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwteGxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW06ICgkZ2xvYmFsLWxhcmdlLW1hcmdpbiArICRnbG9iYWwteGxhcmdlLW1hcmdpbikgIWRlZmF1bHQ7XG4kc2VjdGlvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzZWN0aW9uLWRlZmF1bHQtY29sb3ItbW9kZTogZGFyayAhZGVmYXVsdDtcbiRzZWN0aW9uLW11dGVkLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzZWN0aW9uLW11dGVkLWNvbG9yLW1vZGU6IGRhcmsgIWRlZmF1bHQ7XG4kc2VjdGlvbi1wcmltYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlY3Rpb24tcHJpbWFyeS1jb2xvci1tb2RlOiBsaWdodCAhZGVmYXVsdDtcbiRzZWN0aW9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlY3Rpb24tc2Vjb25kYXJ5LWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0O1xuJHNsaWRlbmF2LXBhZGRpbmctdmVydGljYWw6IDVweCAhZGVmYXVsdDtcbiRzbGlkZW5hdi1wYWRkaW5nLWhvcml6b250YWw6IDEwcHggIWRlZmF1bHQ7XG4kc2xpZGVuYXYtY29sb3I6IHJnYmEoJGdsb2JhbC1jb2xvciwgMC41KSAhZGVmYXVsdDtcbiRzbGlkZW5hdi1ob3Zlci1jb2xvcjogcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjkpICFkZWZhdWx0O1xuJHNsaWRlbmF2LWFjdGl2ZS1jb2xvcjogcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctdmVydGljYWw6IDEwcHggIWRlZmF1bHQ7XG4kc2xpZGVuYXYtbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsOiAkc2xpZGVuYXYtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbCAhZGVmYXVsdDtcbiRpbnZlcnNlLXNsaWRlbmF2LWNvbG9yOiByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC43KSAhZGVmYXVsdDtcbiRpbnZlcnNlLXNsaWRlbmF2LWhvdmVyLWNvbG9yOiByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC45NSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zbGlkZW5hdi1hY3RpdmUtY29sb3I6IHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjcpICFkZWZhdWx0O1xuJHNsaWRlci1jb250YWluZXItbWFyZ2luLXRvcDogLTExcHggIWRlZmF1bHQ7XG4kc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tYm90dG9tOiAtMzlweCAhZGVmYXVsdDtcbiRzbGlkZXItY29udGFpbmVyLW1hcmdpbi1sZWZ0OiAtMjVweCAhZGVmYXVsdDtcbiRzbGlkZXItY29udGFpbmVyLW1hcmdpbi1yaWdodDogLTI1cHggIWRlZmF1bHQ7XG4kc29ydGFibGUtZHJhZ2dlZC16LWluZGV4OiAkZ2xvYmFsLXotaW5kZXggKyA1MCAhZGVmYXVsdDtcbiRzb3J0YWJsZS1wbGFjZWhvbGRlci1vcGFjaXR5OiAwICFkZWZhdWx0O1xuJHNvcnRhYmxlLWVtcHR5LWhlaWdodDogNTBweCAhZGVmYXVsdDtcbiRzcGlubmVyLXNpemU6IDMwcHggIWRlZmF1bHQ7XG4kc3Bpbm5lci1zdHJva2Utd2lkdGg6IDEgIWRlZmF1bHQ7XG4kc3Bpbm5lci1yYWRpdXM6IGZsb29yKCgoJHNwaW5uZXItc2l6ZSAtICRzcGlubmVyLXN0cm9rZS13aWR0aCkgKiAwLjUpKSAhZGVmYXVsdDtcbiRzcGlubmVyLWNpcmN1bWZlcmVuY2U6IHJvdW5kKDIgKiAzLjE0MSAqICRzcGlubmVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kc3Bpbm5lci1kdXJhdGlvbjogMS40cyAhZGVmYXVsdDtcbiRzdGlja3ktei1pbmRleDogJGdsb2JhbC16LWluZGV4IC0gMjAgIWRlZmF1bHQ7XG4kc3RpY2t5LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4ycyAhZGVmYXVsdDtcbiRzdGlja3ktcmV2ZXJzZS1hbmltYXRpb24tZHVyYXRpb246IDAuMnMgIWRlZmF1bHQ7XG4kc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsOiAyMHB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRzdWJuYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw6ICRzdWJuYXYtbWFyZ2luLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyLWhlaWdodDogMS41ZW0gIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRzdWJuYXYtZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLW1hcmdpbi1ob3Jpem9udGFsOiAkc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbDogNXB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAxMHB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1jb2xvcjogJHN1Ym5hdi1pdGVtLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICRzdWJuYXYtcGlsbC1pdGVtLWhvdmVyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWRpc2FibGVkLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1kaXZpZGVyLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tb25jbGljay1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1tYXJnaW4taG9yaXpvbnRhbDogMjBweCAhZGVmYXVsdDtcbiR0YWItaXRlbS1wYWRkaW5nLWhvcml6b250YWw6IDEwcHggIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbDogNXB4ICFkZWZhdWx0O1xuJHRhYi1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiR0YWItaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItaXRlbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGFiLWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYi1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGFiLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbDogMTZweCAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogMTJweCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZGVyLWNlbGwtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZm9vdGVyLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGFibGUtY2FwdGlvbi1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWNhcHRpb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kOiAjZmZkICFkZWZhdWx0O1xuJHRhYmxlLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1yb3ctYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLXJvdy1iYWNrZ3JvdW5kOiAkdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRhYmxlLXNtYWxsLWNlbGwtcGFkZGluZy12ZXJ0aWNhbDogMTBweCAhZGVmYXVsdDtcbiR0YWJsZS1zbWFsbC1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogMTJweCAhZGVmYXVsdDtcbiR0YWJsZS1sYXJnZS1jZWxsLXBhZGRpbmctdmVydGljYWw6IDIycHggIWRlZmF1bHQ7XG4kdGFibGUtbGFyZ2UtY2VsbC1wYWRkaW5nLWhvcml6b250YWw6IDEycHggIWRlZmF1bHQ7XG4kdGFibGUtZXhwYW5kLW1pbi13aWR0aDogMTUwcHggIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWJsZS1oZWFkZXItY2VsbC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGFibGUtY2FwdGlvbi1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kOiBmYWRlLW91dCgkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCwgMC4wMikgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWJsZS1kaXZpZGVyLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLXN0cmlwZWQtcm93LWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ6ICRpbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LWxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0ZXh0LWxlYWQtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiR0ZXh0LWxlYWQtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRleHQtc21hbGwtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0ZXh0LXNtYWxsLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kdGV4dC1sYXJnZS1mb250LXNpemU6ICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJHRleHQtbGFyZ2UtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiR0ZXh0LW11dGVkLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRleHQtZW1waGFzaXMtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1wcmltYXJ5LWNvbG9yOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LXNlY29uZGFyeS1jb2xvcjogJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LXN1Y2Nlc3MtY29sb3I6ICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRleHQtd2FybmluZy1jb2xvcjogJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGV4dC1kYW5nZXItY29sb3I6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGV4dC1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LXN0cm9rZS10ZXh0LXN0cm9rZTogdW5xdW90ZSgnY2FsYygxLjRweCArIDAuMDAyZW0pJykgIWRlZmF1bHQ7XG4kaW52ZXJzZS10ZXh0LWxlYWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRleHQtbWV0YS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1tdXRlZC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1lbXBoYXNpcy1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1wcmltYXJ5LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1zZWNvbmRhcnktY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4kdGh1bWJuYXYtbWFyZ2luLXZlcnRpY2FsOiAkdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kdGlsZS1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4kdGlsZS1wYWRkaW5nLWhvcml6b250YWwtczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kdGlsZS1wYWRkaW5nLWhvcml6b250YWwtbTogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy12ZXJ0aWNhbC1tOiAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiR0aWxlLXhzbWFsbC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiR0aWxlLXNtYWxsLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHRpbGUtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tOiAkZ2xvYmFsLXhsYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC14bGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHRpbGUteGxhcmdlLXBhZGRpbmctdmVydGljYWwtbTogKCRnbG9iYWwtbGFyZ2UtbWFyZ2luICsgJGdsb2JhbC14bGFyZ2UtbWFyZ2luKSAhZGVmYXVsdDtcbiR0aWxlLWRlZmF1bHQtYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRpbGUtZGVmYXVsdC1jb2xvci1tb2RlOiBkYXJrICFkZWZhdWx0O1xuJHRpbGUtbXV0ZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRpbGUtbXV0ZWQtY29sb3ItbW9kZTogZGFyayAhZGVmYXVsdDtcbiR0aWxlLXByaW1hcnktYmFja2dyb3VuZDogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGlsZS1wcmltYXJ5LWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0O1xuJHRpbGUtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGlsZS1zZWNvbmRhcnktY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kdG9vbHRpcC16LWluZGV4OiAkZ2xvYmFsLXotaW5kZXggKyAzMCAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogMTBweCAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXZlcnRpY2FsOiAzcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLWhvcml6b250YWw6IDZweCAhZGVmYXVsdDtcbiR0b29sdGlwLWJhY2tncm91bmQ6ICM2NjYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC1zaXplOiAxMnB4ICFkZWZhdWx0O1xuJHRvdG9wLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiR0b3RvcC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiR0b3RvcC1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiR0b3RvcC1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10b3RvcC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdG90b3AtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRvdG9wLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3MgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1zY2FsZTogMS4wMyAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZTogMTBweCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGU6IDUwcHggIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1zbG93LWR1cmF0aW9uOiAwLjdzICFkZWZhdWx0O1xuJHBhbmVsLXNjcm9sbGFibGUtaGVpZ2h0OiAxNzBweCAhZGVmYXVsdDtcbiRwYW5lbC1zY3JvbGxhYmxlLXBhZGRpbmc6IDEwcHggIWRlZmF1bHQ7XG4kcGFuZWwtc2Nyb2xsYWJsZS1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhbmVsLXNjcm9sbGFibGUtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRib3JkZXItcm91bmRlZC1ib3JkZXItcmFkaXVzOiA1cHggIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1kdXJhdGlvbjogMC4xcyAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWJvdHRvbS1oZWlnaHQ6IDMwcHggIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1ib3R0b20tYm90dG9tOiAoLSRib3gtc2hhZG93LWJvdHRvbS1oZWlnaHQpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctYm90dG9tLWJvcmRlci1yYWRpdXM6IDEwMCUgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1ib3R0b20tYmFja2dyb3VuZDogIzQ0NCAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWJvdHRvbS1ibHVyOiAyMHB4ICFkZWZhdWx0O1xuJGRyb3BjYXAtbWFyZ2luLXJpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGRyb3BjYXAtZm9udC1zaXplOiAoKCRnbG9iYWwtbGluZS1oZWlnaHQgKiAzKSAqIDFlbSkgIWRlZmF1bHQ7XG4kZHJvcGNhcC1saW5lLWhlaWdodDogMSAhZGVmYXVsdDtcbiRsb2dvLWZvbnQtc2l6ZTogJGdsb2JhbC1sYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kbG9nby1mb250LWZhbWlseTogJGdsb2JhbC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRsb2dvLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGxvZ28taG92ZXItY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kZHJhZ292ZXItYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgxMDAsMTAwLDEwMCwwLjMpICFkZWZhdWx0O1xuJGludmVyc2UtbG9nby1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbG9nby1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGRlcHJlY2F0ZWQ6IGZhbHNlICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtc21hbGw6IDY0MHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtbWVkaXVtOiA5NjBweCAhZGVmYXVsdDtcbiRicmVha3BvaW50LWxhcmdlOiAxMjAwcHggIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC14bGFyZ2U6IDE2MDBweCAhZGVmYXVsdDtcbiRicmVha3BvaW50LXhzbWFsbC1tYXg6ICgkYnJlYWtwb2ludC1zbWFsbCAtIDEpICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtc21hbGwtbWF4OiAoJGJyZWFrcG9pbnQtbWVkaXVtIC0gMSkgIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1tZWRpdW0tbWF4OiAoJGJyZWFrcG9pbnQtbGFyZ2UgLSAxKSAhZGVmYXVsdDtcbiRicmVha3BvaW50LWxhcmdlLW1heDogKCRicmVha3BvaW50LXhsYXJnZSAtIDEpICFkZWZhdWx0O1xuJGdsb2JhbC1zbWFsbC1ib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLDAsMCwwLjA4KSAhZGVmYXVsdDtcbiRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgwLDAsMCwwLjA4KSAhZGVmYXVsdDtcbiRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdzogMCAxNHB4IDI1cHggcmdiYSgwLDAsMCwwLjE2KSAhZGVmYXVsdDtcbiRnbG9iYWwteGxhcmdlLWJveC1zaGFkb3c6IDAgMjhweCA1MHB4IHJnYmEoMCwwLDAsMC4xNikgIWRlZmF1bHQ7XG4kd2lkdGgtc21hbGwtd2lkdGg6IDE1MHB4ICFkZWZhdWx0O1xuJHdpZHRoLW1lZGl1bS13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG4kd2lkdGgtbGFyZ2Utd2lkdGg6IDQ1MHB4ICFkZWZhdWx0O1xuJHdpZHRoLXhsYXJnZS13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG4kd2lkdGgtMnhsYXJnZS13aWR0aDogNzUwcHggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tbWFyZ2luLWxlZnQ6IDEwcHggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtYWNjb3JkaW9uLW9wZW4taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjEzJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTMlMjAxMyUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtYWNjb3JkaW9uLWNsb3NlLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEzJTIwMTMlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIweCUzRCUyMjAlMjIlMjB5JTNEJTIyNiUyMiUyMCUyRiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHdpZHRoJTNEJTIyMSUyMiUyMGhlaWdodCUzRCUyMjEzJTIyJTIweCUzRCUyMjYlMjIlMjB5JTNEJTIyMCUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLW9wYWNpdHk6IDAuNCAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1ob3Zlci1vcGFjaXR5OiAwLjggIWRlZmF1bHQ7XG4kYXJ0aWNsZS1tZXRhLWxpbmstY29sb3I6ICRhcnRpY2xlLW1ldGEtY29sb3IgIWRlZmF1bHQ7XG4kYXJ0aWNsZS1tZXRhLWxpbmstaG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1jb2RlLXBhZGRpbmctaG9yaXpvbnRhbDogNnB4ICFkZWZhdWx0O1xuJGJhc2UtY29kZS1wYWRkaW5nLXZlcnRpY2FsOiAycHggIWRlZmF1bHQ7XG4kYmFzZS1jb2RlLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLXByZS1wYWRkaW5nOiAxMHB4ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYXNlLXByZS1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGJhc2UtcHJlLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kYmFzZS1wcmUtYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1ibG9ja3F1b3RlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1ob3Zlci1ib3JkZXI6IGRhcmtlbigkZ2xvYmFsLWJvcmRlciwgMjAlKSAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1hY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGdsb2JhbC1ib3JkZXIsIDMwJSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kYnV0dG9uLXRleHQtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1ib3JkZXI6IGN1cnJlbnRDb2xvciAhZGVmYXVsdDtcbiRjYXJkLWJhZGdlLWJvcmRlci1yYWRpdXM6IDJweCAhZGVmYXVsdDtcbiRjYXJkLWJhZGdlLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kY2FyZC1ob3Zlci1ib3gtc2hhZG93OiAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWJveC1zaGFkb3c6ICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWhvdmVyLWJveC1zaGFkb3c6ICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtaGVhZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWhlYWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1mb290ZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWJveC1zaGFkb3c6ICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWhvdmVyLWJveC1zaGFkb3c6ICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1ib3gtc2hhZG93OiAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJveC1zaGFkb3c6ICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjb21tZW50LXByaW1hcnktcGFkZGluZzogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY29tbWVudC1wcmltYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1ib3JkZXI6IHJnYmEoJGdsb2JhbC1jb2xvciwgMC40KSAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1ob3Zlci1ib3JkZXI6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLW9uY2xpY2stYm9yZGVyOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1hY3RpdmUtYm9yZGVyOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRkcm9wYmFyLXRvcC1ib3gtc2hhZG93OiAwIDEycHggN3B4IC02cHggcmdiYSgwLCAwLCAwLCAwLjA1KSAhZGVmYXVsdDtcbiRkcm9wYmFyLWJvdHRvbS1ib3gtc2hhZG93OiAwIC0xMnB4IDdweCAtNnB4IHJnYmEoMCwgMCwgMCwgMC4wNSkgIWRlZmF1bHQ7XG4kZHJvcGJhci1sZWZ0LWJveC1zaGFkb3c6IDEycHggMCA3cHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMDUpICFkZWZhdWx0O1xuJGRyb3BiYXItcmlnaHQtYm94LXNoYWRvdzogLTEycHggMCA3cHggLTZweCByZ2JhKDAsIDAsIDAsIDAuMDUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLW5hdi1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6IDAgNXB4IDEycHggcmdiYSgwLDAsMCwwLjE1KSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogZGFya2VuKCRnbG9iYWwtYm9yZGVyLCAxMCUpICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6IGRhcmtlbihmYWRlLWluKCRpbnZlcnNlLWdsb2JhbC1ib3JkZXIsIDEpLCAxMCUpICFkZWZhdWx0O1xuJGZvcm0tYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRmb3JtLWZvY3VzLWJvcmRlcjogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1kaXNhYmxlZC1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGZvcm0tZGFuZ2VyLWJvcmRlcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXN1Y2Nlc3MtYm9yZGVyOiAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLWJsYW5rLWZvY3VzLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZm9ybS1ibGFuay1mb2N1cy1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJvcmRlcjogZGFya2VuKCRnbG9iYWwtYm9yZGVyLCAxMCUpICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tZm9jdXMtYm9yZGVyOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWNoZWNrZWQtYm9yZGVyOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLWxhYmVsLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LWl0ZW0tZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRsYWJlbC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kbGFiZWwtdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRtb2RhbC1jbG9zZS1mdWxsLXBhZGRpbmc6IDEwcHggIWRlZmF1bHQ7XG4kbW9kYWwtY2xvc2UtZnVsbC1iYWNrZ3JvdW5kOiAkbW9kYWwtZGlhbG9nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbW9kYWwtY2xvc2UtZnVsbC1wYWRkaW5nLW06ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktbWFyZ2luLXRvcDogMCAhZGVmYXVsdDtcbiRuYXYtc2Vjb25kYXJ5LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAxMHB4ICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktaXRlbS1wYWRkaW5nLXZlcnRpY2FsOiAxMHB4ICFkZWZhdWx0O1xuJG5hdi1zZWNvbmRhcnktaXRlbS1ob3Zlci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtYmFja2dyb3VuZC1pdGVtLWhvdmVyLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LWJhY2tncm91bmQtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbmF2YmFyLWdhcC1tOiAzMHB4ICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtZ2FwLW06IDMwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1ib3gtc2hhZG93OiAwIDVweCAxMnB4IHJnYmEoMCwwLDAsMC4xNSkgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1kZWZhdWx0LWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1mb2N1cy1ib3JkZXI6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRzZWFyY2gtbmF2YmFyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1mb2N1cy1ib3JkZXI6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlYXJjaC1tZWRpdW0tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRzZWFyY2gtbWVkaXVtLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kc2VhcmNoLW1lZGl1bS1mb2N1cy1ib3JkZXI6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1mb2N1cy1ib3JkZXI6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdGFiLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFiLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWItaXRlbS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYi1pdGVtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tYWN0aXZlLWJvcmRlcjogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWxpbmstY29sb3I6ICR0ZXh0LW1ldGEtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWxpbmstaG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtdGV4dC1iYWNrZ3JvdW5kLWNvbG9yLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICR0ZXh0LWJhY2tncm91bmQtY29sb3IgMCUsIGFkanVzdC1odWUoJHRleHQtYmFja2dyb3VuZC1jb2xvciwgNDApIDEwMCUpICFkZWZhdWx0O1xuJHRodW1ibmF2LWl0ZW0tZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LDI1NSwyNTUsMCksIHJnYmEoMjU1LDI1NSwyNTUsMC40KSkgIWRlZmF1bHQ7XG4kdGh1bWJuYXYtaXRlbS1ob3Zlci1vcGFjaXR5OiAwICFkZWZhdWx0O1xuJHRodW1ibmF2LWl0ZW0tYWN0aXZlLW9wYWNpdHk6IDAgIWRlZmF1bHQ7XG4kaW52ZXJzZS10aHVtYm5hdi1pdGVtLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsMCwwLDApLCByZ2JhKDAsMCwwLDAuNCkpICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0OyIsIkBtaXhpbiBob29rLWFjY29yZGlvbigpe31cbkBtaXhpbiBob29rLWFjY29yZGlvbi1pdGVtKCl7fVxuQG1peGluIGhvb2stYWNjb3JkaW9uLXRpdGxlKCl7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6ICgkYWNjb3JkaW9uLXRpdGxlLWxpbmUtaGVpZ2h0ICogMWVtKTtcbiAgICAgICAgaGVpZ2h0OiAoJGFjY29yZGlvbi10aXRsZS1saW5lLWhlaWdodCAqIDFlbSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkYWNjb3JkaW9uLWljb24tbWFyZ2luLWxlZnQ7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWFjY29yZGlvbi1jbG9zZS1pbWFnZSwgXCIjMDAwXCIsICRhY2NvcmRpb24taWNvbi1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgfVxuXG4gICAgLnVrLW9wZW4gPiAmOjpiZWZvcmUgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtYWNjb3JkaW9uLW9wZW4taW1hZ2UsIFwiIzAwMFwiLCAkYWNjb3JkaW9uLWljb24tY29sb3IpOyB9XG5cbn1cbkBtaXhpbiBob29rLWFjY29yZGlvbi10aXRsZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWFjY29yZGlvbi1jb250ZW50KCl7fVxuQG1peGluIGhvb2stYWNjb3JkaW9uLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1hY2NvcmRpb24tdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi10aXRsZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWFjY29yZGlvbigpe1xuXG4gICAgLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWFjY29yZGlvbi1jbG9zZS1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWdsb2JhbC1jb2xvcik7IH1cblxuICAgIC51ay1vcGVuID4gLnVrLWFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWFjY29yZGlvbi1vcGVuLWltYWdlLCBcIiMwMDBcIiwgJGludmVyc2UtZ2xvYmFsLWNvbG9yKTsgfVxuXG59XG5AbWl4aW4gaG9vay1hbGVydCgpe31cbkBtaXhpbiBob29rLWFsZXJ0LWNsb3NlKCl7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgb3BhY2l0eTogJGFsZXJ0LWNsb3NlLW9wYWNpdHk7XG59XG5AbWl4aW4gaG9vay1hbGVydC1jbG9zZS1ob3Zlcigpe1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG9wYWNpdHk6ICRhbGVydC1jbG9zZS1ob3Zlci1vcGFjaXR5O1xufVxuQG1peGluIGhvb2stYWxlcnQtcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLWFsZXJ0LXN1Y2Nlc3MoKXt9XG5AbWl4aW4gaG9vay1hbGVydC13YXJuaW5nKCl7fVxuQG1peGluIGhvb2stYWxlcnQtZGFuZ2VyKCl7fVxuQG1peGluIGhvb2stYWxlcnQtbWlzYygpe1xuXG4gICAgLypcbiAgICAgKiBDb250ZW50XG4gICAgICovXG5cbiAgICAudWstYWxlcnQgaDEsXG4gICAgLnVrLWFsZXJ0IGgyLFxuICAgIC51ay1hbGVydCBoMyxcbiAgICAudWstYWxlcnQgaDQsXG4gICAgLnVrLWFsZXJ0IGg1LFxuICAgIC51ay1hbGVydCBoNiB7IGNvbG9yOiBpbmhlcml0OyB9XG5cbiAgICAudWstYWxlcnQgYTpub3QoW2NsYXNzXSkge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLnVrLWFsZXJ0IGE6bm90KFtjbGFzc10pOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stYWxpZ24tbWlzYygpe31cbkBtaXhpbiBob29rLWFuaW1hdGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2stYXJ0aWNsZSgpe31cbkBtaXhpbiBob29rLWFydGljbGUtYWRqYWNlbnQoKXt9XG5AbWl4aW4gaG9vay1hcnRpY2xlLXRpdGxlKCl7fVxuQG1peGluIGhvb2stYXJ0aWNsZS1tZXRhKCl7XG5cbiAgICBhIHsgY29sb3I6ICRhcnRpY2xlLW1ldGEtbGluay1jb2xvcjsgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYXJ0aWNsZS1tZXRhLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWFydGljbGUtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtYXJ0aWNsZS10aXRsZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYXJ0aWNsZS1tZXRhKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtYXJ0aWNsZSgpe1xuXG4gICAgLnVrLWFydGljbGUtdGl0bGUge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1hcnRpY2xlLXRpdGxlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1hcnRpY2xlLXRpdGxlKCk7fVxuICAgIH1cblxuICAgIC51ay1hcnRpY2xlLW1ldGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYXJ0aWNsZS1tZXRhLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1hcnRpY2xlLW1ldGEpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWFydGljbGUtbWV0YSgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWJhY2tncm91bmQtbWlzYygpe31cbkBtaXhpbiBob29rLWJhZGdlKCl7fVxuQG1peGluIGhvb2stYmFkZ2UtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1iYWRnZS1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYWRnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYmFkZ2UtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1iYWRnZSgpe1xuXG4gICAgLnVrLWJhZGdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYmFkZ2UtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJhZGdlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhZGdlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYWRnZSgpO31cbiAgICB9XG5cbiAgICAudWstYmFkZ2U6aG92ZXIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYWRnZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFkZ2UtaG92ZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1iYXNlLWJvZHkoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWxpbmsoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWxpbmstaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWNvZGUoKXtcbiAgICBwYWRkaW5nOiAkYmFzZS1jb2RlLXBhZGRpbmctdmVydGljYWwgJGJhc2UtY29kZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtY29kZS1iYWNrZ3JvdW5kO1xufVxuQG1peGluIGhvb2stYmFzZS1oZWFkaW5nKCl7fVxuQG1peGluIGhvb2stYmFzZS1oMSgpe31cbkBtaXhpbiBob29rLWJhc2UtaDIoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWgzKCl7fVxuQG1peGluIGhvb2stYmFzZS1oNCgpe31cbkBtaXhpbiBob29rLWJhc2UtaDUoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWg2KCl7fVxuQG1peGluIGhvb2stYmFzZS1ocigpe31cbkBtaXhpbiBob29rLWJhc2UtYmxvY2txdW90ZSgpe1xuICAgIGNvbG9yOiAkYmFzZS1ibG9ja3F1b3RlLWNvbG9yO1xufVxuQG1peGluIGhvb2stYmFzZS1ibG9ja3F1b3RlLWZvb3Rlcigpe1xuXG4gICAgY29sb3I6ICRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yO1xuXG4gICAgJjo6YmVmb3JlIHsgY29udGVudDogXCLigJQgXCI7IH1cblxufVxuQG1peGluIGhvb2stYmFzZS1wcmUoKXtcbiAgICBwYWRkaW5nOiAkYmFzZS1wcmUtcGFkZGluZztcbiAgICBib3JkZXI6ICRiYXNlLXByZS1ib3JkZXItd2lkdGggc29saWQgJGJhc2UtcHJlLWJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAkYmFzZS1wcmUtYm9yZGVyLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1wcmUtYmFja2dyb3VuZDtcbn1cbkBtaXhpbiBob29rLWJhc2UtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtYmFzZS1saW5rKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWxpbmstaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtY29kZSgpe1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kO1xufVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWhlYWRpbmcoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaDEoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaDIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaDMoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaDQoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaDUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaDYoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtYmxvY2txdW90ZSgpeyBjb2xvcjogJGludmVyc2UtYmFzZS1ibG9ja3F1b3RlLWNvbG9yOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtYmxvY2txdW90ZS1mb290ZXIoKXsgY29sb3I6ICRpbnZlcnNlLWJhc2UtYmxvY2txdW90ZS1mb290ZXItY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtYmFzZS1ocigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWJhc2UoKXtcblxuICAgIGNvbG9yOiAkaW52ZXJzZS1iYXNlLWNvbG9yO1xuXG4gICAgLy8gQmFzZVxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgLy9cbiAgICAvLyBMaW5rXG4gICAgLy9cblxuICAgIGEsXG4gICAgLnVrLWxpbmsge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYmFzZS1saW5rLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWxpbmspKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtbGluaygpO31cbiAgICB9XG5cbiAgICBhOmhvdmVyLFxuICAgIC51ay1saW5rOmhvdmVyLFxuICAgIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluayB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1iYXNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtbGluay1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFzZS1saW5rLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gQ29kZVxuICAgIC8vXG5cbiAgICA6bm90KHByZSkgPiBjb2RlLFxuICAgIDpub3QocHJlKSA+IGtiZCxcbiAgICA6bm90KHByZSkgPiBzYW1wIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJhc2UtY29kZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYmFzZS1jb2RlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWNvZGUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBFbXBoYXNpemVcbiAgICAvL1xuXG4gICAgZW0geyBjb2xvcjogJGludmVyc2UtYmFzZS1lbS1jb2xvcjsgfVxuXG4gICAgLy9cbiAgICAvLyBIZWFkaW5nc1xuICAgIC8vXG5cbiAgICBoMSwgLnVrLWgxLFxuICAgIGgyLCAudWstaDIsXG4gICAgaDMsIC51ay1oMyxcbiAgICBoNCwgLnVrLWg0LFxuICAgIGg1LCAudWstaDUsXG4gICAgaDYsIC51ay1oNixcbiAgICAudWstaGVhZGluZy1zbWFsbCxcbiAgICAudWstaGVhZGluZy1tZWRpdW0sXG4gICAgLnVrLWhlYWRpbmctbGFyZ2UsXG4gICAgLnVrLWhlYWRpbmcteGxhcmdlLFxuICAgIC51ay1oZWFkaW5nLTJ4bGFyZ2UsXG4gICAgLnVrLWhlYWRpbmctM3hsYXJnZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1iYXNlLWhlYWRpbmctY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaGVhZGluZykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFzZS1oZWFkaW5nKCk7fVxuICAgIH1cblxuICAgIGgxLCAudWstaDEge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWgxKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWgxKCk7fVxuICAgIH1cblxuICAgIGgyLCAudWstaDIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWgyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWgyKCk7fVxuICAgIH1cblxuICAgIGgzLCAudWstaDMge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWgzKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWgzKCk7fVxuICAgIH1cblxuICAgIGg0LCAudWstaDQge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWg0KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWg0KCk7fVxuICAgIH1cblxuICAgIGg1LCAudWstaDUge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWg1KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWg1KCk7fVxuICAgIH1cblxuICAgIGg2LCAudWstaDYge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWg2KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWg2KCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gQmxvY2txdW90ZXNcbiAgICAvL1xuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtYmxvY2txdW90ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFzZS1ibG9ja3F1b3RlKCk7fVxuICAgIH1cblxuICAgIGJsb2NrcXVvdGUgZm9vdGVyIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYmFzZS1ibG9ja3F1b3RlLWZvb3RlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFzZS1ibG9ja3F1b3RlLWZvb3RlcigpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIEhvcml6b250YWwgcnVsZXNcbiAgICAvL1xuXG4gICAgaHIsIC51ay1ociB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRpbnZlcnNlLWJhc2UtaHItYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWhyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWhyKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gRm9jdXNcbiAgICAvL1xuXG4gICAgOmZvY3VzLXZpc2libGUgeyBvdXRsaW5lLWNvbG9yOiAkaW52ZXJzZS1iYXNlLWZvY3VzLW91dGxpbmU7IH1cblxufVxuQG1peGluIGhvb2stYnJlYWRjcnVtYigpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbSgpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1icmVhZGNydW1iLWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1icmVhZGNydW1iLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWJyZWFkY3J1bWIoKXtcblxuICAgIC51ay1icmVhZGNydW1iID4gKiA+ICoge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cblxuICAgIC51ay1icmVhZGNydW1iID4gLnVrLWRpc2FibGVkID4gKiB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWRpc2FibGVkKCk7fVxuICAgIH1cblxuICAgIC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBEaXZpZGVyXG4gICAgLy9cblxuICAgIC51ay1icmVhZGNydW1iID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnJlYWRjcnVtYi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWRpdmlkZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1idXR0b24oKXtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJGJ1dHRvbi10ZXh0LXRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3I7XG59XG5AbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRlZmF1bHQoKXsgYm9yZGVyOiAkYnV0dG9uLWJvcmRlci13aWR0aCBzb2xpZCAkYnV0dG9uLWRlZmF1bHQtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1idXR0b24tZGVmYXVsdC1ob3ZlcigpeyBib3JkZXItY29sb3I6ICRidXR0b24tZGVmYXVsdC1ob3Zlci1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSgpeyBib3JkZXItY29sb3I6ICRidXR0b24tZGVmYXVsdC1hY3RpdmUtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeSgpeyBib3JkZXI6ICRidXR0b24tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyB9XG5AbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1zZWNvbmRhcnkoKXsgYm9yZGVyOiAkYnV0dG9uLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRhbmdlcigpeyBib3JkZXI6ICRidXR0b24tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyB9XG5AbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyLWhvdmVyKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRhbmdlci1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tZGlzYWJsZWQoKXsgYm9yZGVyLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJvcmRlcjsgfVxuQG1peGluIGhvb2stYnV0dG9uLXNtYWxsKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWxhcmdlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLXRleHQoKXtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ1dHRvbi10ZXh0LWJvcmRlci13aWR0aCBzb2xpZCAkYnV0dG9uLXRleHQtYm9yZGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjNzIGVhc2Utb3V0O1xuICAgIH1cblxufVxuQG1peGluIGhvb2stYnV0dG9uLXRleHQtaG92ZXIoKXtcblxuICAgICY6OmJlZm9yZSB7IHJpZ2h0OiAwOyB9XG5cbn1cbkBtaXhpbiBob29rLWJ1dHRvbi10ZXh0LWRpc2FibGVkKCl7XG5cbiAgICAmOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbn1cbkBtaXhpbiBob29rLWJ1dHRvbi1saW5rKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLW1pc2MoKXtcblxuICAgIC8qIEdyb3VwXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIENvbGxhcHNlIGJvcmRlclxuICAgICAqL1xuXG4gICAgLnVrLWJ1dHRvbi1ncm91cCA+IC51ay1idXR0b246bnRoLWNoaWxkKG4rMiksXG4gICAgLnVrLWJ1dHRvbi1ncm91cCA+IGRpdjpudGgtY2hpbGQobisyKSAudWstYnV0dG9uIHsgbWFyZ2luLWxlZnQ6ICgtJGJ1dHRvbi1ib3JkZXItd2lkdGgpOyB9XG5cbiAgICAvKlxuICAgICAqIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IHRvIHN1cGVyaW1wb3NlIHRoZSBzdWNjZXNzb3IgZWxlbWVudHMgYm9yZGVyXG4gICAgICogS25vd24gaXNzdWU6IElmIHlvdSB1c2UgYW4gYGFgIGVsZW1lbnQgYXMgYnV0dG9uIGFuZCBhbiBpY29uIGluc2lkZSxcbiAgICAgKiB0aGUgYWN0aXZlIHN0YXRlIHdpbGwgbm90IHdvcmsgaWYgeW91IGNsaWNrIHRoZSBpY29uIGluc2lkZSB0aGUgYnV0dG9uXG4gICAgICogV29ya2Fyb3VuZDogSnVzdCB1c2UgYSBgYnV0dG9uYCBvciBgaW5wdXRgIGVsZW1lbnQgYXMgYnV0dG9uXG4gICAgICovXG5cbiAgICAudWstYnV0dG9uLWdyb3VwIC51ay1idXR0b246aG92ZXIsXG4gICAgLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uOmZvY3VzLFxuICAgIC51ay1idXR0b24tZ3JvdXAgLnVrLWJ1dHRvbjphY3RpdmUsXG4gICAgLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uLnVrLWFjdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtaG92ZXIoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlKCl7IGJvcmRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXRleHQoKXtcbiAgICAmOjpiZWZvcmUgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3I7IH1cbn1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXRleHQtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tbGluaygpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWJ1dHRvbigpe1xuXG4gICAgLy9cbiAgICAvLyBEZWZhdWx0XG4gICAgLy9cblxuICAgIC51ay1idXR0b24tZGVmYXVsdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0KCk7fVxuICAgIH1cblxuICAgIC51ay1idXR0b24tZGVmYXVsdDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1idXR0b24tZGVmYXVsdDphY3RpdmUsXG4gICAgLnVrLWJ1dHRvbi1kZWZhdWx0LnVrLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tZGVmYXVsdC1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFByaW1hcnlcbiAgICAvL1xuXG4gICAgLnVrLWJ1dHRvbi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnkoKTt9XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSxcbiAgICAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gU2Vjb25kYXJ5XG4gICAgLy9cblxuICAgIC51ay1idXR0b24tc2Vjb25kYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeSgpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLXNlY29uZGFyeTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1zZWNvbmRhcnk6YWN0aXZlLFxuICAgIC51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gVGV4dFxuICAgIC8vXG5cbiAgICAudWstYnV0dG9uLXRleHQge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXRleHQtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tdGV4dCgpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLXRleHQ6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXRleHQtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXRleHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1kaXNhYmxlZCgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIExpbmtcbiAgICAvL1xuXG4gICAgLnVrLWJ1dHRvbi1saW5rIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1saW5rLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tbGluaykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLWxpbmsoKTt9XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1saW5rOmhvdmVyIHsgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1saW5rLWhvdmVyLWNvbG9yOyB9XG5cbn1cbkBtaXhpbiBob29rLWNhcmQoKXsgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UtaW4tb3V0OyB9XG5AbWl4aW4gaG9vay1jYXJkLWJvZHkoKXt9XG5AbWl4aW4gaG9vay1jYXJkLWhlYWRlcigpe31cbkBtaXhpbiBob29rLWNhcmQtZm9vdGVyKCl7fVxuQG1peGluIGhvb2stY2FyZC1tZWRpYSgpe31cbkBtaXhpbiBob29rLWNhcmQtbWVkaWEtdG9wKCl7fVxuQG1peGluIGhvb2stY2FyZC1tZWRpYS1ib3R0b20oKXt9XG5AbWl4aW4gaG9vay1jYXJkLW1lZGlhLWxlZnQoKXt9XG5AbWl4aW4gaG9vay1jYXJkLW1lZGlhLXJpZ2h0KCl7fVxuQG1peGluIGhvb2stY2FyZC10aXRsZSgpe31cbkBtaXhpbiBob29rLWNhcmQtYmFkZ2UoKXtcbiAgICBib3JkZXItcmFkaXVzOiAkY2FyZC1iYWRnZS1ib3JkZXItcmFkaXVzO1xuICAgIHRleHQtdHJhbnNmb3JtOiAkY2FyZC1iYWRnZS10ZXh0LXRyYW5zZm9ybTtcbn1cbkBtaXhpbiBob29rLWNhcmQtaG92ZXIoKXsgYm94LXNoYWRvdzogJGNhcmQtaG92ZXItYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1kZWZhdWx0KCl7IGJveC1zaGFkb3c6ICRjYXJkLWRlZmF1bHQtYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LXRpdGxlKCl7fVxuQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LWhvdmVyKCl7IGJveC1zaGFkb3c6ICRjYXJkLWRlZmF1bHQtaG92ZXItYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LWhlYWRlcigpeyBib3JkZXItYm90dG9tOiAkY2FyZC1kZWZhdWx0LWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtZGVmYXVsdC1oZWFkZXItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1jYXJkLWRlZmF1bHQtZm9vdGVyKCl7IGJvcmRlci10b3A6ICRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlci13aWR0aCAgc29saWQgJGNhcmQtZGVmYXVsdC1mb290ZXItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1jYXJkLXByaW1hcnkoKXsgYm94LXNoYWRvdzogJGNhcmQtcHJpbWFyeS1ib3gtc2hhZG93OyB9XG5AbWl4aW4gaG9vay1jYXJkLXByaW1hcnktdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1jYXJkLXByaW1hcnktaG92ZXIoKXsgYm94LXNoYWRvdzogJGNhcmQtcHJpbWFyeS1ob3Zlci1ib3gtc2hhZG93OyB9XG5AbWl4aW4gaG9vay1jYXJkLXNlY29uZGFyeSgpeyBib3gtc2hhZG93OiAkY2FyZC1zZWNvbmRhcnktYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1zZWNvbmRhcnktdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1jYXJkLXNlY29uZGFyeS1ob3ZlcigpeyBib3gtc2hhZG93OiAkY2FyZC1zZWNvbmRhcnktaG92ZXItYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1taXNjKCl7XG5cbiAgICAvKlxuICAgICAqIERlZmF1bHRcbiAgICAgKi9cblxuICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKC0kY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogKC0kY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgfVxuICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQ6b25seS1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsICsgMTVweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgtJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsICsgMTVweCk7XG4gICAgfVxuXG4gICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSxcbiAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLFxuICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgfVxuXG4gICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiB7IHBhZGRpbmctbGVmdDogJG5hdi1zdWJsaXN0LWRlZXBlci1wYWRkaW5nLWxlZnQgKyAkY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDsgfVxuXG5cbiAgICAvKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgICAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAoLSRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWwpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAoLSRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWwpO1xuICAgICAgICB9XG4gICAgICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQ6b25seS1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAoLSRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sICsgMTVweCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAoLSRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sICsgMTVweCk7XG4gICAgICAgIH1cblxuICAgICAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLFxuICAgICAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLFxuICAgICAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiB7IHBhZGRpbmctbGVmdDogJG5hdi1zdWJsaXN0LWRlZXBlci1wYWRkaW5nLWxlZnQgKyAkY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sOyB9XG5cbiAgICB9XG5cbiAgICAvKlxuICAgICAqIFNtYWxsXG4gICAgICovXG5cbiAgICAudWstY2FyZC1zbWFsbCA+IC51ay1uYXYtZGVmYXVsdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoLSRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAoLSRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgICB9XG4gICAgLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQ6b25seS1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLXZlcnRpY2FsICsgMTVweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgtJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLXZlcnRpY2FsICsgMTVweCk7XG4gICAgfVxuXG4gICAgLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEsXG4gICAgLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIsXG4gICAgLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgfVxuXG4gICAgLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgeyBwYWRkaW5nLWxlZnQ6ICRuYXYtc3VibGlzdC1kZWVwZXItcGFkZGluZy1sZWZ0ICsgJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuICAgIC8qXG4gICAgICogTGFyZ2VcbiAgICAgKi9cblxuICAgIC8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgICAgIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0IHsgbWFyZ2luOiAwOyB9XG4gICAgICAgIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0Om9ubHktY2hpbGQgeyBtYXJnaW46IDA7IH1cblxuICAgICAgICAudWstY2FyZC1sYXJnZSA+IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSxcbiAgICAgICAgLnVrLWNhcmQtbGFyZ2UgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIsXG4gICAgICAgIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVrLWNhcmQtbGFyZ2UgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgeyBwYWRkaW5nLWxlZnQ6ICRuYXYtc3VibGlzdC1kZWVwZXItcGFkZGluZy1sZWZ0OyB9XG5cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtY2FyZC1iYWRnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWNhcmQoKXtcblxuICAgICYudWstY2FyZC1iYWRnZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWNhcmQtYmFkZ2UtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWNhcmQtYmFkZ2UtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWNhcmQtYmFkZ2UpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWNhcmQtYmFkZ2UoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1jbG9zZSgpe1xuICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIG9wYWNpdHk7XG59XG5AbWl4aW4gaG9vay1jbG9zZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWNsb3NlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNsb3NlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jbG9zZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWNsb3NlKCl7XG5cbiAgICAudWstY2xvc2Uge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtY2xvc2UtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWNsb3NlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1jbG9zZSgpO31cbiAgICB9XG5cbiAgICAudWstY2xvc2U6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtY2xvc2UtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWNsb3NlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1jbG9zZS1ob3ZlcigpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWNvbHVtbi1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtY29sdW1uKCl7XG5cbiAgICAudWstY29sdW1uLWRpdmlkZXIgeyBjb2x1bW4tcnVsZS1jb2xvcjogJGludmVyc2UtY29sdW1uLWRpdmlkZXItcnVsZS1jb2xvcjsgfVxuXG59XG5AbWl4aW4gaG9vay1jb21tZW50KCl7fVxuQG1peGluIGhvb2stY29tbWVudC1ib2R5KCl7fVxuQG1peGluIGhvb2stY29tbWVudC1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1jb21tZW50LXRpdGxlKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1tZXRhKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1hdmF0YXIoKXt9XG5AbWl4aW4gaG9vay1jb21tZW50LWxpc3QtYWRqYWNlbnQoKXt9XG5AbWl4aW4gaG9vay1jb21tZW50LWxpc3Qtc3ViKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1saXN0LXN1Yi1hZGphY2VudCgpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtcHJpbWFyeSgpe1xuICAgIHBhZGRpbmc6ICRjb21tZW50LXByaW1hcnktcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29tbWVudC1wcmltYXJ5LWJhY2tncm91bmQ7XG59XG5AbWl4aW4gaG9vay1jb21tZW50LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1jb250YWluZXItbWlzYygpe31cbkBtaXhpbiBob29rLWNvdW50ZG93bigpe31cbkBtaXhpbiBob29rLWNvdW50ZG93bi1pdGVtKCl7fVxuQG1peGluIGhvb2stY291bnRkb3duLW51bWJlcigpe31cbkBtaXhpbiBob29rLWNvdW50ZG93bi1zZXBhcmF0b3IoKXt9XG5AbWl4aW4gaG9vay1jb3VudGRvd24tbGFiZWwoKXt9XG5AbWl4aW4gaG9vay1jb3VudGRvd24tbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtY291bnRkb3duLWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvdW50ZG93bi1udW1iZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvdW50ZG93bi1zZXBhcmF0b3IoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvdW50ZG93bi1sYWJlbCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWNvdW50ZG93bigpe1xuXG4gICAgLnVrLWNvdW50ZG93bi1udW1iZXIsXG4gICAgLnVrLWNvdW50ZG93bi1zZXBhcmF0b3Ige1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1jb3VudGRvd24taXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtY291bnRkb3duLWl0ZW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLWNvdW50ZG93bi1udW1iZXIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1jb3VudGRvd24tbnVtYmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1jb3VudGRvd24tbnVtYmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1jb3VudGRvd24tc2VwYXJhdG9yIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtY291bnRkb3duLXNlcGFyYXRvcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtY291bnRkb3duLXNlcGFyYXRvcigpO31cbiAgICB9XG5cbiAgICAudWstY291bnRkb3duLWxhYmVsIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtY291bnRkb3duLWxhYmVsKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1jb3VudGRvd24tbGFiZWwoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1jb3Zlci1taXNjKCl7fVxuQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC10ZXJtKCl7XG4gICAgZm9udC1zaXplOiAkZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1mb250LXdlaWdodDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS10ZXh0LXRyYW5zZm9ybTtcbn1cbkBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtZGVzY3JpcHRpb24oKXt9XG5AbWl4aW4gaG9vay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybSgpe31cbkBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtbWlzYygpe31cbkBtaXhpbiBob29rLWRpdmlkZXItaWNvbigpe31cbkBtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lKCl7fVxuQG1peGluIGhvb2stZGl2aWRlci1pY29uLWxpbmUtbGVmdCgpe31cbkBtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lLXJpZ2h0KCl7fVxuQG1peGluIGhvb2stZGl2aWRlci1zbWFsbCgpe31cbkBtaXhpbiBob29rLWRpdmlkZXItdmVydGljYWwoKXt9XG5AbWl4aW4gaG9vay1kaXZpZGVyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItaWNvbigpe31cbkBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci1pY29uLWxpbmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItc21hbGwoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItdmVydGljYWwoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1kaXZpZGVyKCl7XG5cbiAgICAudWstZGl2aWRlci1pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWRpdmlkZXItaWNvbi1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWRpdmlkZXItaWNvbi1jb2xvcik7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRpdmlkZXItaWNvbikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZGl2aWRlci1pY29uKCk7fVxuICAgIH1cblxuICAgIC51ay1kaXZpZGVyLWljb246OmJlZm9yZSxcbiAgICAudWstZGl2aWRlci1pY29uOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRpbnZlcnNlLWRpdmlkZXItaWNvbi1saW5lLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZGl2aWRlci1pY29uLWxpbmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWRpdmlkZXItaWNvbi1saW5lKCk7fVxuICAgIH1cblxuICAgIC51ay1kaXZpZGVyLXNtYWxsOjphZnRlciB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRpbnZlcnNlLWRpdmlkZXItc21hbGwtYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1kaXZpZGVyLXNtYWxsKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kaXZpZGVyLXNtYWxsKCk7fVxuICAgIH1cblxuICAgIC51ay1kaXZpZGVyLXZlcnRpY2FsIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRpbnZlcnNlLWRpdmlkZXItdmVydGljYWwtYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1kaXZpZGVyLXZlcnRpY2FsKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kaXZpZGVyLXZlcnRpY2FsKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stZG90bmF2KCl7fVxuQG1peGluIGhvb2stZG90bmF2LWl0ZW0oKXtcbiAgICBib3JkZXI6ICRkb3RuYXYtaXRlbS1ib3JkZXItd2lkdGggc29saWQgJGRvdG5hdi1pdGVtLWJvcmRlcjtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvcjtcbn1cbkBtaXhpbiBob29rLWRvdG5hdi1pdGVtLWhvdmVyKCl7IGJvcmRlci1jb2xvcjogJGRvdG5hdi1pdGVtLWhvdmVyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stZG90bmF2LWl0ZW0tb25jbGljaygpeyBib3JkZXItY29sb3I6ICRkb3RuYXYtaXRlbS1vbmNsaWNrLWJvcmRlcjsgfVxuQG1peGluIGhvb2stZG90bmF2LWl0ZW0tYWN0aXZlKCl7IGJvcmRlci1jb2xvcjogJGRvdG5hdi1pdGVtLWFjdGl2ZS1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWRvdG5hdi1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbSgpeyBib3JkZXItY29sb3I6IHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjkpOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyKCl7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbkBtaXhpbiBob29rLWludmVyc2UtZG90bmF2LWl0ZW0tb25jbGljaygpeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWFjdGl2ZSgpeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1kb3RuYXYoKXtcblxuICAgIC51ay1kb3RuYXYgPiAqID4gKiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWRvdG5hdi1pdGVtLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstZG90bmF2ID4gKiA+IDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstZG90bmF2ID4gKiA+IDphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1kb3RuYXYtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLW9uY2xpY2spKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLW9uY2xpY2soKTt9XG4gICAgfVxuXG4gICAgLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZG90bmF2LWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZG90bmF2LWl0ZW0tYWN0aXZlKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stZHJvcC1taXNjKCl7fVxuQG1peGluIGhvb2stZHJvcGJhcigpe31cbkBtaXhpbiBob29rLWRyb3BiYXItdG9wKCl7IGJveC1zaGFkb3c6ICRkcm9wYmFyLXRvcC1ib3gtc2hhZG93OyB9XG5AbWl4aW4gaG9vay1kcm9wYmFyLWJvdHRvbSgpeyBib3gtc2hhZG93OiAkZHJvcGJhci1ib3R0b20tYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stZHJvcGJhci1sZWZ0KCl7IGJveC1zaGFkb3c6ICRkcm9wYmFyLWxlZnQtYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stZHJvcGJhci1yaWdodCgpeyBib3gtc2hhZG93OiAkZHJvcGJhci1yaWdodC1ib3gtc2hhZG93OyB9XG5AbWl4aW4gaG9vay1kcm9wYmFyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bigpeyBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stZHJvcGRvd24tZHJvcGJhcigpeyBib3gtc2hhZG93OiBub25lOyB9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1kcm9wYmFyLWxhcmdlKCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24tbmF2KCl7IGZvbnQtc2l6ZTogJGRyb3Bkb3duLW5hdi1mb250LXNpemU7IH1cbkBtaXhpbiBob29rLWRyb3Bkb3duLW5hdi1pdGVtKCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtc3VidGl0bGUoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1taXNjKCl7fVxuQG1peGluIGhvb2stZHJvcG5hdi1taXNjKCl7fVxuQG1peGluIGhvb2stZmxleC1taXNjKCl7fVxuQG1peGluIGhvb2stZm9ybS1yYW5nZSgpe31cbkBtaXhpbiBob29rLWZvcm0tcmFuZ2UtdHJhY2soKXsgYm9yZGVyLXJhZGl1czogJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czsgfVxuQG1peGluIGhvb2stZm9ybS1yYW5nZS10cmFjay1mb2N1cygpe31cbkBtaXhpbiBob29rLWZvcm0tcmFuZ2UtdGh1bWIoKXsgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLXJhbmdlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2soKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdGh1bWIoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1mb3JtLXJhbmdlLXRodW1iLWJvcmRlcjsgfVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtZm9ybS1yYW5nZSgpe1xuXG4gICAgLyogV2Via2l0ICovXG4gICAgLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRpbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2stYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1yYW5nZS10cmFjaykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybS1yYW5nZS10cmFjaygpO31cbiAgICB9XG5cbiAgICAudWstcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuICAgIC51ay1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGludmVyc2UtZm9ybS1yYW5nZS10cmFjay1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCk7fVxuICAgIH1cblxuICAgIC8qIEZpcmVmb3ggKi9cbiAgICAudWstcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS1mb3JtLXJhbmdlLXRyYWNrLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2spKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2soKTt9XG4gICAgfVxuXG4gICAgLnVrLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGludmVyc2UtZm9ybS1yYW5nZS10cmFjay1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCk7fVxuICAgIH1cblxuICAgIC8qIFdlYmtpdCAqL1xuICAgIC51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS1mb3JtLXJhbmdlLXRodW1iLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdGh1bWIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdGh1bWIoKTt9XG4gICAgfVxuXG4gICAgLyogRmlyZWZveCAqL1xuICAgIC51ay1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRpbnZlcnNlLWZvcm0tcmFuZ2UtdGh1bWItYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1yYW5nZS10aHVtYikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybS1yYW5nZS10aHVtYigpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWZvcm0oKXtcbiAgICBib3JkZXI6ICRmb3JtLWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1ib3JkZXI7XG4gICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyO1xufVxuQG1peGluIGhvb2stZm9ybS1zaW5nbGUtbGluZSgpe31cbkBtaXhpbiBob29rLWZvcm0tbXVsdGktbGluZSgpe31cbkBtaXhpbiBob29rLWZvcm0tZm9jdXMoKXsgYm9yZGVyLWNvbG9yOiAkZm9ybS1mb2N1cy1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWZvcm0tZGlzYWJsZWQoKXsgYm9yZGVyLWNvbG9yOiAkZm9ybS1kaXNhYmxlZC1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWZvcm0tZGFuZ2VyKCl7IGJvcmRlci1jb2xvcjogJGZvcm0tZGFuZ2VyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stZm9ybS1zdWNjZXNzKCl7IGJvcmRlci1jb2xvcjogJGZvcm0tc3VjY2Vzcy1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWZvcm0tYmxhbmsoKXsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuQG1peGluIGhvb2stZm9ybS1ibGFuay1mb2N1cygpe1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tYmxhbmstZm9jdXMtYm9yZGVyO1xuICAgIGJvcmRlci1zdHlsZTogJGZvcm0tYmxhbmstZm9jdXMtYm9yZGVyLXN0eWxlO1xufVxuQG1peGluIGhvb2stZm9ybS1yYWRpbygpe1xuICAgIGJvcmRlcjogJGZvcm0tcmFkaW8tYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLXJhZGlvLWJvcmRlcjtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIGJvcmRlcjtcbn1cbkBtaXhpbiBob29rLWZvcm0tcmFkaW8tZm9jdXMoKXsgYm9yZGVyLWNvbG9yOiAkZm9ybS1yYWRpby1mb2N1cy1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWZvcm0tcmFkaW8tY2hlY2tlZCgpeyBib3JkZXItY29sb3I6ICRmb3JtLXJhZGlvLWNoZWNrZWQtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1mb3JtLXJhZGlvLWRpc2FibGVkKCl7IGJvcmRlci1jb2xvcjogJGZvcm0tcmFkaW8tZGlzYWJsZWQtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLWxlZ2VuZCgpe31cbkBtaXhpbiBob29rLWZvcm0tbGFiZWwoKXtcbiAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG4gICAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG59XG5AbWl4aW4gaG9vay1mb3JtLXN0YWNrZWQtbGFiZWwoKXt9XG5AbWl4aW4gaG9vay1mb3JtLWhvcml6b250YWwtbGFiZWwoKXt9XG5AbWl4aW4gaG9vay1mb3JtLWljb24oKXt9XG5AbWl4aW4gaG9vay1mb3JtLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0oKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tZm9jdXMoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpbygpeyBib3JkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpby1mb2N1cygpeyBib3JkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvcjsgfVxuQG1peGluIGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cygpe31cbkBtaXhpbiBob29rLWludmVyc2UtZm9ybS1sYWJlbCgpeyBjb2xvcjogJGludmVyc2UtZm9ybS1sYWJlbC1jb2xvcjsgfVxuQG1peGluIGhvb2staW52ZXJzZS1mb3JtLWljb24oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1mb3JtKCl7XG5cbiAgICAudWstaW5wdXQsXG4gICAgLnVrLXNlbGVjdCxcbiAgICAudWstdGV4dGFyZWEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1mb3JtLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1mb3JtLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtKCk7fVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZm9ybS1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgY29sb3I6ICRpbnZlcnNlLWZvcm0tZm9jdXMtY29sb3I7XG4gICAgICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLWZvY3VzKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLWZvY3VzKCk7fVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQbGFjZWhvbGRlclxuICAgIC8vXG5cbiAgICAudWstaW5wdXQ6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICRpbnZlcnNlLWZvcm0tcGxhY2Vob2xkZXItY29sb3I7IH1cblxuICAgIC51ay10ZXh0YXJlYTo6cGxhY2Vob2xkZXIgeyBjb2xvcjogJGludmVyc2UtZm9ybS1wbGFjZWhvbGRlci1jb2xvcjsgfVxuXG4gICAgLy9cbiAgICAvLyBTZWxlY3RcbiAgICAvL1xuXG4gICAgLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1zZWxlY3QtaW1hZ2UsIFwiIzAwMFwiLCAkaW52ZXJzZS1mb3JtLXNlbGVjdC1pY29uLWNvbG9yKTsgfVxuXG4gICAgLy9cbiAgICAvLyBEYXRhbGlzdFxuICAgIC8vXG5cbiAgICAudWstaW5wdXRbbGlzdF06aG92ZXIsXG4gICAgLnVrLWlucHV0W2xpc3RdOmZvY3VzIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2UsIFwiIzAwMFwiLCAkaW52ZXJzZS1mb3JtLWRhdGFsaXN0LWljb24tY29sb3IpOyB9XG5cbiAgICAvL1xuICAgIC8vIFJhZGlvIGFuZCBjaGVja2JveFxuICAgIC8vXG5cbiAgICAudWstcmFkaW8sXG4gICAgLnVrLWNoZWNrYm94IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZm9ybS1yYWRpby1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLXJhZGlvKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLXJhZGlvKCk7fVxuICAgIH1cblxuICAgIC8vIEZvY3VzXG4gICAgLnVrLXJhZGlvOmZvY3VzLFxuICAgIC51ay1jaGVja2JveDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWZvcm0tcmFkaW8tZm9jdXMtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1yYWRpby1mb2N1cykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybS1yYWRpby1mb2N1cygpO31cbiAgICB9XG5cbiAgICAvLyBDaGVja2VkXG4gICAgLnVrLXJhZGlvOmNoZWNrZWQsXG4gICAgLnVrLWNoZWNrYm94OmNoZWNrZWQsXG4gICAgLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQoKTt9XG4gICAgfVxuXG4gICAgLy8gRm9jdXNcbiAgICAudWstcmFkaW86Y2hlY2tlZDpmb2N1cyxcbiAgICAudWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbiAgICAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cygpO31cbiAgICB9XG5cbiAgICAvLyBJY29uXG4gICAgLnVrLXJhZGlvOmNoZWNrZWQgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1yYWRpby1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yKTsgfVxuICAgIC51ay1jaGVja2JveDpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2UsIFwiIzAwMFwiLCAkaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcik7IH1cbiAgICAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2UsIFwiIzAwMFwiLCAkaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcik7IH1cblxuICAgIC8vIExhYmVsXG4gICAgLnVrLWZvcm0tbGFiZWwge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLWxhYmVsKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLWxhYmVsKCk7fVxuICAgIH1cblxuICAgIC8vIEljb25cbiAgICAudWstZm9ybS1pY29uIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWZvcm0taWNvbi1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1pY29uKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLWljb24oKTt9XG4gICAgfVxuICAgIC51ay1mb3JtLWljb246aG92ZXIgeyBjb2xvcjogJGludmVyc2UtZm9ybS1pY29uLWhvdmVyLWNvbG9yOyB9XG5cbn1cbkBtaXhpbiBob29rLWdyaWQtZGl2aWRlci1ob3Jpem9udGFsKCl7fVxuQG1peGluIGhvb2stZ3JpZC1kaXZpZGVyLXZlcnRpY2FsKCl7fVxuQG1peGluIGhvb2stZ3JpZC1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1ncmlkLWRpdmlkZXItaG9yaXpvbnRhbCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtZ3JpZC1kaXZpZGVyLXZlcnRpY2FsKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtZ3JpZCgpe1xuXG4gICAgLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkaW52ZXJzZS1ncmlkLWRpdmlkZXItYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1ncmlkLWRpdmlkZXItaG9yaXpvbnRhbCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZ3JpZC1kaXZpZGVyLWhvcml6b250YWwoKTt9XG4gICAgfVxuXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1ncmlkLWRpdmlkZXItYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1ncmlkLWRpdmlkZXItdmVydGljYWwpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWdyaWQtZGl2aWRlci12ZXJ0aWNhbCgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWhlYWRpbmctc21hbGwoKXt9XG5AbWl4aW4gaG9vay1oZWFkaW5nLW1lZGl1bSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctbGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1oZWFkaW5nLXhsYXJnZSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctMnhsYXJnZSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctM3hsYXJnZSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctaGVybygpe31cbkBtaXhpbiBob29rLWhlYWRpbmctZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWhlYWRpbmctYnVsbGV0KCl7fVxuQG1peGluIGhvb2staGVhZGluZy1saW5lKCl7fVxuQG1peGluIGhvb2staGVhZGluZy1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLXNtYWxsKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLW1lZGl1bSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1sYXJnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy14bGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctMnhsYXJnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy0zeGxhcmdlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctaGVybygpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWJ1bGxldCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1saW5lKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtaGVhZGluZygpe1xuXG4gICAgLnVrLWhlYWRpbmctc21hbGwge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1oZWFkaW5nLXNtYWxsKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLXNtYWxsKCk7fVxuICAgIH1cblxuICAgIC51ay1oZWFkaW5nLW1lZGl1bSB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWhlYWRpbmctbWVkaXVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLW1lZGl1bSgpO31cbiAgICB9XG5cbiAgICAudWstaGVhZGluZy1sYXJnZSB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWhlYWRpbmctbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWhlYWRpbmctbGFyZ2UoKTt9XG4gICAgfVxuXG4gICAgLnVrLWhlYWRpbmcteGxhcmdlIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy14bGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWhlYWRpbmcteGxhcmdlKCk7fVxuICAgIH1cblxuICAgIC51ay1oZWFkaW5nLTJ4bGFyZ2Uge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1oZWFkaW5nLTJ4bGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWhlYWRpbmctMnhsYXJnZSgpO31cbiAgICB9XG5cbiAgICAudWstaGVhZGluZy0zeGxhcmdlIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy0zeGxhcmdlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLTN4bGFyZ2UoKTt9XG4gICAgfVxuXG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7IC51ay1oZWFkaW5nLXByaW1hcnkgeyBAaWYgKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLXByaW1hcnkoKTt9fX1cblxuICAgIEBpZiAoJGRlcHJlY2F0ZWQgPT0gdHJ1ZSkgeyAudWstaGVhZGluZy1oZXJvIHsgQGlmIChtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWhlYWRpbmctaGVybykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaGVhZGluZy1oZXJvKCk7fX19XG5cbiAgICAudWstaGVhZGluZy1kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGludmVyc2UtaGVhZGluZy1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLWRpdmlkZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLWhlYWRpbmctYnVsbGV0OjpiZWZvcmUge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGludmVyc2UtaGVhZGluZy1idWxsZXQtYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1oZWFkaW5nLWJ1bGxldCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaGVhZGluZy1idWxsZXQoKTt9XG4gICAgfVxuXG4gICAgLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLFxuICAgIC51ay1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGludmVyc2UtaGVhZGluZy1saW5lLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1saW5lKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLWxpbmUoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1oZWlnaHQtbWlzYygpe31cbkBtaXhpbiBob29rLWljb24tbGluaygpe31cbkBtaXhpbiBob29rLWljb24tbGluay1ob3Zlcigpe31cbkBtaXhpbiBob29rLWljb24tbGluay1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pY29uLWJ1dHRvbigpe1xuICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJhY2tncm91bmQtY29sb3I7XG59XG5AbWl4aW4gaG9vay1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWljb24tYnV0dG9uLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWljb24tbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtaWNvbi1saW5rKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1pY29uLWxpbmstaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWljb24tbGluay1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWljb24tYnV0dG9uKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtaWNvbigpe1xuXG4gICAgLy9cbiAgICAvLyBMaW5rXG4gICAgLy9cblxuICAgIC51ay1pY29uLWxpbmsge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1saW5rLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1pY29uLWxpbmspKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWljb24tbGluaygpO31cbiAgICB9XG5cbiAgICAudWstaWNvbi1saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWljb24tbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaWNvbi1saW5rLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1pY29uLWxpbmstaG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLWljb24tbGluazphY3RpdmUsXG4gICAgLnVrLWFjdGl2ZSA+IC51ay1pY29uLWxpbmsge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaWNvbi1saW5rLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbi1saW5rLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIEJ1dHRvblxuICAgIC8vXG5cbiAgICAudWstaWNvbi1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1pY29uLWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1idXR0b24tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb24tYnV0dG9uKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbigpO31cbiAgICB9XG5cbiAgICAudWstaWNvbi1idXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1idXR0b24taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb24tYnV0dG9uLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbi1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstaWNvbi1idXR0b246YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29uLWJ1dHRvbi1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staWNvbm5hdigpe31cbkBtaXhpbiBob29rLWljb25uYXYtaXRlbSgpe1xuICAgIGZvbnQtc2l6ZTogJHN1Ym5hdi1pdGVtLWZvbnQtc2l6ZTtcbiAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xufVxuQG1peGluIGhvb2staWNvbm5hdi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2staWNvbm5hdi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWljb25uYXYtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1pY29ubmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1pY29ubmF2KCl7XG5cbiAgICAudWstaWNvbm5hdiA+ICogPiBhIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWljb25uYXYtaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaWNvbm5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1pY29ubmF2LWl0ZW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLWljb25uYXYgPiAqID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29ubmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWxhYmVsKCl7XG4gICAgYm9yZGVyLXJhZGl1czogJGxhYmVsLWJvcmRlci1yYWRpdXM7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRsYWJlbC10ZXh0LXRyYW5zZm9ybTtcbn1cbkBtaXhpbiBob29rLWxhYmVsLXN1Y2Nlc3MoKXt9XG5AbWl4aW4gaG9vay1sYWJlbC13YXJuaW5nKCl7fVxuQG1peGluIGhvb2stbGFiZWwtZGFuZ2VyKCl7fVxuQG1peGluIGhvb2stbGFiZWwtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGFiZWwoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1sYWJlbCgpe1xuXG4gICAgLnVrLWxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGFiZWwtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWxhYmVsLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1sYWJlbCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbGFiZWwoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1sZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1sZWFkZXItbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGVhZGVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGVhZGVyKCl7XG5cbiAgICAudWstbGVhZGVyLWZpbGw6OmFmdGVyIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbGVhZGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1sZWFkZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1saWdodGJveCgpe31cbkBtaXhpbiBob29rLWxpZ2h0Ym94LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1saWdodGJveC1jYXB0aW9uKCl7fVxuQG1peGluIGhvb2stbGlnaHRib3gtbWlzYygpe31cbkBtaXhpbiBob29rLWxpbmstbXV0ZWQoKXt9XG5AbWl4aW4gaG9vay1saW5rLW11dGVkLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbGluay10ZXh0KCl7fVxuQG1peGluIGhvb2stbGluay10ZXh0LWhvdmVyKCl7fVxuQG1peGluIGhvb2stbGluay1oZWFkaW5nKCl7fVxuQG1peGluIGhvb2stbGluay1oZWFkaW5nLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbGluay1yZXNldCgpe31cbkBtaXhpbiBob29rLWxpbmstbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZC1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGluay10ZXh0LWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1saW5rLWhlYWRpbmctaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1saW5rKCl7XG5cbiAgICBhLnVrLWxpbmstbXV0ZWQsXG4gICAgLnVrLWxpbmstbXV0ZWQgYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rLW11dGVkLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1saW5rLW11dGVkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1saW5rLW11dGVkKCk7fVxuICAgIH1cblxuICAgIGEudWstbGluay1tdXRlZDpob3ZlcixcbiAgICAudWstbGluay1tdXRlZCBhOmhvdmVyLFxuICAgIC51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rLW11dGVkLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1saW5rLW11dGVkLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1saW5rLW11dGVkLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIGEudWstbGluay10ZXh0OmhvdmVyLFxuICAgIC51ay1saW5rLXRleHQgYTpob3ZlcixcbiAgICAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rLXRleHQtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxpbmstdGV4dC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbGluay10ZXh0LWhvdmVyKCk7fVxuICAgIH1cblxuICAgIGEudWstbGluay1oZWFkaW5nOmhvdmVyLFxuICAgIC51ay1saW5rLWhlYWRpbmcgYTpob3ZlcixcbiAgICAudWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstaGVhZGluZyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rLWhlYWRpbmctaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxpbmstaGVhZGluZy1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbGluay1oZWFkaW5nLWhvdmVyKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stbGlzdC1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbGlzdC1zdHJpcGVkKCl7XG5cbiAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICBib3JkZXItdG9wOiAkbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1zdHJpcGVkLWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGxpc3Qtc3RyaXBlZC1ib3JkZXItd2lkdGggc29saWQgJGxpc3Qtc3RyaXBlZC1ib3JkZXI7XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1saXN0LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWxpc3QtZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGlzdC1zdHJpcGVkKCl7XG5cbiAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyO1xuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGlzdCgpe1xuXG4gICAgLnVrLWxpc3QtbXV0ZWQgPiA6Om1hcmtlciB7IGNvbG9yOiAkaW52ZXJzZS1saXN0LW11dGVkLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbGlzdC1lbXBoYXNpcyA+IDo6bWFya2VyIHsgY29sb3I6ICRpbnZlcnNlLWxpc3QtZW1waGFzaXMtY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay1saXN0LXByaW1hcnkgPiA6Om1hcmtlciB7IGNvbG9yOiAkaW52ZXJzZS1saXN0LXByaW1hcnktY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay1saXN0LXNlY29uZGFyeSA+IDo6bWFya2VyIHsgY29sb3I6ICRpbnZlcnNlLWxpc3Qtc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuICAgIC51ay1saXN0LWJ1bGxldCA+IDo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWxpc3QtYnVsbGV0LWltYWdlLCBcIiMwMDBcIiwgJGludmVyc2UtbGlzdC1idWxsZXQtaWNvbi1jb2xvcik7XG4gICAgfVxuXG4gICAgLnVrLWxpc3QtZGl2aWRlciA+IDpudGgtY2hpbGQobisyKSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRpbnZlcnNlLWxpc3QtZGl2aWRlci1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxpc3QtZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbGlzdC1kaXZpZGVyKCk7fVxuICAgIH1cblxuICAgIC51ay1saXN0LXN0cmlwZWQgPiAqIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbGlzdC1zdHJpcGVkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1saXN0LXN0cmlwZWQoKTt9XG4gICAgfVxuXG4gICAgLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpIHsgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbGlzdC1zdHJpcGVkLWJhY2tncm91bmQ7IH1cblxufVxuQG1peGluIGhvb2stbWFyZ2luLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1tYXJrZXIoKXtcbiAgICBib3JkZXItcmFkaXVzOiA1MDBweDtcbn1cbkBtaXhpbiBob29rLW1hcmtlci1ob3Zlcigpe31cbkBtaXhpbiBob29rLW1hcmtlci1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1tYXJrZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW1hcmtlci1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LW1hcmtlcigpe1xuXG4gICAgLnVrLW1hcmtlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRpbnZlcnNlLW1hcmtlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbWFya2VyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1tYXJrZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW1hcmtlcigpO31cbiAgICB9XG5cbiAgICAudWstbWFya2VyOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW1hcmtlci1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbWFya2VyLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1tYXJrZXItaG92ZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1tb2RhbCgpe31cbkBtaXhpbiBob29rLW1vZGFsLWRpYWxvZygpe31cbkBtaXhpbiBob29rLW1vZGFsLWZ1bGwoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1ib2R5KCl7fVxuQG1peGluIGhvb2stbW9kYWwtaGVhZGVyKCl7IGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1tb2RhbC1mb290ZXIoKXsgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXI7IH1cbkBtaXhpbiBob29rLW1vZGFsLXRpdGxlKCl7fVxuQG1peGluIGhvb2stbW9kYWwtY2xvc2UoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLW1vZGFsLWNsb3NlLWRlZmF1bHQoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1kZWZhdWx0LWhvdmVyKCl7fVxuQG1peGluIGhvb2stbW9kYWwtY2xvc2Utb3V0c2lkZSgpe31cbkBtaXhpbiBob29rLW1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1mdWxsKCl7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRtb2RhbC1jbG9zZS1mdWxsLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWNsb3NlLWZ1bGwtYmFja2dyb3VuZDtcbn1cbkBtaXhpbiBob29rLW1vZGFsLWNsb3NlLWZ1bGwtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1taXNjKCl7XG5cbiAgICAvKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAgICAgLnVrLW1vZGFsLWNsb3NlLWZ1bGwge1xuICAgICAgICAgICAgcGFkZGluZzogJG1vZGFsLWNsb3NlLWZ1bGwtcGFkZGluZy1tO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLW5hdi1zdWIoKXt9XG5AbWl4aW4gaG9vay1uYXYtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdCgpe31cbkBtaXhpbiBob29rLW5hdi1kZWZhdWx0LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1zdWJ0aXRsZSgpe31cbkBtaXhpbiBob29rLW5hdi1kZWZhdWx0LWhlYWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1kZWZhdWx0LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1uYXYtcHJpbWFyeS1zdWJ0aXRsZSgpe31cbkBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWhlYWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtc2Vjb25kYXJ5KCl7XG4gICAgPiA6bm90KC51ay1uYXYtZGl2aWRlcikgKyA6bm90KC51ay1uYXYtaGVhZGVyLCAudWstbmF2LWRpdmlkZXIpIHsgIG1hcmdpbi10b3A6ICRuYXYtc2Vjb25kYXJ5LW1hcmdpbi10b3A7IH1cbn1cbkBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktaXRlbSgpeyBwYWRkaW5nOiAkbmF2LXNlY29uZGFyeS1pdGVtLXBhZGRpbmctdmVydGljYWwgJG5hdi1zZWNvbmRhcnktaXRlbS1wYWRkaW5nLWhvcml6b250YWw7IH1cbkBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktaXRlbS1ob3ZlcigpeyBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXNlY29uZGFyeS1pdGVtLWhvdmVyLWJhY2tncm91bmQ7IH1cbkBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktaXRlbS1hY3RpdmUoKXsgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1zZWNvbmRhcnktaXRlbS1hY3RpdmUtYmFja2dyb3VuZDsgfVxuQG1peGluIGhvb2stbmF2LXNlY29uZGFyeS1zdWJ0aXRsZSgpe31cbkBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktc3VidGl0bGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LXNlY29uZGFyeS1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LW1lZGl1bSgpe31cbkBtaXhpbiBob29rLW5hdi1sYXJnZSgpe31cbkBtaXhpbiBob29rLW5hdi14bGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1uYXYtZGl2aWRlcnMoKXt9XG5AbWl4aW4gaG9vay1uYXYtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWhlYWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWhlYWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWl0ZW0taG92ZXIoKXsgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbmF2LWJhY2tncm91bmQtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktaXRlbS1hY3RpdmUoKXsgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtbmF2LWJhY2tncm91bmQtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDsgfVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2LWRpdmlkZXJzKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtbmF2KCl7XG5cbiAgICAvL1xuICAgIC8vIERlZmF1bHRcbiAgICAvL1xuXG4gICAgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1kZWZhdWx0ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWhlYWRlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtaGVhZGVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1uYXYtZGVmYXVsdC1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LWRlZmF1bHQtZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtZGl2aWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYSB7IGNvbG9yOiAkaW52ZXJzZS1uYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0tY29sb3I7IH1cblxuICAgIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhOmhvdmVyIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjsgfVxuXG4gICAgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEgeyBjb2xvcjogJGludmVyc2UtbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWFjdGl2ZS1jb2xvcjsgfVxuXG4gICAgLy9cbiAgICAvLyBQcmltYXJ5XG4gICAgLy9cblxuICAgIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtcHJpbWFyeSA+IGxpID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LXByaW1hcnktaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LXByaW1hcnktaGVhZGVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWhlYWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGludmVyc2UtbmF2LXByaW1hcnktZGl2aWRlci1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEgeyBjb2xvcjogJGludmVyc2UtbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWNvbG9yOyB9XG5cbiAgICAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciB7IGNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I7IH1cblxuICAgIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I7IH1cblxuICAgIC8vXG4gICAgLy8gU2Vjb25kYXJ5XG4gICAgLy9cblxuICAgIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1zZWNvbmRhcnktaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWl0ZW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VidGl0bGUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VidGl0bGUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VidGl0bGUoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1zZWNvbmRhcnkgPiBsaSA+IGE6aG92ZXIgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VidGl0bGUtYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1zdWJ0aXRsZS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LXNlY29uZGFyeS1oZWFkZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktaGVhZGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWhlYWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LWRpdmlkZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWRpdmlkZXItYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktZGl2aWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBhIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VibGlzdC1pdGVtLWNvbG9yOyB9XG5cbiAgICAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBhOmhvdmVyIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOyB9XG5cbiAgICAudWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1zZWNvbmRhcnktc3VibGlzdC1pdGVtLWFjdGl2ZS1jb2xvcjsgfVxuXG4gICAgLy9cbiAgICAvLyBEaXZpZGVyc1xuICAgIC8vXG5cbiAgICAudWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWRpdmlkZXIpICsgOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRpbnZlcnNlLW5hdi1kaXZpZGVycy1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kaXZpZGVycykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LWRpdmlkZXJzKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stbmF2YmFyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWNvbnRhaW5lcigpe31cbkBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbSgpe1xuICAgIHRleHQtdHJhbnNmb3JtOiAkbmF2YmFyLW5hdi1pdGVtLXRleHQtdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJhY2tncm91bmQtY29sb3I7XG59XG5AbWl4aW4gaG9vay1uYXZiYXItbmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItbmF2LWl0ZW0tb25jbGljaygpe31cbkBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItaXRlbSgpe31cbkBtaXhpbiBob29rLW5hdmJhci10b2dnbGUoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZS1pY29uKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZS1pY29uLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLXN1YnRpdGxlKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItdHJhbnNwYXJlbnQoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItc3RpY2t5KCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duKCl7IGJveC1zaGFkb3c6ICRuYXZiYXItZHJvcGRvd24tYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLWxhcmdlKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIoKXsgYm94LXNoYWRvdzogbm9uZTsgfVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2KCl7IGZvbnQtc2l6ZTogJG5hdmJhci1kcm9wZG93bi1uYXYtZm9udC1zaXplOyB9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1zdWJ0aXRsZSgpe31cbkBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3BiYXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItbWlzYygpe1xuXG4gICAgLnVrLW5hdmJhci1jb250YWluZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH1cblxuICAgIC8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgICAgICAudWstbmF2YmFyLWxlZnQsXG4gICAgICAgIC51ay1uYXZiYXItcmlnaHQsXG4gICAgICAgIFtjbGFzcyo9XCJ1ay1uYXZiYXItY2VudGVyXCJdIHsgZ2FwOiAkbmF2YmFyLWdhcC1tOyB9XG5cbiAgICAgICAgLnVrLW5hdmJhci1jZW50ZXItbGVmdCB7IHJpZ2h0OiB1bnF1b3RlKCdjYWxjKDEwMCUgKyAjeyRuYXZiYXItZ2FwLW19KScpOyB9XG4gICAgICAgIC51ay1uYXZiYXItY2VudGVyLXJpZ2h0IHsgbGVmdDogdW5xdW90ZSgnY2FsYygxMDAlICsgI3skbmF2YmFyLWdhcC1tfSknKTsgfVxuXG4gICAgfVxuXG4gICAgLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgICAgIC51ay1uYXZiYXItbmF2IHsgZ2FwOiAkbmF2YmFyLW5hdi1nYXAtbTsgfVxuXG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tb25jbGljaygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1uYXZiYXIoKXtcblxuICAgIC8vXG4gICAgLy8gTmF2IEl0ZW1cbiAgICAvL1xuXG4gICAgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSxcbiAgICAudWstbmF2YmFyLW5hdiA+IGxpID4gYVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tb25jbGljay1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2spKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gSXRlbVxuICAgIC8vXG5cbiAgICAudWstbmF2YmFyLWl0ZW0ge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2YmFyLWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdmJhci1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXZiYXItaXRlbSgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFRvZ2dsZVxuICAgIC8vXG5cbiAgICAudWstbmF2YmFyLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItdG9nZ2xlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItdG9nZ2xlOmhvdmVyLFxuICAgIC51ay1uYXZiYXItdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24oKXt9XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZSgpe31cbkBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1jbG9zZSgpe31cbkBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1tZXNzYWdlLXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1zdWNjZXNzKCl7fVxuQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZygpe31cbkBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1tZXNzYWdlLWRhbmdlcigpe31cbkBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2stb2ZmY2FudmFzLWJhcigpe31cbkBtaXhpbiBob29rLW9mZmNhbnZhcy1jbG9zZSgpe31cbkBtaXhpbiBob29rLW9mZmNhbnZhcy1vdmVybGF5KCl7fVxuQG1peGluIGhvb2stb2ZmY2FudmFzLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1vdmVybGF5KCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1pY29uKCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1kZWZhdWx0KCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1taXNjKCl7fVxuQG1peGluIGhvb2stcGFkZGluZy1taXNjKCl7fVxuQG1peGluIGhvb2stcGFnaW5hdGlvbigpe31cbkBtaXhpbiBob29rLXBhZ2luYXRpb24taXRlbSgpeyB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UtaW4tb3V0OyB9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2stcGFnaW5hdGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtcGFnaW5hdGlvbigpe1xuXG4gICAgLnVrLXBhZ2luYXRpb24gPiAqID4gKiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1wYWdpbmF0aW9uID4gKiA+IDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1wYWdpbmF0aW9uID4gLnVrLWFjdGl2ZSA+ICoge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAudWstcGFnaW5hdGlvbiA+IC51ay1kaXNhYmxlZCA+ICoge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXBsYWNlaG9sZGVyKCl7IGJvcmRlcjogJHBsYWNlaG9sZGVyLWJvcmRlci13aWR0aCBkYXNoZWQgJHBsYWNlaG9sZGVyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stcGxhY2Vob2xkZXItbWlzYygpe31cbkBtaXhpbiBob29rLXBvc2l0aW9uLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1wcmludCgpe31cbkBtaXhpbiBob29rLXByb2dyZXNzKCl7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtaXhpbiBob29rLXByb2dyZXNzLWJhcigpe31cbkBtaXhpbiBob29rLXByb2dyZXNzLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtaW5wdXQoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtaWNvbigpe31cbkBtaXhpbiBob29rLXNlYXJjaC1kZWZhdWx0LWlucHV0KCl7IGJvcmRlcjogJHNlYXJjaC1kZWZhdWx0LWJvcmRlci13aWR0aCBzb2xpZCAkc2VhcmNoLWRlZmF1bHQtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1zZWFyY2gtZGVmYXVsdC1pbnB1dC1mb2N1cygpeyBib3JkZXItY29sb3I6ICRzZWFyY2gtZGVmYXVsdC1mb2N1cy1ib3JkZXI7IH1cbkBtaXhpbiBob29rLXNlYXJjaC1uYXZiYXItaW5wdXQoKXsgYm9yZGVyOiAkc2VhcmNoLW5hdmJhci1ib3JkZXItd2lkdGggc29saWQgJHNlYXJjaC1uYXZiYXItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1zZWFyY2gtbmF2YmFyLWlucHV0LWZvY3VzKCl7IGJvcmRlci1jb2xvcjogJHNlYXJjaC1uYXZiYXItZm9jdXMtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1zZWFyY2gtbWVkaXVtLWlucHV0KCl7IGJvcmRlcjogJHNlYXJjaC1tZWRpdW0tYm9yZGVyLXdpZHRoIHNvbGlkICRzZWFyY2gtbWVkaXVtLWJvcmRlcjsgfVxuQG1peGluIGhvb2stc2VhcmNoLW1lZGl1bS1pbnB1dC1mb2N1cygpeyBib3JkZXItY29sb3I6ICRzZWFyY2gtbWVkaXVtLWZvY3VzLWJvcmRlcjsgfVxuQG1peGluIGhvb2stc2VhcmNoLWxhcmdlLWlucHV0KCl7IGJvcmRlcjogJHNlYXJjaC1sYXJnZS1ib3JkZXItd2lkdGggc29saWQgJHNlYXJjaC1sYXJnZS1ib3JkZXI7IH1cbkBtaXhpbiBob29rLXNlYXJjaC1sYXJnZS1pbnB1dC1mb2N1cygpeyBib3JkZXItY29sb3I6ICRzZWFyY2gtbGFyZ2UtZm9jdXMtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1zZWFyY2gtdG9nZ2xlKCl7fVxuQG1peGluIGhvb2stc2VhcmNoLXRvZ2dsZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXNlYXJjaC1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1pbnB1dCgpeyBib3JkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQtZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1tZWRpdW0taW5wdXQoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1tZWRpdW0taW5wdXQtZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1sYXJnZS1pbnB1dCgpeyBib3JkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWxhcmdlLWlucHV0LWZvY3VzKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtc2VhcmNoKCl7XG5cbiAgICAvL1xuICAgIC8vIElucHV0XG4gICAgLy9cblxuICAgIC51ay1zZWFyY2gtaW5wdXQgeyBjb2xvcjogJGludmVyc2Utc2VhcmNoLWNvbG9yOyB9XG5cbiAgICAudWstc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciB7IGNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtcGxhY2Vob2xkZXItY29sb3I7IH1cblxuICAgIC8vXG4gICAgLy8gSWNvblxuICAgIC8vXG5cbiAgICAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiB7IGNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtaWNvbi1jb2xvcjsgfVxuICAgIC51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyIHsgY29sb3I6ICRpbnZlcnNlLXNlYXJjaC1pY29uLWNvbG9yOyB9XG5cbiAgICAvL1xuICAgIC8vIFN0eWxlIG1vZGlmaWVyXG4gICAgLy9cblxuICAgIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc2VhcmNoLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2VhcmNoLWRlZmF1bHQtaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWlucHV0KCk7fVxuICAgIH1cblxuICAgIC51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc2VhcmNoLWRlZmF1bHQtZm9jdXMtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWlucHV0LWZvY3VzKCk7fVxuICAgIH1cblxuICAgIC51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtbmF2YmFyLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQoKTt9XG4gICAgfVxuXG4gICAgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLXNlYXJjaC1uYXZiYXItZm9jdXMtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2VhcmNoLW5hdmJhci1pbnB1dC1mb2N1cykpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc2VhcmNoLW5hdmJhci1pbnB1dC1mb2N1cygpO31cbiAgICB9XG5cbiAgICAudWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc2VhcmNoLW1lZGl1bS1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zZWFyY2gtbWVkaXVtLWlucHV0KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zZWFyY2gtbWVkaXVtLWlucHV0KCk7fVxuICAgIH1cblxuICAgIC51ay1zZWFyY2gtbWVkaXVtIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtbWVkaXVtLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXNlYXJjaC1tZWRpdW0taW5wdXQtZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNlYXJjaC1tZWRpdW0taW5wdXQtZm9jdXMoKTt9XG4gICAgfVxuXG4gICAgLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc2VhcmNoLWxhcmdlLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXNlYXJjaC1sYXJnZS1pbnB1dCkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc2VhcmNoLWxhcmdlLWlucHV0KCk7fVxuICAgIH1cblxuICAgIC51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLXNlYXJjaC1sYXJnZS1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zZWFyY2gtbGFyZ2UtaW5wdXQtZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNlYXJjaC1sYXJnZS1pbnB1dC1mb2N1cygpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFRvZ2dsZVxuICAgIC8vXG5cbiAgICAudWstc2VhcmNoLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlKCk7fVxuICAgIH1cblxuICAgIC51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXNlYXJjaC10b2dnbGUtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXNlYXJjaC10b2dnbGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNlYXJjaC10b2dnbGUtaG92ZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1zZWN0aW9uKCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1kZWZhdWx0KCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1tdXRlZCgpe31cbkBtaXhpbiBob29rLXNlY3Rpb24tcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLXNlY3Rpb24tc2Vjb25kYXJ5KCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1vdmVybGFwKCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2stc2xpZGVuYXYoKXsgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLWluLW91dDsgfVxuQG1peGluIGhvb2stc2xpZGVuYXYtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1wcmV2aW91cygpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LW5leHQoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1sYXJnZSgpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LWNvbnRhaW5lcigpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNsaWRlbmF2KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zbGlkZW5hdi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2Utc2xpZGVuYXYtYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtc2xpZGVuYXYoKXtcblxuICAgIC51ay1zbGlkZW5hdiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zbGlkZW5hdi1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2xpZGVuYXYpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNsaWRlbmF2KCk7fVxuICAgIH1cblxuICAgIC51ay1zbGlkZW5hdjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zbGlkZW5hdi1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2xpZGVuYXYtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNsaWRlbmF2LWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1zbGlkZW5hdjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc2xpZGVuYXYtYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zbGlkZW5hdi1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNsaWRlbmF2LWFjdGl2ZSgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXNsaWRlcigpe31cbkBtaXhpbiBob29rLXNsaWRlci1taXNjKCl7fVxuQG1peGluIGhvb2stc2xpZGVzaG93KCl7fVxuQG1peGluIGhvb2stc2xpZGVzaG93LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zb3J0YWJsZSgpe31cbkBtaXhpbiBob29rLXNvcnRhYmxlLWRyYWcoKXt9XG5AbWl4aW4gaG9vay1zb3J0YWJsZS1wbGFjZWhvbGRlcigpe31cbkBtaXhpbiBob29rLXNvcnRhYmxlLWVtcHR5KCl7fVxuQG1peGluIGhvb2stc29ydGFibGUtbWlzYygpe31cbkBtaXhpbiBob29rLXNwaW5uZXIoKXt9XG5AbWl4aW4gaG9vay1zcGlubmVyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zdGlja3ktbWlzYygpe31cbkBtaXhpbiBob29rLXN1Ym5hdigpe31cbkBtaXhpbiBob29rLXN1Ym5hdi1pdGVtKCl7XG4gICAgZm9udC1zaXplOiAkc3VibmF2LWl0ZW0tZm9udC1zaXplO1xuICAgIHRleHQtdHJhbnNmb3JtOiAkc3VibmF2LWl0ZW0tdGV4dC10cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbjogMC4xcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbn1cbkBtaXhpbiBob29rLXN1Ym5hdi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stc3VibmF2LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stc3VibmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtKCl7fVxuQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXN1Ym5hdi1waWxsLWl0ZW0tb25jbGljaygpe31cbkBtaXhpbiBob29rLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stc3VibmF2LWl0ZW0tZGlzYWJsZWQoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LXN1Ym5hdigpe1xuXG4gICAgLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstc3VibmF2ID4gKiA+IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstc3VibmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIERpdmlkZXJcbiAgICAvL1xuXG4gICAgLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1kaXZpZGVyKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUGlsbFxuICAgIC8vXG5cbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2stY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tb25jbGljaykpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrKCk7fVxuICAgIH1cblxuICAgIC51ay1zdWJuYXYtcGlsbCA+IC51ay1hY3RpdmUgPiBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBEaXNhYmxlZFxuICAgIC8vXG5cbiAgICAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stc3ZnLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zd2l0Y2hlci1taXNjKCl7fVxuQG1peGluIGhvb2stdGFiKCl7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogJHRhYi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR0YWItYm9yZGVyLXdpZHRoIHNvbGlkICR0YWItYm9yZGVyO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFiLWl0ZW0oKXtcbiAgICBib3JkZXItYm90dG9tOiAkdGFiLWl0ZW0tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJHRhYi1pdGVtLXRleHQtdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5AbWl4aW4gaG9vay10YWItaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXRhYi1pdGVtLWFjdGl2ZSgpeyBib3JkZXItY29sb3I6ICR0YWItaXRlbS1hY3RpdmUtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay10YWItaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXRhYi1ib3R0b20oKXtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFiLWJvdHRvbS1pdGVtKCl7XG4gICAgYm9yZGVyLXRvcDogJHRhYi1pdGVtLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuQG1peGluIGhvb2stdGFiLWxlZnQoKXtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICR0YWItYm9yZGVyLXdpZHRoIHNvbGlkICR0YWItYm9yZGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFiLXJpZ2h0KCl7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkdGFiLWJvcmRlci13aWR0aCBzb2xpZCAkdGFiLWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXRhYi1sZWZ0LWl0ZW0oKXtcbiAgICBib3JkZXItcmlnaHQ6ICR0YWItaXRlbS1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbkBtaXhpbiBob29rLXRhYi1yaWdodC1pdGVtKCl7XG4gICAgYm9yZGVyLWxlZnQ6ICR0YWItaXRlbS1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbkBtaXhpbiBob29rLXRhYi1taXNjKCl7XG5cbiAgICAudWstdGFiIC51ay1kcm9wZG93biB7IG1hcmdpbi1sZWZ0OiAoJHRhYi1tYXJnaW4taG9yaXpvbnRhbCArICR0YWItaXRlbS1wYWRkaW5nLWhvcml6b250YWwpOyB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtdGFiKCl7XG5cbiAgICAmOjpiZWZvcmUgeyBib3JkZXItY29sb3I6ICRpbnZlcnNlLXRhYi1ib3JkZXI7IH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGFiLWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYi1pdGVtLWFjdGl2ZSgpeyBib3JkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQ7IH1cbkBtaXhpbiBob29rLWludmVyc2UtdGFiLWl0ZW0tZGlzYWJsZWQoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC10YWIoKXtcblxuICAgIC51ay10YWIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10YWIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYigpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gKiA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdGFiLWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10YWItaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gKiA+IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdGFiLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10YWItaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdGFiLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10YWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gLnVrLWRpc2FibGVkID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10YWItaXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGFiLWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYi1pdGVtLWRpc2FibGVkKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFibGUoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1oZWFkZXItY2VsbCgpeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5AbWl4aW4gaG9vay10YWJsZS1jZWxsKCl7fVxuQG1peGluIGhvb2stdGFibGUtZm9vdGVyKCl7fVxuQG1peGluIGhvb2stdGFibGUtY2FwdGlvbigpe31cbkBtaXhpbiBob29rLXRhYmxlLWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1zdHJpcGVkKCl7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1zdHJpcGVkLWJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtc3RyaXBlZC1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLXN0cmlwZWQtYm9yZGVyO1xufVxuQG1peGluIGhvb2stdGFibGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1yb3ctYWN0aXZlKCl7fVxuQG1peGluIGhvb2stdGFibGUtc21hbGwoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1sYXJnZSgpe31cbkBtaXhpbiBob29rLXRhYmxlLW1pc2MoKXtcblxuICAgIC51ay10YWJsZSB0Ym9keSB0ciB7IHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBsaW5lYXI7IH1cblxuICAgIC51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUoZXZlbik6bGFzdC1jaGlsZCxcbiAgICAudWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1zdHJpcGVkLWJvcmRlcjsgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWhlYWRlci1jZWxsKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1jYXB0aW9uKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1yb3ctYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1zdHJpcGVkKCl7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyO1xufVxuQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LXRhYmxlKCl7XG4gICAgLnVrLXRhYmxlLXN0cmlwZWQgPiB0cjpudGgtb2YtdHlwZShldmVuKTpsYXN0LWNoaWxkLFxuICAgIC51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKGV2ZW4pOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyOyB9XG59XG5AbWl4aW4gaG9vay10ZXh0LWxlYWQoKXt9XG5AbWl4aW4gaG9vay10ZXh0LW1ldGEoKXtcblxuICAgID4gYSB7IGNvbG9yOiAkdGV4dC1tZXRhLWxpbmstY29sb3I7IH1cblxuICAgID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1tZXRhLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXRleHQtc21hbGwoKXt9XG5AbWl4aW4gaG9vay10ZXh0LWxhcmdlKCl7fVxuQG1peGluIGhvb2stdGV4dC1iYWNrZ3JvdW5kKCl7IGJhY2tncm91bmQtaW1hZ2U6ICRpbnRlcm5hbC10ZXh0LWJhY2tncm91bmQtY29sb3ItZ3JhZGllbnQ7IH1cbkBtaXhpbiBob29rLXRleHQtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGV4dC1sZWFkKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10ZXh0LW1ldGEoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC10ZXh0KCl7XG5cbiAgICAudWstdGV4dC1sZWFkIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXRleHQtbGVhZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGV4dC1sZWFkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10ZXh0LWxlYWQoKTt9XG4gICAgfVxuXG4gICAgLnVrLXRleHQtbWV0YSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10ZXh0LW1ldGEtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRleHQtbWV0YSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtdGV4dC1tZXRhKCk7fVxuICAgIH1cblxuICAgIC51ay10ZXh0LW11dGVkIHsgY29sb3I6ICRpbnZlcnNlLXRleHQtbXV0ZWQtY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LWVtcGhhc2lzIHsgY29sb3I6ICRpbnZlcnNlLXRleHQtZW1waGFzaXMtY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LXByaW1hcnkgeyBjb2xvcjogJGludmVyc2UtdGV4dC1wcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1zZWNvbmRhcnkgeyBjb2xvcjogJGludmVyc2UtdGV4dC1zZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDsgfVxuXG59XG5AbWl4aW4gaG9vay10aHVtYm5hdigpe31cbkBtaXhpbiBob29rLXRodW1ibmF2LWl0ZW0oKXtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICR0aHVtYm5hdi1pdGVtLWdyYWRpZW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay10aHVtYm5hdi1pdGVtLWhvdmVyKCl7XG4gICAgJjo6YWZ0ZXIgeyBvcGFjaXR5OiAkdGh1bWJuYXYtaXRlbS1ob3Zlci1vcGFjaXR5OyB9XG59XG5AbWl4aW4gaG9vay10aHVtYm5hdi1pdGVtLWFjdGl2ZSgpe1xuICAgICY6OmFmdGVyIHsgb3BhY2l0eTogJHRodW1ibmF2LWl0ZW0tYWN0aXZlLW9wYWNpdHk7IH1cbn1cbkBtaXhpbiBob29rLXRodW1ibmF2LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0oKXtcbiAgICAmOjphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6ICRpbnZlcnNlLXRodW1ibmF2LWl0ZW0tZ3JhZGllbnQ7IH1cbn1cbkBtaXhpbiBob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC10aHVtYm5hdigpe1xuXG4gICAgLnVrLXRodW1ibmF2ID4gKiA+ICoge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay10aHVtYm5hdiA+ICogPiA6aG92ZXIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay10aHVtYm5hdiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0tYWN0aXZlKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stdGlsZSgpe31cbkBtaXhpbiBob29rLXRpbGUtZGVmYXVsdCgpe31cbkBtaXhpbiBob29rLXRpbGUtZGVmYXVsdC1ob3Zlcigpe31cbkBtaXhpbiBob29rLXRpbGUtbXV0ZWQoKXt9XG5AbWl4aW4gaG9vay10aWxlLW11dGVkLWhvdmVyKCl7fVxuQG1peGluIGhvb2stdGlsZS1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stdGlsZS1wcmltYXJ5LWhvdmVyKCl7fVxuQG1peGluIGhvb2stdGlsZS1zZWNvbmRhcnkoKXt9XG5AbWl4aW4gaG9vay10aWxlLXNlY29uZGFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXRpbGUtbWlzYygpe31cbkBtaXhpbiBob29rLXRvb2x0aXAoKXt9XG5AbWl4aW4gaG9vay10b29sdGlwLW1pc2MoKXt9XG5AbWl4aW4gaG9vay10b3RvcCgpeyB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGVhc2UtaW4tb3V0OyB9XG5AbWl4aW4gaG9vay10b3RvcC1ob3Zlcigpe31cbkBtaXhpbiBob29rLXRvdG9wLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLXRvdG9wLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRvdG9wKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10b3RvcC1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtdG90b3AtYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtdG90b3AoKXtcblxuICAgIC51ay10b3RvcCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10b3RvcC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdG90b3ApKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRvdG9wKCk7fVxuICAgIH1cblxuICAgIC51ay10b3RvcDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10b3RvcC1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdG90b3AtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRvdG9wLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay10b3RvcDphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdG90b3AtYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10b3RvcC1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRvdG9wLWFjdGl2ZSgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXRyYW5zaXRpb24tbWlzYygpe31cbkBtaXhpbiBob29rLXBhbmVsLXNjcm9sbGFibGUoKXt9XG5AbWl4aW4gaG9vay1ib3gtc2hhZG93LWJvdHRvbSgpe31cbkBtaXhpbiBob29rLWRyb3BjYXAoKXtcbiAgICAvLyBQcmV2ZW50IGxpbmUgd3JhcFxuICAgIG1hcmdpbi1ib3R0b206IC0ycHg7XG59XG5AbWl4aW4gaG9vay1sb2dvKCl7fVxuQG1peGluIGhvb2stbG9nby1ob3Zlcigpe31cbkBtaXhpbiBob29rLXV0aWxpdHktbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtZHJvcGNhcCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbG9nbygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbG9nby1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LXV0aWxpdHkoKXtcblxuICAgIC51ay1kcm9wY2FwOjpmaXJzdC1sZXR0ZXIsXG4gICAgLnVrLWRyb3BjYXAgcDpmaXJzdC1vZi10eXBlOjpmaXJzdC1sZXR0ZXIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1kcm9wY2FwKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kcm9wY2FwKCk7fVxuICAgIH1cblxuICAgIC51ay1sb2dvIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWxvZ28tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxvZ28pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxvZ28oKTt9XG4gICAgfVxuXG4gICAgLnVrLWxvZ286aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbG9nby1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbG9nby1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbG9nby1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstbG9nbzpoYXMoLnVrLWxvZ28taW52ZXJzZSkgPiA6bm90KHBpY3R1cmU6aGFzKC51ay1sb2dvLWludmVyc2UpKTpub3QoLnVrLWxvZ28taW52ZXJzZSkgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgLnVrLWxvZ28taW52ZXJzZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbn1cbkBtaXhpbiBob29rLXZpc2liaWxpdHktbWlzYygpe31cbkBtaXhpbiBob29rLXdpZHRoLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlKCkge1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtYWNjb3JkaW9uKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1hcnRpY2xlKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1iYWRnZSgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtYmFzZSgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtYnJlYWRjcnVtYigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtYnV0dG9uKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1jYXJkKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1jbG9zZSgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtY29sdW1uKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1jb3VudGRvd24oKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWRpdmlkZXIoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWRvdG5hdigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtZm9ybS1yYW5nZSgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtZm9ybSgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtZ3JpZCgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtaGVhZGluZygpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtaWNvbigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtaWNvbm5hdigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGFiZWwoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWxlYWRlcigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGluaygpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGlzdCgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtbWFya2VyKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1uYXYoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LW5hdmJhcigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtcGFnaW5hdGlvbigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtc2VhcmNoKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1zbGlkZW5hdigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtc3VibmF2KCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC10YWIoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LXRhYmxlKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC10ZXh0KCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC10aHVtYm5hdigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtdG90b3AoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LXV0aWxpdHkoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWFjY29yZGlvbigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtdGFibGUoKTtcbn0iLCIvLyBOYW1lOiAgICAgICAgICAgIExpbmtcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBsaW5rc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWxpbmstbXV0ZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saW5rLXRleHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saW5rLWhlYWRpbmdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saW5rLXJlc2V0YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWxpbmstdG9nZ2xlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExpbmtcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIE11dGVkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYS51ay1saW5rLW11dGVkLFxuLnVrLWxpbmstbXV0ZWQgYSxcbi51ay1saW5rLXRvZ2dsZSAudWstbGluay1tdXRlZCB7XG4gICAgY29sb3I6ICRsaW5rLW11dGVkLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLW11dGVkKSkge0BpbmNsdWRlIGhvb2stbGluay1tdXRlZCgpO31cbn1cblxuYS51ay1saW5rLW11dGVkOmhvdmVyLFxuLnVrLWxpbmstbXV0ZWQgYTpob3Zlcixcbi51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCB7XG4gICAgY29sb3I6ICRsaW5rLW11dGVkLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLW11dGVkLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbGluay1tdXRlZC1ob3ZlcigpO31cbn1cblxuXG4vKiBUZXh0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYS51ay1saW5rLXRleHQsXG4udWstbGluay10ZXh0IGEsXG4udWstbGluay10b2dnbGUgLnVrLWxpbmstdGV4dCB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpbmstdGV4dCkpIHtAaW5jbHVkZSBob29rLWxpbmstdGV4dCgpO31cbn1cblxuYS51ay1saW5rLXRleHQ6aG92ZXIsXG4udWstbGluay10ZXh0IGE6aG92ZXIsXG4udWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstdGV4dCB7XG4gICAgY29sb3I6ICRsaW5rLXRleHQtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpbmstdGV4dC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWxpbmstdGV4dC1ob3ZlcigpO31cbn1cblxuXG4vKiBIZWFkaW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYS51ay1saW5rLWhlYWRpbmcsXG4udWstbGluay1oZWFkaW5nIGEsXG4udWstbGluay10b2dnbGUgLnVrLWxpbmstaGVhZGluZyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpbmstaGVhZGluZykpIHtAaW5jbHVkZSBob29rLWxpbmstaGVhZGluZygpO31cbn1cblxuYS51ay1saW5rLWhlYWRpbmc6aG92ZXIsXG4udWstbGluay1oZWFkaW5nIGE6aG92ZXIsXG4udWstbGluay10b2dnbGU6aG92ZXIgLnVrLWxpbmstaGVhZGluZyB7XG4gICAgY29sb3I6ICRsaW5rLWhlYWRpbmctaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1oZWFkaW5nLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGluay1oZWFkaW5nLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbGluay1oZWFkaW5nLWhvdmVyKCk7fVxufVxuXG5cbi8qIFJlc2V0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIGAhaW1wb3J0YW50YCBuZWVkZWQgdG8gb3ZlcnJpZGUgaW52ZXJzZSBjb21wb25lbnRcbiAqL1xuXG5hLnVrLWxpbmstcmVzZXQsXG4udWstbGluay1yZXNldCBhIHtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLXJlc2V0KSkge0BpbmNsdWRlIGhvb2stbGluay1yZXNldCgpO31cbn1cblxuXG4vKiBUb2dnbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGluay10b2dnbGUge1xuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbGluay1taXNjKSkge0BpbmNsdWRlIGhvb2stbGluay1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLW11dGVkKCl7fVxuLy8gQG1peGluIGhvb2stbGluay1tdXRlZC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWxpbmstdGV4dCgpe31cbi8vIEBtaXhpbiBob29rLWxpbmstdGV4dC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWxpbmstaGVhZGluZygpe31cbi8vIEBtaXhpbiBob29rLWxpbmstaGVhZGluZy1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWxpbmstcmVzZXQoKXt9XG4vLyBAbWl4aW4gaG9vay1saW5rLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay10ZXh0LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1saW5rLWhlYWRpbmctaG92ZXIoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEhlYWRpbmdcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBoZWFkaW5nc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWhlYWRpbmctcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWhlYWRpbmctaGVyb2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWhlYWRpbmctZGl2aWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWhlYWRpbmctYnVsbGV0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstaGVhZGluZy1saW5lYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1zbWFsbC1mb250LXNpemUtbSAqIDAuOCAhZGVmYXVsdDsgICAgICAgLy8gMzhweCAwLjczXG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7ICAgIC8vIDQwcHggMC43MTRcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAqIDAuODUgIWRlZmF1bHQ7ICAgICAgLy8gNTBweCAwLjc4XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLW0gIWRlZmF1bHQ7ICAgICAgICAgICAgIC8vIDRyZW0gLyA2NHB4XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1tICFkZWZhdWx0OyAgICAgICAgICAgIC8vIDZyZW0gLyA5NnB4XG4kaGVhZGluZy0zeGxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDsgICAgICAgICAgIC8vIDhyZW0gLyAxMjhweFxuXG4kaGVhZGluZy1zbWFsbC1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICogMC44MTI1ICFkZWZhdWx0OyAgIC8vIDMuMjVyZW0gLyA1MnB4XG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICogMC44NzUgIWRlZmF1bHQ7ICAgIC8vIDMuNXJlbSAvIDU2cHhcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgLy8gNHJlbSAvIDY0cHhcbiRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbCAhZGVmYXVsdDsgICAgICAgICAgICAgLy8gNnJlbSAvIDk2cHhcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgLy8gOHJlbSAvIDEyOHB4XG4kaGVhZGluZy0zeGxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemUtbCAhZGVmYXVsdDsgICAgICAgICAgIC8vIDExcmVtIC8gMTc2cHhcblxuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgIDRyZW0gIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA2NHB4XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDk2cHhcbiRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICA4cmVtICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTI4cHhcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAxMXJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTc2cHhcbiRoZWFkaW5nLTN4bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAxNXJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMjQwcHhcblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBIZWFkaW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWhlYWRpbmctc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1zbWFsbC1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy1zbWFsbCkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctc21hbGwoKTt9XG59XG5cbi51ay1oZWFkaW5nLW1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1tZWRpdW0tbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctbWVkaXVtKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1tZWRpdW0oKTt9XG59XG5cbi51ay1oZWFkaW5nLWxhcmdlIHtcbiAgICBmb250LXNpemU6ICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctbGFyZ2UtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLWxhcmdlKCk7fVxufVxuXG4udWstaGVhZGluZy14bGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmcteGxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLXhsYXJnZSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmcteGxhcmdlKCk7fVxufVxuXG4udWstaGVhZGluZy0yeGxhcmdlIHtcbiAgICBmb250LXNpemU6ICRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy0yeGxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLTJ4bGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLTJ4bGFyZ2UoKTt9XG59XG5cbi51ay1oZWFkaW5nLTN4bGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctM3hsYXJnZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLTN4bGFyZ2UtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctM3hsYXJnZSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctM3hsYXJnZSgpO31cbn1cblxuLyogVGFibGV0IExhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstaGVhZGluZy1zbWFsbCB7IGZvbnQtc2l6ZTogJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW07IH1cbiAgICAudWstaGVhZGluZy1tZWRpdW0geyBmb250LXNpemU6ICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbTsgfVxuICAgIC51ay1oZWFkaW5nLWxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbTsgfVxuICAgIC51ay1oZWFkaW5nLXhsYXJnZSB7IGZvbnQtc2l6ZTogJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1tOyB9XG4gICAgLnVrLWhlYWRpbmctMnhsYXJnZSB7IGZvbnQtc2l6ZTogJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemUtbTsgfVxuICAgIC51ay1oZWFkaW5nLTN4bGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLTN4bGFyZ2UtZm9udC1zaXplLW07IH1cblxufVxuXG4vKiBMYXB0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstaGVhZGluZy1tZWRpdW0geyBmb250LXNpemU6ICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbDsgfVxuICAgIC51ay1oZWFkaW5nLWxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbDsgfVxuICAgIC51ay1oZWFkaW5nLXhsYXJnZSB7IGZvbnQtc2l6ZTogJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1sOyB9XG4gICAgLnVrLWhlYWRpbmctMnhsYXJnZSB7IGZvbnQtc2l6ZTogJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemUtbDsgfVxuICAgIC51ay1oZWFkaW5nLTN4bGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLTN4bGFyZ2UtZm9udC1zaXplLWw7IH1cblxufVxuXG5cbi8qIFByaW1hcnlcbiAgIERlcHJlY2F0ZWQ6IFVzZSBgdWstaGVhZGluZy1tZWRpdW1gIGluc3RlYWRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgMy43NXJlbSAhZGVmYXVsdDsgIC8vIDYwcHhcblxuJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplLWwgKiAwLjkgIWRlZmF1bHQ7IC8vIDU0cHhcblxuJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplLWwgKiAwLjggIWRlZmF1bHQ7IC8vIDQ4cHhcblxuQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstaGVhZGluZy1wcmltYXJ5IHtcbiAgICBmb250LXNpemU6ICRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1wcmltYXJ5LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLXByaW1hcnkoKTt9XG59XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstaGVhZGluZy1wcmltYXJ5IHsgZm9udC1zaXplOiAkaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1tOyB9XG59XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIEBpZiAoJGRlcHJlY2F0ZWQgPT0gdHJ1ZSkge1xuLnVrLWhlYWRpbmctcHJpbWFyeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLXByaW1hcnktbGluZS1oZWlnaHQtbDtcbiAgICB9XG59XG5cbn1cblxuXG4vKiBIZXJvXG4gICBEZXByZWNhdGVkOiBVc2UgYHVrLWhlYWRpbmcteGxhcmdlYCBpbnN0ZWFkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJGhlYWRpbmctaGVyby1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICAgIDhyZW0gIWRlZmF1bHQ7IC8vIDEyOHB4XG5cbiRoZWFkaW5nLWhlcm8tZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1oZXJvLWZvbnQtc2l6ZS1sICogMC43NSAhZGVmYXVsdDsgLy8gOTZweFxuXG4kaGVhZGluZy1oZXJvLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctaGVyby1mb250LXNpemUtbCAqIDAuNSAhZGVmYXVsdDsgLy8gNjRweFxuXG5AaWYgKCRkZXByZWNhdGVkID09IHRydWUpIHtcbi51ay1oZWFkaW5nLWhlcm8ge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctaGVyby1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLWhlcm8tbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctaGVybykpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctaGVybygpO31cbn1cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICBAaWYgKCRkZXByZWNhdGVkID09IHRydWUpIHtcbi51ay1oZWFkaW5nLWhlcm8ge1xuICAgICAgICBmb250LXNpemU6ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplLW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1oZXJvLWxpbmUtaGVpZ2h0LW07XG4gICAgfVxufVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICBAaWYgKCRkZXByZWNhdGVkID09IHRydWUpIHtcbi51ay1oZWFkaW5nLWhlcm8ge1xuICAgICAgICBmb250LXNpemU6ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplLWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1oZXJvLWxpbmUtaGVpZ2h0LWw7XG4gICAgfVxufVxuXG59XG5cblxuLyogRGl2aWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1oZWFkaW5nLWRpdmlkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAkaGVhZGluZy1kaXZpZGVyLXBhZGRpbmctYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206ICRoZWFkaW5nLWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRoZWFkaW5nLWRpdmlkZXItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLWRpdmlkZXIoKTt9XG59XG5cblxuLyogQnVsbGV0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWhlYWRpbmctYnVsbGV0IHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qXG4gKiAxLiBVc2luZyBgaW5saW5lLWJsb2NrYCB0byBtYWtlIGl0IHdvcmsgd2l0aCB0ZXh0IGFsaWdubWVudFxuICogMi4gQ2VudGVyIHZlcnRpY2FsbHlcbiAqIDMuIFN0eWxlXG4gKi9cblxuLnVrLWhlYWRpbmctYnVsbGV0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogJGhlYWRpbmctYnVsbGV0LXRvcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDMgKi9cbiAgICBoZWlnaHQ6ICRoZWFkaW5nLWJ1bGxldC1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkaGVhZGluZy1idWxsZXQtbWFyZ2luLXJpZ2h0O1xuICAgIGJvcmRlci1sZWZ0OiAkaGVhZGluZy1idWxsZXQtYm9yZGVyLXdpZHRoIHNvbGlkICRoZWFkaW5nLWJ1bGxldC1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctYnVsbGV0KSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1idWxsZXQoKTt9XG59XG5cblxuLyogTGluZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDbGlwIHRoZSBjaGlsZCBlbGVtZW50XG4gKi9cblxuLnVrLWhlYWRpbmctbGluZSB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLypcbiAqIEV4dHJhIG1hcmt1cCBpcyBuZWVkZWQgdG8gbWFrZSBpdCB3b3JrIHdpdGggdGV4dCBhbGlnblxuICovXG5cbi51ay1oZWFkaW5nLWxpbmUgPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKlxuICogMS4gQ2VudGVyIHZlcnRpY2FsbHlcbiAqIDIuIE1ha2UgdGhlIGVsZW1lbnQgYXMgbGFyZ2UgYXMgcG9zc2libGUuIEl0J3MgY2xpcHBlZCBieSB0aGUgY29udGFpbmVyLlxuICogMy4gU3R5bGVcbiAqL1xuXG4udWstaGVhZGluZy1saW5lID4gOjpiZWZvcmUsXG4udWstaGVhZGluZy1saW5lID4gOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdW5xdW90ZSgnY2FsYygjeyRoZWFkaW5nLWxpbmUtdG9wfSAtICgjeyRoZWFkaW5nLWxpbmUtaGVpZ2h0fSAvIDIpKScpO1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogJGhlYWRpbmctbGluZS13aWR0aDtcbiAgICAvKiAzICovXG4gICAgYm9yZGVyLWJvdHRvbTogJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGggc29saWQgJGhlYWRpbmctbGluZS1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctbGluZSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctbGluZSgpO31cbn1cblxuLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlIHtcbiAgICByaWdodDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRoZWFkaW5nLWxpbmUtbWFyZ2luLWhvcml6b250YWw7XG59XG4udWstaGVhZGluZy1saW5lID4gOjphZnRlciB7XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogJGhlYWRpbmctbGluZS1tYXJnaW4taG9yaXpvbnRhbDtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLW1lZGl1bSgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctbGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLXhsYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctMnhsYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctM3hsYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctaGVybygpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctYnVsbGV0KCl7fVxuLy8gQG1peGluIGhvb2staGVhZGluZy1saW5lKCl7fVxuLy8gQG1peGluIGhvb2staGVhZGluZy1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctbWVkaXVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWxhcmdlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLXhsYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy0yeGxhcmdlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLTN4bGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1oZXJvKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctYnVsbGV0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWxpbmUoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERpdmlkZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBkaXZpZGVyc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWRpdmlkZXItaWNvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRpdmlkZXItc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kaXZpZGVyLXZlcnRpY2FsYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEaXZpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlc2V0IGRlZmF1bHQgYGhyYFxuICogMi4gU2V0IG1hcmdpbiBpZiBhIGBkaXZgIGlzIHVzZWQgZm9yIHNlbWFudGljYWwgcmVhc29uXG4gKi9cblxuW2NsYXNzKj1cInVrLWRpdmlkZXJcIl0ge1xuICAgIC8qIDEgKi9cbiAgICBib3JkZXI6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIG1hcmdpbi1ib3R0b206ICRkaXZpZGVyLW1hcmdpbi12ZXJ0aWNhbDtcbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgW2NsYXNzKj1cInVrLWRpdmlkZXJcIl0geyBtYXJnaW4tdG9wOiAkZGl2aWRlci1tYXJnaW4tdmVydGljYWw7IH1cblxuXG4vKiBJY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRpdmlkZXItaWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogJGRpdmlkZXItaWNvbi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWRpdmlkZXItaWNvbi1pbWFnZSwgXCIjMDAwXCIsICRkaXZpZGVyLWljb24tY29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1pY29uKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1pY29uKCk7fVxufVxuXG4udWstZGl2aWRlci1pY29uOjpiZWZvcmUsXG4udWstZGl2aWRlci1pY29uOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkZGl2aWRlci1pY29uLWxpbmUtdG9wO1xuICAgIG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgLSAoI3skZGl2aWRlci1pY29uLXdpZHRofSAvIDIpKScpO1xuICAgIGJvcmRlci1ib3R0b206ICRkaXZpZGVyLWljb24tbGluZS1ib3JkZXItd2lkdGggc29saWQgJGRpdmlkZXItaWNvbi1saW5lLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1pY29uLWxpbmUpKSB7QGluY2x1ZGUgaG9vay1kaXZpZGVyLWljb24tbGluZSgpO31cbn1cblxuLnVrLWRpdmlkZXItaWNvbjo6YmVmb3JlIHtcbiAgICByaWdodDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skZGl2aWRlci1pY29uLXdpZHRofSAvIDIpKScpO1xuICAgIHdpZHRoOiAkZGl2aWRlci1pY29uLWxpbmUtd2lkdGg7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRpdmlkZXItaWNvbi1saW5lLWxlZnQpKSB7QGluY2x1ZGUgaG9vay1kaXZpZGVyLWljb24tbGluZS1sZWZ0KCk7fVxufVxuXG4udWstZGl2aWRlci1pY29uOjphZnRlciB7XG4gICAgbGVmdDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skZGl2aWRlci1pY29uLXdpZHRofSAvIDIpKScpO1xuICAgIHdpZHRoOiAkZGl2aWRlci1pY29uLWxpbmUtd2lkdGg7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRpdmlkZXItaWNvbi1saW5lLXJpZ2h0KSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1pY29uLWxpbmUtcmlnaHQoKTt9XG59XG5cblxuLyogU21hbGxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gRml4IGhlaWdodCBiZWNhdXNlIG9mIGBpbmxpbmUtYmxvY2tgXG4gKiAyLiBVc2luZyA6OmFmdGVyIGFuZCBpbmxpbmUtYmxvY2sgdG8gbWFrZSBgdGV4dC1hbGlnbmAgd29ya1xuICovXG5cbi8qIDEgKi9cbi51ay1kaXZpZGVyLXNtYWxsIHsgbGluZS1oZWlnaHQ6IDA7IH1cblxuLyogMiAqL1xuLnVrLWRpdmlkZXItc21hbGw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogJGRpdmlkZXItc21hbGwtd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6ICRkaXZpZGVyLXNtYWxsLWJvcmRlci13aWR0aCBzb2xpZCAkZGl2aWRlci1zbWFsbC1ib3JkZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1zbWFsbCkpIHtAaW5jbHVkZSBob29rLWRpdmlkZXItc21hbGwoKTt9XG59XG5cblxuLyogVmVydGljYWxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZGl2aWRlci12ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIGhlaWdodDogJGRpdmlkZXItdmVydGljYWwtaGVpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBib3JkZXItbGVmdDogJGRpdmlkZXItdmVydGljYWwtYm9yZGVyLXdpZHRoIHNvbGlkICRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci12ZXJ0aWNhbCkpIHtAaW5jbHVkZSBob29rLWRpdmlkZXItdmVydGljYWwoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1taXNjKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24oKXt9XG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZSgpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lLWxlZnQoKXt9XG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZS1yaWdodCgpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLXZlcnRpY2FsKCl7fVxuLy8gQG1peGluIGhvb2stZGl2aWRlci1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItaWNvbigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci1pY29uLWxpbmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItdmVydGljYWwoKXt9XG4iLCIvL1xuLy8gQ29tcG9uZW50OiAgICAgICBNaXhpblxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIG1peGlucyB3aGljaCBhcmUgdXNlZCBhY3Jvc3MgYWxsIGNvbXBvbmVudHNcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gU1ZHXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6ICcnKSB7XG4gICAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgICBAaWYgJGluZGV4IHtcbiAgICAgICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArXG4gICAgICAgICAgICBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbkBtaXhpbiBzdmctZmlsbCgkc3JjLCAkY29sb3ItZGVmYXVsdCwgJGNvbG9yLW5ldykge1xuICAgICRyZXBsYWNlLXNyYzogc3RyLXJlcGxhY2UoJHNyYywgJGNvbG9yLWRlZmF1bHQsICRjb2xvci1uZXcpICFkZWZhdWx0O1xuICAgICRyZXBsYWNlLXNyYzogc3RyLXJlcGxhY2UoJHJlcGxhY2Utc3JjLCAnIycsICclMjMnKTtcbiAgICAkcmVwbGFjZS1zcmM6IHF1b3RlKCRyZXBsYWNlLXNyYyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRyZXBsYWNlLXNyYyk7XG59XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIExpc3Rcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBsaXN0c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWxpc3RgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstbGlzdC1kaXNjYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1jaXJjbGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LXNxdWFyZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtZGVjaW1hbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtaHlwaGVuYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1tdXRlZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtZW1waGFzaXNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtYnVsbGV0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1zdHJpcGVkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtY29sbGFwc2VgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGlzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saXN0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4gKiBBdm9pZCBjb2x1bW4gYnJlYWsgd2l0aGluIHRoZSBsaXN0IGl0ZW0sIHdoZW4gdXNpbmcgYGNvbHVtbi1jb3VudGBcbiAqL1xuXG4udWstbGlzdCA+ICogeyBicmVhay1pbnNpZGU6IGF2b2lkLWNvbHVtbjsgfVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWxpc3QgPiAqID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qXG4gKiBTdHlsZVxuICovXG5cbi51ay1saXN0ID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QgPiAqID4gdWwgeyBtYXJnaW4tdG9wOiAkbGlzdC1tYXJnaW4tdG9wOyB9XG5cblxuLyogTWFya2VyIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saXN0LWRpc2MsXG4udWstbGlzdC1jaXJjbGUsXG4udWstbGlzdC1zcXVhcmUsXG4udWstbGlzdC1kZWNpbWFsLFxuLnVrLWxpc3QtaHlwaGVuIHsgcGFkZGluZy1sZWZ0OiAkbGlzdC1wYWRkaW5nLWxlZnQ7IH1cblxuLnVrLWxpc3QtZGlzYyB7IGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuLnVrLWxpc3QtY2lyY2xlIHsgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cbi51ay1saXN0LXNxdWFyZSB7IGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlOyB9XG4udWstbGlzdC1kZWNpbWFsIHsgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsOyB9XG4udWstbGlzdC1oeXBoZW4geyBsaXN0LXN0eWxlLXR5cGU6ICfigJMgICc7IH1cblxuLypcbiAqIENvbG9yIG1vZGlmaWVyc1xuICovXG5cbi51ay1saXN0LW11dGVkID4gOjptYXJrZXIgeyBjb2xvcjogJGxpc3QtbXV0ZWQtY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLWxpc3QtZW1waGFzaXMgPiA6Om1hcmtlciB7IGNvbG9yOiAkbGlzdC1lbXBoYXNpcy1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstbGlzdC1wcmltYXJ5ID4gOjptYXJrZXIgeyBjb2xvcjogJGxpc3QtcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstbGlzdC1zZWNvbmRhcnkgPiA6Om1hcmtlciB7IGNvbG9yOiAkbGlzdC1zZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDsgfVxuXG5cbi8qIEltYWdlIGJ1bGxldCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saXN0LWJ1bGxldCA+ICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRsaXN0LXBhZGRpbmctbGVmdDtcbn1cblxuLnVrLWxpc3QtYnVsbGV0ID4gOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkbGlzdC1wYWRkaW5nLWxlZnQ7XG4gICAgaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICogMWVtO1xuICAgIEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1saXN0LWJ1bGxldC1pbWFnZSwgXCIjMDAwXCIsICRsaXN0LWJ1bGxldC1pY29uLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4udWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkbGlzdC1kaXZpZGVyLW1hcmdpbi10b3A7XG4gICAgcGFkZGluZy10b3A6ICRsaXN0LWRpdmlkZXItbWFyZ2luLXRvcDtcbiAgICBib3JkZXItdG9wOiAkbGlzdC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGlzdC1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stbGlzdC1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3RyaXBlZFxuICovXG5cbi51ay1saXN0LXN0cmlwZWQgPiAqIHtcbiAgICBwYWRkaW5nOiAkbGlzdC1zdHJpcGVkLXBhZGRpbmctdmVydGljYWwgJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpc3Qtc3RyaXBlZCkpIHtAaW5jbHVkZSBob29rLWxpc3Qtc3RyaXBlZCgpO31cbn1cblxuLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpIHsgYmFja2dyb3VuZDogJGxpc3Qtc3RyaXBlZC1iYWNrZ3JvdW5kOyB9XG5cbi51ay1saXN0LXN0cmlwZWQgPiA6bnRoLWNoaWxkKG4rMikgeyBtYXJnaW4tdG9wOiAwOyB9XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saXN0LWxhcmdlID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QtbGFyZ2UgPiAqID4gdWwgeyBtYXJnaW4tdG9wOiAkbGlzdC1sYXJnZS1tYXJnaW4tdG9wOyB9XG5cbi51ay1saXN0LWNvbGxhcHNlID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QtY29sbGFwc2UgPiAqID4gdWwgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cblxuLnVrLWxpc3QtbGFyZ2UudWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkbGlzdC1sYXJnZS1kaXZpZGVyLW1hcmdpbi10b3A7XG4gICAgcGFkZGluZy10b3A6ICRsaXN0LWxhcmdlLWRpdmlkZXItbWFyZ2luLXRvcDtcbn1cblxuLnVrLWxpc3QtY29sbGFwc2UudWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG4vKlxuICogU3RyaXBlZFxuICovXG5cbi51ay1saXN0LWxhcmdlLnVrLWxpc3Qtc3RyaXBlZCA+ICogeyBwYWRkaW5nOiAkbGlzdC1sYXJnZS1zdHJpcGVkLXBhZGRpbmctdmVydGljYWwgJGxpc3QtbGFyZ2Utc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuLnVrLWxpc3QtY29sbGFwc2UudWstbGlzdC1zdHJpcGVkID4gKiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi51ay1saXN0LWxhcmdlLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSxcbi51ay1saXN0LWNvbGxhcHNlLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1saXN0LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1saXN0LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWxpc3QtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLWxpc3Qtc3RyaXBlZCgpe31cbi8vIEBtaXhpbiBob29rLWxpc3QtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGlzdC1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1saXN0LXN0cmlwZWQoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERlc2NyaXB0aW9uIGxpc3Rcbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWRlc2NyaXB0aW9uLWxpc3RgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEZXNjcmlwdGlvbiBsaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFRlcm1cbiAqL1xuXG4udWstZGVzY3JpcHRpb24tbGlzdCA+IGR0IHtcbiAgICBjb2xvcjogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGVzY3JpcHRpb24tbGlzdC10ZXJtKSkge0BpbmNsdWRlIGhvb2stZGVzY3JpcHRpb24tbGlzdC10ZXJtKCk7fVxufVxuXG4udWstZGVzY3JpcHRpb24tbGlzdCA+IGR0Om50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkZGVzY3JpcHRpb24tbGlzdC10ZXJtLW1hcmdpbi10b3A7XG59XG5cbi8qXG4gKiBEZXNjcmlwdGlvblxuICovXG5cbi51ay1kZXNjcmlwdGlvbi1saXN0ID4gZGQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kZXNjcmlwdGlvbi1saXN0LWRlc2NyaXB0aW9uKSkge0BpbmNsdWRlIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBMaW5lXG4gKi9cblxuLnVrLWRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlciA+IGR0Om50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tbWFyZ2luLXRvcDtcbiAgICBwYWRkaW5nLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLW1hcmdpbi10b3A7XG4gICAgYm9yZGVyLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlci13aWR0aCBzb2xpZCAkZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybSkpIHtAaW5jbHVkZSBob29rLWRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWRlc2NyaXB0aW9uLWxpc3QtbWlzYykpIHtAaW5jbHVkZSBob29rLWRlc2NyaXB0aW9uLWxpc3QtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC10ZXJtKCl7fVxuLy8gQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbigpe31cbi8vIEBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtKCl7fVxuLy8gQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBUYWJsZVxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIHRhYmxlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRhYmxlYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXRhYmxlLW1pZGRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLWRpdmlkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1zdHJpcGVkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFibGUtaG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLWp1c3RpZnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1zaHJpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1leHBhbmRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1saW5rYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFibGUtcmVzcG9uc2l2ZWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVGFibGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICogMi4gQmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50XG4gKiAzLiBTdHlsZVxuICovXG5cbi51ay10YWJsZSB7XG4gICAgLyogMSAqL1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDMgKi9cbiAgICBtYXJnaW4tYm90dG9tOiAkdGFibGUtbWFyZ2luLXZlcnRpY2FsO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZSkpIHtAaW5jbHVkZSBob29rLXRhYmxlKCk7fVxufVxuXG4vKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnQgKi9cbiogKyAudWstdGFibGUgeyBtYXJnaW4tdG9wOiAkdGFibGUtbWFyZ2luLXZlcnRpY2FsOyB9XG5cblxuLyogSGVhZGVyIGNlbGxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU3R5bGVcbiAqL1xuXG4udWstdGFibGUgdGgge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgJHRhYmxlLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAkdGFibGUtaGVhZGVyLWNlbGwtZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGFibGUtaGVhZGVyLWNlbGwtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkZXItY2VsbC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtaGVhZGVyLWNlbGwpKSB7QGluY2x1ZGUgaG9vay10YWJsZS1oZWFkZXItY2VsbCgpO31cbn1cblxuXG4vKiBDZWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYmxlIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1jZWxsKSkge0BpbmNsdWRlIGhvb2stdGFibGUtY2VsbCgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay10YWJsZSB0ZCA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIEZvb3RlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZSB0Zm9vdCB7XG4gICAgZm9udC1zaXplOiAkdGFibGUtZm9vdGVyLWZvbnQtc2l6ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2stdGFibGUtZm9vdGVyKCk7fVxufVxuXG5cbi8qIENhcHRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUgY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAkdGFibGUtY2FwdGlvbi1mb250LXNpemU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWNhcHRpb24pKSB7QGluY2x1ZGUgaG9vay10YWJsZS1jYXB0aW9uKCk7fVxufVxuXG5cbi8qIEFsaWdubWVudCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZS1taWRkbGUsXG4udWstdGFibGUtbWlkZGxlIHRkIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4udWstdGFibGUtZGl2aWRlciA+IHRyOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLnVrLXRhYmxlLWRpdmlkZXIgPiA6bm90KDpmaXJzdC1jaGlsZCkgPiB0cixcbi51ay10YWJsZS1kaXZpZGVyID4gOmZpcnN0LWNoaWxkID4gdHI6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay10YWJsZS1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3RyaXBlZFxuICovXG5cbi51ay10YWJsZS1zdHJpcGVkID4gdHI6bnRoLW9mLXR5cGUob2RkKSxcbi51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1zdHJpcGVkLXJvdy1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1zdHJpcGVkKSkge0BpbmNsdWRlIGhvb2stdGFibGUtc3RyaXBlZCgpO31cbn1cblxuLypcbiAqIEhvdmVyXG4gKi9cblxuLnVrLXRhYmxlLWhvdmVyID4gdHI6aG92ZXIsXG4udWstdGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1ob3Zlci1yb3ctYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay10YWJsZS1ob3ZlcigpO31cbn1cblxuXG4vKiBBY3RpdmUgc3RhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUgPiB0ci51ay1hY3RpdmUsXG4udWstdGFibGUgdGJvZHkgdHIudWstYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1yb3ctYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stdGFibGUtcm93LWFjdGl2ZSgpO31cbn1cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZS1zbWFsbCB0aCxcbi51ay10YWJsZS1zbWFsbCB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLXNtYWxsLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAkdGFibGUtc21hbGwtY2VsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLXNtYWxsKSkge0BpbmNsdWRlIGhvb2stdGFibGUtc21hbGwoKTt9XG59XG5cbi51ay10YWJsZS1sYXJnZSB0aCxcbi51ay10YWJsZS1sYXJnZSB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWxhcmdlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAkdGFibGUtbGFyZ2UtY2VsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWxhcmdlKSkge0BpbmNsdWRlIGhvb2stdGFibGUtbGFyZ2UoKTt9XG59XG5cblxuLyogSnVzdGlmeSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZS1qdXN0aWZ5IHRoOmZpcnN0LWNoaWxkLFxuLnVrLXRhYmxlLWp1c3RpZnkgdGQ6Zmlyc3QtY2hpbGQgeyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnVrLXRhYmxlLWp1c3RpZnkgdGg6bGFzdC1jaGlsZCxcbi51ay10YWJsZS1qdXN0aWZ5IHRkOmxhc3QtY2hpbGQgeyBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cblxuLyogQ2VsbCBzaXplIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYmxlLXNocmluayB7IHdpZHRoOiAxcHg7IH1cbi51ay10YWJsZS1leHBhbmQgeyBtaW4td2lkdGg6ICR0YWJsZS1leHBhbmQtbWluLXdpZHRoOyB9XG5cblxuLyogQ2VsbCBsaW5rIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERvZXMgbm90IHdvcmsgd2l0aCBgdWstdGFibGUtanVzdGlmeWAgYXQgdGhlIG1vbWVudFxuICovXG5cbi51ay10YWJsZS1saW5rIHsgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi51ay10YWJsZS1saW5rID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAkdGFibGUtY2VsbC1wYWRkaW5nLWhvcml6b250YWw7XG59XG5cbi51ay10YWJsZS1zbWFsbCAudWstdGFibGUtbGluayA+IGEgeyBwYWRkaW5nOiAkdGFibGUtc21hbGwtY2VsbC1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1zbWFsbC1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDsgfVxuXG5cbi8qIFJlc3BvbnNpdmUgdGFibGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtYWxsLW1heCkge1xuXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUsXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGJvZHksXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGgsXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQsXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdHIgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGhlYWQgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAudWstdGFibGUtcmVzcG9uc2l2ZSB0aCxcbiAgICAudWstdGFibGUtcmVzcG9uc2l2ZSB0ZCB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRoOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCgudWstdGFibGUtbGluayksXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQ6bm90KDpmaXJzdC1jaGlsZCk6bm90KC51ay10YWJsZS1saW5rKSxcbiAgICAudWstdGFibGUtcmVzcG9uc2l2ZSAudWstdGFibGUtbGluazpub3QoOmZpcnN0LWNoaWxkKSA+IGEgeyBwYWRkaW5nLXRvcDogcm91bmQoKCR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgKiAwLjMzMzMzKSkgIWltcG9ydGFudDsgfVxuXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGg6bm90KDpsYXN0LWNoaWxkKTpub3QoLnVrLXRhYmxlLWxpbmspLFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRkOm5vdCg6bGFzdC1jaGlsZCk6bm90KC51ay10YWJsZS1saW5rKSxcbiAgICAudWstdGFibGUtcmVzcG9uc2l2ZSAudWstdGFibGUtbGluazpub3QoOmxhc3QtY2hpbGQpID4gYSB7IHBhZGRpbmctYm90dG9tOiByb3VuZCgoJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAqIDAuMzMzMzMpKSAhaW1wb3J0YW50OyB9XG5cbiAgICAudWstdGFibGUtanVzdGlmeS51ay10YWJsZS1yZXNwb25zaXZlIHRoLFxuICAgIC51ay10YWJsZS1qdXN0aWZ5LnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtbWlzYykpIHtAaW5jbHVkZSBob29rLXRhYmxlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRhYmxlKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtaGVhZGVyLWNlbGwoKXt9XG4vLyBAbWl4aW4gaG9vay10YWJsZS1jZWxsKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtY2FwdGlvbigpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLXJvdy1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10YWJsZS1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtc3RyaXBlZCgpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay10YWJsZS1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGFibGUtaGVhZGVyLWNlbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWNhcHRpb24oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLXN0cmlwZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBJY29uXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgaWNvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1pY29uYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWljb24taW1hZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1pY29uLWxpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1pY29uLWJ1dHRvbmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1wcmVzZXJ2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSWNvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBOb3RlOiAxLiAtIDcuIGlzIHJlcXVpcmVkIGZvciBgYnV0dG9uYCBlbGVtZW50cy4gTmVlZGVkIGZvciBDbG9zZSBhbmQgRm9ybSBJY29uIGNvbXBvbmVudC5cbiAqIDEuIFJlbW92ZSBtYXJnaW5zIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYS5cbiAqIDIuIFJlbW92ZSBib3JkZXJzIGZvciBgYnV0dG9uYC5cbiAqIDMuIFJlbW92ZSBib3JkZXItcmFkaXVzIGluIENocm9tZS5cbiAqIDQuIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUuXG4gKiA1LiBDb3JyZWN0IGBmb250YCBwcm9wZXJ0aWVzIGFuZCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgZm9yIGBidXR0b25gLlxuICogNi4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiA3LiBSZW1vdmUgZGVmYXVsdCBgYnV0dG9uYCBwYWRkaW5nIGFuZCBiYWNrZ3JvdW5kIGNvbG9yXG4gKiA4LiBTdHlsZVxuICogOS4gRmlsbCBhbGwgU1ZHIGVsZW1lbnRzIHdpdGggdGhlIGN1cnJlbnQgdGV4dCBjb2xvciBpZiBubyBgZmlsbGAgYXR0cmlidXRlIGlzIHNldFxuICogMTAuIExldCB0aGUgY29udGFpbmVyIGZpdCB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uXG4gKi9cblxuLnVrLWljb24ge1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogMiAqL1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAvKiAzICovXG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAvKiA0ICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogNSAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLyogNiAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIC8qIDcuICovXG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvKiA4ICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDkgKi9cbiAgICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gICAgLyogMTAgKi9cbiAgICBsaW5lLWhlaWdodDogMDtcbn1cblxuLyogUmVxdWlyZWQgZm9yIGBidXR0b25gLiAqL1xuYnV0dG9uLnVrLWljb246bm90KDpkaXNhYmxlZCkgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLypcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuLnVrLWljb246Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKlxuICogU2V0IHRoZSBmaWxsIGFuZCBzdHJva2UgY29sb3Igb2YgYWxsIFNWRyBlbGVtZW50cyB0byB0aGUgY3VycmVudCB0ZXh0IGNvbG9yXG4gKi9cblxuLnVrLWljb246bm90KC51ay1wcmVzZXJ2ZSkgW2ZpbGwqPVwiI1wiXTpub3QoLnVrLXByZXNlcnZlKSB7IGZpbGw6IGN1cnJlbnRjb2xvcjsgfVxuLnVrLWljb246bm90KC51ay1wcmVzZXJ2ZSkgW3N0cm9rZSo9XCIjXCJdOm5vdCgudWstcHJlc2VydmUpIHsgc3Ryb2tlOiBjdXJyZW50Y29sb3I7IH1cblxuLypcbiAqIEZpeCBGaXJlZm94IGJsdXJyeSBTVkcgcmVuZGVyaW5nOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ2ODM1XG4gKi9cblxuLnVrLWljb24gPiAqIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuXG4vKiBJbWFnZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEaXNwbGF5IGltYWdlcyBpbiBpY29uIGRpbWVuc2lvbnNcbiAqIDEuIFJlcXVpcmVkIGZvciBgc3BhbmAgd2l0aCBiYWNrZ3JvdW5kIGltYWdlXG4gKiAyLiBSZXF1aXJlZCBmb3IgYGltYWdlYFxuICovXG5cbi51ay1pY29uLWltYWdlIHtcbiAgICB3aWR0aDogJGljb24taW1hZ2Utc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWltYWdlLXNpemU7XG4gICAgLyogMSAqL1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAyICovXG4gICAgb2JqZWN0LWZpdDogc2NhbGUtZG93bjtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIExpbmtcbiAqIDEuIEFsbG93IHRleHQgd2l0aGluIGxpbmtcbiAqL1xuXG4udWstaWNvbi1saW5rIHtcbiAgICBjb2xvcjogJGljb24tbGluay1jb2xvcjtcbiAgICAvKiAxICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tbGluaykpIHtAaW5jbHVkZSBob29rLWljb24tbGluaygpO31cbn1cblxuLnVrLWljb24tbGluazpob3ZlciB7XG4gICAgY29sb3I6ICRpY29uLWxpbmstaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tbGluay1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWljb24tbGluay1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWljb24tbGluazphY3RpdmUsXG4udWstYWN0aXZlID4gLnVrLWljb24tbGluayB7XG4gICAgY29sb3I6ICRpY29uLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pY29uLWxpbmstYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staWNvbi1saW5rLWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIEJ1dHRvblxuICogMS4gQ2VudGVyIGljb24gdmVydGljYWxseSBhbmQgaG9yaXpvbnRhbGx5XG4gKi9cblxuLnVrLWljb24tYnV0dG9uIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkaWNvbi1idXR0b24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWJ1dHRvbi1zaXplO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpY29uLWJ1dHRvbi1ib3JkZXItcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRpY29uLWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkaWNvbi1idXR0b24tY29sb3I7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbi1idXR0b24pKSB7QGluY2x1ZGUgaG9vay1pY29uLWJ1dHRvbigpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1pY29uLWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRpY29uLWJ1dHRvbi1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbi1idXR0b24taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pY29uLWJ1dHRvbi1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWljb24tYnV0dG9uOmFjdGl2ZSxcbi51ay1hY3RpdmUgPiAudWstaWNvbi1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbi1idXR0b24tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staWNvbi1idXR0b24tYWN0aXZlKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tbWlzYykpIHtAaW5jbHVkZSBob29rLWljb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2staWNvbi1saW5rKCl7fVxuLy8gQG1peGluIGhvb2staWNvbi1saW5rLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staWNvbi1saW5rLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWljb24tYnV0dG9uKCl7fVxuLy8gQG1peGluIGhvb2staWNvbi1idXR0b24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29uLWJ1dHRvbi1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29uLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbi1saW5rKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29uLWxpbmstaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb24tbGluay1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb24tYnV0dG9uKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBGb3JtIFJhbmdlXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgdGhlIHJhbmdlIGlucHV0IHR5cGVcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1yYW5nZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRm9ybSBSYW5nZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCBzdHlsZS5cbiAqIDIuIERlZmluZSBjb25zaXN0ZW50IGJveCBzaXppbmcuXG4gKiAzLiBSZW1vdmUgYG1hcmdpbmAgaW4gYWxsIGJyb3dzZXJzLlxuICogNC4gQWxpZ24gdG8gdGhlIGNlbnRlciBvZiB0aGUgbGluZSBib3guXG4gKiA1LiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3cgaWYgYSBmaXhlZCB3aWR0aCBpcyB1c2VkLlxuICogNi4gVGFrZSB0aGUgZnVsbCB3aWR0aC5cbiAqIDcuIFJlbW92ZSB3aGl0ZSBiYWNrZ3JvdW5kIGluIENocm9tZS5cbiAqL1xuXG4udWstcmFuZ2Uge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogMyAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiA0ICovXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiA1ICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDYgKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiA3ICovXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlKCk7fVxufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXJhbmdlOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxuLnVrLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHsgYm9yZGVyOiBub25lOyB9XG5cbi8qXG4gKiBJbXByb3ZlcyBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgZm9yIGNsaWNrYWJsZSBlbGVtZW50c1xuICovXG5cbi51ay1yYW5nZTpub3QoOmRpc2FibGVkKTo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBjdXJzb3I6IHBvaW50ZXI7IH1cbi51ay1yYW5nZTpub3QoOmRpc2FibGVkKTo6LW1vei1yYW5nZS10aHVtYiB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG5cbi8qXG4gKiBUcmFja1xuICogMS4gU2FmYXJpIGRvZXNuJ3QgaGF2ZSBhIGZvY3VzIHN0YXRlLiBVc2luZyBhY3RpdmUgaW5zdGVhZC5cbiAqL1xuXG4vKiBXZWJraXQgKi9cbi51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRyYWNrLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdHJhY2spKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRyYWNrKCk7fVxufVxuXG4udWstcmFuZ2U6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuLyogMSAqL1xuLnVrLXJhbmdlOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRyYWNrLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCk7fVxufVxuXG4vKiBGaXJlZm94ICovXG4udWstcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRyYWNrLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdHJhY2spKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRyYWNrKCk7fVxufVxuXG4udWstcmFuZ2U6Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRyYWNrLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCk7fVxufVxuXG4vKlxuICogVGh1bWJcbiAqIDEuIFJlc2V0XG4gKiAyLiBTdHlsZVxuICovXG5cbi8qIFdlYmtpdCAqL1xuLnVrLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAoZmxvb3IoKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCAqIDAuNSkpICogLTEpO1xuICAgIC8qIDIgKi9cbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1yYW5nZS10aHVtYi1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhbmdlLXRodW1iKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZS10aHVtYigpO31cbn1cblxuLyogRmlyZWZveCAqL1xuLnVrLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAvKiAxICovXG4gICAgYm9yZGVyOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogKGZsb29yKCgkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQgKiAwLjUpKSAqIC0xKTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRodW1iLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdGh1bWIpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRodW1iKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtbWlzYykpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFuZ2UtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stZm9ybS1yYW5nZSgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFuZ2UtdHJhY2soKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYW5nZS10aHVtYigpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFuZ2UtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2soKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFuZ2UtdGh1bWIoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEZvcm1cbi8vIERlc2NyaXB0aW9uOiAgICAgU3R5bGVzIGZvciBmb3Jtc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWZvcm0tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWlucHV0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2VsZWN0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGV4dGFyZWFgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1yYWRpb2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNoZWNrYm94YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGVnZW5kYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZmllbGRzZXRgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstZm9ybS1jdXN0b21gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLXN0YWNrZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWhvcml6b250YWxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWxhYmVsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1jb250cm9sc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0taWNvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0taWNvbi1mbGlwYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWZvcm0tc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1kYW5nZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLXN1Y2Nlc3NgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWJsYW5rYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS13aWR0aC14c21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLXdpZHRoLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS13aWR0aC1tZWRpdW1gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLXdpZHRoLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1jb250cm9scy10ZXh0YFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEZvcm1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gRGVmaW5lIGNvbnNpc3RlbnQgYm94IHNpemluZy5cbiAqICAgIERlZmF1bHQgaXMgYGNvbnRlbnQtYm94YCB3aXRoIGZvbGxvd2luZyBleGNlcHRpb25zIHNldCB0byBgYm9yZGVyLWJveGBcbiAqICAgIGBzZWxlY3RgLCBgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdYCBhbmQgYGlucHV0W3R5cGU9XCJyYWRpb1wiXWBcbiAqICAgIGBpbnB1dFt0eXBlPVwic2VhcmNoXCJdYCBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmFcbiAqICAgIGBpbnB1dFt0eXBlPVwiY29sb3JcIl1gIGluIEZpcmVmb3hcbiAqIDIuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveC9JRSBhbmQgQ2hyb21lL1NhZmFyaS9PcGVyYS5cbiAqIDMuIFJlbW92ZSBgYm9yZGVyLXJhZGl1c2AgaW4gaU9TLlxuICogNC4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbi51ay1pbnB1dCxcbi51ay1zZWxlY3QsXG4udWstdGV4dGFyZWEsXG4udWstcmFkaW8sXG4udWstY2hlY2tib3gge1xuICAgIC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogMyAqL1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLyogNCAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8qXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbi51ay1pbnB1dCB7IG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuLnVrLXNlbGVjdCB7IHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qXG4gKiAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnNcbiAqIDIuIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgYW5kIHVzZSBgYm9sZGAgaW5zdGVhZC5cbiAqIE5PVEU6IEJvdGggZGVjbGFyYXRpb25zIGRvbid0IHdvcmsgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhLlxuICovXG5cbi51ay1zZWxlY3Qgb3B0Z3JvdXAge1xuICAgIC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIC8qIDIgKi9cbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbi51ay10ZXh0YXJlYSB7IG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBvbiBPUyBYIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG4udWstaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi51ay1pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuLnVrLWlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4udWstaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7IGhlaWdodDogYXV0bzsgfVxuXG4vKlxuICogQ29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gU2FmYXJpLlxuICovXG5cbi51ay1pbnB1dFt0eXBlPVwiZGF0ZVwiXTo6LXdlYmtpdC1kYXRldGltZS1lZGl0LFxuLnVrLWlucHV0W3R5cGU9XCJ0aW1lXCJdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQsXG4udWstaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOjotd2Via2l0LWRhdGV0aW1lLWVkaXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiBSZW1vdmVzIHBsYWNlaG9sZGVyIHRyYW5zcGFyZW5jeSBpbiBGaXJlZm94LlxuICovXG5cbi51ay1pbnB1dDo6LW1vei1wbGFjZWhvbGRlcixcbi51ay10ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlciB7IG9wYWNpdHk6IDE7IH1cblxuLypcbiAqIEltcHJvdmVzIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBmb3IgY2xpY2thYmxlIGVsZW1lbnRzXG4gKi9cblxuLnVrLXJhZGlvOm5vdCg6ZGlzYWJsZWQpLFxuLnVrLWNoZWNrYm94Om5vdCg6ZGlzYWJsZWQpIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKiAxLiBSZXNldCBgbWluLXdpZHRoYFxuICovXG5cbi51ay1maWVsZHNldCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIDEgKi9cbiAgICBtaW4td2lkdGg6IDA7XG59XG5cblxuLyogSW5wdXQsIHNlbGVjdCBhbmQgdGV4dGFyZWFcbiAqIEFsbG93ZWQ6IGB0ZXh0YCwgYHBhc3N3b3JkYCwgYGRhdGV0aW1lLWxvY2FsYCwgYGRhdGVgLCAgYG1vbnRoYCxcbiAgICAgICAgICAgIGB0aW1lYCwgYHdlZWtgLCBgbnVtYmVyYCwgYGVtYWlsYCwgYHVybGAsIGBzZWFyY2hgLCBgdGVsYCwgYGNvbG9yYFxuICogRGlzYWxsb3dlZDogYHJhbmdlYCwgYHJhZGlvYCwgYGNoZWNrYm94YCwgYGZpbGVgLCBgc3VibWl0YCwgYHJlc2V0YCBhbmQgYGltYWdlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBpT1MuXG4gKi9cblxuLnVrLWlucHV0LFxuLnVrLXRleHRhcmVhIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qXG4gKiAxLiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3cgaWYgYSBmaXhlZCB3aWR0aCBpcyB1c2VkXG4gKiAyLiBUYWtlIHRoZSBmdWxsIHdpZHRoXG4gKiAzLiBSZXNldCBkZWZhdWx0XG4gKiA0LiBTdHlsZVxuICovXG5cbi51ay1pbnB1dCxcbi51ay1zZWxlY3QsXG4udWstdGV4dGFyZWEge1xuICAgIC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDMgKi9cbiAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAvKiA0ICovXG4gICAgcGFkZGluZzogMCAkZm9ybS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJGZvcm0tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGZvcm0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0pKSB7QGluY2x1ZGUgaG9vay1mb3JtKCk7fVxufVxuXG4vKlxuICogU2luZ2xlLWxpbmVcbiAqIDEuIEFsbG93IGFueSBlbGVtZW50IHRvIGxvb2sgbGlrZSBhbiBgaW5wdXRgIG9yIGBzZWxlY3RgIGVsZW1lbnRcbiAqIDIuIE1ha2Ugc3VyZSBsaW5lLWhlaWdodCBpcyBub3QgbGFyZ2VyIHRoYW4gaGVpZ2h0XG4gKiAgICBBbHNvIG5lZWRlZCB0byBjZW50ZXIgdGhlIHRleHQgdmVydGljYWxseVxuICovXG5cbi51ay1pbnB1dCxcbi51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHtcbiAgICBoZWlnaHQ6ICRmb3JtLWhlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tc2luZ2xlLWxpbmUpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXNpbmdsZS1saW5lKCk7fVxufVxuXG4vKiAyICovXG4udWstaW5wdXQ6bm90KGlucHV0KSxcbi51ay1zZWxlY3Q6bm90KHNlbGVjdCkgeyBsaW5lLWhlaWdodDogJGZvcm0tbGluZS1oZWlnaHQ7IH1cblxuLypcbiAqIE11bHRpLWxpbmVcbiAqL1xuXG4udWstc2VsZWN0W211bHRpcGxlXSxcbi51ay1zZWxlY3Rbc2l6ZV0sXG4udWstdGV4dGFyZWEge1xuICAgIHBhZGRpbmctdG9wOiAkZm9ybS1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tbXVsdGktbGluZSkpIHtAaW5jbHVkZSBob29rLWZvcm0tbXVsdGktbGluZSgpO31cbn1cblxuLnVrLXNlbGVjdFttdWx0aXBsZV0sXG4udWstc2VsZWN0W3NpemVdIHsgcmVzaXplOiB2ZXJ0aWNhbDsgfVxuXG4vKiBGb2N1cyAqL1xuLnVrLWlucHV0OmZvY3VzLFxuLnVrLXNlbGVjdDpmb2N1cyxcbi51ay10ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZm9ybS1mb2N1cy1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1mb2N1cykpIHtAaW5jbHVkZSBob29rLWZvcm0tZm9jdXMoKTt9XG59XG5cbi8qIERpc2FibGVkICovXG4udWstaW5wdXQ6ZGlzYWJsZWQsXG4udWstc2VsZWN0OmRpc2FibGVkLFxuLnVrLXRleHRhcmVhOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1kaXNhYmxlZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZm9ybS1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWZvcm0tZGlzYWJsZWQoKTt9XG59XG5cbi8qXG4gKiBQbGFjZWhvbGRlclxuICovXG5cbi51ay1pbnB1dDo6cGxhY2Vob2xkZXIgeyBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3I7IH1cblxuLnVrLXRleHRhcmVhOjpwbGFjZWhvbGRlciB7IGNvbG9yOiAkZm9ybS1wbGFjZWhvbGRlci1jb2xvcjsgfVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyIChgdWstaW5wdXRgLCBgdWstc2VsZWN0YCBhbmQgYHVrLXRleHRhcmVhYClcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU21hbGxcbiAqL1xuXG4udWstZm9ybS1zbWFsbCB7IGZvbnQtc2l6ZTogJGZvcm0tc21hbGwtZm9udC1zaXplOyB9XG5cbi8qIFNpbmdsZS1saW5lICovXG4udWstZm9ybS1zbWFsbDpub3QodGV4dGFyZWEpOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gICAgaGVpZ2h0OiAkZm9ybS1zbWFsbC1oZWlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsO1xufVxuXG4vKiBNdWx0aS1saW5lICovXG50ZXh0YXJlYS51ay1mb3JtLXNtYWxsLFxuW211bHRpcGxlXS51ay1mb3JtLXNtYWxsLFxuW3NpemVdLnVrLWZvcm0tc21hbGwgeyBwYWRkaW5nOiAkZm9ybS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsICRmb3JtLXNtYWxsLXBhZGRpbmctaG9yaXpvbnRhbDsgfVxuXG4udWstZm9ybS1zbWFsbDpub3Qoc2VsZWN0KTpub3QoaW5wdXQpOm5vdCh0ZXh0YXJlYSkgeyBsaW5lLWhlaWdodDogJGZvcm0tc21hbGwtbGluZS1oZWlnaHQ7IH1cblxuLypcbiAqIExhcmdlXG4gKi9cblxuLnVrLWZvcm0tbGFyZ2UgeyBmb250LXNpemU6ICRmb3JtLWxhcmdlLWZvbnQtc2l6ZTsgfVxuXG4vKiBTaW5nbGUtbGluZSAqL1xuLnVrLWZvcm0tbGFyZ2U6bm90KHRleHRhcmVhKTpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkge1xuICAgIGhlaWdodDogJGZvcm0tbGFyZ2UtaGVpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLyogTXVsdGktbGluZSAqL1xudGV4dGFyZWEudWstZm9ybS1sYXJnZSxcblttdWx0aXBsZV0udWstZm9ybS1sYXJnZSxcbltzaXplXS51ay1mb3JtLWxhcmdlIHsgcGFkZGluZzogJGZvcm0tbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbCAkZm9ybS1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuLnVrLWZvcm0tbGFyZ2U6bm90KHNlbGVjdCk6bm90KGlucHV0KTpub3QodGV4dGFyZWEpIHsgbGluZS1oZWlnaHQ6ICRmb3JtLWxhcmdlLWxpbmUtaGVpZ2h0OyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXIgKGB1ay1pbnB1dGAsIGB1ay1zZWxlY3RgIGFuZCBgdWstdGV4dGFyZWFgKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBFcnJvclxuICovXG5cbi51ay1mb3JtLWRhbmdlcixcbi51ay1mb3JtLWRhbmdlcjpmb2N1cyB7XG4gICAgY29sb3I6ICRmb3JtLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWRhbmdlcigpO31cbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuXG4udWstZm9ybS1zdWNjZXNzLFxuLnVrLWZvcm0tc3VjY2Vzczpmb2N1cyB7XG4gICAgY29sb3I6ICRmb3JtLXN1Y2Nlc3MtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tc3VjY2VzcykpIHtAaW5jbHVkZSBob29rLWZvcm0tc3VjY2VzcygpO31cbn1cblxuLypcbiAqIEJsYW5rXG4gKi9cblxuLnVrLWZvcm0tYmxhbmsge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tYmxhbmspKSB7QGluY2x1ZGUgaG9vay1mb3JtLWJsYW5rKCk7fVxufVxuXG4udWstZm9ybS1ibGFuazpmb2N1cyB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tYmxhbmstZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWJsYW5rLWZvY3VzKCk7fVxufVxuXG5cbi8qIFdpZHRoIG1vZGlmaWVycyAoYHVrLWlucHV0YCwgYHVrLXNlbGVjdGAgYW5kIGB1ay10ZXh0YXJlYWApXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEZpeGVkIHdpZHRoc1xuICogRGlmZmVyZW50IHdpZHRocyBmb3IgbWluaSBzaXplZCBgaW5wdXRgIGFuZCBgc2VsZWN0YCBlbGVtZW50c1xuICovXG5cbmlucHV0LnVrLWZvcm0td2lkdGgteHNtYWxsIHsgd2lkdGg6ICRmb3JtLXdpZHRoLXhzbWFsbDsgfVxuXG5zZWxlY3QudWstZm9ybS13aWR0aC14c21hbGwgeyB3aWR0aDogKCRmb3JtLXdpZHRoLXhzbWFsbCArIDI1cHgpOyB9XG5cbi51ay1mb3JtLXdpZHRoLXNtYWxsIHsgd2lkdGg6ICRmb3JtLXdpZHRoLXNtYWxsOyB9XG5cbi51ay1mb3JtLXdpZHRoLW1lZGl1bSB7IHdpZHRoOiAkZm9ybS13aWR0aC1tZWRpdW07IH1cblxuLnVrLWZvcm0td2lkdGgtbGFyZ2UgeyB3aWR0aDogJGZvcm0td2lkdGgtbGFyZ2U7IH1cblxuXG4vKiBTZWxlY3RcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUuIEFsc28gd29ya3MgaW4gRmlyZWZveFxuICogMi4gU3R5bGVcbiAqIDMuIFNldCBgY29sb3JgIGZvciBvcHRpb25zIGluIHRoZSBzZWxlY3QgZHJvcGRvd24sIGJlY2F1c2UgdGhlIGluaGVyaXRlZCBgY29sb3JgIG1pZ2h0IGJlIHRvbyBsaWdodC5cbiAqL1xuXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXJpZ2h0O1xuICAgIEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLXNlbGVjdC1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXNlbGVjdC1pY29uLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xufVxuXG4vKiAzICovXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSBvcHRpb24geyBjb2xvcjogJGZvcm0tc2VsZWN0LW9wdGlvbi1jb2xvcjsgfVxuXG4vKlxuICogRGlzYWJsZWRcbiAqL1xuXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKTpkaXNhYmxlZCB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLXNlbGVjdC1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuXG5cbi8qIERhdGFsaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IHN0eWxlIGluIENocm9tZVxuICovXG5cbiAudWstaW5wdXRbbGlzdF0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWRhdGFsaXN0LXBhZGRpbmctcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cblxuLnVrLWlucHV0W2xpc3RdOmhvdmVyLFxuLnVrLWlucHV0W2xpc3RdOmZvY3VzIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yKTsgfVxuXG4vKiAxICovXG4udWstaW5wdXRbbGlzdF06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5cbi8qIFJhZGlvIGFuZCBjaGVja2JveFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBTdHlsZVxuICogMi4gTWFrZSBib3ggbW9yZSByb2J1c3Qgc28gaXQgY2xpcHMgdGhlIGNoaWxkIGVsZW1lbnRcbiAqIDMuIFZlcnRpY2FsIGFsaWdubWVudFxuICogNC4gUmVtb3ZlIGRlZmF1bHQgc3R5bGVcbiAqIDUuIEZpeCBibGFjayBiYWNrZ3JvdW5kIG9uIGlPU1xuICogNi4gQ2VudGVyIGljb25zXG4gKi9cblxuLnVrLXJhZGlvLFxuLnVrLWNoZWNrYm94IHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogJGZvcm0tcmFkaW8tc2l6ZTtcbiAgICB3aWR0aDogJGZvcm0tcmFkaW8tc2l6ZTtcbiAgICAvKiAyICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLXRvcDogJGZvcm0tcmFkaW8tbWFyZ2luLXRvcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDQgKi9cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC8qIDUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYWRpby1iYWNrZ3JvdW5kO1xuICAgIC8qIDYgKi9cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFkaW8pKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhZGlvKCk7fVxufVxuXG4udWstcmFkaW8geyBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLyogRm9jdXMgKi9cbi51ay1yYWRpbzpmb2N1cyxcbi51ay1jaGVja2JveDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFkaW8tZm9jdXMtYmFja2dyb3VuZDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhZGlvLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYWRpby1mb2N1cygpO31cbn1cblxuLypcbiAqIENoZWNrZWRcbiAqL1xuXG4udWstcmFkaW86Y2hlY2tlZCxcbi51ay1jaGVja2JveDpjaGVja2VkLFxuLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhZGlvLWNoZWNrZWQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYWRpby1jaGVja2VkKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYWRpby1jaGVja2VkKCk7fVxufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXJhZGlvOmNoZWNrZWQ6Zm9jdXMsXG4udWstY2hlY2tib3g6Y2hlY2tlZDpmb2N1cyxcbi51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cykpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cygpO31cbn1cblxuLypcbiAqIEljb25zXG4gKi9cblxuLnVrLXJhZGlvOmNoZWNrZWQgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1yYWRpby1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcik7IH1cbi51ay1jaGVja2JveDpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3IpOyB9XG4udWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3IpOyB9XG5cbi8qXG4gKiBEaXNhYmxlZFxuICovXG5cbi51ay1yYWRpbzpkaXNhYmxlZCxcbi51ay1jaGVja2JveDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFkaW8tZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYWRpby1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tZGlzYWJsZWQoKTt9XG59XG5cbi51ay1yYWRpbzpkaXNhYmxlZDpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tcmFkaW8taW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuLnVrLWNoZWNrYm94OmRpc2FibGVkOmNoZWNrZWQgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXJhZGlvLWRpc2FibGVkLWljb24tY29sb3IpOyB9XG4udWstY2hlY2tib3g6ZGlzYWJsZWQ6aW5kZXRlcm1pbmF0ZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuXG5cbi8qIExlZ2VuZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBMZWdlbmRcbiAqIDEuIEJlaGF2ZSBsaWtlIGJsb2NrIGVsZW1lbnRcbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqIDQuIFN0eWxlXG4gKi9cblxuLnVrLWxlZ2VuZCB7XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDIgKi9cbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAvKiAzICovXG4gICAgcGFkZGluZzogMDtcbiAgICAvKiA0ICovXG4gICAgZm9udC1zaXplOiAkZm9ybS1sZWdlbmQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1sZWdlbmQtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tbGVnZW5kKSkge0BpbmNsdWRlIGhvb2stZm9ybS1sZWdlbmQoKTt9XG59XG5cblxuLyogQ3VzdG9tIGNvbnRyb2xzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENvbnRhaW5lciBmaXRzIGl0cyBjb250ZW50XG4gKiAyLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dFxuICogMy4gUHJldmVudCBjb250ZW50IG92ZXJmbG93XG4gKiA0LiBCZWhhdmUgbGlrZSBtb3N0IGlubGluZS1ibG9jayBlbGVtZW50c1xuICovXG5cbi51ay1mb3JtLWN1c3RvbSB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIDMgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogNCAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qXG4gKiAxLiBQb3NpdGlvbiBhbmQgcmVzaXplIHRoZSBmb3JtIGNvbnRyb2wgdG8gYWx3YXlzIGNvdmVyIGl0cyBjb250YWluZXJcbiAqIDIuIFJlcXVpcmVkIGZvciBGaXJlZm94IGZvciBwb3NpdGlvbmluZyB0byB0aGUgbGVmdFxuICogMy4gUmVxdWlyZWQgZm9yIFdlYmtpdCB0byBtYWtlIGBoZWlnaHRgIHdvcmtcbiAqIDQuIEhpZGUgY29udHJvbHMgYW5kIHNob3cgY3Vyc29yXG4gKiA1LiBOZWVkZWQgZm9yIHRoZSBjdXJzb3JcbiAqIDYuIENsaXAgaGVpZ2h0IGNhdXNlZCBieSA1LiBOZWVkZWQgZm9yIFdlYmtpdCBvbmx5XG4gKi9cblxuLnVrLWZvcm0tY3VzdG9tIHNlbGVjdCxcbi51ay1mb3JtLWN1c3RvbSBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLyogMiAqL1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMyAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKiA0ICovXG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51ay1mb3JtLWN1c3RvbSBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgLyogNSAqL1xuICAgIGZvbnQtc2l6ZTogNTAwcHg7XG4gICAgLyogNiAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLyogTGFiZWxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZm9ybS1sYWJlbCB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWxhYmVsKCk7fVxufVxuXG5cbi8qIExheW91dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBTdGFja2VkXG4gKi9cblxuLnVrLWZvcm0tc3RhY2tlZCAudWstZm9ybS1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3RhY2tlZC1tYXJnaW4tYm90dG9tO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXN0YWNrZWQtbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXN0YWNrZWQtbGFiZWwoKTt9XG59XG5cbi8qXG4gKiBIb3Jpem9udGFsXG4gKi9cblxuLyogVGFibGV0IHBvcnRyYWl0IGFuZCBzbWFsbGVyICovXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwtbWF4KSB7XG5cbiAgICAvKiBCZWhhdmUgbGlrZSBgdWstZm9ybS1zdGFja2VkYCAqL1xuICAgIC51ay1mb3JtLWhvcml6b250YWwgLnVrLWZvcm0tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3RhY2tlZC1tYXJnaW4tYm90dG9tO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1zdGFja2VkLWxhYmVsKSkge0BpbmNsdWRlIGhvb2stZm9ybS1zdGFja2VkLWxhYmVsKCk7fVxuICAgIH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1mb3JtLWhvcml6b250YWwgLnVrLWZvcm0tbGFiZWwge1xuICAgICAgICB3aWR0aDogJGZvcm0taG9yaXpvbnRhbC1sYWJlbC13aWR0aDtcbiAgICAgICAgbWFyZ2luLXRvcDogJGZvcm0taG9yaXpvbnRhbC1sYWJlbC1tYXJnaW4tdG9wO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0taG9yaXpvbnRhbC1sYWJlbCkpIHtAaW5jbHVkZSBob29rLWZvcm0taG9yaXpvbnRhbC1sYWJlbCgpO31cbiAgICB9XG5cbiAgICAudWstZm9ybS1ob3Jpem9udGFsIC51ay1mb3JtLWNvbnRyb2xzIHsgbWFyZ2luLWxlZnQ6ICRmb3JtLWhvcml6b250YWwtY29udHJvbHMtbWFyZ2luLWxlZnQ7IH1cblxuICAgIC8qIEJldHRlciB2ZXJ0aWNhbCBhbGlnbm1lbnQgaWYgY29udHJvbHMgYXJlIGNoZWNrYm94ZXMgYW5kIHJhZGlvIGJ1dHRvbnMgd2l0aCB0ZXh0ICovXG4gICAgLnVrLWZvcm0taG9yaXpvbnRhbCAudWstZm9ybS1jb250cm9scy10ZXh0IHsgcGFkZGluZy10b3A6ICRmb3JtLWhvcml6b250YWwtY29udHJvbHMtdGV4dC1wYWRkaW5nLXRvcDsgfVxuXG59XG5cblxuLyogSWNvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBTZXQgd2lkdGhcbiAqIDMuIENlbnRlciBpY29uIHZlcnRpY2FsbHkgYW5kIGhvcml6b250YWxseVxuICogNC4gU3R5bGVcbiAqL1xuXG4udWstZm9ybS1pY29uIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICAvKiAyICovXG4gICAgd2lkdGg6ICRmb3JtLWljb24td2lkdGg7XG4gICAgLyogMyAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogNCAqL1xuICAgIGNvbG9yOiAkZm9ybS1pY29uLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWljb24pKSB7QGluY2x1ZGUgaG9vay1mb3JtLWljb24oKTt9XG59XG5cbi8qXG4gKiBSZXF1aXJlZCBmb3IgYGFgLlxuICovXG5cbi51ay1mb3JtLWljb246aG92ZXIgeyBjb2xvcjogJGZvcm0taWNvbi1ob3Zlci1jb2xvcjsgfVxuXG4vKlxuICogTWFrZSBgaW5wdXRgIGVsZW1lbnQgY2xpY2thYmxlIHRocm91Z2ggaWNvbiwgZS5nLiBpZiBpdCdzIGEgYHNwYW5gXG4gKi9cblxuLnVrLWZvcm0taWNvbjpub3QoYSk6bm90KGJ1dHRvbik6bm90KGlucHV0KSB7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi8qXG4gKiBJbnB1dCBwYWRkaW5nXG4gKi9cblxuLnVrLWZvcm0taWNvbjpub3QoLnVrLWZvcm0taWNvbi1mbGlwKSB+IC51ay1pbnB1dCB7IHBhZGRpbmctbGVmdDogJGZvcm0taWNvbi13aWR0aCAhaW1wb3J0YW50OyB9XG5cbi8qXG4gKiBQb3NpdGlvbiBtb2RpZmllclxuICovXG5cbi51ay1mb3JtLWljb24tZmxpcCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbn1cblxuLnVrLWZvcm0taWNvbi1mbGlwIH4gLnVrLWlucHV0IHsgcGFkZGluZy1yaWdodDogJGZvcm0taWNvbi13aWR0aCAhaW1wb3J0YW50OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1taXNjKSkge0BpbmNsdWRlIGhvb2stZm9ybS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1mb3JtKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1zaW5nbGUtbGluZSgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tbXVsdGktbGluZSgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1kYW5nZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXN1Y2Nlc3MoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWJsYW5rKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1ibGFuay1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFkaW8oKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhZGlvLWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYWRpby1jaGVja2VkKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYWRpby1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tbGVnZW5kKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tc3RhY2tlZC1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0taG9yaXpvbnRhbC1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0taWNvbigpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1mb3JtLWxhYmVsKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1mb3JtLWljb24oKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEJ1dHRvblxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGJ1dHRvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1idXR0b25gXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstYnV0dG9uLWdyb3VwYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWJ1dHRvbi1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tc2Vjb25kYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLWRhbmdlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJ1dHRvbi10ZXh0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLWxpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tbGFyZ2VgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQnV0dG9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBtYXJnaW5zIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYS5cbiAqIDIuIFJlbW92ZSBib3JkZXJzIGZvciBgYnV0dG9uYC5cbiAqIDMuIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUuXG4gKiA0LiBDb3JyZWN0IGBmb250YCBwcm9wZXJ0aWVzIGFuZCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgZm9yIGBidXR0b25gLlxuICogNS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiA2LiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBmb3IgYGlucHV0IHR5cGU9XCJzdWJtaXRcImBpbiBpT1MuXG4gKiA3LiBTdHlsZVxuICogOC4gYGxpbmUtaGVpZ2h0YCBpcyB1c2VkIHRvIGNyZWF0ZSBhIGhlaWdodCBiZWNhdXNlIGl0IGFsc28gY2VudGVycyB0aGUgdGV4dCB2ZXJ0aWNhbGx5IGZvciBgYWAgZWxlbWVudHMuXG4gKiAgICBCZXR0ZXIgd291bGQgYmUgdG8gdXNlIGhlaWdodCBhbmQgZmxleGJveCB0byBjZW50ZXIgdGhlIHRleHQgdmVydGljYWxseSBidXQgZmxleGJveCBkb2Vzbid0IHdvcmsgaW4gRmlyZWZveCBvbiBgYnV0dG9uYCBlbGVtZW50cy5cbiAqIDkuIEFsaWduIHRleHQgaWYgYnV0dG9uIGhhcyBhIHdpZHRoXG4gKiAxMC4gUmVxdWlyZWQgZm9yIGBhYC5cbiAqL1xuXG4udWstYnV0dG9uIHtcbiAgICAvKiAxICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDIgKi9cbiAgICBib3JkZXI6IG5vbmU7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC8qIDQgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIC8qIDUgKi9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAvKiA2ICovXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLyogNyAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDAgJGJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6ICRidXR0b24tZm9udC1zaXplO1xuICAgIC8qIDggKi9cbiAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1saW5lLWhlaWdodDtcbiAgICAvKiA5ICovXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC8qIDEwICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24pKSB7QGluY2x1ZGUgaG9vay1idXR0b24oKTt9XG59XG5cbi51ay1idXR0b246bm90KDpkaXNhYmxlZCkgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLypcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuLnVrLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qIEhvdmVyICovXG4udWstYnV0dG9uOmhvdmVyIHtcbiAgICAvKiA5ICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24taG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKyBBY3RpdmUgKi9cbi51ay1idXR0b246YWN0aXZlLFxuLnVrLWJ1dHRvbi51ay1hY3RpdmUge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1idXR0b24tZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGVmYXVsdC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tZGVmYXVsdCgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b24tZGVmYXVsdDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRlZmF1bHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tZGVmYXVsdC1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWJ1dHRvbi1kZWZhdWx0OmFjdGl2ZSxcbi51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGVmYXVsdC1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRlZmF1bHQtYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRlZmF1bHQtYWN0aXZlKCk7fVxufVxuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi51ay1idXR0b24tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tcHJpbWFyeS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tcHJpbWFyeSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b24tcHJpbWFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tcHJpbWFyeS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXByaW1hcnktaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tcHJpbWFyeS1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSxcbi51ay1idXR0b24tcHJpbWFyeS51ay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXByaW1hcnktYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXByaW1hcnktYWN0aXZlKCk7fVxufVxuXG4vKlxuICogU2Vjb25kYXJ5XG4gKi9cblxuLnVrLWJ1dHRvbi1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tc2Vjb25kYXJ5KSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXNlY29uZGFyeSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKyBBY3RpdmUgKi9cbi51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSxcbi51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi51ay1idXR0b24tZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRhbmdlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kYW5nZXIoKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstYnV0dG9uLWRhbmdlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kYW5nZXItaG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kYW5nZXItaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kYW5nZXItaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tZGFuZ2VyLWhvdmVyKCk7fVxufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4udWstYnV0dG9uLWRhbmdlcjphY3RpdmUsXG4udWstYnV0dG9uLWRhbmdlci51ay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGFuZ2VyLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kYW5nZXItYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRhbmdlci1hY3RpdmUoKTt9XG59XG5cbi8qXG4gKiBEaXNhYmxlZFxuICogVGhlIHNhbWUgZm9yIGFsbCBzdHlsZSBtb2RpZmllcnNcbiAqL1xuXG4udWstYnV0dG9uLWRlZmF1bHQ6ZGlzYWJsZWQsXG4udWstYnV0dG9uLXByaW1hcnk6ZGlzYWJsZWQsXG4udWstYnV0dG9uLXNlY29uZGFyeTpkaXNhYmxlZCxcbi51ay1idXR0b24tZGFuZ2VyOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGlzYWJsZWQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kaXNhYmxlZCgpO31cbn1cblxuXG4vKiBTaXplIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1idXR0b24tc21hbGwge1xuICAgIHBhZGRpbmc6IDAgJGJ1dHRvbi1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tc21hbGwtbGluZS1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLXNtYWxsLWZvbnQtc2l6ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXNtYWxsKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXNtYWxsKCk7fVxufVxuXG4udWstYnV0dG9uLWxhcmdlIHtcbiAgICBwYWRkaW5nOiAwICRidXR0b24tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1sYXJnZS1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1sYXJnZSkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1sYXJnZSgpO31cbn1cblxuXG4vKiBUZXh0IG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBUZXh0XG4gKiAxLiBSZXNldFxuICogMi4gU3R5bGVcbiAqL1xuXG4udWstYnV0dG9uLXRleHQge1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLXRleHQtbGluZS1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dCgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1idXR0b24tdGV4dDpob3ZlciB7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dC1ob3ZlcigpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1idXR0b24tdGV4dDpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQtZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dC1kaXNhYmxlZCgpO31cbn1cblxuLypcbiAqIExpbmtcbiAqIDEuIFJlc2V0XG4gKiAyLiBTdHlsZVxuICovXG5cbi51ay1idXR0b24tbGluayB7XG4gICAgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluay1saW5lLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBjb2xvcjogJGJ1dHRvbi1saW5rLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbGluaykpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1saW5rKCk7fVxufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWJ1dHRvbi1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogJGJ1dHRvbi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGJ1dHRvbi1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1idXR0b24tbGluazpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidXR0b24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cblxuLyogR3JvdXBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gVXNpbmcgYGZsZXhgIGluc3RlYWQgb2YgYGlubGluZS1ibG9ja2AgdG8gcHJldmVudCB3aGl0ZXNwYWNlIGJldHdlZW4gY2hpbGQgZWxlbWVudHNcbiAqIDIuIEJlaGF2ZSBsaWtlIGJ1dHRvblxuICogMy4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHRcbiAqL1xuXG4udWstYnV0dG9uLWdyb3VwIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgLyogMiAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLyogMyAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbWlzYykpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24oKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXByaW1hcnktaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tc2Vjb25kYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLWRhbmdlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXItaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1zbWFsbCgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi10ZXh0KCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXRleHQtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tdGV4dC1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1saW5rKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tZGVmYXVsdC1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXRleHQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWxpbmsoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFByb2dyZXNzXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgcHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXByb2dyZXNzYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQcm9ncmVzc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIEJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbiAqIDMuIFJlbW92ZSBib3JkZXJzIGluIEZpcmVmb3guXG4gKiA0LiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgRWRnZS5cbiAqIDUuIFN0eWxlXG4gKi9cblxuLnVrLXByb2dyZXNzIHtcbiAgICAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIC8qIDIgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiAzICovXG4gICAgYm9yZGVyOiAwO1xuICAgIC8qIDQgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbiAgICAvKiA1ICovXG4gICAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLW1hcmdpbi12ZXJ0aWNhbDtcbiAgICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXByb2dyZXNzKSkge0BpbmNsdWRlIGhvb2stcHJvZ3Jlc3MoKTt9XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIC51ay1wcm9ncmVzcyB7IG1hcmdpbi10b3A6ICRwcm9ncmVzcy1tYXJnaW4tdmVydGljYWw7IH1cblxuLypcbiAqIFNob3cgYmFja2dyb3VuZCBjb2xvciBzZXQgb24gYHVrLXByb2dyZXNzYCBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgRWRnZS5cbiAqL1xuXG4gLnVrLXByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLWJhciB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qXG4gKiBQcm9ncmVzcyBCYXJcbiAqIDEuIFRyYW5zaXRpb25zIGRvbid0IHdvcmsgb24gYDo6LW1vei1wcm9ncmVzcy1iYXJgIHBzZXVkbyBlbGVtZW50IGluIEZpcmVmb3ggeWV0LlxuICogICAgaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjYyMzUxXG4gKi9cblxuLnVrLXByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wcm9ncmVzcy1iYXIpKSB7QGluY2x1ZGUgaG9vay1wcm9ncmVzcy1iYXIoKTt9XG59XG5cbi51ay1wcm9ncmVzczo6LW1vei1wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmFja2dyb3VuZDtcbiAgICAvKiAxICovXG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wcm9ncmVzcy1iYXIpKSB7QGluY2x1ZGUgaG9vay1wcm9ncmVzcy1iYXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stcHJvZ3Jlc3MtbWlzYykpIHtAaW5jbHVkZSBob29rLXByb2dyZXNzLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXByb2dyZXNzKCl7fVxuLy8gQG1peGluIGhvb2stcHJvZ3Jlc3MtYmFyKCl7fVxuLy8gQG1peGluIGhvb2stcHJvZ3Jlc3MtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU2VjdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGhvcml6b250YWwgbGF5b3V0IHNlY3Rpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zZWN0aW9uYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXNlY3Rpb24teHNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2VjdGlvbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWN0aW9uLXhsYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tbXV0ZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWN0aW9uLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWN0aW9uLXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tb3ZlcmxhcGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1wcmVzZXJ2ZS1jb2xvcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTZWN0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIE1ha2UgaXQgd29yayB3aXRoIGAxMDB2aGAgYW5kIGhlaWdodCBpbiBnZW5lcmFsXG4gKi9cblxuLnVrLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICRzZWN0aW9uLXBhZGRpbmctdmVydGljYWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlY3Rpb24pKSB7QGluY2x1ZGUgaG9vay1zZWN0aW9uKCk7fVxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXBhZGRpbmctdmVydGljYWwtbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzZWN0aW9uLXBhZGRpbmctdmVydGljYWwtbTtcbiAgICB9XG5cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1zZWN0aW9uID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogU2l6ZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogWFNtYWxsXG4gKi9cblxuLnVrLXNlY3Rpb24teHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogJHNlY3Rpb24teHNtYWxsLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICRzZWN0aW9uLXhzbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xufVxuXG4vKlxuICogU21hbGxcbiAqL1xuXG4udWstc2VjdGlvbi1zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXNtYWxsLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICRzZWN0aW9uLXNtYWxsLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi51ay1zZWN0aW9uLWxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogJHNlY3Rpb24tbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDtcbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstc2VjdGlvbi1sYXJnZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc2VjdGlvbi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc2VjdGlvbi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgfVxuXG59XG5cbi8qXG4gKiBYTGFyZ2VcbiAqL1xuXG4udWstc2VjdGlvbi14bGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkc2VjdGlvbi14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24teGxhcmdlLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXNlY3Rpb24teGxhcmdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkc2VjdGlvbi14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgIH1cblxufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKi9cblxuLnVrLXNlY3Rpb24tZGVmYXVsdCB7XG4gICAgLS11ay1pbnZlcnNlOiAjeyRzZWN0aW9uLWRlZmF1bHQtY29sb3ItbW9kZX07XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWN0aW9uLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay1zZWN0aW9uLWRlZmF1bHQoKTt9XG59XG5cbkBpZiAoICRzZWN0aW9uLWRlZmF1bHQtY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLXNlY3Rpb24tZGVmYXVsdDpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRzZWN0aW9uLWRlZmF1bHQtY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstc2VjdGlvbi1kZWZhdWx0Om5vdCgudWstcHJlc2VydmUtY29sb3IpIHsgQGV4dGVuZCAudWstZGFyayAhb3B0aW9uYWw7fSB9XG5cbi8qXG4gKiBNdXRlZFxuICovXG5cbi51ay1zZWN0aW9uLW11dGVkIHtcbiAgICAtLXVrLWludmVyc2U6ICN7JHNlY3Rpb24tbXV0ZWQtY29sb3ItbW9kZX07XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tbXV0ZWQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VjdGlvbi1tdXRlZCkpIHtAaW5jbHVkZSBob29rLXNlY3Rpb24tbXV0ZWQoKTt9XG59XG5cbkBpZiAoICRzZWN0aW9uLW11dGVkLWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1zZWN0aW9uLW11dGVkOm5vdCgudWstcHJlc2VydmUtY29sb3IpIHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJHNlY3Rpb24tbXV0ZWQtY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstc2VjdGlvbi1tdXRlZDpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG5cbi8qXG4gKiBQcmltYXJ5XG4gKi9cblxuLnVrLXNlY3Rpb24tcHJpbWFyeSB7XG4gICAgLS11ay1pbnZlcnNlOiAjeyRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZX07XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWN0aW9uLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1zZWN0aW9uLXByaW1hcnkoKTt9XG59XG5cbkBpZiAoICRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIHsgQGV4dGVuZCAudWstZGFyayAhb3B0aW9uYWw7fSB9XG5cbi8qXG4gKiBTZWNvbmRhcnlcbiAqL1xuXG4udWstc2VjdGlvbi1zZWNvbmRhcnkge1xuICAgIC0tdWstaW52ZXJzZTogI3skc2VjdGlvbi1zZWNvbmRhcnktY29sb3ItbW9kZX07XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlY3Rpb24tc2Vjb25kYXJ5KSkge0BpbmNsdWRlIGhvb2stc2VjdGlvbi1zZWNvbmRhcnkoKTt9XG59XG5cbkBpZiAoICRzZWN0aW9uLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkc2VjdGlvbi1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuXG4vKiBPdmVybGFwIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2VydmVkIG1vZGlmaWVyIHRvIG1ha2UgYSBzZWN0aW9uIG92ZXJsYXAgYW5vdGhlciBzZWN0aW9uIHdpdGggYW4gYm9yZGVyIGltYWdlXG4gKiBJbXBsZW1lbnRlZCBieSB0aGUgdGhlbWVcbiAqL1xuXG4udWstc2VjdGlvbi1vdmVybGFwIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VjdGlvbi1vdmVybGFwKSkge0BpbmNsdWRlIGhvb2stc2VjdGlvbi1vdmVybGFwKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNlY3Rpb24tbWlzYykpIHtAaW5jbHVkZSBob29rLXNlY3Rpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc2VjdGlvbigpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tZGVmYXVsdCgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tbXV0ZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWN0aW9uLXNlY29uZGFyeSgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tb3ZlcmxhcCgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQ29udGFpbmVyXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBhbGlnbiBhbmQgY2VudGVyIHlvdXIgc2l0ZSBhbmQgZ3JpZCBjb250ZW50XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY29udGFpbmVyYFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLWNvbnRhaW5lci1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbnRhaW5lci1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbnRhaW5lci1leHBhbmRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb250YWluZXItZXhwYW5kLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb250YWluZXItZXhwYW5kLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLXJpZ2h0YFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQm94IHNpemluZyBoYXMgdG8gYmUgYGNvbnRlbnQtYm94YCBzbyB0aGUgbWF4LXdpZHRoIGlzIGFsd2F5cyB0aGUgc2FtZSBhbmRcbiAqICAgIHVuYWZmZWN0ZWQgYnkgdGhlIHBhZGRpbmcgb24gZGlmZmVyZW50IGJyZWFrcG9pbnRzLiBJdCdzIGltcG9ydGFudCBmb3IgdGhlIHNpemUgbW9kaWZpZXJzLlxuICovXG5cbi51ay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICAvKiAxICovXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtcztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtcztcbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1tO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1tO1xuICAgIH1cblxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWNvbnRhaW5lciA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKlxuICogUmVtb3ZlIHBhZGRpbmcgZnJvbSBuZXN0ZWQgY29udGFpbmVyc1xuICovXG5cbi51ay1jb250YWluZXIgLnVrLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb250YWluZXIteHNtYWxsIHsgbWF4LXdpZHRoOiAkY29udGFpbmVyLXhzbWFsbC1tYXgtd2lkdGg7IH1cblxuLnVrLWNvbnRhaW5lci1zbWFsbCB7IG1heC13aWR0aDogJGNvbnRhaW5lci1zbWFsbC1tYXgtd2lkdGg7IH1cblxuLnVrLWNvbnRhaW5lci1sYXJnZSB7IG1heC13aWR0aDogJGNvbnRhaW5lci1sYXJnZS1tYXgtd2lkdGg7IH1cblxuLnVrLWNvbnRhaW5lci14bGFyZ2UgeyBtYXgtd2lkdGg6ICRjb250YWluZXIteGxhcmdlLW1heC13aWR0aDsgfVxuXG4udWstY29udGFpbmVyLWV4cGFuZCB7IG1heC13aWR0aDogbm9uZTsgfVxuXG5cbi8qIEV4cGFuZCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBFeHBhbmQgb25lIHNpZGUgb25seVxuICovXG5cbi51ay1jb250YWluZXItZXhwYW5kLWxlZnQgeyBtYXJnaW4tbGVmdDogMDsgfVxuLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXIteHNtYWxsLFxuICAgIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci14c21hbGwgeyBtYXgtd2lkdGg6IHVucXVvdGUoJ2NhbGMoNTAlICsgKCN7JGNvbnRhaW5lci14c21hbGwtbWF4LXdpZHRofSAvIDIpIC0gI3skY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zfSknKTsgfVxuXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXItc21hbGwsXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQudWstY29udGFpbmVyLXNtYWxsIHsgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRjb250YWluZXItc21hbGwtbWF4LXdpZHRofSAvIDIpIC0gI3skY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zfSknKTsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdCxcbiAgICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodCB7IG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skY29udGFpbmVyLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXhzbWFsbCxcbiAgICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodC51ay1jb250YWluZXIteHNtYWxsIHsgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRjb250YWluZXIteHNtYWxsLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXNtYWxsLFxuICAgIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci1zbWFsbCB7IG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skY29udGFpbmVyLXNtYWxsLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLWxhcmdlLFxuICAgIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci1sYXJnZSB7IG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skY29udGFpbmVyLWxhcmdlLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXhsYXJnZSxcbiAgICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodC51ay1jb250YWluZXIteGxhcmdlIHsgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRjb250YWluZXIteGxhcmdlLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxufVxuXG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVXRpbGl0eSBjbGFzc2VzIHRvIHJlc2V0IGNvbnRhaW5lciBwYWRkaW5nIG9uIHRoZSBsZWZ0IG9yIHJpZ2h0IHNpZGVcbiAqIE5vdGU6IEl0IGhhcyB0byBiZSBuZWdhdGl2ZSBtYXJnaW4gb24gdGhlIGl0ZW0sIGJlY2F1c2UgaXQncyBzcGVjaWZpYyB0byB0aGUgaXRlbS5cbiAqL1xuXG4udWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCxcbi51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKyAjeyRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsfSknKTsgfVxuXG4udWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCB7IG1hcmdpbi1sZWZ0OiAoLSRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsKTsgfVxuLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAoLSRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsKTsgfVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCxcbiAgICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICsgI3skY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zfSknKTsgfVxuXG4gICAgLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLWxlZnQgeyBtYXJnaW4tbGVmdDogKC0kY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zKTsgfVxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodCB7IG1hcmdpbi1yaWdodDogKC0kY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zKTsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLWxlZnQsXG4gICAgLnVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLXJpZ2h0IHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSArICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbSk7IH1cbiAgICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbSk7IH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWNvbnRhaW5lci1taXNjKSkge0BpbmNsdWRlIGhvb2stY29udGFpbmVyLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWNvbnRhaW5lci1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBUaWxlXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgdGlsZWQgYm94ZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay10aWxlYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXRpbGUteHNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGlsZS1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRpbGUtbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10aWxlLXhsYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRpbGUtZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRpbGUtbXV0ZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10aWxlLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10aWxlLXNlY29uZGFyeWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1wcmVzZXJ2ZS1jb2xvcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUaWxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRpbGUge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nLWxlZnQ6ICR0aWxlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkdGlsZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgcGFkZGluZy10b3A6ICR0aWxlLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICR0aWxlLXBhZGRpbmctdmVydGljYWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUpKSB7QGluY2x1ZGUgaG9vay10aWxlKCk7fVxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstdGlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLXM7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICR0aWxlLXBhZGRpbmctaG9yaXpvbnRhbC1zO1xuICAgIH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay10aWxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkdGlsZS1wYWRkaW5nLWhvcml6b250YWwtbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAkdGlsZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgfVxuXG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstdGlsZSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFhTbWFsbFxuICovXG5cbi51ay10aWxlLXhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6ICR0aWxlLXhzbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS14c21hbGwtcGFkZGluZy12ZXJ0aWNhbDtcbn1cblxuLypcbiAqIFNtYWxsXG4gKi9cblxuLnVrLXRpbGUtc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAkdGlsZS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xufVxuXG4vKlxuICogTGFyZ2VcbiAqL1xuXG4udWstdGlsZS1sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6ICR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXRpbGUtbGFyZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogJHRpbGUtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHRpbGUtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgIH1cblxufVxuXG5cbi8qXG4gKiBYTGFyZ2VcbiAqL1xuXG4udWstdGlsZS14bGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHRpbGUteGxhcmdlLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXRpbGUteGxhcmdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICR0aWxlLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgIH1cblxufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKi9cblxuLnVrLXRpbGUtZGVmYXVsdCB7XG4gICAgLS11ay1pbnZlcnNlOiAjeyR0aWxlLWRlZmF1bHQtY29sb3ItbW9kZX07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRpbGUtZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay10aWxlLWRlZmF1bHQoKTt9XG59XG5cbi51ay10aWxlLWRlZmF1bHQudWstdGlsZS1ob3Zlcjpob3ZlciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUtZGVmYXVsdC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXRpbGUtZGVmYXVsdC1ob3ZlcigpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJHRpbGUtZGVmYXVsdC1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstdGlsZS1kZWZhdWx0Om5vdCgudWstcHJlc2VydmUtY29sb3IpIHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJHRpbGUtZGVmYXVsdC1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay10aWxlLWRlZmF1bHQ6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLypcbiAqIE11dGVkXG4gKi9cblxuLnVrLXRpbGUtbXV0ZWQge1xuICAgIC0tdWstaW52ZXJzZTogI3skdGlsZS1tdXRlZC1jb2xvci1tb2RlfTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGlsZS1tdXRlZC1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLW11dGVkKSkge0BpbmNsdWRlIGhvb2stdGlsZS1tdXRlZCgpO31cbn1cblxuLnVrLXRpbGUtbXV0ZWQudWstdGlsZS1ob3Zlcjpob3ZlciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUtbXV0ZWQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay10aWxlLW11dGVkLWhvdmVyKCk7fVxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkdGlsZS1tdXRlZC1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstdGlsZS1tdXRlZDpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICR0aWxlLW11dGVkLWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLXRpbGUtbXV0ZWQ6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstdGlsZS1wcmltYXJ5IHtcbiAgICAtLXVrLWludmVyc2U6ICN7JHRpbGUtcHJpbWFyeS1jb2xvci1tb2RlfTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGlsZS1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUtcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLXRpbGUtcHJpbWFyeSgpO31cbn1cblxuLnVrLXRpbGUtcHJpbWFyeS51ay10aWxlLWhvdmVyOmhvdmVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGlsZS1wcmltYXJ5LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdGlsZS1wcmltYXJ5LWhvdmVyKCk7fVxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkdGlsZS1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkdGlsZS1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLXRpbGUtcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG4vKlxuICogU2Vjb25kYXJ5XG4gKi9cblxuLnVrLXRpbGUtc2Vjb25kYXJ5IHtcbiAgICAtLXVrLWludmVyc2U6ICN7JHRpbGUtc2Vjb25kYXJ5LWNvbG9yLW1vZGV9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aWxlLXNlY29uZGFyeS1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLXNlY29uZGFyeSkpIHtAaW5jbHVkZSBob29rLXRpbGUtc2Vjb25kYXJ5KCk7fVxufVxuXG4udWstdGlsZS1zZWNvbmRhcnkudWstdGlsZS1ob3Zlcjpob3ZlciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUtc2Vjb25kYXJ5LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdGlsZS1zZWNvbmRhcnktaG92ZXIoKTt9XG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICR0aWxlLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkdGlsZS1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay10aWxlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRpbGUoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLWRlZmF1bHQtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLW11dGVkKCl7fVxuLy8gQG1peGluIGhvb2stdGlsZS1tdXRlZC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXRpbGUtcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLXRpbGUtcHJpbWFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXRpbGUtc2Vjb25kYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stdGlsZS1zZWNvbmRhcnktaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENhcmRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBib3hlZCBjb250ZW50IGNvbnRhaW5lcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jYXJkYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWNhcmQtYm9keWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNhcmQtaGVhZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1mb290ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jYXJkLW1lZGlhLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jYXJkLXRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1iYWRnZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1jYXJkLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1zZWNvbmRhcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jYXJkLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1sYXJnZWBcbi8vXG4vLyBVc2VzOiAgICAgICAgICAgIGB1ay1ncmlkLXN0YWNrYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDYXJkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkKSkge0BpbmNsdWRlIGhvb2stY2FyZCgpO31cbn1cblxuXG4vKiBTZWN0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jYXJkLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWwgJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtYm9keSkpIHtAaW5jbHVkZSBob29rLWNhcmQtYm9keSgpO31cbn1cblxuLnVrLWNhcmQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgcGFkZGluZzogJGNhcmQtaGVhZGVyLXBhZGRpbmctdmVydGljYWwgJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWhlYWRlcigpO31cbn1cblxuLnVrLWNhcmQtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgcGFkZGluZzogJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWwgJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1mb290ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWZvb3RlcigpO31cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1jYXJkLWJvZHkgeyBwYWRkaW5nOiAkY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWwtbCAkY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sOyB9XG5cbiAgICAudWstY2FyZC1oZWFkZXIgeyBwYWRkaW5nOiAkY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sICRjYXJkLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG4gICAgLnVrLWNhcmQtZm9vdGVyIHsgcGFkZGluZzogJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbCAkY2FyZC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsLWw7IH1cblxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWNhcmQtYm9keSA+IDpsYXN0LWNoaWxkLFxuLnVrLWNhcmQtaGVhZGVyID4gOmxhc3QtY2hpbGQsXG4udWstY2FyZC1mb290ZXIgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBNZWRpYVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZXNlcnZlZCBhbGlnbm1lbnQgbW9kaWZpZXIgdG8gc3R5bGUgdGhlIG1lZGlhIGVsZW1lbnQsIGUuZy4gd2l0aCBgYm9yZGVyLXJhZGl1c2BcbiAqIEltcGxlbWVudGVkIGJ5IHRoZSB0aGVtZVxuICovXG5cbltjbGFzcyo9XCJ1ay1jYXJkLW1lZGlhXCJdIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1tZWRpYSkpIHtAaW5jbHVkZSBob29rLWNhcmQtbWVkaWEoKTt9XG59XG5cbi51ay1jYXJkLW1lZGlhLXRvcCxcbi51ay1ncmlkLXN0YWNrID4gLnVrLWNhcmQtbWVkaWEtbGVmdCxcbi51ay1ncmlkLXN0YWNrID4gLnVrLWNhcmQtbWVkaWEtcmlnaHQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLXRvcCkpIHtAaW5jbHVkZSBob29rLWNhcmQtbWVkaWEtdG9wKCk7fVxufVxuXG4udWstY2FyZC1tZWRpYS1ib3R0b20ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLWJvdHRvbSkpIHtAaW5jbHVkZSBob29rLWNhcmQtbWVkaWEtYm90dG9tKCk7fVxufVxuXG46bm90KC51ay1ncmlkLXN0YWNrKSA+IC51ay1jYXJkLW1lZGlhLWxlZnQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLWxlZnQpKSB7QGluY2x1ZGUgaG9vay1jYXJkLW1lZGlhLWxlZnQoKTt9XG59XG5cbjpub3QoLnVrLWdyaWQtc3RhY2spID4gLnVrLWNhcmQtbWVkaWEtcmlnaHQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLXJpZ2h0KSkge0BpbmNsdWRlIGhvb2stY2FyZC1tZWRpYS1yaWdodCgpO31cbn1cblxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRjYXJkLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGNhcmQtdGl0bGUtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXRpdGxlKCk7fVxufVxuXG5cbi8qIEJhZGdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFBvc2l0aW9uXG4gKiAyLiBTaXplXG4gKiAzLiBTdHlsZVxuICogNC4gQ2VudGVyIGNoaWxkIHZlcnRpY2FsbHlcbiAqL1xuXG4udWstY2FyZC1iYWRnZSB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRjYXJkLWJhZGdlLXRvcDtcbiAgICByaWdodDogJGNhcmQtYmFkZ2UtcmlnaHQ7XG4gICAgei1pbmRleDogMTtcbiAgICAvKiAyICovXG4gICAgaGVpZ2h0OiAkY2FyZC1iYWRnZS1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkY2FyZC1iYWRnZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgLyogMyAqL1xuICAgIGJhY2tncm91bmQ6ICRjYXJkLWJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjYXJkLWJhZGdlLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGNhcmQtYmFkZ2UtZm9udC1zaXplO1xuICAgIC8qIDQgKi9cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtYmFkZ2UpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWJhZGdlKCk7fVxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIGFkamFjZW50IGVsZW1lbnRcbiAqL1xuXG4udWstY2FyZC1iYWRnZTpmaXJzdC1jaGlsZCArICogeyBtYXJnaW4tdG9wOiAwOyB9XG5cblxuLyogSG92ZXIgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY2FyZC1ob3Zlcjpub3QoLnVrLWNhcmQtZGVmYXVsdCk6bm90KC51ay1jYXJkLXByaW1hcnkpOm5vdCgudWstY2FyZC1zZWNvbmRhcnkpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1ob3ZlcigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdFxuICogTm90ZTogSGVhZGVyIGFuZCBGb290ZXIgYXJlIG9ubHkgaW1wbGVtZW50ZWQgZm9yIHRoZSBkZWZhdWx0IHN0eWxlXG4gKi9cblxuLnVrLWNhcmQtZGVmYXVsdCB7XG4gICAgLS11ay1pbnZlcnNlOiAjeyRjYXJkLWRlZmF1bHQtY29sb3ItbW9kZX07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY2FyZC1kZWZhdWx0LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWRlZmF1bHQoKTt9XG59XG5cbi51ay1jYXJkLWRlZmF1bHQgLnVrLWNhcmQtdGl0bGUge1xuICAgIGNvbG9yOiAkY2FyZC1kZWZhdWx0LXRpdGxlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWRlZmF1bHQtdGl0bGUoKTt9XG59XG5cbi51ay1jYXJkLWRlZmF1bHQudWstY2FyZC1ob3Zlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWRlZmF1bHQtaG92ZXIoKTt9XG59XG5cbi51ay1jYXJkLWRlZmF1bHQgLnVrLWNhcmQtaGVhZGVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1kZWZhdWx0LWhlYWRlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtZGVmYXVsdC1oZWFkZXIoKTt9XG59XG5cbi51ay1jYXJkLWRlZmF1bHQgLnVrLWNhcmQtZm9vdGVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1kZWZhdWx0LWZvb3RlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtZGVmYXVsdC1mb290ZXIoKTt9XG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICRjYXJkLWRlZmF1bHQtY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLWNhcmQtZGVmYXVsdC51ay1jYXJkLWJvZHkgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1kZWZhdWx0LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1jYXJkLWRlZmF1bHQgPiA6bm90KFtjbGFzcyo9XCJ1ay1jYXJkLW1lZGlhXCJdKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLWRlZmF1bHQtY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstY2FyZC1kZWZhdWx0LnVrLWNhcmQtYm9keSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuQGlmICggJGNhcmQtZGVmYXVsdC1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1jYXJkLWRlZmF1bHQgPiA6bm90KFtjbGFzcyo9XCJ1ay1jYXJkLW1lZGlhXCJdKSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi51ay1jYXJkLXByaW1hcnkge1xuICAgIC0tdWstaW52ZXJzZTogI3skY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGV9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLXByaW1hcnktYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNhcmQtcHJpbWFyeS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2stY2FyZC1wcmltYXJ5KCk7fVxufVxuXG4udWstY2FyZC1wcmltYXJ5IC51ay1jYXJkLXRpdGxlIHtcbiAgICBjb2xvcjogJGNhcmQtcHJpbWFyeS10aXRsZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1wcmltYXJ5LXRpdGxlKSkge0BpbmNsdWRlIGhvb2stY2FyZC1wcmltYXJ5LXRpdGxlKCk7fVxufVxuXG4udWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtaG92ZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1wcmltYXJ5LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1wcmltYXJ5LWhvdmVyKCk7fVxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1jYXJkLXByaW1hcnkudWstY2FyZC1ib2R5IHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJGNhcmQtcHJpbWFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPVwidWstY2FyZC1tZWRpYVwiXSkgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWJvZHkgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXByaW1hcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstY2FyZC1wcmltYXJ5ID4gOm5vdChbY2xhc3MqPVwidWstY2FyZC1tZWRpYVwiXSkgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLypcbiAqIFNlY29uZGFyeVxuICovXG5cbi51ay1jYXJkLXNlY29uZGFyeSB7XG4gICAgLS11ay1pbnZlcnNlOiAjeyRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlfTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1zZWNvbmRhcnktYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNhcmQtc2Vjb25kYXJ5LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXNlY29uZGFyeSkpIHtAaW5jbHVkZSBob29rLWNhcmQtc2Vjb25kYXJ5KCk7fVxufVxuXG4udWstY2FyZC1zZWNvbmRhcnkgLnVrLWNhcmQtdGl0bGUge1xuICAgIGNvbG9yOiAkY2FyZC1zZWNvbmRhcnktdGl0bGUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtc2Vjb25kYXJ5LXRpdGxlKSkge0BpbmNsdWRlIGhvb2stY2FyZC1zZWNvbmRhcnktdGl0bGUoKTt9XG59XG5cbi51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWhvdmVyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1zZWNvbmRhcnktaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXNlY29uZGFyeS1ob3ZlcigpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJGNhcmQtc2Vjb25kYXJ5LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLWNhcmQtc2Vjb25kYXJ5ID4gOm5vdChbY2xhc3MqPVwidWstY2FyZC1tZWRpYVwiXSkgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IHsgQGV4dGVuZCAudWstZGFyayAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkY2FyZC1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstY2FyZC1zZWNvbmRhcnkgPiA6bm90KFtjbGFzcyo9XCJ1ay1jYXJkLW1lZGlhXCJdKSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG5cbi8qIFNpemUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU21hbGxcbiAqL1xuXG4udWstY2FyZC1zbWFsbC51ay1jYXJkLWJvZHksXG4udWstY2FyZC1zbWFsbCAudWstY2FyZC1ib2R5IHsgcGFkZGluZzogJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOyB9XG5cbi51ay1jYXJkLXNtYWxsIC51ay1jYXJkLWhlYWRlciB7IHBhZGRpbmc6ICRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7IH1cbi51ay1jYXJkLXNtYWxsIC51ay1jYXJkLWZvb3RlciB7IHBhZGRpbmc6ICRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuLypcbiAqIExhcmdlXG4gKi9cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1jYXJkLWxhcmdlLnVrLWNhcmQtYm9keSxcbiAgICAudWstY2FyZC1sYXJnZSAudWstY2FyZC1ib2R5IHsgcGFkZGluZzogJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWwgJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG4gICAgLnVrLWNhcmQtbGFyZ2UgLnVrLWNhcmQtaGVhZGVyIHsgcGFkZGluZzogJGNhcmQtbGFyZ2UtaGVhZGVyLXBhZGRpbmctdmVydGljYWwtbCAkY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw7IH1cbiAgICAudWstY2FyZC1sYXJnZSAudWstY2FyZC1mb290ZXIgeyBwYWRkaW5nOiAkY2FyZC1sYXJnZS1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sICRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1taXNjKSkge0BpbmNsdWRlIGhvb2stY2FyZC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1jYXJkKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1ib2R5KCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLWZvb3Rlcigpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtbWVkaWEoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLW1lZGlhLXRvcCgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtbWVkaWEtYm90dG9tKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1tZWRpYS1sZWZ0KCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1tZWRpYS1yaWdodCgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLWJhZGdlKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdCgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLWRlZmF1bHQtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1wcmltYXJ5LXRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1wcmltYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1zZWNvbmRhcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLXNlY29uZGFyeS10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtc2Vjb25kYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWNhcmQtYmFkZ2UoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENsb3NlXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgYSBjbG9zZSBidXR0b25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jbG9zZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENsb3NlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstY2xvc2Uge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNsb3NlKSkge0BpbmNsdWRlIGhvb2stY2xvc2UoKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstY2xvc2U6aG92ZXIge1xuICAgIGNvbG9yOiAkY2xvc2UtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNsb3NlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stY2xvc2UtaG92ZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stY2xvc2UtbWlzYykpIHtAaW5jbHVkZSBob29rLWNsb3NlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stY2xvc2UtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jbG9zZS1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jbG9zZS1ob3Zlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU3Bpbm5lclxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgbG9hZGluZyBzcGlubmVyXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc3Bpbm5lcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc3Bpbm5lci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3IoKCgkc3Bpbm5lci1zaXplIC0gJHNwaW5uZXItc3Ryb2tlLXdpZHRoKSAqIDAuNSkpICFkZWZhdWx0OyAvLyBNaW51cyBzdHJva2Ugd2lkdGggdG8gcHJldmVudCBvdmVyZmxvdyBjbGlwcGluZ1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTcGlubmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstc3Bpbm5lciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNwaW5uZXIpKSB7QGluY2x1ZGUgaG9vay1zcGlubmVyKCk7fVxufVxuXG5cbi8qIFNWR1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zcGlubmVyID4gKiB7IGFuaW1hdGlvbjogdWstc3Bpbm5lci1yb3RhdGUgJHNwaW5uZXItZHVyYXRpb24gbGluZWFyIGluZmluaXRlOyB9XG5cbkBrZXlmcmFtZXMgdWstc3Bpbm5lci1yb3RhdGUge1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxufVxuXG4vKlxuICogQ2lyY2xlXG4gKi9cblxuLnVrLXNwaW5uZXIgPiAqID4gKiB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogJHNwaW5uZXItY2lyY3VtZmVyZW5jZTtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiB1ay1zcGlubmVyLWRhc2ggJHNwaW5uZXItZHVyYXRpb24gZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgc3Ryb2tlLXdpZHRoOiAkc3Bpbm5lci1zdHJva2Utd2lkdGg7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xufVxuXG5Aa2V5ZnJhbWVzIHVrLXNwaW5uZXItZGFzaCB7XG4gICAgMCUgeyBzdHJva2UtZGFzaG9mZnNldDogJHNwaW5uZXItY2lyY3VtZmVyZW5jZTsgfVxuICAgIDUwJSB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAoJHNwaW5uZXItY2lyY3VtZmVyZW5jZSAqIDAuMjUpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6ICRzcGlubmVyLWNpcmN1bWZlcmVuY2U7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1MGRlZyk7XG4gICAgfVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNwaW5uZXItbWlzYykpIHtAaW5jbHVkZSBob29rLXNwaW5uZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3Bpbm5lcigpe31cbi8vIEBtaXhpbiBob29rLXNwaW5uZXItbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVG90b3Bcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhbiBpY29uIHRvIHNjcm9sbCBiYWNrIHRvIHRvcFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRvdG9wYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRvdG9wXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstdG90b3Age1xuICAgIHBhZGRpbmc6ICR0b3RvcC1wYWRkaW5nO1xuICAgIGNvbG9yOiAkdG90b3AtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRvdG9wKSkge0BpbmNsdWRlIGhvb2stdG90b3AoKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstdG90b3A6aG92ZXIge1xuICAgIGNvbG9yOiAkdG90b3AtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRvdG9wLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdG90b3AtaG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay10b3RvcDphY3RpdmUge1xuICAgIGNvbG9yOiAkdG90b3AtYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10b3RvcC1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay10b3RvcC1hY3RpdmUoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdG90b3AtbWlzYykpIHtAaW5jbHVkZSBob29rLXRvdG9wLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRvdG9wKCl7fVxuLy8gQG1peGluIGhvb2stdG90b3AtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay10b3RvcC1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10b3RvcC1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRvdG9wKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10b3RvcC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdG90b3AtYWN0aXZlKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBNYXJrZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhIG1hcmtlciBpY29uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbWFya2VyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBNYXJrZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstbWFya2VyIHtcbiAgICBwYWRkaW5nOiAkbWFya2VyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJG1hcmtlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbWFya2VyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tYXJrZXIpKSB7QGluY2x1ZGUgaG9vay1tYXJrZXIoKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstbWFya2VyOmhvdmVyIHtcbiAgICBjb2xvcjogJG1hcmtlci1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbWFya2VyLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbWFya2VyLWhvdmVyKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLW1hcmtlci1taXNjKSkge0BpbmNsdWRlIGhvb2stbWFya2VyLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLW1hcmtlcigpe31cbi8vIEBtaXhpbiBob29rLW1hcmtlci1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW1hcmtlci1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW1hcmtlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbWFya2VyLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBBbGVydFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGFsZXJ0IG1lc3NhZ2VzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYWxlcnRgXG4vL1xuLy8gQWRvcHRlZDogICAgICAgICBgdWstYWxlcnQtY2xvc2VgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstYWxlcnQtcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFsZXJ0LXN1Y2Nlc3NgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbGVydC13YXJuaW5nYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYWxlcnQtZGFuZ2VyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEFsZXJ0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFsZXJ0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZyAkYWxlcnQtcGFkZGluZy1yaWdodCAkYWxlcnQtcGFkZGluZyAkYWxlcnQtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkYWxlcnQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hbGVydCkpIHtAaW5jbHVkZSBob29rLWFsZXJ0KCk7fVxufVxuXG4vKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnQgKi9cbiogKyAudWstYWxlcnQgeyBtYXJnaW4tdG9wOiAkYWxlcnQtbWFyZ2luLXZlcnRpY2FsOyB9XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstYWxlcnQgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBDbG9zZVxuICogQWRvcHRzIGB1ay1jbG9zZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYWxlcnQtY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRhbGVydC1jbG9zZS10b3A7XG4gICAgcmlnaHQ6ICRhbGVydC1jbG9zZS1yaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtY2xvc2UpKSB7QGluY2x1ZGUgaG9vay1hbGVydC1jbG9zZSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSBhZGphY2VudCBlbGVtZW50XG4gKi9cblxuLnVrLWFsZXJ0LWNsb3NlOmZpcnN0LWNoaWxkICsgKiB7IG1hcmdpbi10b3A6IDA7IH1cblxuLypcbiAqIEhvdmVyXG4gKi9cblxuLnVrLWFsZXJ0LWNsb3NlOmhvdmVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtY2xvc2UtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1hbGVydC1jbG9zZS1ob3ZlcigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi51ay1hbGVydC1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkYWxlcnQtcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYWxlcnQtcHJpbWFyeS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLWFsZXJ0LXByaW1hcnkoKTt9XG59XG5cbi8qXG4gKiBTdWNjZXNzXG4gKi9cblxuLnVrLWFsZXJ0LXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICRhbGVydC1zdWNjZXNzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRhbGVydC1zdWNjZXNzLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hbGVydC1zdWNjZXNzKSkge0BpbmNsdWRlIGhvb2stYWxlcnQtc3VjY2VzcygpO31cbn1cblxuLypcbiAqIFdhcm5pbmdcbiAqL1xuXG4udWstYWxlcnQtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGFsZXJ0LXdhcm5pbmctY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFsZXJ0LXdhcm5pbmcpKSB7QGluY2x1ZGUgaG9vay1hbGVydC13YXJuaW5nKCk7fVxufVxuXG4vKlxuICogRGFuZ2VyXG4gKi9cblxuLnVrLWFsZXJ0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYWxlcnQtZGFuZ2VyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hbGVydC1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1hbGVydC1kYW5nZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtbWlzYykpIHtAaW5jbHVkZSBob29rLWFsZXJ0LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWFsZXJ0KCl7fVxuLy8gQG1peGluIGhvb2stYWxlcnQtY2xvc2UoKXt9XG4vLyBAbWl4aW4gaG9vay1hbGVydC1jbG9zZS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LXByaW1hcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1hbGVydC1zdWNjZXNzKCl7fVxuLy8gQG1peGluIGhvb2stYWxlcnQtd2FybmluZygpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LWRhbmdlcigpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFBsYWNlaG9sZGVyXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgcGxhY2Vob2xkZXIgYm94ZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1wbGFjZWhvbGRlcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFBsYWNlaG9sZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBsYWNlaG9sZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGxhY2Vob2xkZXItbWFyZ2luLXZlcnRpY2FsO1xuICAgIHBhZGRpbmc6ICRwbGFjZWhvbGRlci1wYWRkaW5nLXZlcnRpY2FsICRwbGFjZWhvbGRlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJHBsYWNlaG9sZGVyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXBsYWNlaG9sZGVyKSkge0BpbmNsdWRlIGhvb2stcGxhY2Vob2xkZXIoKTt9XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIC51ay1wbGFjZWhvbGRlciB7IG1hcmdpbi10b3A6ICRwbGFjZWhvbGRlci1tYXJnaW4tdmVydGljYWw7IH1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1wbGFjZWhvbGRlciA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXBsYWNlaG9sZGVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1wbGFjZWhvbGRlci1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1wbGFjZWhvbGRlcigpe31cbi8vIEBtaXhpbiBob29rLXBsYWNlaG9sZGVyLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEJhZGdlXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgbm90aWZpY2F0aW9uIGJhZGdlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWJhZGdlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQmFkZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU3R5bGVcbiAqIDIuIENlbnRlciBjaGlsZCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHlcbiAqL1xuXG4udWstYmFkZ2Uge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLXdpZHRoOiAkYmFkZ2Utc2l6ZTtcbiAgICBoZWlnaHQ6ICRiYWRnZS1zaXplO1xuICAgIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXZlcnRpY2FsICRiYWRnZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAxICovXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvciAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgICAvKiAyICovXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFkZ2UpKSB7QGluY2x1ZGUgaG9vay1iYWRnZSgpO31cbn1cblxuLypcbiAqIFJlcXVpcmVkIGZvciBgYWBcbiAqL1xuXG4udWstYmFkZ2U6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFkZ2UtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1iYWRnZS1ob3ZlcigpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1iYWRnZS1taXNjKSkge0BpbmNsdWRlIGhvb2stYmFkZ2UtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYmFkZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1iYWRnZS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJhZGdlLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFkZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhZGdlLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBMYWJlbFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gaW5kaWNhdGUgaW1wb3J0YW50IG5vdGVzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbGFiZWxgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstbGFiZWwtc3VjY2Vzc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxhYmVsLXdhcm5pbmdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1sYWJlbC1kYW5nZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExhYmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmctdmVydGljYWwgJGxhYmVsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBsaW5lLWhlaWdodDogJGxhYmVsLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1sYWJlbCgpO31cbn1cblxuXG4vKiBDb2xvciBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU3VjY2Vzc1xuICovXG5cbi51ay1sYWJlbC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtc3VjY2Vzcy1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtc3VjY2Vzcy1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGFiZWwtc3VjY2VzcykpIHtAaW5jbHVkZSBob29rLWxhYmVsLXN1Y2Nlc3MoKTt9XG59XG5cbi8qXG4gKiBXYXJuaW5nXG4gKi9cblxuLnVrLWxhYmVsLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC13YXJuaW5nLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC13YXJuaW5nLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1sYWJlbC13YXJuaW5nKSkge0BpbmNsdWRlIGhvb2stbGFiZWwtd2FybmluZygpO31cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi51ay1sYWJlbC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC1kYW5nZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGFiZWwtZGFuZ2VyKSkge0BpbmNsdWRlIGhvb2stbGFiZWwtZGFuZ2VyKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWxhYmVsLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1sYWJlbC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWxhYmVsLXN1Y2Nlc3MoKXt9XG4vLyBAbWl4aW4gaG9vay1sYWJlbC13YXJuaW5nKCl7fVxuLy8gQG1peGluIGhvb2stbGFiZWwtZGFuZ2VyKCl7fVxuLy8gQG1peGluIGhvb2stbGFiZWwtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1sYWJlbCgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgT3ZlcmxheVxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGNvbnRlbnQgYXJlYXMgb3ZlcmxheWluZyBhbiBpbWFnZVxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLW92ZXJsYXlgXG4vL1xuLy8gQWRvcHRlZDogICAgICAgICBgdWstb3ZlcmxheS1pY29uYFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLW92ZXJsYXktZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktcHJpbWFyeWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBPdmVybGF5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW92ZXJsYXkge1xuICAgIHBhZGRpbmc6ICRvdmVybGF5LXBhZGRpbmctdmVydGljYWwgJG92ZXJsYXktcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1vdmVybGF5KSkge0BpbmNsdWRlIGhvb2stb3ZlcmxheSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1vdmVybGF5ID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogSWNvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1vdmVybGF5LWljb24ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1vdmVybGF5LWljb24pKSB7QGluY2x1ZGUgaG9vay1vdmVybGF5LWljb24oKTt9XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERlZmF1bHRcbiAqL1xuXG4udWstb3ZlcmxheS1kZWZhdWx0IHtcbiAgICAtLXVrLWludmVyc2U6ICN7JG92ZXJsYXktZGVmYXVsdC1jb2xvci1tb2RlfTtcbiAgICBiYWNrZ3JvdW5kOiAkb3ZlcmxheS1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW92ZXJsYXktZGVmYXVsdCkpIHtAaW5jbHVkZSBob29rLW92ZXJsYXktZGVmYXVsdCgpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJG92ZXJsYXktZGVmYXVsdC1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstb3ZlcmxheS1kZWZhdWx0IHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJG92ZXJsYXktZGVmYXVsdC1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1vdmVybGF5LWRlZmF1bHQgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstb3ZlcmxheS1wcmltYXJ5IHtcbiAgICAtLXVrLWludmVyc2U6ICN7JG92ZXJsYXktcHJpbWFyeS1jb2xvci1tb2RlfTtcbiAgICBiYWNrZ3JvdW5kOiAkb3ZlcmxheS1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW92ZXJsYXktcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLW92ZXJsYXktcHJpbWFyeSgpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJG92ZXJsYXktcHJpbWFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstb3ZlcmxheS1wcmltYXJ5IHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJG92ZXJsYXktcHJpbWFyeS1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1vdmVybGF5LXByaW1hcnkgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1vdmVybGF5LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1vdmVybGF5LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLW92ZXJsYXkoKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWljb24oKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LXByaW1hcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEFydGljbGVcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhcnRpY2xlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWFydGljbGVgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstYXJ0aWNsZS10aXRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFydGljbGUtbWV0YWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBcnRpY2xlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFydGljbGUge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYXJ0aWNsZSkpIHtAaW5jbHVkZSBob29rLWFydGljbGUoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstYXJ0aWNsZSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIEFkamFjZW50IHNpYmxpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYXJ0aWNsZSArIC51ay1hcnRpY2xlIHtcbiAgICBtYXJnaW4tdG9wOiAkYXJ0aWNsZS1tYXJnaW4tdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hcnRpY2xlLWFkamFjZW50KSkge0BpbmNsdWRlIGhvb2stYXJ0aWNsZS1hZGphY2VudCgpO31cbn1cblxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hcnRpY2xlLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRhcnRpY2xlLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGFydGljbGUtdGl0bGUtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFydGljbGUtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1hcnRpY2xlLXRpdGxlKCk7fVxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1hcnRpY2xlLXRpdGxlIHsgZm9udC1zaXplOiAkYXJ0aWNsZS10aXRsZS1mb250LXNpemUtbTsgfVxuXG59XG5cblxuLyogTWV0YVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hcnRpY2xlLW1ldGEge1xuICAgIGZvbnQtc2l6ZTogJGFydGljbGUtbWV0YS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRhcnRpY2xlLW1ldGEtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRhcnRpY2xlLW1ldGEtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFydGljbGUtbWV0YSkpIHtAaW5jbHVkZSBob29rLWFydGljbGUtbWV0YSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1hcnRpY2xlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hcnRpY2xlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWFydGljbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLWFkamFjZW50KCl7fVxuLy8gQG1peGluIGhvb2stYXJ0aWNsZS10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWFydGljbGUtbWV0YSgpe31cbi8vIEBtaXhpbiBob29rLWFydGljbGUtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1hcnRpY2xlLXRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1hcnRpY2xlLW1ldGEoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENvbW1lbnRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBuZXN0ZWQgY29tbWVudHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jb21tZW50YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWNvbW1lbnQtYm9keWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbW1lbnQtaGVhZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC10aXRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbW1lbnQtbWV0YWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbW1lbnQtYXZhdGFyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC1saXN0YFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLWNvbW1lbnQtcHJpbWFyeWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENvbW1lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY29tbWVudCB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50KCk7fVxufVxuXG5cbi8qIFNlY3Rpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQtYm9keSB7XG4gICAgZGlzcGxheTogZmxvdy1yb290O1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LWJvZHkpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LWJvZHkoKTt9XG59XG5cbi51ay1jb21tZW50LWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxvdy1yb290O1xuICAgIG1hcmdpbi1ib3R0b206ICRjb21tZW50LWhlYWRlci1tYXJnaW4tYm90dG9tO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LWhlYWRlcikpIHtAaW5jbHVkZSBob29rLWNvbW1lbnQtaGVhZGVyKCk7fVxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWNvbW1lbnQtYm9keSA+IDpsYXN0LWNoaWxkLFxuLnVrLWNvbW1lbnQtaGVhZGVyID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogVGl0bGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY29tbWVudC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAkY29tbWVudC10aXRsZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRjb21tZW50LXRpdGxlLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LXRpdGxlKSkge0BpbmNsdWRlIGhvb2stY29tbWVudC10aXRsZSgpO31cbn1cblxuXG4vKiBNZXRhXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQtbWV0YSB7XG4gICAgZm9udC1zaXplOiAkY29tbWVudC1tZXRhLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGNvbW1lbnQtbWV0YS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGNvbW1lbnQtbWV0YS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY29tbWVudC1tZXRhKSkge0BpbmNsdWRlIGhvb2stY29tbWVudC1tZXRhKCk7fVxufVxuXG5cbi8qIEF2YXRhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LWF2YXRhciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtYXZhdGFyKSkge0BpbmNsdWRlIGhvb2stY29tbWVudC1hdmF0YXIoKTt9XG59XG5cblxuLyogTGlzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LWxpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogQWRqYWNlbnQgc2libGluZ3MgKi9cbi51ay1jb21tZW50LWxpc3QgPiA6bnRoLWNoaWxkKG4rMikge1xuICAgIG1hcmdpbi10b3A6ICRjb21tZW50LWxpc3QtbWFyZ2luLXRvcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY29tbWVudC1saXN0LWFkamFjZW50KSkge0BpbmNsdWRlIGhvb2stY29tbWVudC1saXN0LWFkamFjZW50KCk7fVxufVxuXG4vKlxuICogU3VibGlzdHNcbiAqIE5vdGU6IEdlbmVyYWwgc2libGluZyBzZWxlY3RvciBhbGxvd3MgcmVwbHkgYmxvY2sgYmV0d2VlbiBjb21tZW50IGFuZCBzdWJsaXN0XG4gKi9cblxuLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCB+IHVsIHtcbiAgICBtYXJnaW46ICRjb21tZW50LWxpc3QtbWFyZ2luLXRvcCAwIDAgMDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb21tZW50LWxpc3QtcGFkZGluZy1sZWZ0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtbGlzdC1zdWIpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LWxpc3Qtc3ViKCk7fVxufVxuXG4vKiBUYWJsZXQgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCB+IHVsIHsgcGFkZGluZy1sZWZ0OiAkY29tbWVudC1saXN0LXBhZGRpbmctbGVmdC1tOyB9XG5cbn1cblxuLyogQWRqYWNlbnQgc2libGluZ3MgKi9cbi51ay1jb21tZW50LWxpc3QgLnVrLWNvbW1lbnQgfiB1bCA+IDpudGgtY2hpbGQobisyKSB7XG4gICAgbWFyZ2luLXRvcDogJGNvbW1lbnQtbGlzdC1tYXJnaW4tdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LWxpc3Qtc3ViLWFkamFjZW50KSkge0BpbmNsdWRlIGhvb2stY29tbWVudC1saXN0LXN1Yi1hZGphY2VudCgpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LXByaW1hcnkge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LXByaW1hcnkoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stY29tbWVudC1taXNjKSkge0BpbmNsdWRlIGhvb2stY29tbWVudC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1jb21tZW50KCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1ib2R5KCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LXRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1tZXRhKCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1hdmF0YXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWxpc3QtYWRqYWNlbnQoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWxpc3Qtc3ViKCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1saXN0LXN1Yi1hZGphY2VudCgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU2VhcmNoXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgdGhlIHNlYXJjaFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXNlYXJjaGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1zZWFyY2gtaW5wdXRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWFyY2gtdG9nZ2xlYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLXNlYXJjaC1pY29uYFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLXNlYXJjaC1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2VhcmNoLW5hdmJhcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlYXJjaC1tZWRpdW1gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWFyY2gtbGFyZ2VgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNlYXJjaFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb250YWluZXIgZml0cyBpdHMgY29udGVudFxuICogMi4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHRcbiAqIDMuIFByZXZlbnQgY29udGVudCBvdmVyZmxvd1xuICogNC4gUmVzZXQgYGZvcm1gXG4gKi9cblxuLnVrLXNlYXJjaCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIDMgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogNCAqL1xuICAgIG1hcmdpbjogMDtcbn1cblxuXG4vKiBJbnB1dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBvbiBPUyBYIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG4udWstc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuLnVrLXNlYXJjaC1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKlxuICogUmVtb3ZlcyBwbGFjZWhvbGRlciB0cmFuc3BhcmVuY3kgaW4gRmlyZWZveC5cbiAqL1xuXG4udWstc2VhcmNoLWlucHV0OjotbW96LXBsYWNlaG9sZGVyIHsgb3BhY2l0eTogMTsgfVxuXG4vKlxuICogMS4gRGVmaW5lIGNvbnNpc3RlbnQgYm94IHNpemluZy5cbiAqIDIuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveC9JRSBhbmQgQ2hyb21lL1NhZmFyaS9PcGVyYS5cbiAqIDMuIFJlbW92ZSBgYm9yZGVyLXJhZGl1c2AgaW4gaU9TLlxuICogNC4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gYWxsIGJyb3dzZXJzXG4gKiA1LiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICogNi4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUgaW4gaU9TLlxuICogNy4gVmVydGljYWwgYWxpZ25tZW50XG4gKiA4LiBUYWtlIHRoZSBmdWxsIGNvbnRhaW5lciB3aWR0aFxuICogOS4gU3R5bGVcbiAqL1xuXG4udWstc2VhcmNoLWlucHV0IHtcbiAgICAvKiAxICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDMgKi9cbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIC8qIDQgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIC8qIDUgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAvKiA2ICovXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC8qIDcgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDggKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiA5ICovXG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkc2VhcmNoLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWFyY2gtaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtaW5wdXQoKTt9XG59XG5cbi51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cbi8qIFBsYWNlaG9sZGVyICovXG4udWstc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciB7IGNvbG9yOiAkc2VhcmNoLXBsYWNlaG9sZGVyLWNvbG9yOyB9XG5cblxuLyogSWNvbiAoQWRvcHRzIGB1ay1pY29uYClcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUG9zaXRpb24gYWJvdmUgaW5wdXRcbiAqIDEuIFNldCBwb3NpdGlvblxuICogMi4gQ2VudGVyIGljb24gdmVydGljYWxseSBhbmQgaG9yaXpvbnRhbGx5XG4gKiAzLiBTdHlsZVxuICovXG5cbi51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICAvKiAyICovXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvKiAzICovXG4gICAgY29sb3I6ICRzZWFyY2gtaWNvbi1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLWljb24pKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtaWNvbigpO31cbn1cblxuLypcbiAqIFJlcXVpcmVkIGZvciBgYWAuXG4gKi9cblxuLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb246aG92ZXIgeyBjb2xvcjogJHNlYXJjaC1pY29uLWNvbG9yOyB9XG5cbi8qXG4gKiBNYWtlIGBpbnB1dGAgZWxlbWVudCBjbGlja2FibGUgdGhyb3VnaCBpY29uLCBlLmcuIGlmIGl0J3MgYSBgc3BhbmBcbiAqL1xuXG4udWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbjpub3QoYSk6bm90KGJ1dHRvbik6bm90KGlucHV0KSB7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi8qXG4gKiBQb3NpdGlvbiBtb2RpZmllclxuICovXG5cbi51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uLWZsaXAge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG59XG5cblxuLyogRGVmYXVsdCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zZWFyY2gtZGVmYXVsdCB7IHdpZHRoOiAkc2VhcmNoLWRlZmF1bHQtd2lkdGg7IH1cblxuLypcbiAqIElucHV0XG4gKi9cblxuLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQge1xuICAgIGhlaWdodDogJHNlYXJjaC1kZWZhdWx0LWhlaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzZWFyY2gtZGVmYXVsdC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgcGFkZGluZy1yaWdodDogJHNlYXJjaC1kZWZhdWx0LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkc2VhcmNoLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtZGVmYXVsdC1pbnB1dCgpO31cbn1cblxuLyogRm9jdXMgKi9cbi51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VhcmNoLWRlZmF1bHQtZm9jdXMtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtZGVmYXVsdC1pbnB1dC1mb2N1cygpO31cbn1cblxuLypcbiAqIEljb25cbiAqL1xuXG4udWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pY29uIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzZWFyY2gtZGVmYXVsdC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgcGFkZGluZy1yaWdodDogJHNlYXJjaC1kZWZhdWx0LXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLnVrLXNlYXJjaC1kZWZhdWx0OmhhcygudWstc2VhcmNoLWljb246bm90KC51ay1zZWFyY2gtaWNvbi1mbGlwKSkgLnVrLXNlYXJjaC1pbnB1dCB7IHBhZGRpbmctbGVmdDogKCRzZWFyY2gtZGVmYXVsdC1pY29uLXdpZHRoICsgJHNlYXJjaC1kZWZhdWx0LXBhZGRpbmctaG9yaXpvbnRhbCArICRzZWFyY2gtZGVmYXVsdC1pY29uLXBhZGRpbmcpOyB9XG4udWstc2VhcmNoLWRlZmF1bHQ6aGFzKC51ay1zZWFyY2gtaWNvbi1mbGlwKSAudWstc2VhcmNoLWlucHV0IHsgcGFkZGluZy1yaWdodDogKCRzZWFyY2gtZGVmYXVsdC1pY29uLXdpZHRoICsgJHNlYXJjaC1kZWZhdWx0LXBhZGRpbmctaG9yaXpvbnRhbCArICRzZWFyY2gtZGVmYXVsdC1pY29uLXBhZGRpbmcpOyB9XG5cblxuLyogTmF2YmFyIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXNlYXJjaC1uYXZiYXIgeyB3aWR0aDogJHNlYXJjaC1uYXZiYXItd2lkdGg7IH1cblxuLypcbiAqIElucHV0XG4gKi9cblxuLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCB7XG4gICAgaGVpZ2h0OiAkc2VhcmNoLW5hdmJhci1oZWlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2VhcmNoLW5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgcGFkZGluZy1yaWdodDogJHNlYXJjaC1uYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGJhY2tncm91bmQ6ICRzZWFyY2gtbmF2YmFyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1uYXZiYXItaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtbmF2YmFyLWlucHV0KCk7fVxufVxuXG4vKiBGb2N1cyAqL1xuLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlYXJjaC1uYXZiYXItZm9jdXMtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLW5hdmJhci1pbnB1dC1mb2N1cykpIHtAaW5jbHVkZSBob29rLXNlYXJjaC1uYXZiYXItaW5wdXQtZm9jdXMoKTt9XG59XG5cbi8qXG4gKiBJY29uXG4gKi9cblxuLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pY29uIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzZWFyY2gtbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2VhcmNoLW5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG59XG5cbi51ay1zZWFyY2gtbmF2YmFyOmhhcygudWstc2VhcmNoLWljb246bm90KC51ay1zZWFyY2gtaWNvbi1mbGlwKSkgLnVrLXNlYXJjaC1pbnB1dCB7IHBhZGRpbmctbGVmdDogKCRzZWFyY2gtbmF2YmFyLWljb24td2lkdGggKyAkc2VhcmNoLW5hdmJhci1wYWRkaW5nLWhvcml6b250YWwgKyAkc2VhcmNoLW5hdmJhci1pY29uLXBhZGRpbmcpOyB9XG4udWstc2VhcmNoLW5hdmJhcjpoYXMoLnVrLXNlYXJjaC1pY29uLWZsaXApIC51ay1zZWFyY2gtaW5wdXQgeyBwYWRkaW5nLXJpZ2h0OiAoJHNlYXJjaC1uYXZiYXItaWNvbi13aWR0aCArICRzZWFyY2gtbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbCArICRzZWFyY2gtbmF2YmFyLWljb24tcGFkZGluZyk7IH1cblxuXG4vKiBNZWRpdW0gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc2VhcmNoLW1lZGl1bSB7IHdpZHRoOiAkc2VhcmNoLW1lZGl1bS13aWR0aDsgfVxuXG4vKlxuICogSW5wdXRcbiAqL1xuXG4udWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0IHtcbiAgICBoZWlnaHQ6ICRzZWFyY2gtbWVkaXVtLWhlaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzZWFyY2gtbWVkaXVtLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2VhcmNoLW1lZGl1bS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJHNlYXJjaC1tZWRpdW0tYmFja2dyb3VuZDtcbiAgICBmb250LXNpemU6ICRzZWFyY2gtbWVkaXVtLWZvbnQtc2l6ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLW1lZGl1bS1pbnB1dCkpIHtAaW5jbHVkZSBob29rLXNlYXJjaC1tZWRpdW0taW5wdXQoKTt9XG59XG5cbi8qIEZvY3VzICovXG4udWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VhcmNoLW1lZGl1bS1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWFyY2gtbWVkaXVtLWlucHV0LWZvY3VzKSkge0BpbmNsdWRlIGhvb2stc2VhcmNoLW1lZGl1bS1pbnB1dC1mb2N1cygpO31cbn1cblxuLypcbiAqIEljb25cbiAqL1xuXG4udWstc2VhcmNoLW1lZGl1bSAudWstc2VhcmNoLWljb24ge1xuICAgIHBhZGRpbmctbGVmdDogJHNlYXJjaC1tZWRpdW0tcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzZWFyY2gtbWVkaXVtLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLnVrLXNlYXJjaC1tZWRpdW06aGFzKC51ay1zZWFyY2gtaWNvbjpub3QoLnVrLXNlYXJjaC1pY29uLWZsaXApKSAudWstc2VhcmNoLWlucHV0IHsgcGFkZGluZy1sZWZ0OiAoJHNlYXJjaC1tZWRpdW0taWNvbi13aWR0aCArICRzZWFyY2gtbWVkaXVtLXBhZGRpbmctaG9yaXpvbnRhbCArICRzZWFyY2gtbWVkaXVtLWljb24tcGFkZGluZyk7IH1cbi51ay1zZWFyY2gtbWVkaXVtOmhhcygudWstc2VhcmNoLWljb24tZmxpcCkgLnVrLXNlYXJjaC1pbnB1dCB7IHBhZGRpbmctcmlnaHQ6ICgkc2VhcmNoLW1lZGl1bS1pY29uLXdpZHRoICsgJHNlYXJjaC1tZWRpdW0tcGFkZGluZy1ob3Jpem9udGFsICsgJHNlYXJjaC1tZWRpdW0taWNvbi1wYWRkaW5nKTsgfVxuXG5cbi8qIExhcmdlIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXNlYXJjaC1sYXJnZSB7IHdpZHRoOiAkc2VhcmNoLWxhcmdlLXdpZHRoOyB9XG5cbi8qXG4gKiBJbnB1dFxuICovXG5cbi51ay1zZWFyY2gtbGFyZ2UgLnVrLXNlYXJjaC1pbnB1dCB7XG4gICAgaGVpZ2h0OiAkc2VhcmNoLWxhcmdlLWhlaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzZWFyY2gtbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzZWFyY2gtbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGJhY2tncm91bmQ6ICRzZWFyY2gtbGFyZ2UtYmFja2dyb3VuZDtcbiAgICBmb250LXNpemU6ICRzZWFyY2gtbGFyZ2UtZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWFyY2gtbGFyZ2UtaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtbGFyZ2UtaW5wdXQoKTt9XG59XG5cbi8qIEZvY3VzICovXG4udWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFyY2gtbWVkaXVtLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1sYXJnZS1pbnB1dC1mb2N1cykpIHtAaW5jbHVkZSBob29rLXNlYXJjaC1sYXJnZS1pbnB1dC1mb2N1cygpO31cbn1cblxuLypcbiAqIEljb25cbiAqL1xuXG4udWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaWNvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2VhcmNoLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2VhcmNoLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLnVrLXNlYXJjaC1sYXJnZTpoYXMoLnVrLXNlYXJjaC1pY29uOm5vdCgudWstc2VhcmNoLWljb24tZmxpcCkpIC51ay1zZWFyY2gtaW5wdXQgeyBwYWRkaW5nLWxlZnQ6ICgkc2VhcmNoLWxhcmdlLWljb24td2lkdGggKyAkc2VhcmNoLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbCArICRzZWFyY2gtbGFyZ2UtaWNvbi1wYWRkaW5nKTsgfVxuLnVrLXNlYXJjaC1sYXJnZTpoYXMoLnVrLXNlYXJjaC1pY29uLWZsaXApIC51ay1zZWFyY2gtaW5wdXQgeyBwYWRkaW5nLXJpZ2h0OiAoJHNlYXJjaC1sYXJnZS1pY29uLXdpZHRoICsgJHNlYXJjaC1sYXJnZS1wYWRkaW5nLWhvcml6b250YWwgKyAkc2VhcmNoLWxhcmdlLWljb24tcGFkZGluZyk7IH1cblxuXG4vKiBUb2dnbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc2VhcmNoLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRzZWFyY2gtdG9nZ2xlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWFyY2gtdG9nZ2xlKSkge0BpbmNsdWRlIGhvb2stc2VhcmNoLXRvZ2dsZSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyIHtcbiAgICBjb2xvcjogJHNlYXJjaC10b2dnbGUtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC10b2dnbGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtdG9nZ2xlLWhvdmVyKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1taXNjKSkge0BpbmNsdWRlIGhvb2stc2VhcmNoLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXNlYXJjaC1pbnB1dCgpe31cbi8vIEBtaXhpbiBob29rLXNlYXJjaC1pY29uKCl7fVxuLy8gQG1peGluIGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtZGVmYXVsdC1pbnB1dC1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLXNlYXJjaC1uYXZiYXItaW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtbmF2YmFyLWlucHV0LWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2stc2VhcmNoLW1lZGl1bS1pbnB1dCgpe31cbi8vIEBtaXhpbiBob29rLXNlYXJjaC1tZWRpdW0taW5wdXQtZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtbGFyZ2UtaW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtbGFyZ2UtaW5wdXQtZm9jdXMoKXt9XG5cbi8vIEBtaXhpbiBob29rLXNlYXJjaC10b2dnbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtdG9nZ2xlLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1pbnB1dCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQtZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1tZWRpdW0taW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1tZWRpdW0taW5wdXQtZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1sYXJnZS1pbnB1dCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWxhcmdlLWlucHV0LWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBBY2NvcmRpb25cbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhY2NvcmRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYWNjb3JkaW9uYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWFjY29yZGlvbi10aXRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFjY29yZGlvbi1jb250ZW50YFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLW9wZW5gXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQWNjb3JkaW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFjY29yZGlvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hY2NvcmRpb24pKSB7QGluY2x1ZGUgaG9vay1hY2NvcmRpb24oKTt9XG59XG5cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hY2NvcmRpb24gPiAqIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWNjb3JkaW9uLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1hY2NvcmRpb24taXRlbSgpO31cbn1cblxuLnVrLWFjY29yZGlvbiA+IDpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6ICRhY2NvcmRpb24taXRlbS1tYXJnaW4tdG9wOyB9XG5cblxuLyogVGl0bGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYWNjb3JkaW9uLXRpdGxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkYWNjb3JkaW9uLXRpdGxlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hY2NvcmRpb24tdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1hY2NvcmRpb24tdGl0bGUoKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstYWNjb3JkaW9uLXRpdGxlOmhvdmVyIHtcbiAgICBjb2xvcjogJGFjY29yZGlvbi10aXRsZS1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFjY29yZGlvbi10aXRsZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWFjY29yZGlvbi10aXRsZS1ob3ZlcigpO31cbn1cblxuXG4vKiBDb250ZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgbWFyZ2luLXRvcDogJGFjY29yZGlvbi1jb250ZW50LW1hcmdpbi10b3A7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFjY29yZGlvbi1jb250ZW50KSkge0BpbmNsdWRlIGhvb2stYWNjb3JkaW9uLWNvbnRlbnQoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4gLnVrLWFjY29yZGlvbi1jb250ZW50ID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stYWNjb3JkaW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hY2NvcmRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uKCl7fVxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tdGl0bGUtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tY29udGVudCgpe31cbi8vIEBtaXhpbiBob29rLWFjY29yZGlvbi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1hY2NvcmRpb24tdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi10aXRsZS1ob3Zlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRHJvcFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gcG9zaXRpb24gYW55IGVsZW1lbnQgbmV4dCB0byBhbnkgb3RoZXIgZWxlbWVudC5cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1kcm9wYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWRyb3AtcGFyZW50LWljb25gXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstZHJvcC1zdGFja2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3AtZ3JpZGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1vcGVuYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgQW5pbWF0aW9uXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERyb3BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgcG9zaXRpb25cbiAqIDMuIFNldCBhIGRlZmF1bHQgd2lkdGhcbiAqL1xuXG4udWstZHJvcCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAkZHJvcC16LWluZGV4O1xuICAgIC0tdWstcG9zaXRpb24tb2Zmc2V0OiAjeyRkcm9wLW1hcmdpbn07XG4gICAgLS11ay1wb3NpdGlvbi12aWV3cG9ydC1vZmZzZXQ6ICN7JGRyb3Atdmlld3BvcnQtbWFyZ2lufTtcbiAgICAvKiAzICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogJGRyb3Atd2lkdGg7XG59XG5cbi8qIFNob3cgKi9cbi51ay1kcm9wLnVrLW9wZW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG5cbi8qIEdyaWQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRyb3Atc3RhY2sgLnVrLWRyb3AtZ3JpZCA+ICogeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cblxuLyogUGFyZW50IGljb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZHJvcC1wYXJlbnQtaWNvbiB7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wLXBhcmVudC1pY29uLW1hcmdpbi1sZWZ0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xufVxuXG5bYXJpYS1leHBhbmRlZD1cInRydWVcIl0gPiAudWstZHJvcC1wYXJlbnQtaWNvbiB7IHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcC1taXNjKSkge0BpbmNsdWRlIGhvb2stZHJvcC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERyb3BiYXJcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhIGRyb3BiYXIgYmFzZWQgb24gRHJvcCBjb21wb25lbnRcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1kcm9wYmFyYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWRyb3BiYXItbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wYmFyLXRvcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3BiYXItYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcGJhci1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcGJhci1yaWdodGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRHJvcGJhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZG9wdHMgYHVrLWRyb3BgXG4gKiAxLiBSZXNldCBkcm9wXG4gKiAyLiBTdHlsZVxuICovXG5cbi51ay1kcm9wYmFyIHtcbiAgICAtLXVrLXBvc2l0aW9uLW9mZnNldDogI3skZHJvcGJhci1tYXJnaW59O1xuICAgIC0tdWstcG9zaXRpb24tc2hpZnQtb2Zmc2V0OiAwO1xuICAgIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiAwO1xuICAgIC0tdWstaW52ZXJzZTogI3skZHJvcGJhci1jb2xvci1tb2RlfTtcbiAgICAvKiAxICovXG4gICAgd2lkdGg6IGF1dG87XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmc6ICRkcm9wYmFyLXBhZGRpbmctdG9wICRkcm9wYmFyLXBhZGRpbmctaG9yaXpvbnRhbCAkZHJvcGJhci1wYWRkaW5nLWJvdHRvbSAkZHJvcGJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJGRyb3BiYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGRyb3BiYXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3BiYXIpKSB7QGluY2x1ZGUgaG9vay1kcm9wYmFyKCk7fVxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWRyb3BiYXIgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWRyb3BiYXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRkcm9wYmFyLXBhZGRpbmctaG9yaXpvbnRhbC1zO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZHJvcGJhci1wYWRkaW5nLWhvcml6b250YWwtcztcbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstZHJvcGJhciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGRyb3BiYXItcGFkZGluZy1ob3Jpem9udGFsLW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRkcm9wYmFyLXBhZGRpbmctaG9yaXpvbnRhbC1tO1xuICAgIH1cblxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkZHJvcGJhci1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstZHJvcGJhciB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRkcm9wYmFyLWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLWRyb3BiYXIgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuQGlmICgkZHJvcGJhci1jb2xvci1tb2RlICE9ICRpbnZlcnNlLWdsb2JhbC1jb2xvci1tb2RlKSB7XG4udWstZHJvcGJhciA6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZS1jb2xvcjogJGRyb3BiYXItZm9jdXMtb3V0bGluZSAhaW1wb3J0YW50O1xufVxufVxuXG5cbi8qIFNpemUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZHJvcGJhci1sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6ICRkcm9wYmFyLWxhcmdlLXBhZGRpbmctdG9wO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZHJvcGJhci1sYXJnZS1wYWRkaW5nLWJvdHRvbTtcbn1cblxuXG4vKiBEaXJlY3Rpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZHJvcGJhci10b3Age1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wYmFyLXRvcCkpIHtAaW5jbHVkZSBob29rLWRyb3BiYXItdG9wKCk7fVxufVxuXG4udWstZHJvcGJhci1ib3R0b20ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wYmFyLWJvdHRvbSkpIHtAaW5jbHVkZSBob29rLWRyb3BiYXItYm90dG9tKCk7fVxufVxuXG4udWstZHJvcGJhci1sZWZ0IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcGJhci1sZWZ0KSkge0BpbmNsdWRlIGhvb2stZHJvcGJhci1sZWZ0KCk7fVxufVxuXG4udWstZHJvcGJhci1yaWdodCB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3BiYXItcmlnaHQpKSB7QGluY2x1ZGUgaG9vay1kcm9wYmFyLXJpZ2h0KCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3BiYXItbWlzYykpIHtAaW5jbHVkZSBob29rLWRyb3BiYXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stZHJvcGJhcigpe31cbi8vIEBtaXhpbiBob29rLWRyb3BiYXItdG9wKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGJhci1ib3R0b20oKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wYmFyLWxlZnQoKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wYmFyLXJpZ2h0KCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGJhci1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBEcm9wbmF2XG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgZHJvcGRvd24vZHJvcGJhciBtZW51cyBiYXNlZCBvbiBEcm9wIGNvbXBvbmVudFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWRyb3BuYXZgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstZHJvcG5hdi1kcm9wYmFyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRHJvcG5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUG9zaXRpb25cbiAqIDIuIFJlc2V0IGRyb3BiYXJcbiAqIDMuIFdpZHRoXG4gKi9cblxuLnVrLWRyb3BuYXYtZHJvcGJhciB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAkZHJvcG5hdi1kcm9wYmFyLXotaW5kZXg7XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogMyAqL1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcG5hdi1taXNjKSkge0BpbmNsdWRlIGhvb2stZHJvcG5hdi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wbmF2LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIE1vZGFsXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgbW9kYWwgZGlhbG9nc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLW1vZGFsYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW1vZGFsLXBhZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1kaWFsb2dgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1oZWFkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1ib2R5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtZm9vdGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtdGl0bGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1jbG9zZWBcbi8vXG4vLyBBZG9wdGVkOiAgICAgICAgIGB1ay1tb2RhbC1jbG9zZS1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtY2xvc2Utb3V0c2lkZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1vZGFsLWNsb3NlLWZ1bGxgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstbW9kYWwtY29udGFpbmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtZnVsbGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1vcGVuYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTW9kYWxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgcG9zaXRpb25cbiAqIDMuIEFsbG93IHNjcm9sbGluZyBmb3IgdGhlIG1vZGFsIGRpYWxvZ1xuICogNC4gSG9yaXpvbnRhbCBwYWRkaW5nXG4gKiA1LiBNYXNrIHRoZSBiYWNrZ3JvdW5kIHBhZ2VcbiAqIDYuIEZhZGUtaW4gdHJhbnNpdGlvblxuICovXG5cbi51ay1tb2RhbCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG1vZGFsLXotaW5kZXg7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLyogNCAqL1xuICAgIHBhZGRpbmc6ICRtb2RhbC1wYWRkaW5nLXZlcnRpY2FsICRtb2RhbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgLyogNSAqL1xuICAgIGJhY2tncm91bmQ6ICRtb2RhbC1iYWNrZ3JvdW5kO1xuICAgIC8qIDYgKi9cbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbCkpIHtAaW5jbHVkZSBob29rLW1vZGFsKCk7fVxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstbW9kYWwgeyBwYWRkaW5nOiAkbW9kYWwtcGFkZGluZy12ZXJ0aWNhbC1zICRtb2RhbC1wYWRkaW5nLWhvcml6b250YWwtczsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLW1vZGFsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsLW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRtb2RhbC1wYWRkaW5nLWhvcml6b250YWwtbTtcbiAgICB9XG5cbn1cblxuLypcbiAqIE9wZW5cbiAqL1xuXG4udWstbW9kYWwudWstb3BlbiB7IG9wYWNpdHk6IDE7IH1cblxuXG4vKiBQYWdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFByZXZlbnQgc2Nyb2xsYmFyc1xuICovXG5cbi51ay1tb2RhbC1wYWdlIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5cbi8qIERpYWxvZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3Igc3Bpbm5lciBhbmQgY2xvc2UgYnV0dG9uXG4gKiAyLiBEaW1lbnNpb25zXG4gKiAzLiBgIWltcG9ydGFudGAgaXMgbmVlZGVkIHRvIG92ZXJ3cml0ZSBgdWstd2lkdGgtYXV0b2AuIFNlZSBgI21vZGFsLW1lZGlhLWltYWdlYCBpbiB0ZXN0c1xuICogNC4gU3R5bGVcbiAqIDUuIFNsaWRlLWluIHRyYW5zaXRpb25cbiAqL1xuXG4udWstbW9kYWwtZGlhbG9nIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIDIgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAkbW9kYWwtZGlhbG9nLXdpZHRoO1xuICAgIC8qIDMgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAvKiA0ICovXG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kO1xuICAgIC8qIDUgKi9cbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIHRyYW5zaXRpb246IDAuM3MgbGluZWFyO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtZGlhbG9nKSkge0BpbmNsdWRlIGhvb2stbW9kYWwtZGlhbG9nKCk7fVxufVxuXG4vKlxuICogT3BlblxuICovXG5cbi51ay1vcGVuID4gLnVrLW1vZGFsLWRpYWxvZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDb250YWluZXIgc2l6ZVxuICogVGFrZSB0aGUgc2FtZSBzaXplIGFzIHRoZSBDb250YWluZXIgY29tcG9uZW50XG4gKi9cblxuLnVrLW1vZGFsLWNvbnRhaW5lciAudWstbW9kYWwtZGlhbG9nIHsgd2lkdGg6ICRtb2RhbC1jb250YWluZXItd2lkdGg7IH1cblxuLypcbiAqIEZ1bGwgc2l6ZVxuICogMS4gUmVtb3ZlIHBhZGRpbmcgYW5kIGJhY2tncm91bmQgZnJvbSBtb2RhbFxuICogMi4gUmVzZXQgYWxsIGRlZmF1bHQgZGVjbGFyYXRpb25zIGZyb20gbW9kYWwgZGlhbG9nXG4gKi9cblxuLyogMSAqL1xuLnVrLW1vZGFsLWZ1bGwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogMiAqL1xuLnVrLW1vZGFsLWZ1bGwgLnVrLW1vZGFsLWRpYWxvZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW1vZGFsLWZ1bGwpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1mdWxsKCk7fVxufVxuXG5cbi8qIFNlY3Rpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1vZGFsLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtYm9keS1wYWRkaW5nLXZlcnRpY2FsICRtb2RhbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtYm9keSkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWJvZHkoKTt9XG59XG5cbi51ay1tb2RhbC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmctdmVydGljYWwgJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWhlYWRlci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbC1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1oZWFkZXIoKTt9XG59XG5cbi51ay1tb2RhbC1mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtZm9vdGVyLXBhZGRpbmctdmVydGljYWwgJG1vZGFsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWZvb3Rlci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbC1mb290ZXIpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1mb290ZXIoKTt9XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1tb2RhbC1ib2R5IHsgcGFkZGluZzogJG1vZGFsLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1zICRtb2RhbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1zOyB9XG4gICAgLnVrLW1vZGFsLWhlYWRlciB7IHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1zICRtb2RhbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLXM7IH1cbiAgICAudWstbW9kYWwtZm9vdGVyIHsgcGFkZGluZzogJG1vZGFsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsLXMgJG1vZGFsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtczsgfVxuXG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstbW9kYWwtYm9keSA+IDpsYXN0LWNoaWxkLFxuLnVrLW1vZGFsLWhlYWRlciA+IDpsYXN0LWNoaWxkLFxuLnVrLW1vZGFsLWZvb3RlciA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFRpdGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1vZGFsLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRtb2RhbC10aXRsZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC10aXRsZSgpO31cbn1cblxuXG4vKiBDbG9zZVxuICogQWRvcHRzIGB1ay1jbG9zZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPVwidWstbW9kYWwtY2xvc2UtXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJG1vZGFsLXotaW5kZXg7XG4gICAgdG9wOiAkbW9kYWwtY2xvc2UtcG9zaXRpb247XG4gICAgcmlnaHQ6ICRtb2RhbC1jbG9zZS1wb3NpdGlvbjtcbiAgICBwYWRkaW5nOiAkbW9kYWwtY2xvc2UtcGFkZGluZztcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1jbG9zZSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSBhZGphY2VudCBlbGVtZW50XG4gKi9cblxuW2NsYXNzKj1cInVrLW1vZGFsLWNsb3NlLVwiXTpmaXJzdC1jaGlsZCArICogeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbltjbGFzcyo9XCJ1ay1tb2RhbC1jbG9zZS1cIl06aG92ZXIge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbC1jbG9zZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWhvdmVyKCk7fVxufVxuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1tb2RhbC1jbG9zZS1kZWZhdWx0IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdCkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWRlZmF1bHQoKTt9XG59XG5cbi51ay1tb2RhbC1jbG9zZS1kZWZhdWx0OmhvdmVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWRlZmF1bHQtaG92ZXIoKTt9XG59XG5cbi8qXG4gKiBPdXRzaWRlXG4gKiAxLiBQcmV2ZW50IHNjcm9sbGJhciBvbiBzbWFsbCBkZXZpY2VzXG4gKi9cblxuLnVrLW1vZGFsLWNsb3NlLW91dHNpZGUge1xuICAgIHRvcDogJG1vZGFsLWNsb3NlLW91dHNpZGUtcG9zaXRpb247XG4gICAgLyogMSAqL1xuICAgIHJpZ2h0OiAoLSRtb2RhbC1jbG9zZS1wYWRkaW5nKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtKCRtb2RhbC1jbG9zZS1vdXRzaWRlLXRyYW5zbGF0ZSkpO1xuICAgIGNvbG9yOiAkbW9kYWwtY2xvc2Utb3V0c2lkZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2Utb3V0c2lkZSkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLW91dHNpZGUoKTt9XG59XG5cbi51ay1tb2RhbC1jbG9zZS1vdXRzaWRlOmhvdmVyIHtcbiAgICBjb2xvcjogJG1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1jbG9zZS1vdXRzaWRlLWhvdmVyKCk7fVxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC8qIDEgKi9cbiAgICAudWstbW9kYWwtY2xvc2Utb3V0c2lkZSB7XG4gICAgICAgIHJpZ2h0OiAkbW9kYWwtY2xvc2Utb3V0c2lkZS1wb3NpdGlvbjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJG1vZGFsLWNsb3NlLW91dHNpZGUtdHJhbnNsYXRlLCAtKCRtb2RhbC1jbG9zZS1vdXRzaWRlLXRyYW5zbGF0ZSkpO1xuICAgIH1cblxufVxuXG4vKlxuICogRnVsbFxuICovXG5cbi51ay1tb2RhbC1jbG9zZS1mdWxsIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZnVsbCkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWZ1bGwoKTt9XG59XG5cbi51ay1tb2RhbC1jbG9zZS1mdWxsOmhvdmVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZnVsbC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWZ1bGwtaG92ZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtbWlzYykpIHtAaW5jbHVkZSBob29rLW1vZGFsLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLW1vZGFsKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtZGlhbG9nKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtZnVsbCgpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWJvZHkoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1mb290ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1kZWZhdWx0KCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlLW91dHNpZGUoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1vdXRzaWRlLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZnVsbCgpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlLWZ1bGwtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBTbGlkZXNob3dcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBzbGlkZXNob3dzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc2xpZGVzaG93YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLXNsaWRlc2hvdy1pdGVtc2Bcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNsaWRlc2hvd1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBQcmV2ZW50IHRhYiBoaWdobGlnaHRpbmcgb24gaU9TLlxuICovXG5cbi51ay1zbGlkZXNob3cge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZXNob3cpKSB7QGluY2x1ZGUgaG9vay1zbGlkZXNob3coKTt9XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGFuZCBzdGFja2luZyBjb250ZXh0XG4gKiAyLiBSZXNldCBsaXN0XG4gKiAzLiBDbGlwIGNoaWxkIGVsZW1lbnRzXG4gKiA0LiBQcmV2ZW50IGRpc3BsYXlpbmcgdGhlIGNhbGxvdXQgaW5mb3JtYXRpb24gb24gaU9TLlxuICogNS4gRGlzYWJsZSBob3Jpem9udGFsIHBhbm5pbmcgZ2VzdHVyZXNcbiAqL1xuXG4udWstc2xpZGVzaG93LWl0ZW1zIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgLyogMiAqL1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogNCAqL1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAvKiA1ICovXG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuXG4vKiBJdGVtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFBvc2l0aW9uIGl0ZW1zIGFib3ZlIGVhY2ggb3RoZXJcbiAqIDIuIFRha2UgdGhlIGZ1bGwgd2lkdGhcbiAqIDMuIENsaXAgY2hpbGQgZWxlbWVudHMsIGUuZy4gZm9yIGB1ay1jb3ZlcmBcbiAqIDQuIE9wdGltaXplIGFuaW1hdGlvblxuICovXG5cbi51ay1zbGlkZXNob3ctaXRlbXMgPiAqIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC8qIDIgKi9cbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogNCAqL1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG59XG5cbi8qXG4gKiBIaWRlIG5vdCBhY3RpdmUgaXRlbXNcbiAqL1xuXG4udWstc2xpZGVzaG93LWl0ZW1zID4gOm5vdCgudWstYWN0aXZlKSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZXNob3ctbWlzYykpIHtAaW5jbHVkZSBob29rLXNsaWRlc2hvdy1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1zbGlkZXNob3coKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZXNob3ctbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU2xpZGVyXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgaG9yaXpvbnRhbCBzbGlkZXJzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc2xpZGVyYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLXNsaWRlci1jb250YWluZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zbGlkZXItaXRlbXNgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU2xpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFByZXZlbnQgdGFiIGhpZ2hsaWdodGluZyBvbiBpT1MuXG4gKi9cblxuLnVrLXNsaWRlciB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNsaWRlcikpIHtAaW5jbHVkZSBob29rLXNsaWRlcigpO31cbn1cblxuXG4vKiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICogMi4gUHJldmVudCBhY2NpZGVudGFsIHNjcm9sbGluZyB0aHJvdWdoIGVsZW1lbnRzIGluIHNsaWRlIGdldHRpbmcgZm9jdXNlZFxuICovXG5cbi51ay1zbGlkZXItY29udGFpbmVyIHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiAyICovXG4gICAgb3ZlcmZsb3c6IGNsaXA7XG59XG5cbi8qXG4gKiBXaWRlbiBjb250YWluZXIgdG8gcHJldmVudCBib3gtc2hhZG93cyBmcm9tIGNsaXBwaW5nLCBgbGFyZ2UtYm94LXNoYWRvd2BcbiAqL1xuXG4udWstc2xpZGVyLWNvbnRhaW5lci1vZmZzZXQge1xuICAgIG1hcmdpbjogJHNsaWRlci1jb250YWluZXItbWFyZ2luLXRvcCAkc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tcmlnaHQgJHNsaWRlci1jb250YWluZXItbWFyZ2luLWJvdHRvbSAkc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tbGVmdDtcbiAgICBwYWRkaW5nOiAoJHNsaWRlci1jb250YWluZXItbWFyZ2luLXRvcCAqIC0xKSAoJHNsaWRlci1jb250YWluZXItbWFyZ2luLXJpZ2h0ICogLTEpICgkc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tYm90dG9tICogLTEpICgkc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tbGVmdCAqIC0xKTtcbn1cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gT3B0aW1pemUgYW5pbWF0aW9uXG4gKiAyLiBDcmVhdGUgYSBjb250YWluaW5nIGJsb2NrLiBJbiBTYWZhcmkgaXQncyBuZWl0aGVyIGNyZWF0ZWQgYnkgYHRyYW5zZm9ybWAgbm9yIGB3aWxsLWNoYW5nZWAuXG4gKiAzLiBEaXNhYmxlIGhvcml6b250YWwgcGFubmluZyBnZXN0dXJlc1xuICovXG5cbi51ay1zbGlkZXItaXRlbXMge1xuICAgIC8qIDEgKi9cbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogMyAqL1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi8qXG4gKiAxLiBSZXNldCBsaXN0IHN0eWxlIHdpdGhvdXQgaW50ZXJmZXJpbmcgd2l0aCBncmlkXG4gKiAyLiBQcmV2ZW50IGRpc3BsYXlpbmcgdGhlIGNhbGxvdXQgaW5mb3JtYXRpb24gb24gaU9TLlxuICovXG5cbi51ay1zbGlkZXItaXRlbXM6bm90KC51ay1ncmlkKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4udWstc2xpZGVyLWl0ZW1zLnVrLWdyaWQgeyBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gTGV0IGl0ZW1zIHRha2UgY29udGVudCBkaW1lbnNpb25zICgwIDAgYXV0bylcbiAqICAgIGBtYXgtd2lkdGhgIG5lZWRlZCB0byBrZWVwIGltYWdlIHJlc3BvbnNpdmVuZXNzIGFuZCBwcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKi9cblxuLnVrLXNsaWRlci1pdGVtcyA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBmbGV4OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZXItbWlzYykpIHtAaW5jbHVkZSBob29rLXNsaWRlci1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1zbGlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZXItbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU3RpY2t5XG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBtYWtlIGVsZW1lbnRzIHN0aWNreSBpbiB0aGUgdmlld3BvcnRcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zdGlja3lgXG4vL1xuLy8gTW9kaWZpZXI6ICAgICAgICBgdWstc3RpY2t5LWZpeGVkYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU3RpY2t5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IHNvIGl0J3MgdCB0aGUgc2FtZSBsaWtlIHdoZW4gZml4ZWQuXG4gKiAyLiBDcmVhdGUgc3RhY2tpbmcgY29udGV4dCBhbHJlYWR5IHdoZW4gbm90IHN0aWNreSB0byBoYXZlIHRoZSBzYW1lIGNvbnRleHRcbiogICAgIGZvciBwb3NpdGlvbiBzZXQgdG8gYHN0aWNreWAgYW5kIGByZWxhdGl2ZWBcbiAqIDIuIE1vcmUgcm9idXN0IGlmIHBhZGRpbmcgYW5kIGJvcmRlciBhcmUgdXNlZCBhbmQgdGhlIHN0aWNreSBoZWlnaHQgaXMgdHJhbnNpdGlvbmVkXG4gKi9cblxuLnVrLXN0aWNreSB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiAyICovXG4gICAgei1pbmRleDogJHN0aWNreS16LWluZGV4O1xuICAgIC8qIDMgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4udWstc3RpY2t5LWZpeGVkIHsgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuLypcbiAqIEZhc3RlciBhbmltYXRpb25zXG4gKi9cblxuLnVrLXN0aWNreVtjbGFzcyo9XCJ1ay1hbmltYXRpb24tXCJdIHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkc3RpY2t5LWFuaW1hdGlvbi1kdXJhdGlvbjsgfVxuXG4udWstc3RpY2t5LnVrLWFuaW1hdGlvbi1yZXZlcnNlIHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkc3RpY2t5LXJldmVyc2UtYW5pbWF0aW9uLWR1cmF0aW9uOyB9XG5cbi8qXG4gKiBQbGFjZWhvbGRlclxuICogTWFrZSBjb250ZW50IGNsaWNrYWJsZSBmb3Igc3RpY2t5IGNvdmVyIGFuZCByZXZlYWwgZWZmZWN0c1xuICovXG5cbi51ay1zdGlja3ktcGxhY2Vob2xkZXIgeyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXN0aWNreS1taXNjKSkge0BpbmNsdWRlIGhvb2stc3RpY2t5LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXN0aWNreS1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBPZmYtY2FudmFzXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgYW4gb2ZmLWNhbnZhcyBzaWRlYmFyXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstb2ZmY2FudmFzYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW9mZmNhbnZhcy1iYXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vZmZjYW52YXMtY29udGFpbmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb2ZmY2FudmFzLXBhZ2VgXG4vL1xuLy8gQWRvcHRlZDogICAgICAgICBgdWstb2ZmY2FudmFzLWNsb3NlYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLW9mZmNhbnZhcy1mbGlwYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb2ZmY2FudmFzLWJhci1hbmltYXRpb25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vZmZjYW52YXMtcmV2ZWFsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb2ZmY2FudmFzLW92ZXJsYXlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vZmZjYW52YXMtY29udGFpbmVyLWFuaW1hdGlvbmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1vcGVuYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE9mZi1jYW52YXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgcG9zaXRpb25cbiAqL1xuXG4udWstb2ZmY2FudmFzIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXotaW5kZXg7XG59XG5cbi8qXG4gKiBGbGlwIG1vZGlmaWVyXG4gKi9cblxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG59XG5cblxuLyogQmFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFNldCBwb3NpdGlvblxuICogMi4gU2l6ZSBhbmQgc3R5bGVcbiAqIDMuIEFsbG93IHNjcm9sbGluZ1xuICovXG5cbi51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAtLXVrLWludmVyc2U6ICN7JG9mZmNhbnZhcy1iYXItY29sb3ItbW9kZX07XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICgtJG9mZmNhbnZhcy1iYXItd2lkdGgpO1xuICAgIC8qIDIgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkb2ZmY2FudmFzLWJhci13aWR0aDtcbiAgICBwYWRkaW5nOiAkb2ZmY2FudmFzLWJhci1wYWRkaW5nLXZlcnRpY2FsICRvZmZjYW52YXMtYmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhci1iYWNrZ3JvdW5kO1xuICAgIC8qIDMgKi9cbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1vZmZjYW52YXMtYmFyKSkge0BpbmNsdWRlIGhvb2stb2ZmY2FudmFzLWJhcigpO31cbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLW9mZmNhbnZhcy1iYXIge1xuICAgICAgICBsZWZ0OiAoLSRvZmZjYW52YXMtYmFyLXdpZHRoLXMpO1xuICAgICAgICB3aWR0aDogJG9mZmNhbnZhcy1iYXItd2lkdGgtcztcbiAgICAgICAgcGFkZGluZzogJG9mZmNhbnZhcy1iYXItcGFkZGluZy12ZXJ0aWNhbC1zICRvZmZjYW52YXMtYmFyLXBhZGRpbmctaG9yaXpvbnRhbC1zO1xuICAgIH1cblxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkb2ZmY2FudmFzLWJhci1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstb2ZmY2FudmFzLWJhciB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRvZmZjYW52YXMtYmFyLWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLW9mZmNhbnZhcy1iYXIgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLyogRmxpcCBtb2RpZmllciAqL1xuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAoLSRvZmZjYW52YXMtYmFyLXdpZHRoKTtcbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzLWJhciB7IHJpZ2h0OiAoLSRvZmZjYW52YXMtYmFyLXdpZHRoLXMpOyB9XG5cbn1cblxuLypcbiAqIE9wZW5cbiAqL1xuXG4udWstb3BlbiA+IC51ay1vZmZjYW52YXMtYmFyIHsgbGVmdDogMDsgfVxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vcGVuID4gLnVrLW9mZmNhbnZhcy1iYXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG59XG5cbi8qXG4gKiBTbGlkZSBBbmltYXRpb24gKFVzZWQgaW4gc2xpZGUgYW5kIHB1c2ggbW9kZSlcbiAqL1xuXG4udWstb2ZmY2FudmFzLWJhci1hbmltYXRpb24geyB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZS1vdXQ7IH1cbi51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzLWJhci1hbmltYXRpb24geyB0cmFuc2l0aW9uLXByb3BlcnR5OiByaWdodDsgfVxuXG4vKlxuICogUmV2ZWFsIEFuaW1hdGlvblxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBDbGlwIHRoZSBiYXJcbiAqIDMuIEFuaW1hdGlvblxuICogNC4gUmVzZXQgcG9zaXRpb25cbiAqL1xuXG4udWstb2ZmY2FudmFzLXJldmVhbCB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogMyAqL1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi51ay1vZmZjYW52YXMtcmV2ZWFsIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAvKiA0ICovXG4gICAgbGVmdDogMDtcbn1cblxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMtcmV2ZWFsIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAvKiA0ICovXG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbn1cblxuLnVrLW9wZW4gPiAudWstb2ZmY2FudmFzLXJldmVhbCB7IHdpZHRoOiAkb2ZmY2FudmFzLWJhci13aWR0aDsgfVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLW9wZW4gPiAudWstb2ZmY2FudmFzLXJldmVhbCB7IHdpZHRoOiAkb2ZmY2FudmFzLWJhci13aWR0aC1zOyB9XG5cbn1cblxuLypcbiAqIEZsaXAgbW9kaWZpZXJcbiAqL1xuXG4udWstb2ZmY2FudmFzLWZsaXAgLnVrLW9mZmNhbnZhcy1yZXZlYWwge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG59XG5cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW9mZmNhbnZhcy1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtei1pbmRleDtcbiAgICB0b3A6ICRvZmZjYW52YXMtY2xvc2UtcG9zaXRpb247XG4gICAgcmlnaHQ6ICRvZmZjYW52YXMtY2xvc2UtcG9zaXRpb247XG4gICAgcGFkZGluZzogJG9mZmNhbnZhcy1jbG9zZS1wYWRkaW5nO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1vZmZjYW52YXMtY2xvc2UpKSB7QGluY2x1ZGUgaG9vay1vZmZjYW52YXMtY2xvc2UoKTt9XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstb2ZmY2FudmFzLWNsb3NlIHtcbiAgICAgICAgdG9wOiAkb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uLXM7XG4gICAgICAgIHJpZ2h0OiAkb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uLXM7XG4gICAgfVxuXG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gYWRqYWNlbnQgZWxlbWVudFxuICovXG5cbi51ay1vZmZjYW52YXMtY2xvc2U6Zmlyc3QtY2hpbGQgKyAqIHsgbWFyZ2luLXRvcDogMDsgfVxuXG5cbi8qIE92ZXJsYXlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogT3ZlcmxheSB0aGUgd2hvbGUgcGFnZS4gTmVlZGVkIGZvciB0aGUgYDo6YmVmb3JlYFxuICogMS4gVXNpbmcgYDEwMHZ3YCBzbyBubyBtb2RpZmljYXRpb24gaXMgbmVlZGVkIHdoZW4gb2ZmLWNhbnZhcyBpcyBmbGlwcGVkXG4gKiAyLiBBbGxvdyBmb3IgY2xvc2luZyB3aXRoIHN3aXBlIGdlc3R1cmUgb24gZGV2aWNlcyB3aXRoIHBvaW50ZXIgZXZlbnRzLlxuICovXG5cbi51ay1vZmZjYW52YXMtb3ZlcmxheSB7XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICAvKiAyICovXG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vKlxuICogMS4gTWFzayB0aGUgd2hvbGUgcGFnZVxuICogMi4gRmFkZS1pbiB0cmFuc2l0aW9uXG4gKi9cblxuLnVrLW9mZmNhbnZhcy1vdmVybGF5OjpiZWZvcmUge1xuICAgIC8qIDEgKi9cbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ7XG4gICAgLyogMiAqL1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW9mZmNhbnZhcy1vdmVybGF5KSkge0BpbmNsdWRlIGhvb2stb2ZmY2FudmFzLW92ZXJsYXkoKTt9XG59XG5cbi51ay1vZmZjYW52YXMtb3ZlcmxheS51ay1vcGVuOjpiZWZvcmUgeyBvcGFjaXR5OiAxOyB9XG5cblxuLyogUHJldmVudCBzY3JvbGxpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmVudCBob3Jpem9udGFsIHNjcm9sbGJhciB3aGVuIHRoZSBjb250ZW50IGlzIHNsaWRlLW91dFxuICogSGFzIHRvIGJlIG9uIHRoZSBgaHRtbGAgZWxlbWVudCB0b28gdG8gbWFrZSBpdCB3b3JrIG9uIHRoZSBgYm9keWBcbiAqIDEuIGBjbGlwYCBpcyBuZWVkZWQgZm9yIGBwb3NpdGlvbjogc3RpY2t5YCBlbGVtZW50cyB0byBrZWVwIHRoZWlyIHBvc2l0aW9uXG4gKi9cblxuLnVrLW9mZmNhbnZhcy1wYWdlLFxuLnVrLW9mZmNhbnZhcy1jb250YWluZXIge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3cteDogY2xpcDtcbn1cblxuXG4vKiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJlcGFyZSBzbGlkZS1vdXQgYW5pbWF0aW9uIChVc2VkIGluIHJldmVhbCBhbmQgcHVzaCBtb2RlKVxuICogVXNpbmcgYHBvc2l0aW9uOiBsZWZ0YCBpbnN0ZWFkIG9mIGB0cmFuc2Zvcm1gIGJlY2F1c2UgcG9zaXRpb24gYGZpeGVkYCBlbGVtZW50cyBsaWtlIHN0aWNreSBuYXZiYXJzXG4gKiBsb3NlIHRoZWlyIGZpeGVkIHN0YXRlIGFuZCBiZWhhdmVzIGxpa2UgYGFic29sdXRlYCB3aXRoaW4gYSB0cmFuc2Zvcm1lZCBjb250YWluZXJcbiAqIDEuIFByb3ZpZGUgYSBmaXhlZCB3aWR0aCBhbmQgcHJldmVudCBzaHJpbmtpbmdcbiAqL1xuXG4udWstb2ZmY2FudmFzLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbGVmdCAwLjNzIGVhc2Utb3V0O1xuICAgIC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4vKlxuICogQWN0aXZhdGUgc2xpZGUtb3V0IGFuaW1hdGlvblxuICovXG5cbjpub3QoLnVrLW9mZmNhbnZhcy1mbGlwKS51ay1vZmZjYW52YXMtY29udGFpbmVyLWFuaW1hdGlvbiB7IGxlZnQ6ICRvZmZjYW52YXMtYmFyLXdpZHRoOyB9XG5cbi51ay1vZmZjYW52YXMtZmxpcC51ay1vZmZjYW52YXMtY29udGFpbmVyLWFuaW1hdGlvbiB7IGxlZnQ6ICgtJG9mZmNhbnZhcy1iYXItd2lkdGgpOyB9XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICA6bm90KC51ay1vZmZjYW52YXMtZmxpcCkudWstb2ZmY2FudmFzLWNvbnRhaW5lci1hbmltYXRpb24geyBsZWZ0OiAkb2ZmY2FudmFzLWJhci13aWR0aC1zOyB9XG5cbiAgICAudWstb2ZmY2FudmFzLWZsaXAudWstb2ZmY2FudmFzLWNvbnRhaW5lci1hbmltYXRpb24geyBsZWZ0OiAoLSRvZmZjYW52YXMtYmFyLXdpZHRoLXMpOyB9XG5cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1vZmZjYW52YXMtbWlzYykpIHtAaW5jbHVkZSBob29rLW9mZmNhbnZhcy1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtYmFyKCl7fVxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLW92ZXJsYXkoKXt9XG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU3dpdGNoZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIG5hdmlnYXRlIHRocm91Z2ggZGlmZmVyZW50IGNvbnRlbnQgcGFuZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zd2l0Y2hlcmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFN3aXRjaGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2V0IGxpc3RcbiAqL1xuXG4udWstc3dpdGNoZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSGlkZSBub3QgYWN0aXZlIGl0ZW1zXG4gKi9cblxuLnVrLXN3aXRjaGVyID4gOm5vdCgudWstYWN0aXZlKSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1zd2l0Y2hlciA+ICogPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1zd2l0Y2hlci1taXNjKSkge0BpbmNsdWRlIGhvb2stc3dpdGNoZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3dpdGNoZXItbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTGVhZGVyXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgZG90IGxlYWRlcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1sZWFkZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBMZWFkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGVhZGVyIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKlxuICogMS4gUGxhY2UgZWxlbWVudCBpbiB0ZXh0IGZsb3dcbiAqIDIuIE5ldmVyIGJyZWFrIGludG8gYSBuZXcgbGluZVxuICogMy4gR2V0IGEgc3RyaW5nIGJhY2sgd2l0aCBhcyBtYW55IHJlcGVhdGluZyBjaGFyYWN0ZXJzIHRvIGZpbGwgdGhlIGNvbnRhaW5lclxuICogNC4gUHJldmVudCB3cmFwcGluZy4gT3ZlcmZsb3dpbmcgY2hhcmFjdGVycyB3aWxsIGJlIGNsaXBwZWQgYnkgdGhlIGNvbnRhaW5lclxuICovXG5cbi51ay1sZWFkZXItZmlsbDo6YWZ0ZXIge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6ICRsZWFkZXItZmlsbC1tYXJnaW4tbGVmdDtcbiAgICAvKiAyICovXG4gICAgd2lkdGg6IDA7XG4gICAgLyogMyAqL1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1maWxsKTtcbiAgICAvKiA0ICovXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGVhZGVyKSkge0BpbmNsdWRlIGhvb2stbGVhZGVyKCk7fVxufVxuXG4vKlxuICogSGlkZSBpZiBtZWRpYSBkb2VzIG5vdCBtYXRjaFxuICovXG5cbi51ay1sZWFkZXItZmlsbC51ay1sZWFkZXItaGlkZTo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8qXG4gKiBQYXNzIGZpbGwgY2hhcmFjdGVyIHRvIEpTXG4gKi9cblxuOnJvb3QgeyAtLXVrLWxlYWRlci1maWxsLWNvbnRlbnQ6ICN7JGxlYWRlci1maWxsLWNvbnRlbnR9OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbGVhZGVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1sZWFkZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbGVhZGVyLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxlYWRlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTm90aWZpY2F0aW9uXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgbm90aWZpY2F0aW9uIG1lc3NhZ2VzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbm90aWZpY2F0aW9uYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW5vdGlmaWNhdGlvbi1tZXNzYWdlYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi1jbG9zZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1ub3RpZmljYXRpb24tdG9wLWNlbnRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi10b3AtcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tYm90dG9tLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tYm90dG9tLWNlbnRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2Vzc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBOb3RpZmljYXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBEaW1lbnNpb25zXG4gKi9cblxuLnVrLW5vdGlmaWNhdGlvbiB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6ICRub3RpZmljYXRpb24tcG9zaXRpb247XG4gICAgbGVmdDogJG5vdGlmaWNhdGlvbi1wb3NpdGlvbjtcbiAgICB6LWluZGV4OiAkbm90aWZpY2F0aW9uLXotaW5kZXg7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6ICRub3RpZmljYXRpb24td2lkdGg7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5vdGlmaWNhdGlvbikpIHtAaW5jbHVkZSBob29rLW5vdGlmaWNhdGlvbigpO31cbn1cblxuXG4vKiBQb3NpdGlvbiBtb2RpZmllcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ub3RpZmljYXRpb24tdG9wLXJpZ2h0LFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6ICRub3RpZmljYXRpb24tcG9zaXRpb247XG59XG5cbi51ay1ub3RpZmljYXRpb24tdG9wLWNlbnRlcixcbi51ay1ub3RpZmljYXRpb24tYm90dG9tLWNlbnRlciB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAoJG5vdGlmaWNhdGlvbi13aWR0aCAqIC0wLjUpO1xufVxuXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1sZWZ0LFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHQsXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1jZW50ZXIge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206ICRub3RpZmljYXRpb24tcG9zaXRpb247XG59XG5cblxuLyogUmVzcG9uc2l2ZW5lc3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFBob25lcyBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzbWFsbC1tYXgpIHtcblxuICAgIC51ay1ub3RpZmljYXRpb24ge1xuICAgICAgICBsZWZ0OiAkbm90aWZpY2F0aW9uLXBvc2l0aW9uO1xuICAgICAgICByaWdodDogJG5vdGlmaWNhdGlvbi1wb3NpdGlvbjtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbn1cblxuXG4vKiBNZXNzYWdlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWxpbmUtaGVpZ2h0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UpKSB7QGluY2x1ZGUgaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZSgpO31cbn1cblxuKiArIC51ay1ub3RpZmljYXRpb24tbWVzc2FnZSB7IG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tbWVzc2FnZS1tYXJnaW4tdG9wOyB9XG5cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5vdGlmaWNhdGlvbi1jbG9zZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkbm90aWZpY2F0aW9uLWNsb3NlLXRvcDtcbiAgICByaWdodDogJG5vdGlmaWNhdGlvbi1jbG9zZS1yaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uLWNsb3NlKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLWNsb3NlKCk7fVxufVxuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2U6aG92ZXIgLnVrLW5vdGlmaWNhdGlvbi1jbG9zZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2UtcHJpbWFyeSB7XG4gICAgY29sb3I6ICRub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UtcHJpbWFyeSgpO31cbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2VzcyB7XG4gICAgY29sb3I6ICRub3RpZmljYXRpb24tbWVzc2FnZS1zdWNjZXNzLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1zdWNjZXNzKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2VzcygpO31cbn1cblxuLypcbiAqIFdhcm5pbmdcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZyB7XG4gICAgY29sb3I6ICRub3RpZmljYXRpb24tbWVzc2FnZS13YXJuaW5nLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS13YXJuaW5nKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZygpO31cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi51ay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIge1xuICAgIGNvbG9yOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtZGFuZ2VyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1ub3RpZmljYXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tY2xvc2UoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2Vzcygpe31cbi8vIEBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmcoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVG9vbHRpcFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHRvb2x0aXBzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdG9vbHRpcGBcbi8vXG4vLyBNb2RpZmllcnMgICAgICAgIGB1ay10b29sdGlwLXRvcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRvb2x0aXAtdG9wLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10b29sdGlwLXRvcC1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRvb2x0aXAtYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG9vbHRpcC1ib3R0b20tbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRvb2x0aXAtYm90dG9tLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG9vbHRpcC1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG9vbHRpcC1yaWdodGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRvb2x0aXBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBQb3NpdGlvblxuICogMy4gUmVtb3ZlIHRvb2x0aXAgZnJvbSBkb2N1bWVudCBmbG93IHRvIGtlZXAgdGhlIFVJa2l0IGNvbnRhaW5lciBmcm9tIGNoYW5naW5nIGl0cyBzaXplIHdoZW4gaW5qZWN0ZWQgaW50byB0aGUgZG9jdW1lbnQgaW5pdGlhbGx5XG4gKiA0LiBEaW1lbnNpb25zXG4gKiA1LiBTdHlsZVxuICovXG5cbi51ay10b29sdGlwIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICR0b29sdGlwLXotaW5kZXg7XG4gICAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6ICN7JHRvb2x0aXAtbWFyZ2lufTtcbiAgICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogMTA7XG4gICAgLyogMyAqL1xuICAgIHRvcDogMDtcbiAgICAvKiA0ICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXZlcnRpY2FsICR0b29sdGlwLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAvKiA1ICovXG4gICAgYmFja2dyb3VuZDogJHRvb2x0aXAtYmFja2dyb3VuZDtcbiAgICBib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzO1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdG9vbHRpcCkpIHtAaW5jbHVkZSBob29rLXRvb2x0aXAoKTt9XG59XG5cbi8qIFNob3cgKi9cbi51ay10b29sdGlwLnVrLWFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdG9vbHRpcC1taXNjKSkge0BpbmNsdWRlIGhvb2stdG9vbHRpcC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay10b29sdGlwKCl7fVxuLy8gQG1peGluIGhvb2stdG9vbHRpcC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBTb3J0YWJsZVxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHNvcnRhYmxlIGdyaWRzIGFuZCBsaXN0c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXNvcnRhYmxlYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLXNvcnRhYmxlLWRyYWdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zb3J0YWJsZS1wbGFjZWhvbGRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNvcnRhYmxlLWhhbmRsZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1zb3J0YWJsZS1lbXB0eWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1kcmFnYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNvcnRhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXNvcnRhYmxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNvcnRhYmxlKSkge0BpbmNsdWRlIGhvb2stc29ydGFibGUoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstc29ydGFibGUgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBEcmFnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXNvcnRhYmxlLWRyYWcge1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6ICRzb3J0YWJsZS1kcmFnZ2VkLXotaW5kZXggIWltcG9ydGFudDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc29ydGFibGUtZHJhZykpIHtAaW5jbHVkZSBob29rLXNvcnRhYmxlLWRyYWcoKTt9XG59XG5cblxuLyogUGxhY2Vob2xkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc29ydGFibGUtcGxhY2Vob2xkZXIge1xuICAgIG9wYWNpdHk6ICRzb3J0YWJsZS1wbGFjZWhvbGRlci1vcGFjaXR5O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zb3J0YWJsZS1wbGFjZWhvbGRlcikpIHtAaW5jbHVkZSBob29rLXNvcnRhYmxlLXBsYWNlaG9sZGVyKCk7fVxufVxuXG5cbi8qIEVtcHR5IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXNvcnRhYmxlLWVtcHR5IHtcbiAgICBtaW4taGVpZ2h0OiAkc29ydGFibGUtZW1wdHktaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zb3J0YWJsZS1lbXB0eSkpIHtAaW5jbHVkZSBob29rLXNvcnRhYmxlLWVtcHR5KCk7fVxufVxuXG5cbi8qIEhhbmRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIEhvdmVyICovXG4udWstc29ydGFibGUtaGFuZGxlOmhvdmVyIHsgY3Vyc29yOiBtb3ZlOyB9XG5cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1zb3J0YWJsZS1taXNjKSkge0BpbmNsdWRlIGhvb2stc29ydGFibGUtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc29ydGFibGUoKXt9XG4vLyBAbWl4aW4gaG9vay1zb3J0YWJsZS1kcmFnKCl7fVxuLy8gQG1peGluIGhvb2stc29ydGFibGUtcGxhY2Vob2xkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zb3J0YWJsZS1lbXB0eSgpe31cbi8vIEBtaXhpbiBob29rLXNvcnRhYmxlLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENvdW50ZG93blxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGNvdW50ZG93biB0aW1lcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jb3VudGRvd25gXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstY291bnRkb3duLW51bWJlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvdW50ZG93bi1zZXBhcmF0b3JgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb3VudGRvd24tbGFiZWxgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNvdW50ZG93bi1udW1iZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7IC8vIDMycHhcbiRjb3VudGRvd24tbnVtYmVyLWZvbnQtc2l6ZS1zOiAgICAgICAgICAgICAgICAgICA0cmVtICFkZWZhdWx0OyAvLyA2NHB4XG4kY291bnRkb3duLW51bWJlci1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDsgLy8gOTZweFxuXG4kY291bnRkb3duLXNlcGFyYXRvci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gMTZweFxuJGNvdW50ZG93bi1zZXBhcmF0b3ItZm9udC1zaXplLXM6ICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7IC8vIDMycHhcbiRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0OyAvLyA0OHB4XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENvdW50ZG93blxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb3VudGRvd24ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb3VudGRvd24pKSB7QGluY2x1ZGUgaG9vay1jb3VudGRvd24oKTt9XG59XG5cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb3VudGRvd24tbnVtYmVyLFxuLnVrLWNvdW50ZG93bi1zZXBhcmF0b3Ige1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb3VudGRvd24taXRlbSkpIHtAaW5jbHVkZSBob29rLWNvdW50ZG93bi1pdGVtKCk7fVxufVxuXG5cbi8qIE51bWJlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLypcbiAqIDEuIE1ha2UgbnVtYmVycyBhbGwgb2YgdGhlIHNhbWUgc2l6ZSB0byBwcmV2ZW50IGp1bXBpbmcuIE11c3QgYmUgc3VwcG9ydGVkIGJ5IHRoZSBmb250LlxuICogMi4gU3R5bGVcbiAqL1xuXG4udWstY291bnRkb3duLW51bWJlciB7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG4gICAgLyogMiAqL1xuICAgIGZvbnQtc2l6ZTogJGNvdW50ZG93bi1udW1iZXItZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkY291bnRkb3duLW51bWJlci1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY291bnRkb3duLW51bWJlcikpIHtAaW5jbHVkZSBob29rLWNvdW50ZG93bi1udW1iZXIoKTt9XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1jb3VudGRvd24tbnVtYmVyIHsgZm9udC1zaXplOiAkY291bnRkb3duLW51bWJlci1mb250LXNpemUtczsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvdW50ZG93bi1udW1iZXIgeyBmb250LXNpemU6ICRjb3VudGRvd24tbnVtYmVyLWZvbnQtc2l6ZS1tOyB9XG5cbn1cblxuXG4vKiBTZXBhcmF0b3JcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY291bnRkb3duLXNlcGFyYXRvciB7XG4gICAgZm9udC1zaXplOiAkY291bnRkb3duLXNlcGFyYXRvci1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRjb3VudGRvd24tc2VwYXJhdG9yLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb3VudGRvd24tc2VwYXJhdG9yKSkge0BpbmNsdWRlIGhvb2stY291bnRkb3duLXNlcGFyYXRvcigpO31cbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNvdW50ZG93bi1zZXBhcmF0b3IgeyBmb250LXNpemU6ICRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZS1zOyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstY291bnRkb3duLXNlcGFyYXRvciB7IGZvbnQtc2l6ZTogJGNvdW50ZG93bi1zZXBhcmF0b3ItZm9udC1zaXplLW07IH1cblxufVxuXG5cbi8qIExhYmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvdW50ZG93bi1sYWJlbCB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvdW50ZG93bi1sYWJlbCkpIHtAaW5jbHVkZSBob29rLWNvdW50ZG93bi1sYWJlbCgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1jb3VudGRvd24tbWlzYykpIHtAaW5jbHVkZSBob29rLWNvdW50ZG93bi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24oKXt9XG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24taXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWNvdW50ZG93bi1udW1iZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24tc2VwYXJhdG9yKCl7fVxuLy8gQG1peGluIGhvb2stY291bnRkb3duLWxhYmVsKCl7fVxuLy8gQG1peGluIGhvb2stY291bnRkb3duLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWNvdW50ZG93bi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tbnVtYmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tc2VwYXJhdG9yKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tbGFiZWwoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFRodW1ibmF2XG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgdGh1bWJuYWlsIG5hdmlnYXRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGh1bWJuYXZgXG4vL1xuLy8gTW9kaWZpZXI6ICAgICAgICBgdWstdGh1bWJuYXYtdmVydGljYWxgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVGh1bWJuYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIFJlc2V0IGxpc3RcbiAqIDMuIEd1dHRlclxuICovXG5cbi51ay10aHVtYm5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIDMgKi9cbiAgICBtYXJnaW4tbGVmdDogKC0kdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWwpO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aHVtYm5hdikpIHtAaW5jbHVkZSBob29rLXRodW1ibmF2KCk7fVxufVxuXG4vKlxuICogU3BhY2UgaXMgYWxsb2NhdGVkIGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9ucywgYnV0IHNocmlua3M6IDAgMSBhdXRvXG4gKiAxLiBHdXR0ZXJcbiAqL1xuXG4udWstdGh1bWJuYXYgPiAqIHtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZy1sZWZ0OiAkdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWw7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSXRlbXNcbiAqL1xuXG4udWstdGh1bWJuYXYgPiAqID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aHVtYm5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2stdGh1bWJuYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay10aHVtYm5hdiA+ICogPiA6aG92ZXIge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aHVtYm5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdGh1bWJuYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstdGh1bWJuYXYgPiAudWstYWN0aXZlID4gKiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRodW1ibmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stdGh1bWJuYXYtaXRlbS1hY3RpdmUoKTt9XG59XG5cblxuLyogTW9kaWZpZXI6ICd1ay10aHVtYm5hdi12ZXJ0aWNhbCdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ2hhbmdlIGRpcmVjdGlvblxuICogMi4gR3V0dGVyXG4gKi9cblxuLnVrLXRodW1ibmF2LXZlcnRpY2FsIHtcbiAgICAvKiAxICovXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogKC0kdGh1bWJuYXYtbWFyZ2luLXZlcnRpY2FsKTtcbn1cblxuLyogMiAqL1xuLnVrLXRodW1ibmF2LXZlcnRpY2FsID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAkdGh1bWJuYXYtbWFyZ2luLXZlcnRpY2FsO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXRodW1ibmF2LW1pc2MpKSB7QGluY2x1ZGUgaG9vay10aHVtYm5hdi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdigpe31cbi8vIEBtaXhpbiBob29rLXRodW1ibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stdGh1bWJuYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWFjdGl2ZSgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgSWNvbm5hdlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGljb24gbmF2aWdhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1pY29ubmF2YFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLWljb25uYXYtdmVydGljYWxgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSWNvbm5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gUmVzZXQgbGlzdFxuICogMy4gR3V0dGVyXG4gKi9cblxuLnVrLWljb25uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLWxlZnQ6ICgtJGljb25uYXYtbWFyZ2luLWhvcml6b250YWwpO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pY29ubmF2KSkge0BpbmNsdWRlIGhvb2staWNvbm5hdigpO31cbn1cblxuLypcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogMS4gR3V0dGVyXG4gKi9cblxuLnVrLWljb25uYXYgPiAqIHtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZy1sZWZ0OiAkaWNvbm5hdi1tYXJnaW4taG9yaXpvbnRhbDtcbn1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBJdGVtcyBtdXN0IHRhcmdldCBgYWAgZWxlbWVudHMgdG8gZXhjbHVkZSBvdGhlciBlbGVtZW50cyAoZS5nLiBkcm9wZG93bnMpXG4gKiAxLiBDZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5IGlmIHRoZXJlIGlzIHN0aWxsIHNvbWUgdGV4dFxuICogMi4gSW1pdGF0ZSB3aGl0ZSBzcGFjZSBnYXAgd2hlbiB1c2luZyBmbGV4Ym94XG4gKiAzLiBGb3JjZSB0ZXh0IG5vdCB0byBhZmZlY3QgaXRlbSBoZWlnaHRcbiAqIDQuIFN0eWxlXG4gKiA1LiBSZXF1aXJlZCBmb3IgYGFgIGlmIHRoZXJlIGlzIHN0aWxsIHNvbWUgdGV4dFxuICovXG5cbi51ay1pY29ubmF2ID4gKiA+IGEge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogMiAqL1xuICAgIGNvbHVtbi1nYXA6IDAuMjVlbTtcbiAgICAvKiAzICovXG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgLyogNCAqL1xuICAgIGNvbG9yOiAkaWNvbm5hdi1pdGVtLWNvbG9yO1xuICAgIC8qIDUgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb25uYXYtaXRlbSkpIHtAaW5jbHVkZSBob29rLWljb25uYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiAkaWNvbm5hdi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pY29ubmF2LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pY29ubmF2LWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLWljb25uYXYgPiAudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRpY29ubmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pY29ubmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staWNvbm5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBNb2RpZmllcjogJ3VrLWljb25uYXYtdmVydGljYWwnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENoYW5nZSBkaXJlY3Rpb25cbiAqIDIuIEd1dHRlclxuICovXG5cbi51ay1pY29ubmF2LXZlcnRpY2FsIHtcbiAgICAvKiAxICovXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogKC0kaWNvbm5hdi1tYXJnaW4tdmVydGljYWwpO1xufVxuXG4vKiAyICovXG4udWstaWNvbm5hdi12ZXJ0aWNhbCA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXRvcDogJGljb25uYXYtbWFyZ2luLXZlcnRpY2FsO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWljb25uYXYtbWlzYykpIHtAaW5jbHVkZSBob29rLWljb25uYXYtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2staWNvbm5hdigpe31cbi8vIEBtaXhpbiBob29rLWljb25uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWljb25uYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWljb25uYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29ubmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29ubmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbS1hY3RpdmUoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEdyaWRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSByZXNwb25zaXZlLCBmbHVpZCBhbmQgbmVzdGFibGUgZ3JpZHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1ncmlkYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWdyaWQtc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLW1lZGl1bWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLWNvbGxhcHNlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tYXRjaGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtc3RhY2tgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLW1hcmdpbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbWFyZ2luLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tYXJnaW4tbWVkaXVtYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tYXJnaW4tbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLW1hcmdpbi1jb2xsYXBzZWBcbi8vXG4vLyBTdWItbW9kaWZpZXI6ICAgIGB1ay1ncmlkLWl0ZW0tbWF0Y2hgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstZmlyc3QtY29sdW1uYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBHcmlkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFsbG93IGNlbGxzIHRvIHdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBSZXNldCBsaXN0XG4gKi9cblxuLnVrLWdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLypcbiAqIEdyaWQgY2VsbFxuICogTm90ZTogU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogUmVzZXQgbWFyZ2luIGZvciBlLmcuIHBhcmFncmFwaHNcbiAqL1xuXG4udWstZ3JpZCA+ICogeyBtYXJnaW46IDA7IH1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1ncmlkID4gKiA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIEd1dHRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQgeyBtYXJnaW4tbGVmdDogKC0kZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCk7IH1cbi51ay1ncmlkID4gKiB7IHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLWhvcml6b250YWw7IH1cblxuLyogVmVydGljYWwgKi9cbi51ay1ncmlkICsgLnVrLWdyaWQsXG4udWstZ3JpZCA+IC51ay1ncmlkLW1hcmdpbixcbiogKyAudWstZ3JpZC1tYXJnaW4geyBtYXJnaW4tdG9wOiAkZ3JpZC1ndXR0ZXItdmVydGljYWw7IH1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC8qIEhvcml6b250YWwgKi9cbiAgICAudWstZ3JpZCB7IG1hcmdpbi1sZWZ0OiAoLSRncmlkLWd1dHRlci1ob3Jpem9udGFsLWwpOyB9XG4gICAgLnVrLWdyaWQgPiAqIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sOyB9XG5cbiAgICAvKiBWZXJ0aWNhbCAqL1xuICAgIC51ay1ncmlkICsgLnVrLWdyaWQsXG4gICAgLnVrLWdyaWQgPiAudWstZ3JpZC1tYXJnaW4sXG4gICAgKiArIC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci12ZXJ0aWNhbC1sOyB9XG5cbn1cblxuLypcbiAqIFNtYWxsXG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQtc21hbGwsXG4udWstZ3JpZC1jb2x1bW4tc21hbGwgeyBtYXJnaW4tbGVmdDogKC0kZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbCk7IH1cbi51ay1ncmlkLXNtYWxsID4gKixcbi51ay1ncmlkLWNvbHVtbi1zbWFsbCA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLXNtYWxsLFxuLnVrLWdyaWQgKyAudWstZ3JpZC1yb3ctc21hbGwsXG4udWstZ3JpZC1zbWFsbCA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXJvdy1zbWFsbCA+IC51ay1ncmlkLW1hcmdpbixcbiogKyAudWstZ3JpZC1tYXJnaW4tc21hbGwgeyBtYXJnaW4tdG9wOiAkZ3JpZC1zbWFsbC1ndXR0ZXItdmVydGljYWw7IH1cblxuLypcbiAqIE1lZGl1bVxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLW1lZGl1bSxcbi51ay1ncmlkLWNvbHVtbi1tZWRpdW0geyBtYXJnaW4tbGVmdDogKC0kZ3JpZC1tZWRpdW0tZ3V0dGVyLWhvcml6b250YWwpOyB9XG4udWstZ3JpZC1tZWRpdW0gPiAqLFxuLnVrLWdyaWQtY29sdW1uLW1lZGl1bSA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQgKyAudWstZ3JpZC1tZWRpdW0sXG4udWstZ3JpZCArIC51ay1ncmlkLXJvdy1tZWRpdW0sXG4udWstZ3JpZC1tZWRpdW0gPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1yb3ctbWVkaXVtID4gLnVrLWdyaWQtbWFyZ2luLFxuKiArIC51ay1ncmlkLW1hcmdpbi1tZWRpdW0geyBtYXJnaW4tdG9wOiAkZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsOyB9XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWxhcmdlLFxuLnVrLWdyaWQtY29sdW1uLWxhcmdlIHsgbWFyZ2luLWxlZnQ6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwpOyB9XG4udWstZ3JpZC1sYXJnZSA+ICosXG4udWstZ3JpZC1jb2x1bW4tbGFyZ2UgPiAqIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQgKyAudWstZ3JpZC1sYXJnZSxcbi51ay1ncmlkICsgLnVrLWdyaWQtcm93LWxhcmdlLFxuLnVrLWdyaWQtbGFyZ2UgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1yb3ctbGFyZ2UgPiAudWstZ3JpZC1tYXJnaW4sXG4qICsgLnVrLWdyaWQtbWFyZ2luLWxhcmdlIHsgbWFyZ2luLXRvcDogJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsOyB9XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAvKiBIb3Jpem9udGFsICovXG4gICAgLnVrLWdyaWQtbGFyZ2UsXG4gICAgLnVrLWdyaWQtY29sdW1uLWxhcmdlIHsgbWFyZ2luLWxlZnQ6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbCk7IH1cbiAgICAudWstZ3JpZC1sYXJnZSA+ICosXG4gICAgLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gKiB7IHBhZGRpbmctbGVmdDogJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbDsgfVxuXG4gICAgLyogVmVydGljYWwgKi9cbiAgICAudWstZ3JpZCArIC51ay1ncmlkLWxhcmdlLFxuICAgIC51ay1ncmlkICsgLnVrLWdyaWQtcm93LWxhcmdlLFxuICAgIC51ay1ncmlkLWxhcmdlID4gLnVrLWdyaWQtbWFyZ2luLFxuICAgIC51ay1ncmlkLXJvdy1sYXJnZSA+IC51ay1ncmlkLW1hcmdpbixcbiAgICAqICsgLnVrLWdyaWQtbWFyZ2luLWxhcmdlIHsgbWFyZ2luLXRvcDogJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsLWw7IH1cblxufVxuXG4vKlxuICogQ29sbGFwc2VcbiAqL1xuXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1jb2xsYXBzZSxcbi51ay1ncmlkLWNvbHVtbi1jb2xsYXBzZSB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4udWstZ3JpZC1jb2xsYXBzZSA+ICosXG4udWstZ3JpZC1jb2x1bW4tY29sbGFwc2UgPiAqIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLWNvbGxhcHNlLFxuLnVrLWdyaWQgKyAudWstZ3JpZC1yb3ctY29sbGFwc2UsXG4udWstZ3JpZC1jb2xsYXBzZSA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXJvdy1jb2xsYXBzZSA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vKiBEaXZpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWdyaWQtZGl2aWRlciA+ICogeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItbGVmdDogJGdyaWQtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJGdyaWQtZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWdyaWQtZGl2aWRlci1ob3Jpem9udGFsKSkge0BpbmNsdWRlIGhvb2stZ3JpZC1kaXZpZGVyLWhvcml6b250YWwoKTt9XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAkZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkZ3JpZC1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZ3JpZC1kaXZpZGVyLXZlcnRpY2FsKSkge0BpbmNsdWRlIGhvb2stZ3JpZC1kaXZpZGVyLXZlcnRpY2FsKCk7fVxufVxuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWRpdmlkZXIgeyBtYXJnaW4tbGVmdDogLSgkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG4udWstZ3JpZC1kaXZpZGVyID4gKiB7IHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7IGxlZnQ6ICRncmlkLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4geyBtYXJnaW4tdG9wOiAoJGdyaWQtZ3V0dGVyLXZlcnRpY2FsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUge1xuICAgIHRvcDogKC0kZ3JpZC1ndXR0ZXItdmVydGljYWwpO1xuICAgIGxlZnQ6ICgkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpO1xufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLyogSG9yaXpvbnRhbCAqL1xuICAgIC51ay1ncmlkLWRpdmlkZXIgeyBtYXJnaW4tbGVmdDogLSgkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sICogMik7IH1cbiAgICAudWstZ3JpZC1kaXZpZGVyID4gKiB7IHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci1ob3Jpem9udGFsLWwgKiAyKTsgfVxuXG4gICAgLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7IGxlZnQ6ICRncmlkLWd1dHRlci1ob3Jpem9udGFsLWw7IH1cblxuICAgIC8qIFZlcnRpY2FsICovXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luIHsgbWFyZ2luLXRvcDogKCRncmlkLWd1dHRlci12ZXJ0aWNhbC1sICogMik7IH1cblxuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAoLSRncmlkLWd1dHRlci12ZXJ0aWNhbC1sKTtcbiAgICAgICAgbGVmdDogKCRncmlkLWd1dHRlci1ob3Jpem9udGFsLWwgKiAyKTtcbiAgICB9XG5cbn1cblxuLypcbiAqIFNtYWxsXG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXNtYWxsLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1zbWFsbCB7IG1hcmdpbi1sZWZ0OiAtKCRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zbWFsbCA+ICosXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLXNtYWxsID4gKiB7IHBhZGRpbmctbGVmdDogKCRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXNtYWxsID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1zbWFsbCA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7IGxlZnQ6ICRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc21hbGwudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctc21hbGwudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICgkZ3JpZC1zbWFsbC1ndXR0ZXItdmVydGljYWwgKiAyKTsgfVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc21hbGwudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICB0b3A6ICgtJGdyaWQtc21hbGwtZ3V0dGVyLXZlcnRpY2FsKTtcbiAgICBsZWZ0OiAoJGdyaWQtc21hbGwtZ3V0dGVyLWhvcml6b250YWwgKiAyKTtcbn1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1zbWFsbC51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyB0b3A6ICgtJGdyaWQtc21hbGwtZ3V0dGVyLXZlcnRpY2FsKTsgfVxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1zbWFsbC51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyBsZWZ0OiAoJGdyaWQtc21hbGwtZ3V0dGVyLWhvcml6b250YWwgKiAyKTsgfVxuXG4vKlxuICogTWVkaXVtXG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLW1lZGl1bSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtIHsgbWFyZ2luLWxlZnQ6IC0oJGdyaWQtbWVkaXVtLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1tZWRpdW0gPiAqLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1tZWRpdW0gPiAqIHsgcGFkZGluZy1sZWZ0OiAoJGdyaWQtbWVkaXVtLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLW1lZGl1bSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHsgbGVmdDogJGdyaWQtbWVkaXVtLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LW1lZGl1bS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luIHsgbWFyZ2luLXRvcDogKCRncmlkLW1lZGl1bS1ndXR0ZXItdmVydGljYWwgKiAyKTsgfVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgdG9wOiAoLSRncmlkLW1lZGl1bS1ndXR0ZXItdmVydGljYWwpO1xuICAgIGxlZnQ6ICgkZ3JpZC1tZWRpdW0tZ3V0dGVyLWhvcml6b250YWwgKiAyKTtcbn1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1tZWRpdW0udWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHsgdG9wOiAoLSRncmlkLW1lZGl1bS1ndXR0ZXItdmVydGljYWwpOyB9XG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLW1lZGl1bS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyBsZWZ0OiAoJGdyaWQtbWVkaXVtLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLypcbiAqIExhcmdlXG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSB7IG1hcmdpbi1sZWZ0OiAtKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSA+ICosXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gKiB7IHBhZGRpbmctbGVmdDogKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7IGxlZnQ6ICRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICgkZ3JpZC1sYXJnZS1ndXR0ZXItdmVydGljYWwgKiAyKTsgfVxuXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICB0b3A6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsKTtcbiAgICBsZWZ0OiAoJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwgKiAyKTtcbn1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1sYXJnZS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyB0b3A6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsKTsgfVxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyBsZWZ0OiAoJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwgKiAyKTsgfVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLyogSG9yaXpvbnRhbCAqL1xuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSxcbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlIHsgbWFyZ2luLWxlZnQ6IC0oJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbCAqIDIpOyB9XG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlID4gKixcbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gKiB7IHBhZGRpbmctbGVmdDogKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWwgKiAyKTsgfVxuXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlLFxuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbGFyZ2UgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUgeyBsZWZ0OiAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbC1sOyB9XG5cbiAgICAvKiBWZXJ0aWNhbCAqL1xuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luLFxuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICgkZ3JpZC1sYXJnZS1ndXR0ZXItdmVydGljYWwtbCAqIDIpOyB9XG5cbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAoLSRncmlkLWxhcmdlLWd1dHRlci12ZXJ0aWNhbC1sKTtcbiAgICAgICAgbGVmdDogKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWwgKiAyKTtcbiAgICB9XG5cbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7IHRvcDogKC0kZ3JpZC1sYXJnZS1ndXR0ZXItdmVydGljYWwtbCk7IH1cbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7IGxlZnQ6ICgkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbC1sICogMik7IH1cblxufVxuXG5cbi8qIE1hdGNoIGNoaWxkIG9mIGEgZ3JpZCBjZWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudFxuICogMS4gV3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIFRha2UgdGhlIGZ1bGwgd2lkdGgsIGF0IGxlYXN0IDEwMCUuIE9ubHkgaWYgbm8gY2xhc3MgZnJvbSB0aGUgV2lkdGggY29tcG9uZW50IGlzIHNldC5cbiAqIDMuIEV4cGFuZCB3aWR0aCBldmVuIGlmIGxhcmdlciB0aGFuIDEwMCUsIGUuZy4gYmVjYXVzZSBvZiBuZWdhdGl2ZSBtYXJnaW4gKE5lZWRlZCBmb3IgbmVzdGVkIGdyaWRzKVxuICovXG5cbi51ay1ncmlkLW1hdGNoID4gKixcbi51ay1ncmlkLWl0ZW0tbWF0Y2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnVrLWdyaWQtbWF0Y2ggPiAqID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuLnVrLWdyaWQtaXRlbS1tYXRjaCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSB7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIGZsZXg6IGF1dG87XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZ3JpZC1taXNjKSkge0BpbmNsdWRlIGhvb2stZ3JpZC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1ncmlkLWRpdmlkZXItaG9yaXpvbnRhbCgpe31cbi8vIEBtaXhpbiBob29rLWdyaWQtZGl2aWRlci12ZXJ0aWNhbCgpe31cbi8vIEBtaXhpbiBob29rLWdyaWQtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1ncmlkLWRpdmlkZXItaG9yaXpvbnRhbCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZ3JpZC1kaXZpZGVyLXZlcnRpY2FsKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBOYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGxpc3QgbmF2aWdhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1uYXZgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstbmF2LXBhcmVudC1pY29uYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LWhlYWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdi1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LXN1YnRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LXN1YmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1uYXYtZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdi1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdi1tZWRpdW1gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYtbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYteGxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LWNlbnRlcmAsXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYtZGl2aWRlcmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYXJlbnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vcGVuYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG91Y2hgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cbiRuYXYtbWVkaXVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAkbmF2LW1lZGl1bS1mb250LXNpemUtbSAqIDAuODI1ICFkZWZhdWx0OyAgICAvLyA0MHB4IDAuNzE0XG4kbmF2LW1lZGl1bS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgICAgJG5hdi1tZWRpdW0tZm9udC1zaXplLWwgKiAwLjg3NSAhZGVmYXVsdDsgICAgLy8gMy41cmVtIC8gNTZweFxuJG5hdi1tZWRpdW0tZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAgICAgIDRyZW0gIWRlZmF1bHQ7IC8vIDY0cHhcblxuJG5hdi1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRuYXYtbGFyZ2UtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0OyAgICAgIC8vIDUwcHggMC43OFxuJG5hdi1sYXJnZS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgICAgIDRyZW0gIWRlZmF1bHQ7IC8vIDY0cHhcbiRuYXYtbGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0OyAvLyA5NnB4XG5cbiRuYXYteGxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICA0cmVtICFkZWZhdWx0OyAvLyA2NHB4XG4kbmF2LXhsYXJnZS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDsgLy8gOTZweFxuJG5hdi14bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAgICAgIDhyZW0gIWRlZmF1bHQ7IC8vIDEyOHB4XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2V0XG4gKi9cblxuLnVrLW5hdixcbi51ay1uYXYgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4qIDEuIENlbnRlciBjb250ZW50IHZlcnRpY2FsbHksIGUuZy4gYW4gaWNvblxuKiAyLiBJbWl0YXRlIHdoaXRlIHNwYWNlIGdhcCB3aGVuIHVzaW5nIGZsZXhib3hcbiogMy4gUmVzZXQgbGlua1xuICovXG5cbi51ay1uYXYgbGkgPiBhIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8qIDIgKi9cbiAgICBjb2x1bW4tZ2FwOiAwLjI1ZW07XG4gICAgLyogMyovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKlxuICogSXRlbXNcbiAqIE11c3QgdGFyZ2V0IGBhYCBlbGVtZW50cyB0byBleGNsdWRlIG90aGVyIGVsZW1lbnRzIChlLmcuIGxpc3RzKVxuICovXG5cbi51ay1uYXYgPiBsaSA+IGEgeyBwYWRkaW5nOiAkbmF2LWl0ZW0tcGFkZGluZy12ZXJ0aWNhbCAkbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOyB9XG5cblxuLyogU3VibGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTGV2ZWwgMlxuICogYHVsYCBuZWVkZWQgZm9yIGhpZ2hlciBzcGVjaWZpY2l0eSB0byBvdmVycmlkZSBwYWRkaW5nXG4gKi9cblxudWwudWstbmF2LXN1YiB7XG4gICAgcGFkZGluZzogJG5hdi1zdWJsaXN0LXBhZGRpbmctdmVydGljYWwgMCAkbmF2LXN1Ymxpc3QtcGFkZGluZy12ZXJ0aWNhbCAkbmF2LXN1Ymxpc3QtcGFkZGluZy1sZWZ0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtc3ViKSkge0BpbmNsdWRlIGhvb2stbmF2LXN1YigpO31cbn1cblxuLypcbiAqIExldmVsIDMgYW5kIGRlZXBlclxuICovXG5cbi51ay1uYXYtc3ViIHVsIHsgcGFkZGluZy1sZWZ0OiAkbmF2LXN1Ymxpc3QtZGVlcGVyLXBhZGRpbmctbGVmdDsgfVxuXG4vKlxuICogSXRlbXNcbiAqL1xuXG4udWstbmF2LXN1YiBhIHsgcGFkZGluZzogJG5hdi1zdWJsaXN0LWl0ZW0tcGFkZGluZy12ZXJ0aWNhbCAwOyB9XG5cblxuLyogUGFyZW50IGljb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2LXBhcmVudC1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbn1cblxuLnVrLW5hdiA+IGxpLnVrLW9wZW4gPiBhIC51ay1uYXYtcGFyZW50LWljb24geyB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuXG5cbi8qIEhlYWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXYtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAkbmF2LWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsICRuYXYtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJG5hdi1oZWFkZXItdGV4dC10cmFuc2Zvcm07XG4gICAgZm9udC1zaXplOiAkbmF2LWhlYWRlci1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtaGVhZGVyKCk7fVxufVxuXG4udWstbmF2LWhlYWRlcjpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi10b3A6ICRuYXYtaGVhZGVyLW1hcmdpbi10b3A7IH1cblxuXG4vKiBEaXZpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdiAudWstbmF2LWRpdmlkZXIge1xuICAgIG1hcmdpbjogJG5hdi1kaXZpZGVyLW1hcmdpbi12ZXJ0aWNhbCAkbmF2LWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LWRpdmlkZXIoKTt9XG59XG5cblxuLyogRGVmYXVsdCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXYtZGVmYXVsdCB7XG4gICAgZm9udC1zaXplOiAkbmF2LWRlZmF1bHQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbmF2LWRlZmF1bHQtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1kZWZhdWx0KSkge0BpbmNsdWRlIGhvb2stbmF2LWRlZmF1bHQoKTt9XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG5cbi51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXYtZGVmYXVsdC1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtZGVmYXVsdC1pdGVtKSkge0BpbmNsdWRlIGhvb2stbmF2LWRlZmF1bHQtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1uYXYtZGVmYXVsdCA+IGxpID4gYTpob3ZlciB7XG4gICAgY29sb3I6ICRuYXYtZGVmYXVsdC1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbmF2LWRlZmF1bHQtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LWRlZmF1bHQgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogJG5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKCk7fVxufVxuXG4vKlxuICogU3VidGl0bGVcbiAqL1xuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAkbmF2LWRlZmF1bHQtc3VidGl0bGUtZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtZGVmYXVsdC1zdWJ0aXRsZSkpIHtAaW5jbHVkZSBob29rLW5hdi1kZWZhdWx0LXN1YnRpdGxlKCk7fVxufVxuXG4vKlxuICogSGVhZGVyXG4gKi9cblxuLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogJG5hdi1kZWZhdWx0LWhlYWRlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWRlZmF1bHQtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LWRlZmF1bHQtaGVhZGVyKCk7fVxufVxuXG4vKlxuICogRGl2aWRlclxuICovXG5cbi51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6ICRuYXYtZGVmYXVsdC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LWRlZmF1bHQtZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1kZWZhdWx0LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtZGVmYXVsdC1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIge1xuICAgIGZvbnQtc2l6ZTogJG5hdi1kZWZhdWx0LXN1Ymxpc3QtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbmF2LWRlZmF1bHQtc3VibGlzdC1saW5lLWhlaWdodDtcbn1cblxuLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGEgeyBjb2xvcjogJG5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1jb2xvcjsgfVxuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3ZlciB7IGNvbG9yOiAkbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOyB9XG5cbi51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRuYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOyB9XG5cblxuLyogUHJpbWFyeSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXYtcHJpbWFyeSB7XG4gICAgZm9udC1zaXplOiAkbmF2LXByaW1hcnktZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbmF2LXByaW1hcnktbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2stbmF2LXByaW1hcnkoKTt9XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG5cbi51ay1uYXYtcHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXYtcHJpbWFyeS1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtcHJpbWFyeS1pdGVtKSkge0BpbmNsdWRlIGhvb2stbmF2LXByaW1hcnktaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1uYXYtcHJpbWFyeSA+IGxpID4gYTpob3ZlciB7XG4gICAgY29sb3I6ICRuYXYtcHJpbWFyeS1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbmF2LXByaW1hcnktaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LXByaW1hcnkgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogJG5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKCk7fVxufVxuXG4vKlxuICogU3VidGl0bGVcbiAqL1xuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAkbmF2LXByaW1hcnktc3VidGl0bGUtZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtcHJpbWFyeS1zdWJ0aXRsZSkpIHtAaW5jbHVkZSBob29rLW5hdi1wcmltYXJ5LXN1YnRpdGxlKCk7fVxufVxuXG4vKlxuICogSGVhZGVyXG4gKi9cblxuLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogJG5hdi1wcmltYXJ5LWhlYWRlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXByaW1hcnktaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LXByaW1hcnktaGVhZGVyKCk7fVxufVxuXG4vKlxuICogRGl2aWRlclxuICovXG5cbi51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6ICRuYXYtcHJpbWFyeS1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXByaW1hcnktZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1wcmltYXJ5LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtcHJpbWFyeS1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIge1xuICAgIGZvbnQtc2l6ZTogJG5hdi1wcmltYXJ5LXN1Ymxpc3QtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbmF2LXByaW1hcnktc3VibGlzdC1saW5lLWhlaWdodDtcbn1cblxuLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGEgeyBjb2xvcjogJG5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1jb2xvcjsgfVxuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpob3ZlciB7IGNvbG9yOiAkbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOyB9XG5cbi51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRuYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOyB9XG5cblxuLyogU2Vjb25kYXJ5IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1zZWNvbmRhcnkge1xuICAgIGZvbnQtc2l6ZTogJG5hdi1zZWNvbmRhcnktZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbmF2LXNlY29uZGFyeS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXNlY29uZGFyeSkpIHtAaW5jbHVkZSBob29rLW5hdi1zZWNvbmRhcnkoKTt9XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG5cbi51ay1uYXYtc2Vjb25kYXJ5ID4gbGkgPiBhIHtcblxuICAgIGNvbG9yOiAkbmF2LXNlY29uZGFyeS1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtc2Vjb25kYXJ5LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1uYXYtc2Vjb25kYXJ5LWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstbmF2LXNlY29uZGFyeSA+IGxpID4gYTpob3ZlciB7XG4gICAgY29sb3I6ICRuYXYtc2Vjb25kYXJ5LWl0ZW0taG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1zZWNvbmRhcnktaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdi1zZWNvbmRhcnktaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LXNlY29uZGFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLW5hdi1zZWNvbmRhcnktaXRlbS1hY3RpdmUoKTt9XG59XG5cbi8qXG4gKiBTdWJ0aXRsZVxuICovXG5cbi51ay1uYXYtc2Vjb25kYXJ5IC51ay1uYXYtc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJG5hdi1zZWNvbmRhcnktc3VidGl0bGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkbmF2LXNlY29uZGFyeS1zdWJ0aXRsZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXNlY29uZGFyeS1zdWJ0aXRsZSkpIHtAaW5jbHVkZSBob29rLW5hdi1zZWNvbmRhcnktc3VidGl0bGUoKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstbmF2LXNlY29uZGFyeSA+IGxpID4gYTpob3ZlciAudWstbmF2LXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJG5hdi1zZWNvbmRhcnktc3VidGl0bGUtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1zZWNvbmRhcnktc3VidGl0bGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWhvdmVyKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXYtc2Vjb25kYXJ5ID4gbGkudWstYWN0aXZlID4gYSAudWstbmF2LXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJG5hdi1zZWNvbmRhcnktc3VidGl0bGUtYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLW5hdi1zZWNvbmRhcnktc3VidGl0bGUtYWN0aXZlKCk7fVxufVxuXG4vKlxuICogSGVhZGVyXG4gKi9cblxuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiAkbmF2LXNlY29uZGFyeS1oZWFkZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1zZWNvbmRhcnktaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LXNlY29uZGFyeS1oZWFkZXIoKTt9XG59XG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cblxuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkbmF2LXNlY29uZGFyeS1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXNlY29uZGFyeS1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXNlY29uZGFyeS1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LXNlY29uZGFyeS1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuXG4udWstbmF2LXNlY29uZGFyeSAudWstbmF2LXN1YiB7XG4gICAgZm9udC1zaXplOiAkbmF2LXNlY29uZGFyeS1zdWJsaXN0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJG5hdi1zZWNvbmRhcnktc3VibGlzdC1saW5lLWhlaWdodDtcbn1cblxuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYSB7IGNvbG9yOiAkbmF2LXNlY29uZGFyeS1zdWJsaXN0LWl0ZW0tY29sb3I7IH1cblxuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgYTpob3ZlciB7IGNvbG9yOiAkbmF2LXNlY29uZGFyeS1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I7IH1cblxuLnVrLW5hdi1zZWNvbmRhcnkgLnVrLW5hdi1zdWIgbGkudWstYWN0aXZlID4gYSB7IGNvbG9yOiAkbmF2LXNlY29uZGFyeS1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOyB9XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBNZWRpdW1cbiAqL1xuXG4udWstbmF2LW1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAkbmF2LW1lZGl1bS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXYtbWVkaXVtLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtbWVkaXVtKSkge0BpbmNsdWRlIGhvb2stbmF2LW1lZGl1bSgpO31cbn1cblxuLnVrLW5hdi1sYXJnZSB7XG4gICAgZm9udC1zaXplOiAkbmF2LWxhcmdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJG5hdi1sYXJnZS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWxhcmdlKSkge0BpbmNsdWRlIGhvb2stbmF2LWxhcmdlKCk7fVxufVxuXG4udWstbmF2LXhsYXJnZSB7XG4gICAgZm9udC1zaXplOiAkbmF2LXhsYXJnZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXYteGxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYteGxhcmdlKSkge0BpbmNsdWRlIGhvb2stbmF2LXhsYXJnZSgpO31cbn1cblxuLyogVGFibGV0IExhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstbmF2LW1lZGl1bSB7IGZvbnQtc2l6ZTogJG5hdi1tZWRpdW0tZm9udC1zaXplLW07IH1cbiAgICAudWstbmF2LWxhcmdlIHsgZm9udC1zaXplOiAkbmF2LWxhcmdlLWZvbnQtc2l6ZS1tOyB9XG4gICAgLnVrLW5hdi14bGFyZ2UgeyBmb250LXNpemU6ICRuYXYteGxhcmdlLWZvbnQtc2l6ZS1tOyB9XG5cbn1cblxuLyogTGFwdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLW5hdi1tZWRpdW0geyBmb250LXNpemU6ICRuYXYtbWVkaXVtLWZvbnQtc2l6ZS1sOyB9XG4gICAgLnVrLW5hdi1sYXJnZSB7IGZvbnQtc2l6ZTogJG5hdi1sYXJnZS1mb250LXNpemUtbDsgfVxuICAgIC51ay1uYXYteGxhcmdlIHsgZm9udC1zaXplOiAkbmF2LXhsYXJnZS1mb250LXNpemUtbDsgfVxuXG59XG5cblxuLyogQWxpZ25tZW50IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENlbnRlciBoZWFkZXJcbiAqIDIuIENlbnRlciBpdGVtc1xuICovXG5cbiAvKiAxICovXG4udWstbmF2LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuIC8qIDIgKi9cbi51ay1uYXYtY2VudGVyIGxpID4gYSB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi8qIFN1Ymxpc3RzICovXG4udWstbmF2LWNlbnRlciAudWstbmF2LXN1Yixcbi51ay1uYXYtY2VudGVyIC51ay1uYXYtc3ViIHVsIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qIFBhcmVudCBpY29uICAqL1xuLnVrLW5hdi1jZW50ZXIgLnVrLW5hdi1wYXJlbnQtaWNvbiB7IG1hcmdpbi1sZWZ0OiAkbmF2LXBhcmVudC1pY29uLW1hcmdpbi1sZWZ0OyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGl2aWRlclxuICogTmFtaW5nIGlzIGluIHBsdXJhbCB0byBwcmV2ZW50IGNvbmZsaWN0cyB3aXRoIGRpdmlkZXIgc3ViIG9iamVjdC5cbiAqL1xuXG4udWstbmF2LnVrLW5hdi1kaXZpZGVyID4gOm5vdCgudWstbmF2LWhlYWRlciwgLnVrLW5hdi1kaXZpZGVyKSArIDpub3QoLnVrLW5hdi1oZWFkZXIsIC51ay1uYXYtZGl2aWRlcikge1xuICAgIG1hcmdpbi10b3A6ICRuYXYtZGl2aWRlcnMtbWFyZ2luLXRvcDtcbiAgICBwYWRkaW5nLXRvcDogJG5hdi1kaXZpZGVycy1tYXJnaW4tdG9wO1xuICAgIGJvcmRlci10b3A6ICRuYXYtZGl2aWRlcnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtZGl2aWRlcnMtYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtZGl2aWRlcnMpKSB7QGluY2x1ZGUgaG9vay1uYXYtZGl2aWRlcnMoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1uYXYtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbmF2LXN1Yigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kZWZhdWx0KCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kZWZhdWx0LXN1YnRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5LXN1YnRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtc2Vjb25kYXJ5LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtc2Vjb25kYXJ5LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtc2Vjb25kYXJ5LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXNlY29uZGFyeS1zdWJ0aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktc3VidGl0bGUtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtc2Vjb25kYXJ5LXN1YnRpdGxlLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1zZWNvbmRhcnktaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXNlY29uZGFyeS1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LW1lZGl1bSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi14bGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtZGl2aWRlcnMoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LWRlZmF1bHQtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1zdWJ0aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1zdWJ0aXRsZS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXNlY29uZGFyeS1zdWJ0aXRsZS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1zZWNvbmRhcnktaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtc2Vjb25kYXJ5LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kaXZpZGVycygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTmF2YmFyXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgaG9yaXpvbnRhbCBuYXZpZ2F0aW9uIGJhcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1uYXZiYXJgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstbmF2YmFyLWNvbnRhaW5lcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLWNlbnRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1jZW50ZXItbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1jZW50ZXItcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItbmF2YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLXBhcmVudC1pY29uYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLWl0ZW1gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItdG9nZ2xlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLXN1YnRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLWRyb3BiYXJgXG4vL1xuLy8gQWRvcHRlZDogICAgICAgICBgdWstbmF2YmFyLWRyb3Bkb3duYCArIE1vZGlmaWVyc1xuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLWRyb3Bkb3duLW5hdmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci10b2dnbGUtaWNvbmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1uYXZiYXItcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci10cmFuc3BhcmVudGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1zdGlja3lgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFyZW50YFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3BlbmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbmF2YmFyLWdhcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHB4ICFkZWZhdWx0OyAvLyBNdXN0IGhhdmUgYSB1bml0IGJlY2F1c2Ugb2YgYGNhbGNgXG5cbiRuYXZiYXItbmF2LWdhcDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwcHggIWRlZmF1bHQ7IC8vIE11c3QgaGF2ZSBhIHVuaXQgYmVjYXVzZSBvZiBgY2FsY2BcblxuXG5cblxuXG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBOYXZiYXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgdG8gY2VudGVyIG5hdmJhciBncm91cFxuICovXG5cbi51ay1uYXZiYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyKCk7fVxufVxuXG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItY29udGFpbmVyOm5vdCgudWstbmF2YmFyLXRyYW5zcGFyZW50KSB7XG4gICAgYmFja2dyb3VuZDogJG5hdmJhci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItY29udGFpbmVyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWNvbnRhaW5lcigpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJG5hdmJhci1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstbmF2YmFyLWNvbnRhaW5lcjpub3QoLnVrLW5hdmJhci10cmFuc3BhcmVudCkgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkbmF2YmFyLWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLW5hdmJhci1jb250YWluZXI6bm90KC51ay1uYXZiYXItdHJhbnNwYXJlbnQpIHsgQGV4dGVuZCAudWstZGFyayAhb3B0aW9uYWw7fSB9XG5cblxuLyogR3JvdXBzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFsaWduIG5hdnMgYW5kIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICovXG5cbi51ay1uYXZiYXItbGVmdCxcbi51ay1uYXZiYXItcmlnaHQsXG5bY2xhc3MqPVwidWstbmF2YmFyLWNlbnRlclwiXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6ICRuYXZiYXItZ2FwO1xuICAgIC8qIDEgKi9cbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKlxuICogSG9yaXpvbnRhbCBhbGlnbm1lbnRcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IGZvciBjZW50ZXJlZCBuYXZiYXIgd2l0aCBzdWIgZ3JvdXBzIChsZWZ0L3JpZ2h0KVxuICogMi4gRml4IHRleHQgd3JhcHBpbmcgaWYgY29udGVudCBpcyBsYXJnZXIgdGhhbiA1MCUgb2YgdGhlIGNvbnRhaW5lci5cbiAqIDMuIE5lZWRlZCBmb3IgZHJvcGRvd25zIGJlY2F1c2UgYSBuZXcgcG9zaXRpb24gY29udGV4dCBpcyBjcmVhdGVkXG4gKiAgICBgei1pbmRleGAgbXVzdCBiZSBzbWFsbGVyIHRoYW4gb2ZmLWNhbnZhc1xuICogNC4gQWxpZ24gc3ViIGdyb3VwcyBmb3IgY2VudGVyZWQgbmF2YmFyXG4gKi9cblxuLnVrLW5hdmJhci1yaWdodCB7IG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi51ay1uYXZiYXItY2VudGVyOm9ubHktY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udWstbmF2YmFyLWNlbnRlcjpub3QoOm9ubHktY2hpbGQpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvKiAzICovXG4gICAgei1pbmRleDogJGdsb2JhbC16LWluZGV4IC0gMTA7XG59XG5cbi8qIDQgKi9cbi51ay1uYXZiYXItY2VudGVyLWxlZnQsXG4udWstbmF2YmFyLWNlbnRlci1yaWdodCB7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICB0b3A6IDA7XG59XG5cbi51ay1uYXZiYXItY2VudGVyLWxlZnQgeyByaWdodDogdW5xdW90ZSgnY2FsYygxMDAlICsgI3skbmF2YmFyLWdhcH0pJyk7IH1cbi51ay1uYXZiYXItY2VudGVyLXJpZ2h0IHsgbGVmdDogdW5xdW90ZSgnY2FsYygxMDAlICsgI3skbmF2YmFyLWdhcH0pJyk7IH1cblxuW2NsYXNzKj1cInVrLW5hdmJhci1jZW50ZXItXCJdIHtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vKiBOYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVzZXQgbGlzdFxuICovXG5cbi51ay1uYXZiYXItbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogJG5hdmJhci1uYXYtZ2FwO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIE9ubHkgbm90IGBhYnNvbHV0ZWAgcG9zaXRpb25lZCBncm91cHNcbiAqL1xuXG4udWstbmF2YmFyLWxlZnQsXG4udWstbmF2YmFyLXJpZ2h0LFxuLnVrLW5hdmJhci1jZW50ZXI6b25seS1jaGlsZCB7IGZsZXgtd3JhcDogd3JhcDsgfVxuXG4vKlxuICogSXRlbXNcbiAqIDEuIENlbnRlciBjb250ZW50IHZlcnRpY2FsbHkgYW5kIGhvcml6b250YWxseVxuICogMi4gSW1pdGF0ZSB3aGl0ZSBzcGFjZSBnYXAgd2hlbiB1c2luZyBmbGV4Ym94XG4gKiAzLiBEaW1lbnNpb25zXG4gKiA0LiBTdHlsZVxuICogNS4gUmVxdWlyZWQgZm9yIGBhYFxuICovXG5cbi51ay1uYXZiYXItbmF2ID4gbGkgPiBhLCAgICAvLyBOYXYgaXRlbVxuLnVrLW5hdmJhci1pdGVtLCAgICAgICAgICAgIC8vIENvbnRlbnQgaXRlbVxuLnVrLW5hdmJhci10b2dnbGUgeyAgICAgICAgIC8vIENsaWNrYWJsZSBpdGVtXG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvKiAyICovXG4gICAgY29sdW1uLWdhcDogMC4yNWVtO1xuICAgIC8qIDMgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1pbi1oZWlnaHQ6ICRuYXZiYXItbmF2LWl0ZW0taGVpZ2h0O1xuICAgIC8qIDQgKi9cbiAgICBmb250LXNpemU6ICRuYXZiYXItbmF2LWl0ZW0tZm9udC1zaXplO1xuICAgIGZvbnQtZmFtaWx5OiAkbmF2YmFyLW5hdi1pdGVtLWZvbnQtZmFtaWx5O1xuICAgIC8qIDUgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBOYXYgaXRlbXNcbiAqL1xuXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgcGFkZGluZzogMCAkbmF2YmFyLW5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBjb2xvcjogJG5hdmJhci1uYXYtaXRlbS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLW5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLW5hdi1pdGVtKCk7fVxufVxuXG4vKlxuICogSG92ZXJcbiAqIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gaWYgZHJvcGRvd24gaXMgb3BlbmVkXG4gKi9cblxuLnVrLW5hdmJhci1uYXYgPiBsaTpob3ZlciA+IGEsXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgY29sb3I6ICRuYXZiYXItbmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1uYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayAqL1xuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlIHtcbiAgICBjb2xvcjogJG5hdmJhci1uYXYtaXRlbS1vbmNsaWNrLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2LWl0ZW0tb25jbGljaykpIHtAaW5jbHVkZSBob29rLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRuYXZiYXItbmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBQYXJlbnQgaWNvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItcGFyZW50LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAkbmF2YmFyLXBhcmVudC1pY29uLW1hcmdpbi1sZWZ0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xufVxuXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAudWstbmF2YmFyLXBhcmVudC1pY29uIHsgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7IH1cblxuXG4vKiBJdGVtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdmJhci1pdGVtIHtcbiAgICBwYWRkaW5nOiAwICRuYXZiYXItaXRlbS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgY29sb3I6ICRuYXZiYXItaXRlbS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItaXRlbSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1uYXZiYXItaXRlbSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFRvZ2dsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItdG9nZ2xlIHtcbiAgICBwYWRkaW5nOiAwICRuYXZiYXItaXRlbS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgY29sb3I6ICRuYXZiYXItdG9nZ2xlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItdG9nZ2xlKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLXRvZ2dsZSgpO31cbn1cblxuLnVrLW5hdmJhci10b2dnbGU6aG92ZXIsXG4udWstbmF2YmFyLXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgY29sb3I6ICRuYXZiYXItdG9nZ2xlLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLXRvZ2dsZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci10b2dnbGUtaG92ZXIoKTt9XG59XG5cbi8qXG4gKiBJY29uXG4gKiBBZG9wdHMgYHVrLWljb25gXG4gKi9cblxuLnVrLW5hdmJhci10b2dnbGUtaWNvbiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci10b2dnbGUtaWNvbikpIHtAaW5jbHVkZSBob29rLW5hdmJhci10b2dnbGUtaWNvbigpO31cbn1cblxuLyogSG92ZXIgKi9cbjpob3ZlciA+IC51ay1uYXZiYXItdG9nZ2xlLWljb24ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItdG9nZ2xlLWljb24taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItdG9nZ2xlLWljb24taG92ZXIoKTt9XG59XG5cblxuLyogU3VidGl0bGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6ICRuYXZiYXItc3VidGl0bGUtZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItc3VidGl0bGUpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItc3VidGl0bGUoKTt9XG59XG5cblxuLyogSnVzdGlmeSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItanVzdGlmeSAudWstbmF2YmFyLWxlZnQsXG4udWstbmF2YmFyLWp1c3RpZnkgLnVrLW5hdmJhci1yaWdodCxcbi51ay1uYXZiYXItanVzdGlmeSAudWstbmF2YmFyLW5hdixcbi51ay1uYXZiYXItanVzdGlmeSAudWstbmF2YmFyLW5hdiA+IGxpLCAgICAgICAgLy8gTmF2IGl0ZW1cbi51ay1uYXZiYXItanVzdGlmeSAudWstbmF2YmFyLWl0ZW0sICAgICAgICAgICAgLy8gQ29udGVudCBpdGVtXG4udWstbmF2YmFyLWp1c3RpZnkgLnVrLW5hdmJhci10b2dnbGUgeyBmbGV4LWdyb3c6IDE7IH1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLXByaW1hcnkge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1wcmltYXJ5KCk7fVxufVxuXG4udWstbmF2YmFyLXRyYW5zcGFyZW50IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLXRyYW5zcGFyZW50KSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLXRyYW5zcGFyZW50KCk7fVxufVxuXG4udWstbmF2YmFyLXN0aWNreSB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1zdGlja3kpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItc3RpY2t5KCk7fVxufVxuXG5cbi8qIERyb3Bkb3duXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstZHJvcGBcbiAqIDEuIFNldCBhIGRlZmF1bHQgd2lkdGhcbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLW5hdmJhci1kcm9wZG93biB7XG4gICAgLS11ay1wb3NpdGlvbi1vZmZzZXQ6ICN7JG5hdmJhci1kcm9wZG93bi1tYXJnaW59O1xuICAgIC0tdWstcG9zaXRpb24tc2hpZnQtb2Zmc2V0OiAjeyRuYXZiYXItZHJvcGRvd24tc2hpZnQtbWFyZ2lufTtcbiAgICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogI3skbmF2YmFyLWRyb3Bkb3duLXZpZXdwb3J0LW1hcmdpbn07XG4gICAgLS11ay1pbnZlcnNlOiAjeyRuYXZiYXItZHJvcGRvd24tY29sb3ItbW9kZX07XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiAkbmF2YmFyLWRyb3Bkb3duLXdpZHRoO1xuICAgIC8qIDIgKi9cbiAgICBwYWRkaW5nOiAkbmF2YmFyLWRyb3Bkb3duLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJG5hdmJhci1kcm9wZG93bi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbmF2YmFyLWRyb3Bkb3duLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItZHJvcGRvd24pKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGRvd24oKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICRuYXZiYXItZHJvcGRvd24tY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLW5hdmJhci1kcm9wZG93biB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRuYXZiYXItZHJvcGRvd24tY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstbmF2YmFyLWRyb3Bkb3duIHsgQGV4dGVuZCAudWstZGFyayAhb3B0aW9uYWw7fSB9XG5cbkBpZiAoJG5hdmJhci1kcm9wZG93bi1jb2xvci1tb2RlICE9ICRpbnZlcnNlLWdsb2JhbC1jb2xvci1tb2RlKSB7XG4udWstbmF2YmFyLWRyb3Bkb3duIDpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lLWNvbG9yOiAkbmF2YmFyLWRyb3Bkb3duLWZvY3VzLW91dGxpbmUgIWltcG9ydGFudDtcbn1cbn1cblxuLypcbiAqIEdyaWRcbiAqIEFkb3B0cyBgdWstZ3JpZGBcbiAqL1xuXG4vKiBHdXR0ZXIgSG9yaXpvbnRhbCAqL1xuLnVrLW5hdmJhci1kcm9wZG93biAudWstZHJvcC1ncmlkIHsgbWFyZ2luLWxlZnQ6ICgtJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci1ob3Jpem9udGFsKTsgfVxuLnVrLW5hdmJhci1kcm9wZG93biAudWstZHJvcC1ncmlkID4gKiB7IHBhZGRpbmctbGVmdDogJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIEd1dHRlciBWZXJ0aWNhbCAqL1xuLnVrLW5hdmJhci1kcm9wZG93biAudWstZHJvcC1ncmlkID4gLnVrLWdyaWQtbWFyZ2luIHsgbWFyZ2luLXRvcDogJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci12ZXJ0aWNhbDsgfVxuXG4vKlxuICogV2lkdGggbW9kaWZpZXJcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTI6bm90KC51ay1kcm9wLXN0YWNrKSB7IHdpZHRoOiAoJG5hdmJhci1kcm9wZG93bi13aWR0aCAqIDIpOyB9XG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTM6bm90KC51ay1kcm9wLXN0YWNrKSB7IHdpZHRoOiAoJG5hdmJhci1kcm9wZG93bi13aWR0aCAqIDMpOyB9XG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTQ6bm90KC51ay1kcm9wLXN0YWNrKSB7IHdpZHRoOiAoJG5hdmJhci1kcm9wZG93bi13aWR0aCAqIDQpOyB9XG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTU6bm90KC51ay1kcm9wLXN0YWNrKSB7IHdpZHRoOiAoJG5hdmJhci1kcm9wZG93bi13aWR0aCAqIDUpOyB9XG5cbi8qXG4gKiBTaXplIG1vZGlmaWVyXG4gKi9cblxuLnVrLW5hdmJhci1kcm9wZG93bi1sYXJnZSB7XG4gICAgLS11ay1wb3NpdGlvbi1zaGlmdC1vZmZzZXQ6ICN7JG5hdmJhci1kcm9wZG93bi1sYXJnZS1zaGlmdC1tYXJnaW59O1xuICAgIHBhZGRpbmc6ICRuYXZiYXItZHJvcGRvd24tbGFyZ2UtcGFkZGluZztcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3Bkb3duLWxhcmdlKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLWxhcmdlKCk7fVxufVxuXG4vKlxuICogRHJvcGJhciBtb2RpZmllclxuICogMS4gUmVzZXQgZHJvcGRvd24gd2lkdGggdG8gcHJldmVudCB0byBlYXJseSBzaGlmdGluZ1xuICogMi4gUmVzZXQgc3R5bGVcbiAqIDMuIFBhZGRpbmdcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIge1xuICAgIC8qIDEgKi9cbiAgICB3aWR0aDogYXV0bztcbiAgICAvKiAyICovXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6ICRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1wYWRkaW5nLXRvcCAwICRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1wYWRkaW5nLWJvdHRvbSAwO1xuICAgIC0tdWstcG9zaXRpb24tb2Zmc2V0OiAjeyRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1tYXJnaW59O1xuICAgIC0tdWstcG9zaXRpb24tc2hpZnQtb2Zmc2V0OiAjeyRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1zaGlmdC1tYXJnaW59O1xuICAgIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiAjeyRuYXZiYXItZHJvcGRvd24tZHJvcGJhci12aWV3cG9ydC1tYXJnaW59O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItZHJvcGRvd24tZHJvcGJhcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1kcm9wZG93bi1kcm9wYmFyKCk7fVxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIgeyAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogI3skbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItdmlld3BvcnQtbWFyZ2luLXN9OyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIgeyAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogI3skbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItdmlld3BvcnQtbWFyZ2luLW19OyB9XG5cbn1cblxuLnVrLW5hdmJhci1kcm9wZG93bi1kcm9wYmFyLWxhcmdlIHtcbiAgICAtLXVrLXBvc2l0aW9uLXNoaWZ0LW9mZnNldDogI3skbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2Utc2hpZnQtbWFyZ2lufTtcbiAgICBwYWRkaW5nLXRvcDogJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLWxhcmdlLXBhZGRpbmctdG9wO1xuICAgIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2UtcGFkZGluZy1ib3R0b207XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1kcm9wYmFyLWxhcmdlKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2UoKTt9XG59XG5cblxuLyogRHJvcGRvd24gTmF2XG4gKiBBZG9wdHMgYHVrLW5hdmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGRvd24tbmF2KCk7fVxufVxuXG4vKlxuICogSXRlbXNcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1uYXZiYXItZHJvcGRvd24tbmF2ID4gbGkgPiBhOmhvdmVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWhvdmVyKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXZiYXItZHJvcGRvd24tbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIFN1YnRpdGxlXG4gKi9cblxuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgLnVrLW5hdi1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAkbmF2YmFyLWRyb3Bkb3duLW5hdi1zdWJ0aXRsZS1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYtc3VidGl0bGUpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LXN1YnRpdGxlKCk7fVxufVxuXG4vKlxuICogSGVhZGVyXG4gKi9cblxuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgLnVrLW5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXIoKTt9XG59XG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cblxuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBhIHsgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjsgfVxuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBhOmhvdmVyIHsgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjsgfVxuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I7IH1cblxuXG4vKiBEcm9wYmFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstZHJvcG5hdi1kcm9wYmFyYFxuICovXG5cbi51ay1uYXZiYXItZHJvcGJhciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wYmFyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3BiYXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbmF2YmFyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWNvbnRhaW5lcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci10b2dnbGUtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlLWljb24oKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlLWljb24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItc3VidGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci10cmFuc3BhcmVudCgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1zdGlja3koKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24oKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tZHJvcGJhcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1kcm9wYmFyLWxhcmdlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LXN1YnRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGJhcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tb25jbGljaygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXIoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFN1Ym5hdlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgc3ViIG5hdmlnYXRpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zdWJuYXZgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstc3VibmF2LWRpdmlkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zdWJuYXYtcGlsbGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1maXJzdC1jb2x1bW5gXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFN1Ym5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gQ2VudGVyIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICogMy4gR3V0dGVyXG4gKiA0LiBSZXNldCBsaXN0XG4gKi9cblxuLnVrLXN1Ym5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDIgKi9cbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8qIDMgKi9cbiAgICBtYXJnaW4tbGVmdDogKC0kc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgICAvKiA0ICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYpKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYoKTt9XG59XG5cbi8qXG4gKiAxLiBTcGFjZSBpcyBhbGxvY2F0ZWQgc29sZWx5IGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9uczogMCAwIGF1dG9cbiAqIDIuIEd1dHRlclxuICogMy4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG5cbi51ay1zdWJuYXYgPiAqIHtcbiAgICAvKiAxICovXG4gICAgZmxleDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZy1sZWZ0OiAkc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsO1xuICAgIC8qIDMgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSXRlbXMgbXVzdCB0YXJnZXQgYGFgIGVsZW1lbnRzIHRvIGV4Y2x1ZGUgb3RoZXIgZWxlbWVudHMgKGUuZy4gZHJvcGRvd25zKVxuICogVXNpbmcgYDpmaXJzdC1jaGlsZGAgaW5zdGVhZCBvZiBgYWAgdG8gc3VwcG9ydCBgc3BhbmAgZWxlbWVudHMgZm9yIHRleHRcbiAqIDEuIENlbnRlciBjb250ZW50IHZlcnRpY2FsbHksIGUuZy4gYW4gaWNvblxuICogMi4gSW1pdGF0ZSB3aGl0ZSBzcGFjZSBnYXAgd2hlbiB1c2luZyBmbGV4Ym94XG4gKiAzLiBTdHlsZVxuICovXG5cbi51ay1zdWJuYXYgPiAqID4gOmZpcnN0LWNoaWxkIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8qIDIgKi9cbiAgICBjb2x1bW4tZ2FwOiAwLjI1ZW07XG4gICAgLyogMyAqL1xuICAgIGNvbG9yOiAkc3VibmF2LWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2stc3VibmF2LWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstc3VibmF2ID4gKiA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiAkc3VibmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkc3VibmF2LWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1pdGVtLWhvdmVyKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRzdWJuYXYtaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBEaXZpZGVyIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFNldCBndXR0ZXJcbiAqL1xuXG4udWstc3VibmF2LWRpdmlkZXIgeyBtYXJnaW4tbGVmdDogLSgoJHN1Ym5hdi1kaXZpZGVyLW1hcmdpbi1ob3Jpem9udGFsICogMikgKyAkc3VibmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoKTsgfVxuXG4vKlxuICogQWxpZ24gaXRlbXMgYW5kIGRpdmlkZXIgdmVydGljYWxseVxuICovXG5cbi51ay1zdWJuYXYtZGl2aWRlciA+ICoge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLypcbiAqIERpdmlkZXJcbiAqIDEuIGBudGgtY2hpbGRgIG1ha2VzIGl0IGFsc28gd29yayB3aXRob3V0IEpTIGlmIGl0J3Mgb25seSBvbmUgcm93XG4gKi9cblxuLnVrLXN1Ym5hdi1kaXZpZGVyID4gOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAkc3VibmF2LWRpdmlkZXItYm9yZGVyLWhlaWdodDtcbiAgICBtYXJnaW4tbGVmdDogKCRzdWJuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbCAtICRzdWJuYXYtbWFyZ2luLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogJHN1Ym5hdi1kaXZpZGVyLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgIGJvcmRlci1sZWZ0OiAkc3VibmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vKiAxICovXG4udWstc3VibmF2LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkc3VibmF2LWRpdmlkZXItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYtZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1kaXZpZGVyKCk7fVxufVxuXG5cbi8qIFBpbGwgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogR3V0dGVyXG4gKi9cblxuLnVrLXN1Ym5hdi1waWxsIHsgbWFyZ2luLWxlZnQ6ICgtJHN1Ym5hdi1waWxsLW1hcmdpbi1ob3Jpem9udGFsKTsgfVxuLnVrLXN1Ym5hdi1waWxsID4gKiB7IHBhZGRpbmctbGVmdDogJHN1Ym5hdi1waWxsLW1hcmdpbi1ob3Jpem9udGFsOyB9XG5cbi51ay1zdWJuYXYtcGlsbCA+ICogPiA6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6ICRzdWJuYXYtcGlsbC1pdGVtLXBhZGRpbmctdmVydGljYWwgJHN1Ym5hdi1waWxsLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGJhY2tncm91bmQ6ICRzdWJuYXYtcGlsbC1pdGVtLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRzdWJuYXYtcGlsbC1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYtcGlsbC1pdGVtKSkge0BpbmNsdWRlIGhvb2stc3VibmF2LXBpbGwtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2LXBpbGwtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1Ym5hdi1waWxsLWl0ZW0tb25jbGljay1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2spKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLXN1Ym5hdi1waWxsID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUoKTt9XG59XG5cblxuLyogRGlzYWJsZWRcbiAqIFRoZSBzYW1lIGZvciBhbGwgc3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXN1Ym5hdiA+IC51ay1kaXNhYmxlZCA+IGEge1xuICAgIGNvbG9yOiAkc3VibmF2LWl0ZW0tZGlzYWJsZWQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1pdGVtLWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2stc3VibmF2LWl0ZW0tZGlzYWJsZWQoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3VibmF2KCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZCgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQnJlYWRjcnVtYlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgYnJlYWRjcnVtYiBuYXZpZ2F0aW9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYnJlYWRjcnVtYmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1kaXNhYmxlZGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQnJlYWRjcnVtYlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZXNldCBsaXN0XG4gKiAyLiBSZW1vdmUgc3BhY2UgYmV0d2VlbiBlbGVtZW50c1xuICovXG5cbi51ay1icmVhZGNydW1iIHtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBmb250LXNpemU6IDA7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWIpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iKCk7fVxufVxuXG4vKlxuICogMS4gRG9lc24ndCBnZW5lcmF0ZSBhbnkgYm94IGFuZCByZXBsYWNlZCBieSBjaGlsZCBib3hlc1xuICovXG5cbi51ay1icmVhZGNydW1iID4gKiB7IGRpc3BsYXk6IGNvbnRlbnRzOyB9XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYnJlYWRjcnVtYiA+ICogPiAqIHtcbiAgICBmb250LXNpemU6ICRicmVhZGNydW1iLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstYnJlYWRjcnVtYiA+ICogPiA6aG92ZXIge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGJyZWFkY3J1bWItaXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb247XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItaXRlbS1ob3ZlcigpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1icmVhZGNydW1iID4gLnVrLWRpc2FibGVkID4gKiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstYnJlYWRjcnVtYiA+IDpsYXN0LWNoaWxkID4gc3Bhbixcbi51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiBhOm5vdChbaHJlZl0pIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWl0ZW0tYWN0aXZlKCk7fVxufVxuXG4vKlxuICogRGl2aWRlclxuICogYG50aC1jaGlsZGAgbWFrZXMgaXQgYWxzbyB3b3JrIHdpdGhvdXQgSlMgaWYgaXQncyBvbmx5IG9uZSByb3dcbiAqIDEuIFJlbW92ZSBzcGFjZSBiZXR3ZWVuIGlubGluZSBibG9jayBlbGVtZW50cy5cbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLWJyZWFkY3J1bWIgPiA6bnRoLWNoaWxkKG4rMik6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRicmVhZGNydW1iLWRpdmlkZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWItZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAvKiAyICovXG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnJlYWRjcnVtYi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stYnJlYWRjcnVtYi1kaXZpZGVyKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItbWlzYykpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYigpe31cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1kaXZpZGVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBQYWdpbmF0aW9uXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgYSBwYWdlIG5hdmlnYXRpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1wYWdpbmF0aW9uYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLXBhZ2luYXRpb24tbmV4dGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhZ2luYXRpb24tcHJldmlvdXNgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZGlzYWJsZWRgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFBhZ2luYXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIENlbnRlciBpdGVtcyB2ZXJ0aWNhbGx5IGlmIHRoZXkgaGF2ZSBhIGRpZmZlcmVudCBoZWlnaHRcbiAqIDMuIEd1dHRlclxuICogNC4gUmVzZXQgbGlzdFxuICovXG5cbi51ay1wYWdpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8qIDEgKi9cbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLyogMiAqL1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogMyAqL1xuICAgIG1hcmdpbi1sZWZ0OiAoLSRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgICAvKiA0ICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wYWdpbmF0aW9uKSkge0BpbmNsdWRlIGhvb2stcGFnaW5hdGlvbigpO31cbn1cblxuLypcbiAqIDEuIFNwYWNlIGlzIGFsbG9jYXRlZCBzb2xlbHkgYmFzZWQgb24gY29udGVudCBkaW1lbnNpb25zOiAwIDAgYXV0b1xuICogMi4gR3V0dGVyXG4gKiAzLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3IgZHJvcGRvd25zXG4gKi9cblxuLnVrLXBhZ2luYXRpb24gPiAqIHtcbiAgICAvKiAxICovXG4gICAgZmxleDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZy1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAvKiAzICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENlbnRlciBjb250ZW50IHZlcnRpY2FsbHksIGUuZy4gYW4gaWNvblxuICogMi4gSW1pdGF0ZSB3aGl0ZSBzcGFjZSBnYXAgd2hlbiB1c2luZyBmbGV4Ym94XG4gKiAzLiBTdHlsZVxuICovXG5cbi51ay1wYWdpbmF0aW9uID4gKiA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogMiAqL1xuICAgIGNvbHVtbi1nYXA6IDAuMjVlbTtcbiAgICAvKiAzICovXG4gICAgcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLXZlcnRpY2FsICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wYWdpbmF0aW9uLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICovXG4udWstcGFnaW5hdGlvbiA+ICogPiA6aG92ZXIge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJHBhZ2luYXRpb24taXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb247XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24taXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24taXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKCk7fVxufVxuXG4vKiBEaXNhYmxlZCAqL1xuLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiAqIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2stcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24tbWlzYykpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbigpe31cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24taXRlbSgpe31cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24taXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24taXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVGFiXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgYSB0YWJiZWQgbmF2aWdhdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRhYmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay10YWItYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFiLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWItcmlnaHRgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZGlzYWJsZWRgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRhYlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gR3V0dGVyXG4gKiAzLiBSZXNldCBsaXN0XG4gKi9cblxuLnVrLXRhYiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW4tbGVmdDogKC0kdGFiLW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgICAvKiAzICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWIpKSB7QGluY2x1ZGUgaG9vay10YWIoKTt9XG59XG5cbi8qXG4gKiAxLiBTcGFjZSBpcyBhbGxvY2F0ZWQgc29sZWx5IGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9uczogMCAwIGF1dG9cbiAqIDIuIEd1dHRlclxuICogMy4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG5cbi51ay10YWIgPiAqIHtcbiAgICAvKiAxICovXG4gICAgZmxleDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZy1sZWZ0OiAkdGFiLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgIC8qIDMgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSXRlbXMgbXVzdCB0YXJnZXQgYGFgIGVsZW1lbnRzIHRvIGV4Y2x1ZGUgb3RoZXIgZWxlbWVudHMgKGUuZy4gZHJvcGRvd25zKVxuICogMS4gQ2VudGVyIGNvbnRlbnQgdmVydGljYWxseSwgZS5nLiBhbiBpY29uXG4gKiAyLiBJbWl0YXRlIHdoaXRlIHNwYWNlIGdhcCB3aGVuIHVzaW5nIGZsZXhib3hcbiAqIDMuIENlbnRlciBjb250ZW50IGlmIGEgd2lkdGggaXMgc2V0XG4gKiA0LiBTdHlsZVxuICovXG5cbi51ay10YWIgPiAqID4gYSB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvKiAyICovXG4gICAgY29sdW1uLWdhcDogMC4yNWVtO1xuICAgIC8qIDMgKi9cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAvKiA0ICovXG4gICAgcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmctdmVydGljYWwgJHRhYi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBjb2xvcjogJHRhYi1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItaXRlbSkpIHtAaW5jbHVkZSBob29rLXRhYi1pdGVtKCk7fVxufVxuXG4vKiBIb3ZlciAqL1xuLnVrLXRhYiA+ICogPiBhOmhvdmVyIHtcbiAgICBjb2xvcjogJHRhYi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJHRhYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstdGFiID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkdGFiLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbS1hY3RpdmUoKTt9XG59XG5cbi8qIERpc2FibGVkICovXG4udWstdGFiID4gLnVrLWRpc2FibGVkID4gYSB7XG4gICAgY29sb3I6ICR0YWItaXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbS1kaXNhYmxlZCgpO31cbn1cblxuXG4vKiBQb3NpdGlvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBCb3R0b21cbiAqL1xuXG4udWstdGFiLWJvdHRvbSB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYi1ib3R0b20pKSB7QGluY2x1ZGUgaG9vay10YWItYm90dG9tKCk7fVxufVxuXG4udWstdGFiLWJvdHRvbSA+ICogPiBhIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWJvdHRvbS1pdGVtKSkge0BpbmNsdWRlIGhvb2stdGFiLWJvdHRvbS1pdGVtKCk7fVxufVxuXG4vKlxuICogTGVmdCArIFJpZ2h0XG4gKiAxLiBSZXNldCBHdXR0ZXJcbiAqL1xuXG4udWstdGFiLWxlZnQsXG4udWstdGFiLXJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogMSAqL1xuLnVrLXRhYi1sZWZ0ID4gKixcbi51ay10YWItcmlnaHQgPiAqIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi51ay10YWItbGVmdCB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYi1sZWZ0KSkge0BpbmNsdWRlIGhvb2stdGFiLWxlZnQoKTt9XG59XG5cbi51ay10YWItcmlnaHQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItcmlnaHQpKSB7QGluY2x1ZGUgaG9vay10YWItcmlnaHQoKTt9XG59XG5cbi51ay10YWItbGVmdCA+ICogPiBhIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYi1sZWZ0LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay10YWItbGVmdC1pdGVtKCk7fVxufVxuXG4udWstdGFiLXJpZ2h0ID4gKiA+IGEge1xuICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLXJpZ2h0LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay10YWItcmlnaHQtaXRlbSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay10YWItbWlzYykpIHtAaW5jbHVkZSBob29rLXRhYi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay10YWIoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLXRhYi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLWl0ZW0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItYm90dG9tKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLWJvdHRvbS1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLWxlZnQoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItbGVmdC1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLXJpZ2h0KCl7fVxuLy8gQG1peGluIGhvb2stdGFiLXJpZ2h0LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay10YWItbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGFiLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1kaXNhYmxlZCgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU2xpZGVuYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBwcmV2aW91cy9uZXh0IGljb24gbmF2aWdhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zbGlkZW5hdmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1zbGlkZW5hdi1jb250YWluZXJgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstc2xpZGVuYXYtcHJldmlvdXNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zbGlkZW5hdi1uZXh0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2xpZGVuYXYtbGFyZ2VgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU2xpZGVuYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRvcHRzIGB1ay1pY29uYFxuICovXG5cbi51ay1zbGlkZW5hdiB7XG4gICAgcGFkZGluZzogJHNsaWRlbmF2LXBhZGRpbmctdmVydGljYWwgJHNsaWRlbmF2LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBjb2xvcjogJHNsaWRlbmF2LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdikpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2KCk7fVxufVxuXG4vKiBIb3ZlciAqL1xuLnVrLXNsaWRlbmF2OmhvdmVyIHtcbiAgICBjb2xvcjogJHNsaWRlbmF2LWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdi1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LWhvdmVyKCk7fVxufVxuXG4vKiBPbkNsaWNrICovXG4udWstc2xpZGVuYXY6YWN0aXZlIHtcbiAgICBjb2xvcjogJHNsaWRlbmF2LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stc2xpZGVuYXYtYWN0aXZlKCk7fVxufVxuXG5cbi8qIEljb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmlvdXNcbiAqL1xuXG4udWstc2xpZGVuYXYtcHJldmlvdXMge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdi1wcmV2aW91cykpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LXByZXZpb3VzKCk7fVxufVxuXG4vKlxuICogTmV4dFxuICovXG5cbi51ay1zbGlkZW5hdi1uZXh0IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtbmV4dCkpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LW5leHQoKTt9XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zbGlkZW5hdi1sYXJnZSB7XG4gICAgcGFkZGluZzogJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctdmVydGljYWwgJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1zbGlkZW5hdi1sYXJnZSgpO31cbn1cblxuXG4vKiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc2xpZGVuYXYtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdi1jb250YWluZXIpKSB7QGluY2x1ZGUgaG9vay1zbGlkZW5hdi1jb250YWluZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtbWlzYykpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2KCl7fVxuLy8gQG1peGluIGhvb2stc2xpZGVuYXYtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1wcmV2aW91cygpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LW5leHQoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LWNvbnRhaW5lcigpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2xpZGVuYXYoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNsaWRlbmF2LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zbGlkZW5hdi1hY3RpdmUoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERvdG5hdlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGRvdCBuYXZpZ2F0aW9uc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWRvdG5hdmBcbi8vXG4vLyBNb2RpZmllcjogICAgICAgIGB1ay1kb3RuYXYtdmVydGljYWxgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERvdG5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gUmVzZXQgbGlzdFxuICogMy4gR3V0dGVyXG4gKi9cblxuLnVrLWRvdG5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIDMgKi9cbiAgICBtYXJnaW4tbGVmdDogKC0kZG90bmF2LW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZG90bmF2KSkge0BpbmNsdWRlIGhvb2stZG90bmF2KCk7fVxufVxuXG4vKlxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnM6IDAgMCBhdXRvXG4gKiAyLiBHdXR0ZXJcbiAqL1xuXG4udWstZG90bmF2ID4gKiB7XG4gICAgLyogMSAqL1xuICAgIGZsZXg6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmctbGVmdDogJGRvdG5hdi1tYXJnaW4taG9yaXpvbnRhbDtcbn1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBJdGVtc1xuICogMS4gSGlkZSB0ZXh0IGlmIHByZXNlbnRcbiAqL1xuXG4udWstZG90bmF2ID4gKiA+ICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6ICRkb3RuYXYtaXRlbS13aWR0aDtcbiAgICBoZWlnaHQ6ICRkb3RuYXYtaXRlbS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGRvdG5hdi1pdGVtLWJvcmRlci1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJGRvdG5hdi1pdGVtLWJhY2tncm91bmQ7XG4gICAgLyogMSAqL1xuICAgIHRleHQtaW5kZW50OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZG90bmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1kb3RuYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKi9cbi51ay1kb3RuYXYgPiAqID4gOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZG90bmF2LWl0ZW0taG92ZXItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZG90bmF2LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1kb3RuYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayAqL1xuLnVrLWRvdG5hdiA+ICogPiA6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZG90bmF2LWl0ZW0tb25jbGljay1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kb3RuYXYtaXRlbS1vbmNsaWNrKSkge0BpbmNsdWRlIGhvb2stZG90bmF2LWl0ZW0tb25jbGljaygpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstZG90bmF2ID4gLnVrLWFjdGl2ZSA+ICoge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkb3RuYXYtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZG90bmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stZG90bmF2LWl0ZW0tYWN0aXZlKCk7fVxufVxuXG5cbi8qIE1vZGlmaWVyOiAndWstZG90bmF2LXZlcnRpY2FsJ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDaGFuZ2UgZGlyZWN0aW9uXG4gKiAyLiBHdXR0ZXJcbiAqL1xuXG4udWstZG90bmF2LXZlcnRpY2FsIHtcbiAgICAvKiAxICovXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogKC0kZG90bmF2LW1hcmdpbi12ZXJ0aWNhbCk7XG59XG5cbi8qIDIgKi9cbi51ay1kb3RuYXYtdmVydGljYWwgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy10b3A6ICRkb3RuYXYtbWFyZ2luLXZlcnRpY2FsO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWRvdG5hdi1taXNjKSkge0BpbmNsdWRlIGhvb2stZG90bmF2LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWRvdG5hdigpe31cbi8vIEBtaXhpbiBob29rLWRvdG5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stZG90bmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1kb3RuYXYtaXRlbS1vbmNsaWNrKCl7fVxuLy8gQG1peGluIGhvb2stZG90bmF2LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stZG90bmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZG90bmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1vbmNsaWNrKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1hY3RpdmUoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERyb3Bkb3duXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgYSBkcm9wZG93biBiYXNlZCBvbiBEcm9wIGNvbXBvbmVudFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWRyb3Bkb3duYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLWRyb3Bkb3duLW5hdmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1kcm9wZG93bi1sYXJnZWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERyb3Bkb3duXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstZHJvcGBcbiAqIDEuIFJlc2V0IGRyb3AgYW5kIGxldCB0ZXh0IGV4cGFuZCB0aGUgd2lkdGggaW5zdGVhZCBvZiB3cmFwcGluZ1xuICogMi4gU2V0IGEgZGVmYXVsdCB3aWR0aFxuICogMy4gU3R5bGVcbiAqL1xuXG4udWstZHJvcGRvd24ge1xuICAgIC0tdWstcG9zaXRpb24tb2Zmc2V0OiAjeyRkcm9wZG93bi1tYXJnaW59O1xuICAgIC0tdWstcG9zaXRpb24tdmlld3BvcnQtb2Zmc2V0OiAjeyRkcm9wZG93bi12aWV3cG9ydC1tYXJnaW59O1xuICAgIC0tdWstaW52ZXJzZTogI3skZHJvcGRvd24tY29sb3ItbW9kZX07XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIC8qIDIgKi9cbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24oKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstZHJvcGRvd24gPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJGRyb3Bkb3duLWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1kcm9wZG93biB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRkcm9wZG93bi1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1kcm9wZG93biB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG5AaWYgKCRkcm9wZG93bi1jb2xvci1tb2RlICE9ICRpbnZlcnNlLWdsb2JhbC1jb2xvci1tb2RlKSB7XG4udWstZHJvcGRvd24gOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmUtY29sb3I6ICRkcm9wZG93bi1mb2N1cy1vdXRsaW5lICFpbXBvcnRhbnQ7XG59XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1kcm9wZG93bi1sYXJnZSB7IHBhZGRpbmc6ICRkcm9wZG93bi1sYXJnZS1wYWRkaW5nOyB9XG5cblxuLyogRHJvcGJhciBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZXNldCBkcm9wZG93biB3aWR0aCB0byBwcmV2ZW50IHRvIGVhcmx5IHNoaWZ0aW5nXG4gKiAyLiBSZXNldCBzdHlsZVxuICogMy4gUGFkZGluZ1xuICovXG5cbi51ay1kcm9wZG93bi1kcm9wYmFyIHtcbiAgICAtLXVrLXBvc2l0aW9uLW9mZnNldDogI3skZHJvcGRvd24tZHJvcGJhci1tYXJnaW59O1xuICAgIC8qIDEgKi9cbiAgICB3aWR0aDogYXV0bztcbiAgICAvKiAyICovXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1kcm9wYmFyLXBhZGRpbmctdG9wIDAgJGRyb3Bkb3duLWRyb3BiYXItcGFkZGluZy1ib3R0b20gMDtcbiAgICAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogI3skZHJvcGRvd24tZHJvcGJhci12aWV3cG9ydC1tYXJnaW59O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wZG93bi1kcm9wYmFyKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24tZHJvcGJhcigpO31cbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWRyb3Bkb3duLWRyb3BiYXIgeyAtLXVrLXBvc2l0aW9uLXZpZXdwb3J0LW9mZnNldDogI3skZHJvcGRvd24tZHJvcGJhci12aWV3cG9ydC1tYXJnaW4tc307IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1kcm9wZG93bi1kcm9wYmFyIHsgLS11ay1wb3NpdGlvbi12aWV3cG9ydC1vZmZzZXQ6ICN7JGRyb3Bkb3duLWRyb3BiYXItdmlld3BvcnQtbWFyZ2luLW19OyB9XG5cbn1cblxuLnVrLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkZHJvcGRvd24tZHJvcGJhci1sYXJnZS1wYWRkaW5nLXRvcDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGRyb3Bkb3duLWRyb3BiYXItbGFyZ2UtcGFkZGluZy1ib3R0b207XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLWRyb3BiYXItbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1kcm9wYmFyLWxhcmdlKCk7fVxufVxuXG5cbi8qIE5hdlxuICogQWRvcHRzIGB1ay1uYXZgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRyb3Bkb3duLW5hdiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdikpIHtAaW5jbHVkZSBob29rLWRyb3Bkb3duLW5hdigpO31cbn1cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLWRyb3Bkb3duLW5hdiA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1uYXYtaXRlbS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcGRvd24tbmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1uYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBBY3RpdmUgKi9cbi51ay1kcm9wZG93bi1uYXYgPiBsaSA+IGE6aG92ZXIsXG4udWstZHJvcGRvd24tbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1uYXYtaXRlbS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1uYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLypcbiAqIFN1YnRpdGxlXG4gKi9cblxuLnVrLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6ICRkcm9wZG93bi1uYXYtc3VidGl0bGUtZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wZG93bi1uYXYtc3VidGl0bGUpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1uYXYtc3VidGl0bGUoKTt9XG59XG5cbi8qXG4gKiBIZWFkZXJcbiAqL1xuXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLW5hdi1oZWFkZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdi1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCk7fVxufVxuXG4vKlxuICogRGl2aWRlclxuICovXG5cbi51ay1kcm9wZG93bi1uYXYgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1uYXYtZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24tbmF2LWRpdmlkZXIoKTt9XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICovXG5cbi51ay1kcm9wZG93bi1uYXYgLnVrLW5hdi1zdWIgYSB7IGNvbG9yOiAkZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjsgfVxuXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGE6aG92ZXIsXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEgeyBjb2xvcjogJGRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wZG93bi1taXNjKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stZHJvcGRvd24oKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1kcm9wYmFyKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tZHJvcGJhci1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duLW5hdigpe31cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duLW5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtc3VidGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBMaWdodGJveFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGFuIGxpZ2h0Ym94IGltYWdlIGdhbGxlcnlcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1saWdodGJveGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1saWdodGJveC1wYWdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlnaHRib3gtaXRlbXNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saWdodGJveC1pdGVtcy1maXRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saWdodGJveC10aHVtYm5hdmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpZ2h0Ym94LXRodW1ibmF2LXZlcnRpY2FsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlnaHRib3gtZG90bmF2YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlnaHRib3gtY2FwdGlvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpZ2h0Ym94LWNvdW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saWdodGJveC1pZnJhbWVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saWdodGJveC16b29tYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLW9wZW5gXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExpZ2h0Ym94XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gU2V0IHBvc2l0aW9uXG4gKiAzLiBBbGxvdyBzY3JvbGxpbmcgZm9yIHRoZSBtb2RhbCBkaWFsb2dcbiAqIDQuIEhvcml6b250YWwgcGFkZGluZ1xuICogNS4gTWFzayB0aGUgYmFja2dyb3VuZCBwYWdlXG4gKiA2LiBGYWRlLWluIHRyYW5zaXRpb25cbiAqIDcuIFByZXZlbnQgY2FuY2VsbGF0aW9uIG9mIHBvaW50ZXIgZXZlbnRzIHdoaWxlIGRyYWdnaW5nXG4gKi9cblxuLnVrLWxpZ2h0Ym94IHtcbiAgICAtLXVrLWludmVyc2U6ICN7JGxpZ2h0Ym94LWNvbG9yLW1vZGV9O1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRsaWdodGJveC16LWluZGV4O1xuICAgIC8qIDUgKi9cbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRib3gtYmFja2dyb3VuZDtcbiAgICAvKiA2ICovXG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgICAvKiA3ICovXG4gICAgdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saWdodGJveCkpIHtAaW5jbHVkZSBob29rLWxpZ2h0Ym94KCk7fVxufVxuXG4vKlxuICogT3BlblxuICogMS4gQ2VudGVyIGNoaWxkXG4gKiAyLiBGYWRlLWluXG4gKi9cblxuLnVrLWxpZ2h0Ym94LnVrLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBvcGFjaXR5OiAxO1xufVxuXG4vKlxuICogRm9jdXNcbiAqL1xuXG4udWstbGlnaHRib3ggOmZvY3VzLXZpc2libGUgeyBvdXRsaW5lLWNvbG9yOiAkbGlnaHRib3gtZm9jdXMtb3V0bGluZTsgfVxuXG5cbi8qIFBhZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmVudCBzY3JvbGxiYXJzXG4gKi9cblxuLnVrLWxpZ2h0Ym94LXBhZ2UgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVzZXQgbGlzdFxuICovXG5cbi51ay1saWdodGJveC1pdGVtcyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLypcbiAqIDEuIENlbnRlciBjaGlsZCB3aXRoaW4gdGhlIHZpZXdwb3J0XG4gKiAyLiBOb3QgdmlzaWJsZSBieSBkZWZhdWx0XG4gKiAzLiBPcHRpbWl6ZSBhbmltYXRpb25cbiAqIDQuIFJlc3BvbnNpdmVuZXNzXG4gKiAgICBVc2luZyBgdmhgIGZvciBgbWF4LWhlaWdodGAgdG8gZml4IGltYWdlIHByb3BvcnRpb25zIGFmdGVyIHJlc2l6ZSBpbiBTYWZhcmkgYW5kIE9wZXJhXG4gKi9cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zID4gKiB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgLyogMyAqL1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgLyogNCAqL1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saWdodGJveC1pdGVtKSkge0BpbmNsdWRlIGhvb2stbGlnaHRib3gtaXRlbSgpO31cbn1cblxuLyogMiAqL1xuLnVrLWxpZ2h0Ym94LWl0ZW1zID4gLnVrLWFjdGl2ZSB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zLWZpdCA+ICogeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi8qIDQgKi9cbi51ay1saWdodGJveC1pdGVtcy1maXQgPiAqID4gKiB7XG4gICAgbWF4LXdpZHRoOiAkbGlnaHRib3gtaXRlbS1tYXgtd2lkdGg7XG4gICAgbWF4LWhlaWdodDogJGxpZ2h0Ym94LWl0ZW0tbWF4LWhlaWdodDtcbn1cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zLWZpdCA+ICogPiA6bm90KGlmcmFtZSkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLyogWm9vbSBDdXJzb3IgKi9cbi51ay1saWdodGJveC1pdGVtcy51ay1saWdodGJveC1pdGVtcy1maXQgLnVrLWxpZ2h0Ym94LXpvb206aG92ZXIgeyBjdXJzb3I6IHpvb20taW47IH1cbi51ay1saWdodGJveC1pdGVtczpub3QoLnVrLWxpZ2h0Ym94LWl0ZW1zLWZpdCkgLnVrLWxpZ2h0Ym94LXpvb206aG92ZXIgeyBjdXJzb3I6IHpvb20tb3V0OyB9XG5cblxuLyogTmF2c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saWdodGJveC10aHVtYm5hdi12ZXJ0aWNhbCA6d2hlcmUoaW1nLCB2aWRlbykgeyBtYXgtd2lkdGg6ICRsaWdodGJveC10aHVtYm5hdi12ZXJ0aWNhbC13aWR0aDsgfVxuLnVrLWxpZ2h0Ym94LXRodW1ibmF2Om5vdCgudWstbGlnaHRib3gtdGh1bWJuYXYtdmVydGljYWwpIDp3aGVyZShpbWcsIHZpZGVvKSB7IG1heC1oZWlnaHQ6ICRsaWdodGJveC10aHVtYm5hdi1oZWlnaHQ7IH1cblxuLnVrLWxpZ2h0Ym94LXRodW1ibmF2OmVtcHR5LFxuLnVrLWxpZ2h0Ym94LWRvdG5hdjplbXB0eSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBDYXB0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWxpZ2h0Ym94LWNhcHRpb246ZW1wdHkgeyBkaXNwbGF5OiBub25lOyB9XG5cbi51ay1saWdodGJveC1jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkbGlnaHRib3gtY2FwdGlvbi1wYWRkaW5nLXZlcnRpY2FsICRsaWdodGJveC1jYXB0aW9uLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRib3gtY2FwdGlvbi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGlnaHRib3gtY2FwdGlvbi1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGlnaHRib3gtY2FwdGlvbikpIHtAaW5jbHVkZSBob29rLWxpZ2h0Ym94LWNhcHRpb24oKTt9XG59XG5cbi51ay1saWdodGJveC1jYXB0aW9uID4gKiB7IGNvbG9yOiAkbGlnaHRib3gtY2FwdGlvbi1jb2xvcjsgfVxuXG5cbi8qIENvdW50ZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlnaHRib3gtY291bnRlcjplbXB0eSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBJZnJhbWVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlnaHRib3gtaWZyYW1lIHtcbiAgICB3aWR0aDogODAlO1xuICAgIGhlaWdodDogODAlO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWxpZ2h0Ym94LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1saWdodGJveC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1saWdodGJveCgpe31cbi8vIEBtaXhpbiBob29rLWxpZ2h0Ym94LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1saWdodGJveC1jYXB0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQW5pbWF0aW9uXG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyBmb3Iga2V5ZnJhbWUgYW5pbWF0aW9uc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWFuaW1hdGlvbi0qYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWFuaW1hdGlvbi1mYWRlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNjYWxlLXVwYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNjYWxlLWRvd25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2xpZGUtdG9wLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2xpZGUtYm90dG9tLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2xpZGUtbGVmdC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNsaWRlLXJpZ2h0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24ta2VuYnVybnNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2hha2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc3Ryb2tlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXJldmVyc2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tZmFzdGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1hbmltYXRpb24tdG9nZ2xlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQW5pbWF0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuW2NsYXNzKj1cInVrLWFuaW1hdGlvbi1cIl0geyBhbmltYXRpb246ICRhbmltYXRpb24tZHVyYXRpb24gZWFzZS1vdXQgYm90aDsgfVxuXG5cbi8qIEFuaW1hdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRmFkZVxuICovXG5cbi51ay1hbmltYXRpb24tZmFkZSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGU7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWZhZGUtZHVyYXRpb247XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG4vKlxuICogU2NhbGVcbiAqL1xuXG4udWstYW5pbWF0aW9uLXNjYWxlLXVwIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNjYWxlLXVwOyB9XG4udWstYW5pbWF0aW9uLXNjYWxlLWRvd24geyBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2NhbGUtZG93bjsgfVxuXG4vKlxuICogU2xpZGVcbiAqL1xuXG4udWstYW5pbWF0aW9uLXNsaWRlLXRvcCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS10b3A7IH1cbi51ay1hbmltYXRpb24tc2xpZGUtYm90dG9tIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWJvdHRvbTsgfVxuLnVrLWFuaW1hdGlvbi1zbGlkZS1sZWZ0IHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWxlZnQ7IH1cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQgeyBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2xpZGUtcmlnaHQ7IH1cblxuLypcbiAqIFNsaWRlIFNtYWxsXG4gKi9cblxuLnVrLWFuaW1hdGlvbi1zbGlkZS10b3Atc21hbGwgeyBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2xpZGUtdG9wLXNtYWxsOyB9XG4udWstYW5pbWF0aW9uLXNsaWRlLWJvdHRvbS1zbWFsbCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS1ib3R0b20tc21hbGw7IH1cbi51ay1hbmltYXRpb24tc2xpZGUtbGVmdC1zbWFsbCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLCB1ay1zbGlkZS1sZWZ0LXNtYWxsOyB9XG4udWstYW5pbWF0aW9uLXNsaWRlLXJpZ2h0LXNtYWxsIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLXJpZ2h0LXNtYWxsOyB9XG5cbi8qXG4gKiBTbGlkZSBNZWRpdW1cbiAqL1xuXG4udWstYW5pbWF0aW9uLXNsaWRlLXRvcC1tZWRpdW0geyBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2xpZGUtdG9wLW1lZGl1bTsgfVxuLnVrLWFuaW1hdGlvbi1zbGlkZS1ib3R0b20tbWVkaXVtIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLWJvdHRvbS1tZWRpdW07IH1cbi51ay1hbmltYXRpb24tc2xpZGUtbGVmdC1tZWRpdW0geyBhbmltYXRpb24tbmFtZTogdWstZmFkZSwgdWstc2xpZGUtbGVmdC1tZWRpdW07IH1cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQtbWVkaXVtIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUsIHVrLXNsaWRlLXJpZ2h0LW1lZGl1bTsgfVxuXG4vKlxuICogS2VuYnVybnNcbiAqL1xuXG4udWstYW5pbWF0aW9uLWtlbmJ1cm5zIHtcbiAgICBhbmltYXRpb24tbmFtZTogdWsta2VuYnVybnM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWtlbmJ1cm5zLWR1cmF0aW9uO1xufVxuXG4vKlxuICogU2hha2VcbiAqL1xuXG4udWstYW5pbWF0aW9uLXNoYWtlIHsgYW5pbWF0aW9uLW5hbWU6IHVrLXNoYWtlOyB9XG5cbi8qXG4gKiBTVkcgU3Ryb2tlXG4gKiBUaGUgYC0tdWstYW5pbWF0aW9uLXN0cm9rZWAgY3VzdG9tIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBsb25nZXN0IHBhdGggbGVuZ3RoLlxuICogU2V0IGl0IG1hbnVhbGx5IG9yIHVzZSBgdWstc3ZnPVwic3Ryb2tlLWFuaW1hdGlvbjogdHJ1ZVwiYCB0byBzZXQgaXQgYXV0b21hdGljYWxseS5cbiAqIEFsbCBzdHJva2VzIGFyZSBhbmltYXRlZCBieSB0aGUgc2FtZSBwYWNlIGFuZCBkb2Vzbid0IGVuZCBzaW11bHRhbmVvdXNseS5cbiAqIFRvIGVuZCBzaW11bHRhbmVvdXNseSwgYHBhdGhMZW5ndGg9XCIxXCJgIGNvdWxkIGJlIHVzZWQsIGJ1dCBpdCdzIG5vdCB3b3JraW5nIGluIFNhZmFyaSB5ZXQuXG4gKi9cblxuLnVrLWFuaW1hdGlvbi1zdHJva2Uge1xuICAgIGFuaW1hdGlvbi1uYW1lOiB1ay1zdHJva2U7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLXN0cm9rZS1kdXJhdGlvbjtcbiAgICBzdHJva2UtZGFzaGFycmF5OiB2YXIoLS11ay1hbmltYXRpb24tc3Ryb2tlKTtcbn1cblxuXG4vKiBEaXJlY3Rpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYW5pbWF0aW9uLXJldmVyc2Uge1xuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IHJldmVyc2U7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbn1cblxuXG4vKiBEdXJhdGlvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hbmltYXRpb24tZmFzdCB7IGFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1mYXN0LWR1cmF0aW9uOyB9XG5cblxuLyogVG9nZ2xlIGFuaW1hdGlvbiBiYXNlZCBvbiB0aGUgU3RhdGUgb2YgdGhlIFBhcmVudCBFbGVtZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFuaW1hdGlvbi10b2dnbGU6bm90KDpob3Zlcik6bm90KDpmb2N1cykgW2NsYXNzKj1cInVrLWFuaW1hdGlvbi1cIl0geyBhbmltYXRpb24tbmFtZTogbm9uZTsgfVxuXG5cbi8qIEtleWZyYW1lcyB1c2VkIGJ5IGFuaW1hdGlvbiBjbGFzc2VzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEZhZGVcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUge1xuICAgIDAlIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbi8qXG4gKiBTY2FsZVxuICovXG5cbkBrZXlmcmFtZXMgdWstc2NhbGUtdXAge1xuICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuQGtleWZyYW1lcyB1ay1zY2FsZS1kb3duIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG59XG5cbi8qXG4gKiBTbGlkZVxuICovXG5cbkBrZXlmcmFtZXMgdWstc2xpZGUtdG9wIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5cbkBrZXlmcmFtZXMgdWstc2xpZGUtYm90dG9tIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn1cblxuQGtleWZyYW1lcyB1ay1zbGlkZS1sZWZ0IHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG59XG5cbkBrZXlmcmFtZXMgdWstc2xpZGUtcmlnaHQge1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG4vKlxuICogU2xpZGUgU21hbGxcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXRvcC1zbWFsbCB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRhbmltYXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn1cblxuQGtleWZyYW1lcyB1ay1zbGlkZS1ib3R0b20tc21hbGwge1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRhbmltYXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn1cblxuQGtleWZyYW1lcyB1ay1zbGlkZS1sZWZ0LXNtYWxsIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJGFuaW1hdGlvbi1zbGlkZS1zbWFsbC10cmFuc2xhdGUpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXJpZ2h0LXNtYWxsIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkYW5pbWF0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG59XG5cbi8qXG4gKiBTbGlkZSBNZWRpdW1cbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXRvcC1tZWRpdW0ge1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kYW5pbWF0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGUpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLWJvdHRvbS1tZWRpdW0ge1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRhbmltYXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5cbkBrZXlmcmFtZXMgdWstc2xpZGUtbGVmdC1tZWRpdW0ge1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kYW5pbWF0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGUpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXJpZ2h0LW1lZGl1bSB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGFuaW1hdGlvbi1zbGlkZS1tZWRpdW0tdHJhbnNsYXRlKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbn1cblxuLypcbiAqIEtlbmJ1cm5zXG4gKi9cblxuQGtleWZyYW1lcyB1ay1rZW5idXJucyB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxufVxuXG4vKlxuICogU2hha2VcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLXNoYWtlIHtcbiAgICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAgIDEwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOXB4KTsgfVxuICAgIDIwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOyB9XG4gICAgMzAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03cHgpOyB9XG4gICAgNDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7IH1cbiAgICA1MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7IH1cbiAgICA2MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsgfVxuICAgIDcwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTsgfVxuICAgIDgwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpOyB9XG4gICAgOTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpOyB9XG59XG5cbi8qXG4gKiBTdHJva2VcbiAqL1xuXG4gQGtleWZyYW1lcyB1ay1zdHJva2Uge1xuICAgIDAlIHsgc3Ryb2tlLWRhc2hvZmZzZXQ6IHZhcigtLXVrLWFuaW1hdGlvbi1zdHJva2UpOyB9XG4gICAgMTAwJSB7IHN0cm9rZS1kYXNob2Zmc2V0OiAwOyB9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stYW5pbWF0aW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hbmltYXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYW5pbWF0aW9uLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFdpZHRoXG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyBmb3Igd2lkdGhzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY2hpbGQtd2lkdGgtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXdpZHRoLSpgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBXaWR0aFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyogRXF1YWwgY2hpbGQgd2lkdGhzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuW2NsYXNzKj1cInVrLWNoaWxkLXdpZHRoXCJdID4gKiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnVrLWNoaWxkLXdpZHRoLTEtMiA+ICogeyB3aWR0aDogNTAlOyB9XG4udWstY2hpbGQtd2lkdGgtMS0zID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4udWstY2hpbGQtd2lkdGgtMS00ID4gKiB7IHdpZHRoOiAyNSU7IH1cbi51ay1jaGlsZC13aWR0aC0xLTUgPiAqIHsgd2lkdGg6IDIwJTsgfVxuLnVrLWNoaWxkLXdpZHRoLTEtNiA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuXG4udWstY2hpbGQtd2lkdGgtYXV0byA+ICogeyB3aWR0aDogYXV0bzsgfVxuXG4vKlxuICogMS4gUmVzZXQgdGhlIGBtaW4td2lkdGhgLCB3aGljaCBpcyBzZXQgdG8gYXV0byBieSBkZWZhdWx0LCBiZWNhdXNlXG4gKiAgICBmbGV4IGl0ZW1zIHdvbid0IHNocmluayBiZWxvdyB0aGVpciBtaW5pbXVtIGludHJpbnNpYyBjb250ZW50IHNpemUuXG4gKiAgICBVc2luZyBgMXB4YCBpbnN0ZWFkIG9mIGAwYCwgc28gaXRlbXMgc3RpbGwgd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmUsXG4gKiAgICBpZiB0aGV5IGhhdmUgemVybyB3aWR0aCBhbmQgcGFkZGluZyBhbmQgdGhlIHByZWRlY2Vzc29yIGlzIDEwMCUgd2lkZS5cbiAqL1xuXG4udWstY2hpbGQtd2lkdGgtZXhwYW5kID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pIHtcbiAgICBmbGV4OiAxO1xuICAgIC8qIDEgKi9cbiAgICBtaW4td2lkdGg6IDFweDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtMVxcQHMgPiAqIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS0yXFxAcyA+ICogeyB3aWR0aDogNTAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHMgPiAqIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAvIDMpJyk7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS00XFxAcyA+ICogeyB3aWR0aDogMjUlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNVxcQHMgPiAqIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTZcXEBzID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyA2KScpOyB9XG5cbiAgICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQHMgPiAqIHsgd2lkdGg6IGF1dG87IH1cbiAgICAudWstY2hpbGQtd2lkdGgtZXhwYW5kXFxAcyA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMXB4O1xuICAgIH1cblxuICAgIC8qIFJlc2V0IGV4cGFuZCAqL1xuICAgIC51ay1jaGlsZC13aWR0aC0xLTFcXEBzID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC0xLTJcXEBzID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC0xLTNcXEBzID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC0xLTRcXEBzID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC0xLTVcXEBzID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC0xLTZcXEBzID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC1hdXRvXFxAcyA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSB7IGZsZXg6IGluaXRpYWw7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1jaGlsZC13aWR0aC0xLTFcXEBtID4gKiB7IHdpZHRoOiAxMDAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtMlxcQG0gPiAqIHsgd2lkdGg6IDUwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTNcXEBtID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQG0gPiAqIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTVcXEBtID4gKiB7IHdpZHRoOiAyMCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS02XFxAbSA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuXG4gICAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEBtID4gKiB7IHdpZHRoOiBhdXRvOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLWV4cGFuZFxcQG0gPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSkge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbiAgICAvKiBSZXNldCBleHBhbmQgKi9cbiAgICAudWstY2hpbGQtd2lkdGgtMS0xXFxAbSA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS0yXFxAbSA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS0zXFxAbSA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS00XFxAbSA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS01XFxAbSA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS02XFxAbSA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQG0gPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSkgeyBmbGV4OiBpbml0aWFsOyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1jaGlsZC13aWR0aC0xLTFcXEBsID4gKiB7IHdpZHRoOiAxMDAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtMlxcQGwgPiAqIHsgd2lkdGg6IDUwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTNcXEBsID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQGwgPiAqIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTVcXEBsID4gKiB7IHdpZHRoOiAyMCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS02XFxAbCA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuXG4gICAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEBsID4gKiB7IHdpZHRoOiBhdXRvOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLWV4cGFuZFxcQGwgPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSkge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbiAgICAvKiBSZXNldCBleHBhbmQgKi9cbiAgICAudWstY2hpbGQtd2lkdGgtMS0xXFxAbCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS0yXFxAbCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS0zXFxAbCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS00XFxAbCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS01XFxAbCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS02XFxAbCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQGwgPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSkgeyBmbGV4OiBpbml0aWFsOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1jaGlsZC13aWR0aC0xLTFcXEB4bCA+ICogeyB3aWR0aDogMTAwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTJcXEB4bCA+ICogeyB3aWR0aDogNTAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHhsID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQHhsID4gKiB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS01XFxAeGwgPiAqIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTZcXEB4bCA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuXG4gICAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEB4bCA+ICogeyB3aWR0aDogYXV0bzsgfVxuICAgIC51ay1jaGlsZC13aWR0aC1leHBhbmRcXEB4bCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMXB4O1xuICAgIH1cblxuICAgIC8qIFJlc2V0IGV4cGFuZCAqL1xuICAgIC51ay1jaGlsZC13aWR0aC0xLTFcXEB4bCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS0yXFxAeGwgPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSksXG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHhsID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC0xLTRcXEB4bCA+IDpub3QoW2NsYXNzKj1cInVrLXdpZHRoXCJdKSxcbiAgICAudWstY2hpbGQtd2lkdGgtMS01XFxAeGwgPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSksXG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNlxcQHhsID4gOm5vdChbY2xhc3MqPVwidWstd2lkdGhcIl0pLFxuICAgIC51ay1jaGlsZC13aWR0aC1hdXRvXFxAeGwgPiA6bm90KFtjbGFzcyo9XCJ1ay13aWR0aFwiXSkgeyBmbGV4OiBpbml0aWFsOyB9XG5cbn1cblxuXG4vKiBTaW5nbGUgV2lkdGhzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIGBtYXgtd2lkdGhgIGlzIG5lZWRlZCBmb3IgdGhlIHBpeGVsLWJhc2VkIGNsYXNzZXNcbiAqL1xuXG5bY2xhc3MqPVwidWstd2lkdGhcIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogSGFsdmVzICovXG4udWstd2lkdGgtMS0yIHsgd2lkdGg6IDUwJTsgfVxuXG4vKiBUaGlyZHMgKi9cbi51ay13aWR0aC0xLTMgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gMyknKTsgfVxuLnVrLXdpZHRoLTItMyB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDIwMCUgLyAzKScpOyB9XG5cbi8qIFF1YXJ0ZXJzICovXG4udWstd2lkdGgtMS00IHsgd2lkdGg6IDI1JTsgfVxuLnVrLXdpZHRoLTMtNCB7IHdpZHRoOiA3NSU7IH1cblxuLyogRmlmdGhzICovXG4udWstd2lkdGgtMS01IHsgd2lkdGg6IDIwJTsgfVxuLnVrLXdpZHRoLTItNSB7IHdpZHRoOiA0MCU7IH1cbi51ay13aWR0aC0zLTUgeyB3aWR0aDogNjAlOyB9XG4udWstd2lkdGgtNC01IHsgd2lkdGg6IDgwJTsgfVxuXG4vKiBTaXh0aHMgKi9cbi51ay13aWR0aC0xLTYgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuLnVrLXdpZHRoLTUtNiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwMCUgLyA2KScpOyB9XG5cbi8qIFBpeGVsICovXG4udWstd2lkdGgtc21hbGwgeyB3aWR0aDogJHdpZHRoLXNtYWxsLXdpZHRoOyB9XG4udWstd2lkdGgtbWVkaXVtIHsgd2lkdGg6ICR3aWR0aC1tZWRpdW0td2lkdGg7IH1cbi51ay13aWR0aC1sYXJnZSB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbi51ay13aWR0aC14bGFyZ2UgeyB3aWR0aDogJHdpZHRoLXhsYXJnZS13aWR0aDsgfVxuLnVrLXdpZHRoLTJ4bGFyZ2UgeyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbkBpZiAoJGRlcHJlY2F0ZWQgPT0gdHJ1ZSkge1xuLnVrLXdpZHRoLXh4bGFyZ2UgeyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuLyogQXV0byAqL1xuLnVrLXdpZHRoLWF1dG8geyB3aWR0aDogYXV0bzsgfVxuXG4vKiBFeHBhbmQgKi9cbi51ay13aWR0aC1leHBhbmQge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAxcHg7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC8qIFdob2xlICovXG4gICAgLnVrLXdpZHRoLTEtMVxcQHMgeyB3aWR0aDogMTAwJTsgfVxuXG4gICAgLyogSGFsdmVzICovXG4gICAgLnVrLXdpZHRoLTEtMlxcQHMgeyB3aWR0aDogNTAlOyB9XG5cbiAgICAvKiBUaGlyZHMgKi9cbiAgICAudWstd2lkdGgtMS0zXFxAcyB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4gICAgLnVrLXdpZHRoLTItM1xcQHMgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygyMDAlIC8gMyknKTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstd2lkdGgtMS00XFxAcyB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstd2lkdGgtMy00XFxAcyB7IHdpZHRoOiA3NSU7IH1cblxuICAgIC8qIEZpZnRocyAqL1xuICAgIC51ay13aWR0aC0xLTVcXEBzIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay13aWR0aC0yLTVcXEBzIHsgd2lkdGg6IDQwJTsgfVxuICAgIC51ay13aWR0aC0zLTVcXEBzIHsgd2lkdGg6IDYwJTsgfVxuICAgIC51ay13aWR0aC00LTVcXEBzIHsgd2lkdGg6IDgwJTsgfVxuXG4gICAgLyogU2l4dGhzICovXG4gICAgLnVrLXdpZHRoLTEtNlxcQHMgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuICAgIC51ay13aWR0aC01LTZcXEBzIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoNTAwJSAvIDYpJyk7IH1cblxuICAgIC8qIFBpeGVsICovXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAcyB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAcyB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlXFxAcyB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbiAgICAudWstd2lkdGgteGxhcmdlXFxAcyB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBzIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstd2lkdGgteHhsYXJnZVxcQHMgeyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuICAgIC8qIEF1dG8gKi9cbiAgICAudWstd2lkdGgtYXV0b1xcQHMgeyB3aWR0aDogYXV0bzsgfVxuXG4gICAgLyogRXhwYW5kICovXG4gICAgLnVrLXdpZHRoLWV4cGFuZFxcQHMge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbiAgICAvKiBSZXNldCBleHBhbmQgKi9cbiAgICAudWstd2lkdGgtMS0xXFxAcyxcbiAgICAudWstd2lkdGgtMS0yXFxAcyxcbiAgICAudWstd2lkdGgtMS0zXFxAcyxcbiAgICAudWstd2lkdGgtMi0zXFxAcyxcbiAgICAudWstd2lkdGgtMS00XFxAcyxcbiAgICAudWstd2lkdGgtMy00XFxAcyxcbiAgICAudWstd2lkdGgtMS01XFxAcyxcbiAgICAudWstd2lkdGgtMi01XFxAcyxcbiAgICAudWstd2lkdGgtMy01XFxAcyxcbiAgICAudWstd2lkdGgtNC01XFxAcyxcbiAgICAudWstd2lkdGgtMS02XFxAcyxcbiAgICAudWstd2lkdGgtNS02XFxAcyxcbiAgICAudWstd2lkdGgtc21hbGxcXEBzLFxuICAgIC51ay13aWR0aC1tZWRpdW1cXEBzLFxuICAgIC51ay13aWR0aC1sYXJnZVxcQHMsXG4gICAgLnVrLXdpZHRoLXhsYXJnZVxcQHMsXG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBzLFxuICAgIC51ay13aWR0aC1hdXRvXFxAcyB7IGZsZXg6IGluaXRpYWw7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC8qIFdob2xlICovXG4gICAgLnVrLXdpZHRoLTEtMVxcQG0geyB3aWR0aDogMTAwJTsgfVxuXG4gICAgLyogSGFsdmVzICovXG4gICAgLnVrLXdpZHRoLTEtMlxcQG0geyB3aWR0aDogNTAlOyB9XG5cbiAgICAvKiBUaGlyZHMgKi9cbiAgICAudWstd2lkdGgtMS0zXFxAbSB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4gICAgLnVrLXdpZHRoLTItM1xcQG0geyB3aWR0aDogdW5xdW90ZSgnY2FsYygyMDAlIC8gMyknKTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstd2lkdGgtMS00XFxAbSB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstd2lkdGgtMy00XFxAbSB7IHdpZHRoOiA3NSU7IH1cblxuICAgIC8qIEZpZnRocyAqL1xuICAgIC51ay13aWR0aC0xLTVcXEBtIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay13aWR0aC0yLTVcXEBtIHsgd2lkdGg6IDQwJTsgfVxuICAgIC51ay13aWR0aC0zLTVcXEBtIHsgd2lkdGg6IDYwJTsgfVxuICAgIC51ay13aWR0aC00LTVcXEBtIHsgd2lkdGg6IDgwJTsgfVxuXG4gICAgLyogU2l4dGhzICovXG4gICAgLnVrLXdpZHRoLTEtNlxcQG0geyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuICAgIC51ay13aWR0aC01LTZcXEBtIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoNTAwJSAvIDYpJyk7IH1cblxuICAgIC8qIFBpeGVsICovXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAbSB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAbSB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlXFxAbSB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbiAgICAudWstd2lkdGgteGxhcmdlXFxAbSB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBtIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstd2lkdGgteHhsYXJnZVxcQG0geyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuICAgICAvKiBBdXRvICovXG4gICAgLnVrLXdpZHRoLWF1dG9cXEBtIHsgd2lkdGg6IGF1dG87IH1cblxuICAgIC8qIEV4cGFuZCAqL1xuICAgIC51ay13aWR0aC1leHBhbmRcXEBtIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgLyogUmVzZXQgZXhwYW5kICovXG4gICAgLnVrLXdpZHRoLTEtMVxcQG0sXG4gICAgLnVrLXdpZHRoLTEtMlxcQG0sXG4gICAgLnVrLXdpZHRoLTEtM1xcQG0sXG4gICAgLnVrLXdpZHRoLTItM1xcQG0sXG4gICAgLnVrLXdpZHRoLTEtNFxcQG0sXG4gICAgLnVrLXdpZHRoLTMtNFxcQG0sXG4gICAgLnVrLXdpZHRoLTEtNVxcQG0sXG4gICAgLnVrLXdpZHRoLTItNVxcQG0sXG4gICAgLnVrLXdpZHRoLTMtNVxcQG0sXG4gICAgLnVrLXdpZHRoLTQtNVxcQG0sXG4gICAgLnVrLXdpZHRoLTEtNlxcQG0sXG4gICAgLnVrLXdpZHRoLTUtNlxcQG0sXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAbSxcbiAgICAudWstd2lkdGgtbWVkaXVtXFxAbSxcbiAgICAudWstd2lkdGgtbGFyZ2VcXEBtLFxuICAgIC51ay13aWR0aC14bGFyZ2VcXEBtLFxuICAgIC51ay13aWR0aC0yeGxhcmdlXFxAbSxcbiAgICAudWstd2lkdGgtYXV0b1xcQG0geyBmbGV4OiBpbml0aWFsOyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC8qIFdob2xlICovXG4gICAgLnVrLXdpZHRoLTEtMVxcQGwgeyB3aWR0aDogMTAwJTsgfVxuXG4gICAgLyogSGFsdmVzICovXG4gICAgLnVrLXdpZHRoLTEtMlxcQGwgeyB3aWR0aDogNTAlOyB9XG5cbiAgICAvKiBUaGlyZHMgKi9cbiAgICAudWstd2lkdGgtMS0zXFxAbCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLyAzKScpOyB9XG4gICAgLnVrLXdpZHRoLTItM1xcQGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygyMDAlIC8gMyknKTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstd2lkdGgtMS00XFxAbCB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstd2lkdGgtMy00XFxAbCB7IHdpZHRoOiA3NSU7IH1cblxuICAgIC8qIEZpZnRocyAqL1xuICAgIC51ay13aWR0aC0xLTVcXEBsIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay13aWR0aC0yLTVcXEBsIHsgd2lkdGg6IDQwJTsgfVxuICAgIC51ay13aWR0aC0zLTVcXEBsIHsgd2lkdGg6IDYwJTsgfVxuICAgIC51ay13aWR0aC00LTVcXEBsIHsgd2lkdGg6IDgwJTsgfVxuXG4gICAgLyogU2l4dGhzICovXG4gICAgLnVrLXdpZHRoLTEtNlxcQGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC8gNiknKTsgfVxuICAgIC51ay13aWR0aC01LTZcXEBsIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoNTAwJSAvIDYpJyk7IH1cblxuICAgIC8qIFBpeGVsICovXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAbCB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAbCB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlXFxAbCB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbiAgICAudWstd2lkdGgteGxhcmdlXFxAbCB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBsIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstd2lkdGgteHhsYXJnZVxcQGwgeyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuICAgIC8qIEF1dG8gKi9cbiAgICAudWstd2lkdGgtYXV0b1xcQGwgeyB3aWR0aDogYXV0bzsgfVxuXG4gICAgLyogRXhwYW5kICovXG4gICAgLnVrLXdpZHRoLWV4cGFuZFxcQGwge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbiAgICAvKiBSZXNldCBleHBhbmQgKi9cbiAgICAudWstd2lkdGgtMS0xXFxAbCxcbiAgICAudWstd2lkdGgtMS0yXFxAbCxcbiAgICAudWstd2lkdGgtMS0zXFxAbCxcbiAgICAudWstd2lkdGgtMi0zXFxAbCxcbiAgICAudWstd2lkdGgtMS00XFxAbCxcbiAgICAudWstd2lkdGgtMy00XFxAbCxcbiAgICAudWstd2lkdGgtMS01XFxAbCxcbiAgICAudWstd2lkdGgtMi01XFxAbCxcbiAgICAudWstd2lkdGgtMy01XFxAbCxcbiAgICAudWstd2lkdGgtNC01XFxAbCxcbiAgICAudWstd2lkdGgtMS02XFxAbCxcbiAgICAudWstd2lkdGgtNS02XFxAbCxcbiAgICAudWstd2lkdGgtc21hbGxcXEBsLFxuICAgIC51ay13aWR0aC1tZWRpdW1cXEBsLFxuICAgIC51ay13aWR0aC1sYXJnZVxcQGwsXG4gICAgLnVrLXdpZHRoLXhsYXJnZVxcQGwsXG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBsLFxuICAgIC51ay13aWR0aC1hdXRvXFxAbCB7IGZsZXg6IGluaXRpYWw7IH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLyogV2hvbGUgKi9cbiAgICAudWstd2lkdGgtMS0xXFxAeGwgeyB3aWR0aDogMTAwJTsgfVxuXG4gICAgLyogSGFsdmVzICovXG4gICAgLnVrLXdpZHRoLTEtMlxcQHhsIHsgd2lkdGg6IDUwJTsgfVxuXG4gICAgLyogVGhpcmRzICovXG4gICAgLnVrLXdpZHRoLTEtM1xcQHhsIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAvIDMpJyk7IH1cbiAgICAudWstd2lkdGgtMi0zXFxAeGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygyMDAlIC8gMyknKTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstd2lkdGgtMS00XFxAeGwgeyB3aWR0aDogMjUlOyB9XG4gICAgLnVrLXdpZHRoLTMtNFxcQHhsIHsgd2lkdGg6IDc1JTsgfVxuXG4gICAgLyogRmlmdGhzICovXG4gICAgLnVrLXdpZHRoLTEtNVxcQHhsIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay13aWR0aC0yLTVcXEB4bCB7IHdpZHRoOiA0MCU7IH1cbiAgICAudWstd2lkdGgtMy01XFxAeGwgeyB3aWR0aDogNjAlOyB9XG4gICAgLnVrLXdpZHRoLTQtNVxcQHhsIHsgd2lkdGg6IDgwJTsgfVxuXG4gICAgLyogU2l4dGhzICovXG4gICAgLnVrLXdpZHRoLTEtNlxcQHhsIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAvIDYpJyk7IH1cbiAgICAudWstd2lkdGgtNS02XFxAeGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYyg1MDAlIC8gNiknKTsgfVxuXG4gICAgLyogUGl4ZWwgKi9cbiAgICAudWstd2lkdGgtc21hbGxcXEB4bCB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAeGwgeyB3aWR0aDogJHdpZHRoLW1lZGl1bS13aWR0aDsgfVxuICAgIC51ay13aWR0aC1sYXJnZVxcQHhsIHsgd2lkdGg6ICR3aWR0aC1sYXJnZS13aWR0aDsgfVxuICAgIC51ay13aWR0aC14bGFyZ2VcXEB4bCB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEB4bCB7IHdpZHRoOiAkd2lkdGgtMnhsYXJnZS13aWR0aDsgfVxuICAgIEBpZiAoJGRlcHJlY2F0ZWQgPT0gdHJ1ZSkge1xuLnVrLXdpZHRoLXh4bGFyZ2VcXEB4bCB7IHdpZHRoOiAkd2lkdGgtMnhsYXJnZS13aWR0aDsgfVxufVxuXG4gICAgLyogQXV0byAqL1xuICAgIC51ay13aWR0aC1hdXRvXFxAeGwgeyB3aWR0aDogYXV0bzsgfVxuXG4gICAgLyogRXhwYW5kICovXG4gICAgLnVrLXdpZHRoLWV4cGFuZFxcQHhsIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgLyogUmVzZXQgZXhwYW5kICovXG4gICAgLnVrLXdpZHRoLTEtMVxcQHhsLFxuICAgIC51ay13aWR0aC0xLTJcXEB4bCxcbiAgICAudWstd2lkdGgtMS0zXFxAeGwsXG4gICAgLnVrLXdpZHRoLTItM1xcQHhsLFxuICAgIC51ay13aWR0aC0xLTRcXEB4bCxcbiAgICAudWstd2lkdGgtMy00XFxAeGwsXG4gICAgLnVrLXdpZHRoLTEtNVxcQHhsLFxuICAgIC51ay13aWR0aC0yLTVcXEB4bCxcbiAgICAudWstd2lkdGgtMy01XFxAeGwsXG4gICAgLnVrLXdpZHRoLTQtNVxcQHhsLFxuICAgIC51ay13aWR0aC0xLTZcXEB4bCxcbiAgICAudWstd2lkdGgtNS02XFxAeGwsXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAeGwsXG4gICAgLnVrLXdpZHRoLW1lZGl1bVxcQHhsLFxuICAgIC51ay13aWR0aC1sYXJnZVxcQHhsLFxuICAgIC51ay13aWR0aC14bGFyZ2VcXEB4bCxcbiAgICAudWstd2lkdGgtMnhsYXJnZVxcQHhsLFxuICAgIC51ay13aWR0aC1hdXRvXFxAeGwgeyBmbGV4OiBpbml0aWFsOyB9XG5cbn1cblxuLyogSW50cmluc2ljIFdpZHRoc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay13aWR0aC1tYXgtY29udGVudCB7IHdpZHRoOiBtYXgtY29udGVudDsgfVxuXG4udWstd2lkdGgtbWluLWNvbnRlbnQgeyB3aWR0aDogbWluLWNvbnRlbnQ7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay13aWR0aC1taXNjKSkge0BpbmNsdWRlIGhvb2std2lkdGgtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2std2lkdGgtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgSGVpZ2h0XG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyBmb3IgaGVpZ2h0c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWhlaWdodC0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSGVpZ2h0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuW2NsYXNzKj1cInVrLWhlaWdodFwiXSB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLypcbiAqIE9ubHkgd29ya3MgaWYgcGFyZW50IGVsZW1lbnQgaGFzIGEgaGVpZ2h0IHNldFxuICovXG5cbi51ay1oZWlnaHQtMS0xIHsgaGVpZ2h0OiAxMDAlOyB9XG5cbi8qXG4gKiBVc2VmdWwgdG8gY3JlYXRlIGltYWdlIHRlYXNlcnNcbiAqL1xuXG4udWstaGVpZ2h0LXZpZXdwb3J0IHsgbWluLWhlaWdodDogMTAwdmg7IH1cbi51ay1oZWlnaHQtdmlld3BvcnQtMiB7IG1pbi1oZWlnaHQ6IDIwMHZoOyB9XG4udWstaGVpZ2h0LXZpZXdwb3J0LTMgeyBtaW4taGVpZ2h0OiAzMDB2aDsgfVxuLnVrLWhlaWdodC12aWV3cG9ydC00IHsgbWluLWhlaWdodDogNDAwdmg7IH1cblxuLypcbiAqIFBpeGVsXG4gKiBVc2VmdWwgZm9yIGBvdmVyZmxvdzogYXV0b2BcbiAqL1xuXG4udWstaGVpZ2h0LXNtYWxsIHsgaGVpZ2h0OiAkaGVpZ2h0LXNtYWxsLWhlaWdodDsgfVxuLnVrLWhlaWdodC1tZWRpdW0geyBoZWlnaHQ6ICRoZWlnaHQtbWVkaXVtLWhlaWdodDsgfVxuLnVrLWhlaWdodC1sYXJnZSB7IGhlaWdodDogJGhlaWdodC1sYXJnZS1oZWlnaHQ7IH1cblxuLnVrLWhlaWdodC1tYXgtc21hbGwgeyBtYXgtaGVpZ2h0OiAkaGVpZ2h0LXNtYWxsLWhlaWdodDsgfVxuLnVrLWhlaWdodC1tYXgtbWVkaXVtIHsgbWF4LWhlaWdodDogJGhlaWdodC1tZWRpdW0taGVpZ2h0OyB9XG4udWstaGVpZ2h0LW1heC1sYXJnZSB7IG1heC1oZWlnaHQ6ICRoZWlnaHQtbGFyZ2UtaGVpZ2h0OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2staGVpZ2h0LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1oZWlnaHQtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2staGVpZ2h0LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFRleHRcbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIGZvciB0ZXh0XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGV4dC0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVGV4dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtbGVhZCB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1sZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHRleHQtbGVhZC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRleHQtbGVhZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGV4dC1sZWFkKSkge0BpbmNsdWRlIGhvb2stdGV4dC1sZWFkKCk7fVxufVxuXG4udWstdGV4dC1tZXRhIHtcbiAgICBmb250LXNpemU6ICR0ZXh0LW1ldGEtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkdGV4dC1tZXRhLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdGV4dC1tZXRhLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10ZXh0LW1ldGEpKSB7QGluY2x1ZGUgaG9vay10ZXh0LW1ldGEoKTt9XG59XG5cblxuLyogU2l6ZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGV4dC1zbWFsbCB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1zbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICR0ZXh0LXNtYWxsLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10ZXh0LXNtYWxsKSkge0BpbmNsdWRlIGhvb2stdGV4dC1zbWFsbCgpO31cbn1cblxuLnVrLXRleHQtbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogJHRleHQtbGFyZ2UtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkdGV4dC1sYXJnZS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGV4dC1sYXJnZSkpIHtAaW5jbHVkZSBob29rLXRleHQtbGFyZ2UoKTt9XG59XG5cbi51ay10ZXh0LWRlZmF1bHQge1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZS1oZWlnaHQ7XG59XG5cblxuLyogV2VpZ2h0IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtbGlnaHQgeyBmb250LXdlaWdodDogMzAwOyB9XG4udWstdGV4dC1ub3JtYWwgeyBmb250LXdlaWdodDogNDAwOyB9XG4udWstdGV4dC1ib2xkIHsgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4udWstdGV4dC1saWdodGVyIHsgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7IH1cbi51ay10ZXh0LWJvbGRlciB7IGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10ZXh0LWl0YWxpYyB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5cbi8qIFRyYW5zZm9ybSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG4udWstdGV4dC11cHBlcmNhc2UgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWxvd2VyY2FzZSB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuXG5cbi8qIERlY29yYXRpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG5cbi8qIENvbG9yIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWVtcGhhc2lzIHsgY29sb3I6ICR0ZXh0LWVtcGhhc2lzLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LXByaW1hcnkgeyBjb2xvcjogJHRleHQtcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1zZWNvbmRhcnkgeyBjb2xvcjogJHRleHQtc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LXN1Y2Nlc3MgeyBjb2xvcjogJHRleHQtc3VjY2Vzcy1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC13YXJuaW5nIHsgY29sb3I6ICR0ZXh0LXdhcm5pbmctY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtZGFuZ2VyIHsgY29sb3I6ICR0ZXh0LWRhbmdlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cblxuLyogQmFja2dyb3VuZCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBUaGUgYmFja2dyb3VuZCBjbGlwcyB0byB0aGUgZm9yZWdyb3VuZCB0ZXh0LiBXb3JrcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBEZWZhdWx0IGNvbG9yIGlzIHNldCB0byB0cmFuc3BhcmVudC5cbiAqIDMuIENvbnRhaW5lciBmaXRzIHRoZSB0ZXh0XG4gKiA0LiBTdHlsZVxuICovXG5cbi51ay10ZXh0LWJhY2tncm91bmQge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAvKiAyICovXG4gICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgLyogMyAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiA0ICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGV4dC1iYWNrZ3JvdW5kKSkge0BpbmNsdWRlIGhvb2stdGV4dC1iYWNrZ3JvdW5kKCk7fVxufVxuXG5cbi8qIEFsaWdubWVudCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay10ZXh0LWxlZnRcXEBzIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLXRleHQtcmlnaHRcXEBzIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LWNlbnRlclxcQHMgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXRleHQtbGVmdFxcQG0geyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1yaWdodFxcQG0geyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLXRleHQtY2VudGVyXFxAbSB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay10ZXh0LWxlZnRcXEBsIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLXRleHQtcmlnaHRcXEBsIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LWNlbnRlclxcQGwgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstdGV4dC1sZWZ0XFxAeGwgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1yaWdodFxcQHhsIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LWNlbnRlclxcQHhsIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKlxuICogVmVydGljYWxcbiAqL1xuXG4udWstdGV4dC10b3AgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LW1pZGRsZSB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1iYXNlbGluZSB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG5cblxuLyogV3JhcCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmVudCB0ZXh0IGZyb20gd3JhcHBpbmcgb250byBtdWx0aXBsZSBsaW5lc1xuICovXG5cbi51ay10ZXh0LW5vd3JhcCB7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLypcbiAqIDEuIE1ha2Ugc3VyZSBhIG1heC13aWR0aCBpcyBzZXQgYWZ0ZXIgd2hpY2ggdHJ1bmNhdGlvbiBjYW4gb2NjdXJcbiAqIDIuIFByZXZlbnQgdGV4dCBmcm9tIHdyYXBwaW5nIG9udG8gbXVsdGlwbGUgbGluZXMsIGFuZCB0cnVuY2F0ZSB3aXRoIGFuIGVsbGlwc2lzXG4gKiAzLiBGaXggZm9yIHRhYmxlIGNlbGxzXG4gKi9cblxuLnVrLXRleHQtdHJ1bmNhdGUge1xuICAgIC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMiAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogMiAqL1xudGgudWstdGV4dC10cnVuY2F0ZSxcbnRkLnVrLXRleHQtdHJ1bmNhdGUgeyBtYXgtd2lkdGg6IDA7IH1cblxuLypcbiAqIFdyYXAgbG9uZyB3b3JkcyBvbnRvIHRoZSBuZXh0IGxpbmUgYW5kIGJyZWFrIHRoZW0gaWYgdGhleSBhcmUgdG9vIGxvbmcgdG8gZml0LlxuICogMS4gTWFrZSBpdCB3b3JrIHdpdGggdGFibGUgY2VsbHMgaW4gYWxsIGJyb3dzZXJzLlxuICogTm90ZTogTm90IHVzaW5nIGBoeXBoZW5zOiBhdXRvYCBiZWNhdXNlIGl0IGh5cGhlbmF0ZXMgdGV4dCBldmVuIGlmIG5vdCBuZWVkZWQuXG4gKi9cblxuIC51ay10ZXh0LWJyZWFrIHsgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsgfVxuXG4gLyogMSAqL1xuIHRoLnVrLXRleHQtYnJlYWssXG4gdGQudWstdGV4dC1icmVhayB7IHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuXG4vKiBTdHJva2UgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtc3Ryb2tlIHtcbiAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiAkdGV4dC1zdHJva2UtdGV4dC1zdHJva2U7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXRleHQtbWlzYykpIHtAaW5jbHVkZSBob29rLXRleHQtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stdGV4dC1sZWFkKCl7fVxuLy8gQG1peGluIGhvb2stdGV4dC1tZXRhKCl7fVxuLy8gQG1peGluIGhvb2stdGV4dC1zbWFsbCgpe31cbi8vIEBtaXhpbiBob29rLXRleHQtbGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay10ZXh0LWJhY2tncm91bmQoKXt9XG4vLyBAbWl4aW4gaG9vay10ZXh0LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGV4dC1sZWFkKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10ZXh0LW1ldGEoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENvbHVtblxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIHRleHQgY29sdW1uc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWNvbHVtbi0qYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWNvbHVtbi1zcGFuYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWNvbHVtbi1kaXZpZGVyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb2x1bW5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPVwidWstY29sdW1uLVwiXSB7IGNvbHVtbi1nYXA6ICRjb2x1bW4tZ3V0dGVyOyB9XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICBbY2xhc3MqPVwidWstY29sdW1uLVwiXSB7IGNvbHVtbi1nYXA6ICRjb2x1bW4tZ3V0dGVyLWw7IH1cblxufVxuXG4vKlxuICogRml4IGltYWdlIDFweCBsaW5lIHdyYXBwaW5nIGludG8gdGhlIG5leHQgY29sdW1uIGluIENocm9tZVxuICovXG5cbltjbGFzcyo9XCJ1ay1jb2x1bW4tXCJdIGltZyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuXG4vKiBEaXZpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIERvdWJsZSB0aGUgY29sdW1uIGdhcFxuICovXG5cbi51ay1jb2x1bW4tZGl2aWRlciB7XG4gICAgY29sdW1uLXJ1bGU6ICRjb2x1bW4tZGl2aWRlci1ydWxlLXdpZHRoIHNvbGlkICRjb2x1bW4tZGl2aWRlci1ydWxlLWNvbG9yO1xuICAgIC8qIDEgKi9cbiAgICBjb2x1bW4tZ2FwOiAoJGNvbHVtbi1ndXR0ZXIgKiAyKTtcbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1jb2x1bW4tZGl2aWRlciB7XG4gICAgICAgIGNvbHVtbi1nYXA6ICgkY29sdW1uLWd1dHRlci1sICogMik7XG4gICAgfVxuXG59XG5cblxuLyogV2lkdGggbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbHVtbi0xLTIgeyBjb2x1bW4tY291bnQ6IDI7fVxuLnVrLWNvbHVtbi0xLTMgeyBjb2x1bW4tY291bnQ6IDM7IH1cbi51ay1jb2x1bW4tMS00IHsgY29sdW1uLWNvdW50OiA0OyB9XG4udWstY29sdW1uLTEtNSB7IGNvbHVtbi1jb3VudDogNTsgfVxuLnVrLWNvbHVtbi0xLTYgeyBjb2x1bW4tY291bnQ6IDY7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNvbHVtbi0xLTJcXEBzIHsgY29sdW1uLWNvdW50OiAyOyB9XG4gICAgLnVrLWNvbHVtbi0xLTNcXEBzIHsgY29sdW1uLWNvdW50OiAzOyB9XG4gICAgLnVrLWNvbHVtbi0xLTRcXEBzIHsgY29sdW1uLWNvdW50OiA0OyB9XG4gICAgLnVrLWNvbHVtbi0xLTVcXEBzIHsgY29sdW1uLWNvdW50OiA1OyB9XG4gICAgLnVrLWNvbHVtbi0xLTZcXEBzIHsgY29sdW1uLWNvdW50OiA2OyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstY29sdW1uLTEtMlxcQG0geyBjb2x1bW4tY291bnQ6IDI7IH1cbiAgICAudWstY29sdW1uLTEtM1xcQG0geyBjb2x1bW4tY291bnQ6IDM7IH1cbiAgICAudWstY29sdW1uLTEtNFxcQG0geyBjb2x1bW4tY291bnQ6IDQ7IH1cbiAgICAudWstY29sdW1uLTEtNVxcQG0geyBjb2x1bW4tY291bnQ6IDU7IH1cbiAgICAudWstY29sdW1uLTEtNlxcQG0geyBjb2x1bW4tY291bnQ6IDY7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWNvbHVtbi0xLTJcXEBsIHsgY29sdW1uLWNvdW50OiAyOyB9XG4gICAgLnVrLWNvbHVtbi0xLTNcXEBsIHsgY29sdW1uLWNvdW50OiAzOyB9XG4gICAgLnVrLWNvbHVtbi0xLTRcXEBsIHsgY29sdW1uLWNvdW50OiA0OyB9XG4gICAgLnVrLWNvbHVtbi0xLTVcXEBsIHsgY29sdW1uLWNvdW50OiA1OyB9XG4gICAgLnVrLWNvbHVtbi0xLTZcXEBsIHsgY29sdW1uLWNvdW50OiA2OyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1jb2x1bW4tMS0yXFxAeGwgeyBjb2x1bW4tY291bnQ6IDI7IH1cbiAgICAudWstY29sdW1uLTEtM1xcQHhsIHsgY29sdW1uLWNvdW50OiAzOyB9XG4gICAgLnVrLWNvbHVtbi0xLTRcXEB4bCB7IGNvbHVtbi1jb3VudDogNDsgfVxuICAgIC51ay1jb2x1bW4tMS01XFxAeGwgeyBjb2x1bW4tY291bnQ6IDU7IH1cbiAgICAudWstY29sdW1uLTEtNlxcQHhsIHsgY29sdW1uLWNvdW50OiA2OyB9XG5cbn1cblxuLyogTWFrZSBlbGVtZW50IHNwYW4gYWNyb3NzIGFsbCBjb2x1bW5zXG4gKiBEb2VzIG5vdCB3b3JrIGluIEZpcmVmb3ggeWV0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbHVtbi1zcGFuIHsgY29sdW1uLXNwYW46IGFsbDsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWNvbHVtbi1taXNjKSkge0BpbmNsdWRlIGhvb2stY29sdW1uLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWNvbHVtbi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuIiwiLy8gTmFtZTogICAgICAgICAgICBDb3ZlclxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgdG8gbGV0IGVtYmVkZGVkIGNvbnRlbnQgY292ZXIgdGhlaXIgY29udGFpbmVyIGluIGEgY2VudGVyZWQgcG9zaXRpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jb3ZlcmBcbi8vXG4vLyBTdWItb2JqZWN0OiAgICAgIGB1ay1jb3Zlci1jb250YWluZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IENvdmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFdvcmtzIHdpdGggaWZyYW1lcyBhbmQgZW1iZWRkZWQgY29udGVudFxuICogMS4gVXNlIGF0dHJpYnV0ZSB0byBhcHBseSB0cmFuc2Zvcm0gaW5zdGFudGx5LiBOZWVkZWQgaWYgdHJhbnNmb3JtIGlzIHRyYW5zaXRpb25lZC5cbiAqIDIuIFJlc2V0IHJlc3BvbnNpdmVuZXNzIGZvciBlbWJlZGRlZCBjb250ZW50XG4gKiAzLiBDZW50ZXIgb2JqZWN0XG4gKiBOb3RlOiBQZXJjZW50IHZhbHVlcyBvbiB0aGUgYHRvcGAgcHJvcGVydHkgb25seSB3b3JrcyBpZiB0aGlzIGVsZW1lbnRcbiAqICAgICAgIGlzIGFic29sdXRlIHBvc2l0aW9uZWQgb3IgaWYgdGhlIGNvbnRhaW5lciBoYXMgYSBoZWlnaHRcbiAqL1xuXG4vKiAxICovXG5bdWstY292ZXJdOndoZXJlKGNhbnZhcywgaWZyYW1lLCBzdmcpLFxuW2RhdGEtdWstY292ZXJdOndoZXJlKGNhbnZhcywgaWZyYW1lLCBzdmcpIHtcbiAgICAvKiAyICovXG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIC8qIDMgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXg6IC01MCU7XG4gICAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteTogLTUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteCksIHZhcigtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS15KSk7XG59XG5cbmlmcmFtZVt1ay1jb3Zlcl0sXG5pZnJhbWVbZGF0YS11ay1jb3Zlcl0geyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5bdWstY292ZXJdOndoZXJlKGltZywgdmlkZW8pLFxuW2RhdGEtdWstY292ZXJdOndoZXJlKGltZywgdmlkZW8pIHtcbiAgICAvKiAzICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBQYXJlbnQgY29udGFpbmVyIHdoaWNoIGNsaXBzIHJlc2l6ZWQgb2JqZWN0XG4gKiAyLiBOZWVkZWQgaWYgdGhlIGNoaWxkIGlzIHBvc2l0aW9uZWQgYWJzb2x1dGUuIFNlZSBub3RlIGFib3ZlXG4gKi9cblxuLnVrLWNvdmVyLWNvbnRhaW5lciB7XG4gICAgLyogMSAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1jb3Zlci1taXNjKSkge0BpbmNsdWRlIGhvb2stY292ZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stY292ZXItbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQmFja2dyb3VuZFxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIGJhY2tncm91bmRzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYmFja2dyb3VuZC0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQmFja2dyb3VuZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyogQ29sb3JcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYmFja2dyb3VuZC1kZWZhdWx0IHsgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtZGVmYXVsdC1iYWNrZ3JvdW5kOyB9XG4udWstYmFja2dyb3VuZC1tdXRlZCB7IGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLW11dGVkLWJhY2tncm91bmQ7IH1cbi51ay1iYWNrZ3JvdW5kLXByaW1hcnkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1wcmltYXJ5LWJhY2tncm91bmQ7IH1cbi51ay1iYWNrZ3JvdW5kLXNlY29uZGFyeSB7IGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLXNlY29uZGFyeS1iYWNrZ3JvdW5kOyB9XG5cblxuLyogU2l6ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1iYWNrZ3JvdW5kLWNvdmVyLFxuLnVrLWJhY2tncm91bmQtY29udGFpbixcbi51ay1iYWNrZ3JvdW5kLXdpZHRoLTEtMSxcbi51ay1iYWNrZ3JvdW5kLWhlaWdodC0xLTEge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnVrLWJhY2tncm91bmQtY292ZXIgeyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4udWstYmFja2dyb3VuZC1jb250YWluIHsgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4udWstYmFja2dyb3VuZC13aWR0aC0xLTEgeyBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IH1cbi51ay1iYWNrZ3JvdW5kLWhlaWdodC0xLTEgeyBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTsgfVxuXG5cbi8qIFBvc2l0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJhY2tncm91bmQtdG9wLWxlZnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbi51ay1iYWNrZ3JvdW5kLXRvcC1jZW50ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDsgfVxuLnVrLWJhY2tncm91bmQtdG9wLXJpZ2h0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwOyB9XG4udWstYmFja2dyb3VuZC1jZW50ZXItbGVmdCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlOyB9XG4udWstYmFja2dyb3VuZC1jZW50ZXItY2VudGVyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTsgfVxuLnVrLWJhY2tncm91bmQtY2VudGVyLXJpZ2h0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7IH1cbi51ay1iYWNrZ3JvdW5kLWJvdHRvbS1sZWZ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlOyB9XG4udWstYmFja2dyb3VuZC1ib3R0b20tY2VudGVyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7IH1cbi51ay1iYWNrZ3JvdW5kLWJvdHRvbS1yaWdodCB7IGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTsgfVxuXG5cbi8qIFJlcGVhdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1iYWNrZ3JvdW5kLW5vcmVwZWF0IHsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG5cbi8qIEF0dGFjaG1lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYmFja2dyb3VuZC1maXhlZCB7IGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7IH1cblxuLypcbiAqIEV4Y2x1ZGUgdG91Y2ggZGV2aWNlcyBiZWNhdXNlIGBmaXhlZGAgZG9lc24ndCB3b3JrIG9uIGlPUyBhbmQgQW5kcm9pZFxuICovXG5cbkBtZWRpYSAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgLnVrLWJhY2tncm91bmQtZml4ZWQgeyBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDsgfVxufVxuXG5cbi8qIEltYWdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogUGhvbmUgcG9ydHJhaXQgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14c21hbGwtbWF4KSB7XG5cbiAgICAudWstYmFja2dyb3VuZC1pbWFnZVxcQHMgeyBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbC1tYXgpIHtcblxuICAgIC51ay1iYWNrZ3JvdW5kLWltYWdlXFxAbSB7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tbWF4KSB7XG5cbiAgICAudWstYmFja2dyb3VuZC1pbWFnZVxcQGwgeyBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBzbWFsbGVyICovXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UtbWF4KSB7XG5cbiAgICAudWstYmFja2dyb3VuZC1pbWFnZVxcQHhsIHtiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG5cbi8qIEJsZW5kIG1vZGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJhY2tncm91bmQtYmxlbmQtbXVsdGlwbHkgeyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5OyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1zY3JlZW4geyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IHNjcmVlbjsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtb3ZlcmxheSB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogb3ZlcmxheTsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtZGFya2VuIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBkYXJrZW47IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWxpZ2h0ZW4geyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGxpZ2h0ZW47IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWNvbG9yLWRvZGdlIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBjb2xvci1kb2RnZTsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtY29sb3ItYnVybiB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogY29sb3ItYnVybjsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtaGFyZC1saWdodCB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogaGFyZC1saWdodDsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtc29mdC1saWdodCB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogc29mdC1saWdodDsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtZGlmZmVyZW5jZSB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtZXhjbHVzaW9uIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBleGNsdXNpb247IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWh1ZSB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogaHVlOyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1zYXR1cmF0aW9uIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBzYXR1cmF0aW9uOyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1jb2xvciB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogY29sb3I7IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWx1bWlub3NpdHkgeyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGx1bWlub3NpdHk7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1iYWNrZ3JvdW5kLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1iYWNrZ3JvdW5kLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWJhY2tncm91bmQtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQWxpZ25cbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIHRvIGFsaWduIGVtYmVkZGVkIGNvbnRlbnRcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1hbGlnbi1sZWZ0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbGlnbi1yaWdodC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYWxpZ24tY2VudGVyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBbGlnblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKi9cblxuW2NsYXNzKj1cInVrLWFsaWduXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAkYWxpZ24tbWFyZ2luLXZlcnRpY2FsO1xufVxuXG4qICsgW2NsYXNzKj1cInVrLWFsaWduXCJdIHsgbWFyZ2luLXRvcDogJGFsaWduLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG4vKlxuICogQ2VudGVyXG4gKi9cblxuLnVrLWFsaWduLWNlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vKlxuICogTGVmdC9SaWdodFxuICovXG5cbi51ay1hbGlnbi1sZWZ0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4udWstYWxpZ24tcmlnaHQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1hbGlnbi1sZWZ0XFxAcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudWstYWxpZ24tcmlnaHRcXEBzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1hbGlnbi1sZWZ0XFxAbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudWstYWxpZ24tcmlnaHRcXEBtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWFsaWduLWxlZnRcXEBsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnVrLWFsaWduLXJpZ2h0XFxAbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAudWstYWxpZ24tbGVmdCxcbiAgICAudWstYWxpZ24tbGVmdFxcQHMsXG4gICAgLnVrLWFsaWduLWxlZnRcXEBtLFxuICAgIC51ay1hbGlnbi1sZWZ0XFxAbCB7IG1hcmdpbi1yaWdodDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsLWw7IH1cblxuICAgIC51ay1hbGlnbi1yaWdodCxcbiAgICAudWstYWxpZ24tcmlnaHRcXEBzLFxuICAgIC51ay1hbGlnbi1yaWdodFxcQG0sXG4gICAgLnVrLWFsaWduLXJpZ2h0XFxAbCB7IG1hcmdpbi1sZWZ0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWwtbDsgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstYWxpZ24tbGVmdFxcQHhsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWwtbDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnVrLWFsaWduLXJpZ2h0XFxAeGwge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsLWw7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1hbGlnbi1taXNjKSkge0BpbmNsdWRlIGhvb2stYWxpZ24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYWxpZ24tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU1ZHXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBzdHlsZSBTVkdzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc3ZnYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTVkdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gRmlsbCBhbGwgU1ZHIGVsZW1lbnRzIHdpdGggdGhlIGN1cnJlbnQgdGV4dCBjb2xvciBpZiBubyBgZmlsbGAgYXR0cmlidXRlIGlzIHNldFxuICogMi4gU2V0IHRoZSBmaWxsIGFuZCBzdHJva2UgY29sb3Igb2YgYWxsIFNWRyBlbGVtZW50cyB0byB0aGUgY3VycmVudCB0ZXh0IGNvbG9yXG4gKi9cblxuLyogMSAqL1xuLnVrLXN2Zyxcbi8qIDIgKi9cbi51ay1zdmc6bm90KC51ay1wcmVzZXJ2ZSkgW2ZpbGwqPVwiI1wiXTpub3QoLnVrLXByZXNlcnZlKSB7IGZpbGw6IGN1cnJlbnRjb2xvcjsgfVxuLnVrLXN2Zzpub3QoLnVrLXByZXNlcnZlKSBbc3Ryb2tlKj1cIiNcIl06bm90KC51ay1wcmVzZXJ2ZSkgeyBzdHJva2U6IGN1cnJlbnRjb2xvcjsgfVxuXG4vKlxuICogRml4IEZpcmVmb3ggYmx1cnJ5IFNWRyByZW5kZXJpbmc6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDY4MzVcbiAqL1xuXG4udWstc3ZnIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1zdmctbWlzYykpIHtAaW5jbHVkZSBob29rLXN2Zy1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1zdmctbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVXRpbGl0eVxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgY29sbGVjdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXBhbmVsLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jbGVhcmZpeGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZsb2F0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVyZmxvdy0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcmVzaXplLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kaXNwbGF5LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1pbmxpbmUtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXJlc3BvbnNpdmUtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXByZXNlcnZlLXdpZHRoYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb2JqZWN0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ib3JkZXItKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJveC1zaGFkb3ctKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJveC1zaGFkb3ctYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcGNhcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxvZ29gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ibGVuZC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNmb3JtLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2Zvcm0tb3JpZ2luLSpgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstZGlzYWJsZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcmFnYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJhZ292ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wcmVzZXJ2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFV0aWxpdHlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIFBhbmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhbmVsIHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstcGFuZWwgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKlxuICogU2Nyb2xsYWJsZVxuICovXG5cbi51ay1wYW5lbC1zY3JvbGxhYmxlIHtcbiAgICBoZWlnaHQ6ICRwYW5lbC1zY3JvbGxhYmxlLWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFuZWwtc2Nyb2xsYWJsZS1wYWRkaW5nO1xuICAgIGJvcmRlcjogJHBhbmVsLXNjcm9sbGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICRwYW5lbC1zY3JvbGxhYmxlLWJvcmRlcjtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICByZXNpemU6IGJvdGg7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhbmVsLXNjcm9sbGFibGUpKSB7QGluY2x1ZGUgaG9vay1wYW5lbC1zY3JvbGxhYmxlKCk7fVxufVxuXG5cbi8qIENsZWFyZml4XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIGB0YWJsZS1jZWxsYCBpcyB1c2VkIHdpdGggYDo6YmVmb3JlYCBiZWNhdXNlIGB0YWJsZWAgY3JlYXRlcyBhIDFweCBnYXAgd2hlbiBpdCBiZWNvbWVzIGEgZmxleCBpdGVtLCBvbmx5IGluIFdlYmtpdFxuICogMi4gYHRhYmxlYCBpcyB1c2VkIGFnYWluIHdpdGggYDo6YWZ0ZXJgIGJlY2F1c2UgYGNsZWFyYCBvbmx5IHdvcmtzIHdpdGggYmxvY2sgZWxlbWVudHMuXG4gKiBOb3RlOiBgZGlzcGxheTogYmxvY2tgIHdpdGggYG92ZXJmbG93OiBoaWRkZW5gIGlzIGN1cnJlbnRseSBub3Qgd29ya2luZyBpbiB0aGUgbGF0ZXN0IFNhZmFyaVxuICovXG5cbi8qIDEgKi9cbi51ay1jbGVhcmZpeDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG59XG5cbi8qIDIgKi9cbi51ay1jbGVhcmZpeDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cblxuLyogRmxvYXRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUHJldmVudCBjb250ZW50IG92ZXJmbG93XG4gKi9cblxuLnVrLWZsb2F0LWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuLnVrLWZsb2F0LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi8qIDEgKi9cbltjbGFzcyo9XCJ1ay1mbG9hdC1cIl0geyBtYXgtd2lkdGg6IDEwMCU7IH1cblxuXG4vKiBPdmVyZmxvd1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1vdmVyZmxvdy1oaWRkZW4geyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qXG4gKiBFbmFibGUgc2Nyb2xsYmFycyBpZiBjb250ZW50IGlzIGNsaXBwZWRcbiAqL1xuXG4udWstb3ZlcmZsb3ctYXV0byB7IG92ZXJmbG93OiBhdXRvOyB9XG5cbi51ay1vdmVyZmxvdy1hdXRvID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogQm94IFNpemluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ib3gtc2l6aW5nLWNvbnRlbnQgeyBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuLnVrLWJveC1zaXppbmctYm9yZGVyIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5cbi8qIFJlc2l6ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1yZXNpemUgeyByZXNpemU6IGJvdGg7IH1cbi51ay1yZXNpemUtaG9yaXpvbnRhbCB7IHJlc2l6ZTogaG9yaXpvbnRhbDsgfVxuLnVrLXJlc2l6ZS12ZXJ0aWNhbCB7IHJlc2l6ZTogdmVydGljYWw7IH1cblxuXG4vKiBEaXNwbGF5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRpc3BsYXktYmxvY2sgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4udWstZGlzcGxheS1pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuLnVrLWRpc3BsYXktaW5saW5lLWJsb2NrIHsgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cblxuXG4vKiBJbmxpbmVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29udGFpbmVyIGZpdHMgaXRzIGNvbnRlbnRcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKiAzLiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqIDQuIEJlaGF2ZSBsaWtlIG1vc3QgaW5saW5lLWJsb2NrIGVsZW1lbnRzXG4gKiA1LiBGb3JjZSBuZXcgbGF5ZXIgd2l0aG91dCBjcmVhdGluZyBhIG5ldyBzdGFja2luZyBjb250ZXh0XG4gKiAgICB0byBmaXggMXB4IGdsaXRjaCB3aGVuIGNvbWJpbmVkIHdpdGggb3ZlcmxheXMgYW5kIHRyYW5zaXRpb25zIGluIFdlYmtpdFxuICogNi4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICovXG5cbltjbGFzcyo9XCJ1ay1pbmxpbmVcIl0ge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiAzICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDQgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDUgKi9cbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnVrLWlubGluZS1jbGlwIHtcbiAgICAvKiA2ICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vKiBSZXNwb25zaXZlIG9iamVjdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJlc2VydmUgb3JpZ2luYWwgZGltZW5zaW9uc1xuICogQmVjYXVzZSBgaW1nLCBgdmlkZW9gLCBgY2FudmFzYCBhbmQgIGBhdWRpb2AgYXJlIGFscmVhZHkgcmVzcG9uc2l2ZSBieSBkZWZhdWx0LCBzZWUgQmFzZSBjb21wb25lbnRcbiAqL1xuXG4udWstcHJlc2VydmUtd2lkdGgsXG4udWstcHJlc2VydmUtd2lkdGggY2FudmFzLFxuLnVrLXByZXNlcnZlLXdpZHRoIGltZyxcbi51ay1wcmVzZXJ2ZS13aWR0aCBzdmcsXG4udWstcHJlc2VydmUtd2lkdGggdmlkZW8geyBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLypcbiAqIFJlc3BvbnNpdmVuZXNzXG4gKiBDb3JyZWN0cyBgbWF4LXdpZHRoYCBhbmQgYG1heC1oZWlnaHRgIGJlaGF2aW9yIGlmIHBhZGRpbmcgYW5kIGJvcmRlciBhcmUgdXNlZFxuICovXG5cbi51ay1yZXNwb25zaXZlLXdpZHRoLFxuLnVrLXJlc3BvbnNpdmUtaGVpZ2h0IHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKlxuICogMS4gU2V0IGEgbWF4aW11bSB3aWR0aC4gYGltcG9ydGFudGAgbmVlZGVkIHRvIG92ZXJyaWRlIGB1ay1wcmVzZXJ2ZS13aWR0aCBpbWdgXG4gKiAyLiBBdXRvIHNjYWxlIHRoZSBoZWlnaHQuIE9ubHkgbmVlZGVkIGlmIGBoZWlnaHRgIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gKi9cblxuLnVrLXJlc3BvbnNpdmUtd2lkdGgge1xuICAgIC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAvKiAyICovXG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKlxuICogMS4gU2V0IGEgbWF4aW11bSBoZWlnaHQuIE9ubHkgd29ya3MgaWYgdGhlIHBhcmVudCBlbGVtZW50IGhhcyBhIGZpeGVkIGhlaWdodFxuICogMi4gQXV0byBzY2FsZSB0aGUgd2lkdGguIE9ubHkgbmVlZGVkIGlmIGB3aWR0aGAgYXR0cmlidXRlIGlzIHByZXNlbnRcbiAqIDMuIFJlc2V0IG1heC13aWR0aCwgd2hpY2ggYGltZywgYHZpZGVvYCwgYGNhbnZhc2AgYW5kICBgYXVkaW9gIGFscmVhZHkgaGF2ZSBieSBkZWZhdWx0XG4gKi9cblxuLnVrLXJlc3BvbnNpdmUtaGVpZ2h0IHtcbiAgICAvKiAxICovXG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAvKiAyICovXG4gICAgd2lkdGg6IGF1dG87XG4gICAgLyogMyAqL1xuICAgIG1heC13aWR0aDogbm9uZTtcbn1cblxuLypcbiAqIEZpeCBpbml0aWFsIGlmcmFtZSB3aWR0aC4gV2l0aG91dCB0aGUgdmlld3BvcnQgaXMgZXhwYW5kZWQgb24gaU9TIGRldmljZXNcbiAqL1xuXG5bdWstcmVzcG9uc2l2ZV0sXG5bZGF0YS11ay1yZXNwb25zaXZlXSB7IG1heC13aWR0aDogMTAwJTsgfVxuXG5cbi8qIE9iamVjdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1vYmplY3QtY292ZXIgeyBvYmplY3QtZml0OiBjb3ZlcjsgfVxuLnVrLW9iamVjdC1jb250YWluIHsgb2JqZWN0LWZpdDogY29udGFpbjsgfVxuLnVrLW9iamVjdC1maWxsIHsgb2JqZWN0LWZpdDogZmlsbDsgfVxuLnVrLW9iamVjdC1ub25lIHsgb2JqZWN0LWZpdDogbm9uZTsgfVxuLnVrLW9iamVjdC1zY2FsZS1kb3duIHsgb2JqZWN0LWZpdDogc2NhbGUtZG93bjsgfVxuXG4vKlxuICogUG9zaXRpb25cbiAqL1xuXG4udWstb2JqZWN0LXRvcC1sZWZ0IHsgb2JqZWN0LXBvc2l0aW9uOiAwIDA7IH1cbi51ay1vYmplY3QtdG9wLWNlbnRlciB7IG9iamVjdC1wb3NpdGlvbjogNTAlIDA7IH1cbi51ay1vYmplY3QtdG9wLXJpZ2h0IHsgb2JqZWN0LXBvc2l0aW9uOiAxMDAlIDA7IH1cbi51ay1vYmplY3QtY2VudGVyLWxlZnQgeyBvYmplY3QtcG9zaXRpb246IDAgNTAlOyB9XG4udWstb2JqZWN0LWNlbnRlci1jZW50ZXIgeyBvYmplY3QtcG9zaXRpb246IDUwJSA1MCU7IH1cbi51ay1vYmplY3QtY2VudGVyLXJpZ2h0IHsgb2JqZWN0LXBvc2l0aW9uOiAxMDAlIDUwJTsgfVxuLnVrLW9iamVjdC1ib3R0b20tbGVmdCB7IG9iamVjdC1wb3NpdGlvbjogMCAxMDAlOyB9XG4udWstb2JqZWN0LWJvdHRvbS1jZW50ZXIgeyBvYmplY3QtcG9zaXRpb246IDUwJSAxMDAlOyB9XG4udWstb2JqZWN0LWJvdHRvbS1yaWdodCB7IG9iamVjdC1wb3NpdGlvbjogMTAwJSAxMDAlOyB9XG5cblxuLyogQm9yZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJvcmRlci1jaXJjbGUgeyBib3JkZXItcmFkaXVzOiA1MCU7IH1cbi51ay1ib3JkZXItcGlsbCB7IGJvcmRlci1yYWRpdXM6IDUwMHB4OyB9XG4udWstYm9yZGVyLXJvdW5kZWQgeyBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJvdW5kZWQtYm9yZGVyLXJhZGl1czsgfVxuXG4vKlxuICogRml4IGBvdmVyZmxvdzogaGlkZGVuYCB0byBiZSBpZ25vcmVkIHdpdGggYm9yZGVyLXJhZGl1cyBhbmQgQ1NTIHRyYW5zZm9ybXMgaW4gV2Via2l0XG4gKi9cblxuLnVrLWlubGluZS1jbGlwW2NsYXNzKj1cInVrLWJvcmRlci1cIl0geyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfVxuXG5cbi8qIEJveC1zaGFkb3dcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYm94LXNoYWRvdy1zbWFsbCB7IGJveC1zaGFkb3c6ICRnbG9iYWwtc21hbGwtYm94LXNoYWRvdzsgfVxuLnVrLWJveC1zaGFkb3ctbWVkaXVtIHsgYm94LXNoYWRvdzogJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdzsgfVxuLnVrLWJveC1zaGFkb3ctbGFyZ2UgeyBib3gtc2hhZG93OiAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3c7IH1cbi51ay1ib3gtc2hhZG93LXhsYXJnZSB7IGJveC1zaGFkb3c6ICRnbG9iYWwteGxhcmdlLWJveC1zaGFkb3c7IH1cblxuLypcbiAqIEhvdmVyXG4gKi9cblxuW2NsYXNzKj1cInVrLWJveC1zaGFkb3ctaG92ZXJcIl0geyB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICRib3gtc2hhZG93LWR1cmF0aW9uIGVhc2UtaW4tb3V0OyB9XG5cbi51ay1ib3gtc2hhZG93LWhvdmVyLXNtYWxsOmhvdmVyIHsgYm94LXNoYWRvdzogJGdsb2JhbC1zbWFsbC1ib3gtc2hhZG93OyB9XG4udWstYm94LXNoYWRvdy1ob3Zlci1tZWRpdW06aG92ZXIgeyBib3gtc2hhZG93OiAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93OyB9XG4udWstYm94LXNoYWRvdy1ob3Zlci1sYXJnZTpob3ZlciB7IGJveC1zaGFkb3c6ICRnbG9iYWwtbGFyZ2UtYm94LXNoYWRvdzsgfVxuLnVrLWJveC1zaGFkb3ctaG92ZXIteGxhcmdlOmhvdmVyIHsgYm94LXNoYWRvdzogJGdsb2JhbC14bGFyZ2UtYm94LXNoYWRvdzsgfVxuXG5cbi8qIEJveC1zaGFkb3cgYm90dG9tXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFNldCBwb3NpdGlvbi5cbiAqIDIuIFNldCBzdHlsZVxuICogMy4gRml4IHNoYWRvdyBiZWluZyBjbGlwcGVkIGluIFNhZmFyaSBpZiBjb250YWluZXIgaXMgYW5pbWF0ZWRcbiAqL1xuXG5Ac3VwcG9ydHMgKGZpbHRlcjogYmx1cigwKSkge1xuXG4gICAgLnVrLWJveC1zaGFkb3ctYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAudWstYm94LXNoYWRvdy1ib3R0b206OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogJGJveC1zaGFkb3ctYm90dG9tLWJvdHRvbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAvKiAyICovXG4gICAgICAgIGhlaWdodDogJGJveC1zaGFkb3ctYm90dG9tLWhlaWdodDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJveC1zaGFkb3ctYm90dG9tLWJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJhY2tncm91bmQ6ICRib3gtc2hhZG93LWJvdHRvbS1iYWNrZ3JvdW5kO1xuICAgICAgICBmaWx0ZXI6IGJsdXIoJGJveC1zaGFkb3ctYm90dG9tLWJsdXIpO1xuICAgICAgICAvKiAzICovXG4gICAgICAgIHdpbGwtY2hhbmdlOiBmaWx0ZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ib3gtc2hhZG93LWJvdHRvbSkpIHtAaW5jbHVkZSBob29rLWJveC1zaGFkb3ctYm90dG9tKCk7fVxuICAgIH1cblxufVxuXG5cbi8qIERyb3AgY2FwXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEZpcmVmb3ggZG9lc24ndCBhcHBseSBgOjpmaXJzdC1sZXR0ZXJgIGlmIHRoZSBmaXJzdCBsZXR0ZXIgaXMgaW5zaWRlIGNoaWxkIGVsZW1lbnRzXG4gKiAgICBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQwMDRcbiAqIDIuIEluIEZpcmVmb3gsIGEgZmxvYXRpbmcgYDo6Zmlyc3QtbGV0dGVyYCBkb2Vzbid0IGhhdmUgYSBsaW5lIGJveCBhbmQgdGhlcmUgZm9yIG5vIGBsaW5lLWhlaWdodGBcbiAqICAgIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTMxNzkzM1xuICovXG5cbi51ay1kcm9wY2FwOjpmaXJzdC1sZXR0ZXIsXG4vKiAxICovXG4udWstZHJvcGNhcCA+IHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wY2FwLW1hcmdpbi1yaWdodDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6ICRkcm9wY2FwLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGRyb3BjYXAtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3BjYXApKSB7QGluY2x1ZGUgaG9vay1kcm9wY2FwKCk7fVxufVxuXG4vKiAyICovXG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuXG4gIC51ay1kcm9wY2FwOjpmaXJzdC1sZXR0ZXIsXG4gIC51ay1kcm9wY2FwID4gcDpmaXJzdC1vZi10eXBlOjpmaXJzdC1sZXR0ZXIgeyBtYXJnaW4tdG9wOiAxLjElOyB9XG5cbn1cblxuXG4vKiBMb2dvXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFN0eWxlXG4gKiAyLiBSZXF1aXJlZCBmb3IgYGFgXG4gKiAzLiBCZWhhdmUgbGlrZSBpbWFnZSBidXQgY2FuIGJlIG92ZXJyaWRkZW4gdGhyb3VnaCBmbGV4IHV0aWxpdHkgY2xhc3Nlc1xuICovXG5cbi51ay1sb2dvIHtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAkbG9nby1mb250LXNpemU7XG4gICAgZm9udC1mYW1pbHk6ICRsb2dvLWZvbnQtZmFtaWx5O1xuICAgIGNvbG9yOiAkbG9nby1jb2xvcjtcbiAgICAvKiAyICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1sb2dvKSkge0BpbmNsdWRlIGhvb2stbG9nbygpO31cbn1cblxuLyogMyAqL1xuOndoZXJlKC51ay1sb2dvKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIEhvdmVyICovXG4udWstbG9nbzpob3ZlciB7XG4gICAgY29sb3I6ICRsb2dvLWhvdmVyLWNvbG9yO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxvZ28taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1sb2dvLWhvdmVyKCk7fVxufVxuXG4udWstbG9nbyA6d2hlcmUoaW1nLCBzdmcsIHZpZGVvKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi51ay1sb2dvLWludmVyc2UgeyBkaXNwbGF5OiBub25lOyB9XG5cblxuLyogRGlzYWJsZWQgU3RhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZGlzYWJsZWQgeyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5cbi8qIERyYWcgU3RhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gTmVlZGVkIGlmIG1vdmluZyBvdmVyIGVsZW1lbnRzIHdpdGggaGF2ZSB0aGVpciBvd24gY3Vyc29yIG9uIGhvdmVyLCBlLmcuIGxpbmtzIG9yIGJ1dHRvbnNcbiAqIDIuIEZpeCBkcmFnZ2luZyBvdmVyIGlmcmFtZXNcbiAqL1xuXG4udWstZHJhZyxcbi8qIDEgKi9cbi51ay1kcmFnICogeyBjdXJzb3I6IG1vdmU7IH1cblxuLyogMiAqL1xuLnVrLWRyYWcgaWZyYW1lIHsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuXG4vKiBEcmFnb3ZlciBTdGF0ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDcmVhdGUgYSBib3gtc2hhZG93IHdoZW4gZHJhZ2dpbmcgYSBmaWxlIG92ZXIgdGhlIHVwbG9hZCBhcmVhXG4gKi9cblxuLnVrLWRyYWdvdmVyIHsgYm94LXNoYWRvdzogJGRyYWdvdmVyLWJveC1zaGFkb3c7IH1cblxuXG4vKiBCbGVuZCBtb2Rlc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ibGVuZC1tdWx0aXBseSB7IG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTsgfVxuLnVrLWJsZW5kLXNjcmVlbiB7IG1peC1ibGVuZC1tb2RlOiBzY3JlZW47IH1cbi51ay1ibGVuZC1vdmVybGF5IHsgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7IH1cbi51ay1ibGVuZC1kYXJrZW4geyBtaXgtYmxlbmQtbW9kZTogZGFya2VuOyB9XG4udWstYmxlbmQtbGlnaHRlbiB7IG1peC1ibGVuZC1tb2RlOiBsaWdodGVuOyB9XG4udWstYmxlbmQtY29sb3ItZG9kZ2UgeyBtaXgtYmxlbmQtbW9kZTogY29sb3ItZG9kZ2U7IH1cbi51ay1ibGVuZC1jb2xvci1idXJuIHsgbWl4LWJsZW5kLW1vZGU6IGNvbG9yLWJ1cm47IH1cbi51ay1ibGVuZC1oYXJkLWxpZ2h0IHsgbWl4LWJsZW5kLW1vZGU6IGhhcmQtbGlnaHQ7IH1cbi51ay1ibGVuZC1zb2Z0LWxpZ2h0IHsgbWl4LWJsZW5kLW1vZGU6IHNvZnQtbGlnaHQ7IH1cbi51ay1ibGVuZC1kaWZmZXJlbmNlIHsgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7IH1cbi51ay1ibGVuZC1leGNsdXNpb24geyBtaXgtYmxlbmQtbW9kZTogZXhjbHVzaW9uOyB9XG4udWstYmxlbmQtaHVlIHsgbWl4LWJsZW5kLW1vZGU6IGh1ZTsgfVxuLnVrLWJsZW5kLXNhdHVyYXRpb24geyBtaXgtYmxlbmQtbW9kZTogc2F0dXJhdGlvbjsgfVxuLnVrLWJsZW5kLWNvbG9yIHsgbWl4LWJsZW5kLW1vZGU6IGNvbG9yOyB9XG4udWstYmxlbmQtbHVtaW5vc2l0eSB7IG1peC1ibGVuZC1tb2RlOiBsdW1pbm9zaXR5OyB9XG5cblxuLyogVHJhbnNmb3JtXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdHJhbnNmb3JtLWNlbnRlciB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cblxuLyogVHJhbnNmb3JtIE9yaWdpblxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tdG9wLWxlZnQgeyB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7IH1cbi51ay10cmFuc2Zvcm0tb3JpZ2luLXRvcC1jZW50ZXIgeyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsgfVxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tdG9wLXJpZ2h0IHsgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwOyB9XG4udWstdHJhbnNmb3JtLW9yaWdpbi1jZW50ZXItbGVmdCB7IHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlOyB9XG4udWstdHJhbnNmb3JtLW9yaWdpbi1jZW50ZXItcmlnaHQgeyB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsgfVxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tYm90dG9tLWxlZnQgeyB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7IH1cbi51ay10cmFuc2Zvcm0tb3JpZ2luLWJvdHRvbS1jZW50ZXIgeyB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsgfVxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tYm90dG9tLXJpZ2h0IHsgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdXRpbGl0eS1taXNjKSkge0BpbmNsdWRlIGhvb2stdXRpbGl0eS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1wYW5lbC1zY3JvbGxhYmxlKCl7fVxuLy8gQG1peGluIGhvb2stYm94LXNoYWRvdy1ib3R0b20oKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wY2FwKCl7fVxuLy8gQG1peGluIGhvb2stbG9nbygpe31cbi8vIEBtaXhpbiBob29rLWxvZ28taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay11dGlsaXR5LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZHJvcGNhcCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbG9nbygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbG9nby1ob3Zlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRmxleFxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIGxheW91dHMgYmFzZWQgb24gZmxleGJveFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWZsZXgtKmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRmxleFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1mbGV4IHsgZGlzcGxheTogZmxleDsgfVxuLnVrLWZsZXgtaW5saW5lIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cblxuXG4vKiBBbGlnbm1lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWxpZ24gaXRlbXMgYWxvbmcgdGhlIG1haW4gYXhpcyBvZiB0aGUgY3VycmVudCBsaW5lIG9mIHRoZSBmbGV4IGNvbnRhaW5lclxuICogUm93OiBIb3Jpem9udGFsXG4gKi9cblxuLy8gRGVmYXVsdFxuLnVrLWZsZXgtbGVmdCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuLnVrLWZsZXgtY2VudGVyIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbi51ay1mbGV4LXJpZ2h0IHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuLnVrLWZsZXgtYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuLnVrLWZsZXgtYXJvdW5kIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWZsZXgtbGVmdFxcQHMgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAudWstZmxleC1jZW50ZXJcXEBzIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAudWstZmxleC1yaWdodFxcQHMgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLnVrLWZsZXgtYmV0d2VlblxcQHMgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAudWstZmxleC1hcm91bmRcXEBzIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1mbGV4LWxlZnRcXEBtIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLnVrLWZsZXgtY2VudGVyXFxAbSB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnVrLWZsZXgtcmlnaHRcXEBtIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC51ay1mbGV4LWJldHdlZW5cXEBtIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLnVrLWZsZXgtYXJvdW5kXFxAbSB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LWxlZnRcXEBsIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLnVrLWZsZXgtY2VudGVyXFxAbCB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnVrLWZsZXgtcmlnaHRcXEBsIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC51ay1mbGV4LWJldHdlZW5cXEBsIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLnVrLWZsZXgtYXJvdW5kXFxAbCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LWxlZnRcXEB4bCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC51ay1mbGV4LWNlbnRlclxcQHhsIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAudWstZmxleC1yaWdodFxcQHhsIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC51ay1mbGV4LWJldHdlZW5cXEB4bCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC51ay1mbGV4LWFyb3VuZFxcQHhsIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxufVxuXG4vKlxuICogQWxpZ24gaXRlbXMgaW4gdGhlIGNyb3NzIGF4aXMgb2YgdGhlIGN1cnJlbnQgbGluZSBvZiB0aGUgZmxleCBjb250YWluZXJcbiAqIFJvdzogVmVydGljYWxcbiAqL1xuXG4vLyBEZWZhdWx0XG4udWstZmxleC1zdHJldGNoIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbi51ay1mbGV4LXRvcCB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4udWstZmxleC1taWRkbGUgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4udWstZmxleC1ib3R0b20geyBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWZsZXgtc3RyZXRjaFxcQHMgeyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAgIC51ay1mbGV4LXRvcFxcQHMgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAgIC51ay1mbGV4LW1pZGRsZVxcQHMgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnVrLWZsZXgtYm90dG9tXFxAcyB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWZsZXgtc3RyZXRjaFxcQG0geyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAgIC51ay1mbGV4LXRvcFxcQG0geyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAgIC51ay1mbGV4LW1pZGRsZVxcQG0geyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnVrLWZsZXgtYm90dG9tXFxAbSB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstZmxleC1zdHJldGNoXFxAbCB7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gICAgLnVrLWZsZXgtdG9wXFxAbCB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLnVrLWZsZXgtbWlkZGxlXFxAbCB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAudWstZmxleC1ib3R0b21cXEBsIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LXN0cmV0Y2hcXEB4bCB7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gICAgLnVrLWZsZXgtdG9wXFxAeGwgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAgIC51ay1mbGV4LW1pZGRsZVxcQHhsIHsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC51ay1mbGV4LWJvdHRvbVxcQHhsIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbn1cblxuXG4vKiBEaXJlY3Rpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBEZWZhdWx0XG4udWstZmxleC1yb3cgeyBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4udWstZmxleC1yb3ctcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuLnVrLWZsZXgtY29sdW1uIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuLnVrLWZsZXgtY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWZsZXgtcm93XFxAcyB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAudWstZmxleC1jb2x1bW5cXEBzIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWZsZXgtcm93XFxAbSB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAudWstZmxleC1jb2x1bW5cXEBtIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstZmxleC1yb3dcXEBsIHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC51ay1mbGV4LWNvbHVtblxcQGwgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LXJvd1xcQHhsIHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC51ay1mbGV4LWNvbHVtblxcQHhsIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG59XG5cblxuLyogV3JhcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vIERlZmF1bHRcbi51ay1mbGV4LW5vd3JhcCB7IGZsZXgtd3JhcDogbm93cmFwOyB9XG4udWstZmxleC13cmFwIHsgZmxleC13cmFwOiB3cmFwOyB9XG4udWstZmxleC13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTsgfVxuXG4vKlxuICogQWxpZ25zIGl0ZW1zIHdpdGhpbiB0aGUgZmxleCBjb250YWluZXIgd2hlbiB0aGVyZSBpcyBleHRyYSBzcGFjZSBpbiB0aGUgY3Jvc3MtYXhpc1xuICogT25seSB3b3JrcyBpZiB0aGVyZSBpcyBtb3JlIHRoYW4gb25lIGxpbmUgb2YgZmxleCBpdGVtc1xuICovXG5cbi8vIERlZmF1bHRcbi51ay1mbGV4LXdyYXAtc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7IH1cbi51ay1mbGV4LXdyYXAtdG9wIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydDsgfVxuLnVrLWZsZXgtd3JhcC1taWRkbGUgeyBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cbi51ay1mbGV4LXdyYXAtYm90dG9tIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQ7IH1cbi51ay1mbGV4LXdyYXAtYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbi51ay1mbGV4LXdyYXAtYXJvdW5kIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cblxuLyogSXRlbSBvcmRlcmluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0IGlzIDBcbiAqL1xuXG4udWstZmxleC1maXJzdCB7IG9yZGVyOiAtMTt9XG4udWstZmxleC1sYXN0IHsgb3JkZXI6IDk5O31cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWZsZXgtZmlyc3RcXEBzIHsgb3JkZXI6IC0xOyB9XG4gICAgLnVrLWZsZXgtbGFzdFxcQHMgeyBvcmRlcjogOTk7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1mbGV4LWZpcnN0XFxAbSB7IG9yZGVyOiAtMTsgfVxuICAgIC51ay1mbGV4LWxhc3RcXEBtIHsgb3JkZXI6IDk5OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LWZpcnN0XFxAbCB7IG9yZGVyOiAtMTsgfVxuICAgIC51ay1mbGV4LWxhc3RcXEBsIHsgb3JkZXI6IDk5OyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LWZpcnN0XFxAeGwgeyBvcmRlcjogLTE7IH1cbiAgICAudWstZmxleC1sYXN0XFxAeGwgeyBvcmRlcjogOTk7IH1cblxufVxuXG5cbi8qIEl0ZW0gZGltZW5zaW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBJbml0aWFsOiAwIDEgYXV0b1xuICogQ29udGVudCBkaW1lbnNpb25zLCBidXQgc2hyaW5rc1xuICovXG5cbi51ay1mbGV4LWluaXRpYWwgeyBmbGV4OiBpbml0aWFsOyB9XG5cbi8qXG4gKiBObyBGbGV4OiAwIDAgYXV0b1xuICogQ29udGVudCBkaW1lbnNpb25zXG4gKi9cblxuLnVrLWZsZXgtbm9uZSB7IGZsZXg6IG5vbmU7IH1cblxuLypcbiAqIFJlbGF0aXZlIEZsZXg6IDEgMSBhdXRvXG4gKiBTcGFjZSBpcyBhbGxvY2F0ZWQgY29uc2lkZXJpbmcgY29udGVudFxuICovXG5cbi51ay1mbGV4LWF1dG8geyBmbGV4OiBhdXRvOyB9XG5cbi8qXG4gKiBBYnNvbHV0ZSBGbGV4OiAxIDEgMCVcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBzb2xlbHkgYmFzZWQgb24gZmxleFxuICovXG5cbi51ay1mbGV4LTEgeyBmbGV4OiAxOyB9XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1mbGV4LWluaXRpYWxcXEBzIHsgZmxleDogaW5pdGlhbDsgfVxuICAgIC51ay1mbGV4LW5vbmVcXEBzIHsgZmxleDogbm9uZTsgfVxuICAgIC51ay1mbGV4LTFcXEBzIHsgZmxleDogMTsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWZsZXgtaW5pdGlhbFxcQG0geyBmbGV4OiBpbml0aWFsOyB9XG4gICAgLnVrLWZsZXgtbm9uZVxcQG0geyBmbGV4OiBub25lOyB9XG4gICAgLnVrLWZsZXgtMVxcQG0geyBmbGV4OiAxOyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LWluaXRpYWxcXEBsIHsgZmxleDogaW5pdGlhbDsgfVxuICAgIC51ay1mbGV4LW5vbmVcXEBsIHsgZmxleDogbm9uZTsgfVxuICAgIC51ay1mbGV4LTFcXEBsIHsgZmxleDogMTsgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstZmxleC1pbml0aWFsXFxAeGwgeyBmbGV4OiBpbml0aWFsOyB9XG4gICAgLnVrLWZsZXgtbm9uZVxcQHhsIHsgZmxleDogbm9uZTsgfVxuICAgIC51ay1mbGV4LTFcXEB4bCB7IGZsZXg6IDE7IH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWZsZXgtbWlzYykpIHtAaW5jbHVkZSBob29rLWZsZXgtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stZmxleC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBNYXJnaW5cbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIGZvciBtYXJnaW5zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbWFyZ2luLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tYXJnaW4tc21hbGwtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1hcmdpbi1tZWRpdW0tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1hcmdpbi1sYXJnZS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbWFyZ2luLXhsYXJnZS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbWFyZ2luLXJlbW92ZS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbWFyZ2luLWF1dG8tKmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBNYXJnaW5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1tYXJnaW4geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLW1hcmdpbjsgfVxuKiArIC51ay1tYXJnaW4geyBtYXJnaW4tdG9wOiAkbWFyZ2luLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cbi51ay1tYXJnaW4tdG9wIHsgbWFyZ2luLXRvcDogJG1hcmdpbi1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWxlZnQgeyBtYXJnaW4tbGVmdDogJG1hcmdpbi1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1yaWdodCB7IG1hcmdpbi1yaWdodDogJG1hcmdpbi1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG5cbi8qIFhTbWFsbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1tYXJnaW4teHNtYWxsIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi14c21hbGwtbWFyZ2luOyB9XG4qICsgLnVrLW1hcmdpbi14c21hbGwgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLXhzbWFsbC1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG4udWstbWFyZ2luLXhzbWFsbC10b3AgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLXhzbWFsbC1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi14c21hbGwtYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi14c21hbGwtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4teHNtYWxsLWxlZnQgeyBtYXJnaW4tbGVmdDogJG1hcmdpbi14c21hbGwtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4teHNtYWxsLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLXhzbWFsbC1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG5cbi8qIFNtYWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1hcmdpbi1zbWFsbCB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4tc21hbGwtbWFyZ2luOyB9XG4qICsgLnVrLW1hcmdpbi1zbWFsbCB7IG1hcmdpbi10b3A6ICRtYXJnaW4tc21hbGwtbWFyZ2luICFpbXBvcnRhbnQ7IH1cblxuLnVrLW1hcmdpbi1zbWFsbC10b3AgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLXNtYWxsLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXNtYWxsLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4tc21hbGwtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tc21hbGwtbGVmdCB7IG1hcmdpbi1sZWZ0OiAkbWFyZ2luLXNtYWxsLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXNtYWxsLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLXNtYWxsLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cblxuLyogTWVkaXVtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1hcmdpbi1tZWRpdW0geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLW1lZGl1bS1tYXJnaW47IH1cbiogKyAudWstbWFyZ2luLW1lZGl1bSB7IG1hcmdpbi10b3A6ICRtYXJnaW4tbWVkaXVtLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cbi51ay1tYXJnaW4tbWVkaXVtLXRvcCB7IG1hcmdpbi10b3A6ICRtYXJnaW4tbWVkaXVtLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLW1lZGl1bS1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLW1lZGl1bS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1tZWRpdW0tbGVmdCB7IG1hcmdpbi1sZWZ0OiAkbWFyZ2luLW1lZGl1bS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1tZWRpdW0tcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4tbWVkaXVtLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cblxuLyogTGFyZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbWFyZ2luLWxhcmdlIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1sYXJnZS1tYXJnaW47IH1cbiogKyAudWstbWFyZ2luLWxhcmdlIHsgbWFyZ2luLXRvcDogJG1hcmdpbi1sYXJnZS1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG4udWstbWFyZ2luLWxhcmdlLXRvcCB7IG1hcmdpbi10b3A6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tbGFyZ2UtYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1sYXJnZS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1sYXJnZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tbGFyZ2UtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tbGFyZ2UgeyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWxhcmdlLW1hcmdpbi1sOyB9XG4gICAgKiArIC51ay1tYXJnaW4tbGFyZ2UgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLWxhcmdlLW1hcmdpbi1sICFpbXBvcnRhbnQ7IH1cblxuICAgIC51ay1tYXJnaW4tbGFyZ2UtdG9wIHsgbWFyZ2luLXRvcDogJG1hcmdpbi1sYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1sYXJnZS1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWxhcmdlLW1hcmdpbi1sICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLWxhcmdlLWxlZnQgeyBtYXJnaW4tbGVmdDogJG1hcmdpbi1sYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1sYXJnZS1yaWdodCB7IG1hcmdpbi1yaWdodDogJG1hcmdpbi1sYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG5cbn1cblxuXG4vKiBYTGFyZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbWFyZ2luLXhsYXJnZSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4teGxhcmdlLW1hcmdpbjsgfVxuKiArIC51ay1tYXJnaW4teGxhcmdlIHsgbWFyZ2luLXRvcDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cblxuLnVrLW1hcmdpbi14bGFyZ2UtdG9wIHsgbWFyZ2luLXRvcDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4teGxhcmdlLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4teGxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXhsYXJnZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICRtYXJnaW4teGxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXhsYXJnZS1yaWdodCB7IG1hcmdpbi1yaWdodDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4teGxhcmdlIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi14bGFyZ2UtbWFyZ2luLWw7IH1cbiAgICAqICsgLnVrLW1hcmdpbi14bGFyZ2UgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLXhsYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG5cbiAgICAudWstbWFyZ2luLXhsYXJnZS10b3AgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLXhsYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi14bGFyZ2UtYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi14bGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4teGxhcmdlLWxlZnQgeyBtYXJnaW4tbGVmdDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4teGxhcmdlLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLXhsYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG5cbn1cblxuXG4vKiBBdXRvXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1hcmdpbi1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4udWstbWFyZ2luLWF1dG8tdG9wIHsgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWF1dG8tYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWF1dG8tbGVmdCB7IG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tYXV0by1yaWdodCB7IG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi51ay1tYXJnaW4tYXV0by12ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLW1hcmdpbi1hdXRvXFxAcyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC51ay1tYXJnaW4tYXV0by1sZWZ0XFxAcyB7IG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLWF1dG8tcmlnaHRcXEBzIHsgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1tYXJnaW4tYXV0b1xcQG0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudWstbWFyZ2luLWF1dG8tbGVmdFxcQG0geyBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1hdXRvLXJpZ2h0XFxAbSB7IG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tYXV0b1xcQGwge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudWstbWFyZ2luLWF1dG8tbGVmdFxcQGwgeyBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1hdXRvLXJpZ2h0XFxAbCB7IG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tYXV0b1xcQHhsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnVrLW1hcmdpbi1hdXRvLWxlZnRcXEB4bCB7IG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLWF1dG8tcmlnaHRcXEB4bCB7IG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbn1cblxuXG4vKiBSZW1vdmVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbWFyZ2luLXJlbW92ZSB7IG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXJlbW92ZS10b3AgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tcmVtb3ZlLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1yZW1vdmUtbGVmdCB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnVrLW1hcmdpbi1yZW1vdmUtdmVydGljYWwge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1tYXJnaW4tcmVtb3ZlLWFkamFjZW50ICsgKixcbi51ay1tYXJnaW4tcmVtb3ZlLWZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXJlbW92ZS1sYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLW1hcmdpbi1yZW1vdmUtbGVmdFxcQHMgeyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1yZW1vdmUtcmlnaHRcXEBzIHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLWxlZnRcXEBtIHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0XFxAbSB7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLWxlZnRcXEBsIHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0XFxAbCB7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLWxlZnRcXEB4bCB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLXJlbW92ZS1yaWdodFxcQHhsIHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLW1hcmdpbi1taXNjKSkge0BpbmNsdWRlIGhvb2stbWFyZ2luLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLW1hcmdpbi1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBQYWRkaW5nXG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyBmb3IgcGFkZGluZ1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXBhZGRpbmdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYWRkaW5nLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFkZGluZy1yZW1vdmUtKmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQYWRkaW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhZGRpbmcgeyBwYWRkaW5nOiAkcGFkZGluZy1wYWRkaW5nOyB9XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstcGFkZGluZyB7IHBhZGRpbmc6ICRwYWRkaW5nLXBhZGRpbmctbDsgfVxuXG59XG5cblxuLyogU21hbGxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGFkZGluZy1zbWFsbCB7IHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXBhZGRpbmc7IH1cblxuXG4vKiBMYXJnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYWRkaW5nLWxhcmdlIHsgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtcGFkZGluZzsgfVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLXBhZGRpbmctbGFyZ2UgeyBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS1wYWRkaW5nLWw7IH1cblxufVxuXG5cbi8qIFJlbW92ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYWRkaW5nLXJlbW92ZSB7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuLnVrLXBhZGRpbmctcmVtb3ZlLXRvcCB7IHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi51ay1wYWRkaW5nLXJlbW92ZS1ib3R0b20geyBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4udWstcGFkZGluZy1yZW1vdmUtbGVmdCB7IHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4udWstcGFkZGluZy1yZW1vdmUtcmlnaHQgeyBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnVrLXBhZGRpbmctcmVtb3ZlLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51ay1wYWRkaW5nLXJlbW92ZS1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stcGFkZGluZy1taXNjKSkge0BpbmNsdWRlIGhvb2stcGFkZGluZy1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1wYWRkaW5nLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFBvc2l0aW9uXG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyB0byBwb3NpdGlvbiBjb250ZW50XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstcG9zaXRpb24tYWJzb2x1dGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1yZWxhdGl2ZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLXotaW5kZXhgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi10b3BgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1ib3R0b21gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi10b3AtbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLXRvcC1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi10b3AtcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1ib3R0b20tbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLWJvdHRvbS1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1ib3R0b20tcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1jZW50ZXItbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLWNlbnRlci1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLWNvdmVyYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXBvc2l0aW9uLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tbWVkaXVtYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tbGFyZ2VgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQb3NpdGlvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbjpyb290IHsgLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0OiAwcHg7IH1cblxuXG4vKiBEaXJlY3Rpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFByZXZlbnQgY29udGVudCBvdmVyZmxvdy5cbiAqL1xuXG5bY2xhc3MqPVwidWstcG9zaXRpb24tdG9wXCJdLFxuW2NsYXNzKj1cInVrLXBvc2l0aW9uLWJvdHRvbVwiXSxcbltjbGFzcyo9XCJ1ay1wb3NpdGlvbi1sZWZ0XCJdLFxuW2NsYXNzKj1cInVrLXBvc2l0aW9uLXJpZ2h0XCJdLFxuW2NsYXNzKj1cInVrLXBvc2l0aW9uLWNlbnRlclwiXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgLyogMSAqL1xuICAgIG1heC13aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC0gKHZhcigtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQpICogMikpJyk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLypcbiAqIEVkZ2VzXG4gKiBEb24ndCB1c2UgYHdpZHRoOiAxMDAlYCBiZWNhdXNlIGl0J3Mgd3JvbmcgaWYgdGhlIHBhcmVudCBoYXMgcGFkZGluZy5cbiAqL1xuXG4udWstcG9zaXRpb24tdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1sZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1yaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbn1cblxuLypcbiAqIENvcm5lcnNcbiAqL1xuXG4udWstcG9zaXRpb24tdG9wLWxlZnQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4udWstcG9zaXRpb24tdG9wLXJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1ib3R0b20tbGVmdCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1ib3R0b20tcmlnaHQge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbn1cblxuLypcbiAqIENlbnRlclxuICogMS4gRml4IHRleHQgd3JhcHBpbmcgaWYgY29udGVudCBpcyBsYXJnZXIgdGhhbiA1MCUgb2YgdGhlIGNvbnRhaW5lci5cbiAqICAgIFVzaW5nIGBtYXgtY29udGVudGAgcmVxdWlyZXMgYG1heC13aWR0aGAgb2YgMTAwJSB3aGljaCBpcyBzZXQgZ2VuZXJhbGx5LlxuICovXG5cbi51ay1wb3NpdGlvbi1jZW50ZXIge1xuICAgIHRvcDogdW5xdW90ZSgnY2FsYyg1MCUgLSB2YXIoLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0KSknKTtcbiAgICBsZWZ0OiB1bnF1b3RlKCdjYWxjKDUwJSAtIHZhcigtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQpKScpO1xuICAgIC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXg6IC01MCU7XG4gICAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteTogLTUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSh2YXIoLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteCksIHZhcigtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS15KSk7XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLyogVmVydGljYWwgKi9cbltjbGFzcyo9XCJ1ay1wb3NpdGlvbi1jZW50ZXItbGVmdFwiXSxcbltjbGFzcyo9XCJ1ay1wb3NpdGlvbi1jZW50ZXItcmlnaHRcIl0sXG4udWstcG9zaXRpb24tY2VudGVyLXZlcnRpY2FsIHtcbiAgICB0b3A6IHVucXVvdGUoJ2NhbGMoNTAlIC0gdmFyKC0tdWstcG9zaXRpb24tbWFyZ2luLW9mZnNldCkpJyk7XG4gICAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteTogLTUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCB2YXIoLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteSkpO1xufVxuXG4udWstcG9zaXRpb24tY2VudGVyLWxlZnQgeyBsZWZ0OiAwOyB9XG4udWstcG9zaXRpb24tY2VudGVyLXJpZ2h0IHsgcmlnaHQ6IDA7IH1cbi51ay1wb3NpdGlvbi1jZW50ZXItdmVydGljYWwge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1jZW50ZXItbGVmdC1vdXQge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLnVrLXBvc2l0aW9uLWNlbnRlci1yaWdodC1vdXQge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xufVxuXG4vKiBIb3Jpem9udGFsICovXG4udWstcG9zaXRpb24tdG9wLWNlbnRlcixcbi51ay1wb3NpdGlvbi1ib3R0b20tY2VudGVyLFxuLnVrLXBvc2l0aW9uLWNlbnRlci1ob3Jpem9udGFsIHtcbiAgICBsZWZ0OiB1bnF1b3RlKCdjYWxjKDUwJSAtIHZhcigtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQpKScpO1xuICAgIC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXg6IC01MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUodmFyKC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXgpLCAwKTtcbiAgICAvKiAxICovXG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xufVxuXG4udWstcG9zaXRpb24tdG9wLWNlbnRlciB7IHRvcDogMDsgfVxuLnVrLXBvc2l0aW9uLWJvdHRvbS1jZW50ZXIgeyBib3R0b206IDA7IH1cbi51ay1wb3NpdGlvbi1jZW50ZXItaG9yaXpvbnRhbCB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbn1cblxuLypcbiAqIENvdmVyXG4gKi9cblxuLnVrLXBvc2l0aW9uLWNvdmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG5cbi8qIE1hcmdpblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wb3NpdGlvbi1zbWFsbCB7XG4gICAgbWFyZ2luOiAkcG9zaXRpb24tc21hbGwtbWFyZ2luO1xuICAgIC0tdWstcG9zaXRpb24tbWFyZ2luLW9mZnNldDogI3skcG9zaXRpb24tc21hbGwtbWFyZ2lufTtcbn1cblxuLnVrLXBvc2l0aW9uLW1lZGl1bSB7XG4gICAgbWFyZ2luOiAkcG9zaXRpb24tbWVkaXVtLW1hcmdpbjtcbiAgICAtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQ6ICN7JHBvc2l0aW9uLW1lZGl1bS1tYXJnaW59O1xufVxuXG4udWstcG9zaXRpb24tbGFyZ2Uge1xuICAgIG1hcmdpbjogJHBvc2l0aW9uLWxhcmdlLW1hcmdpbjtcbiAgICAtLXVrLXBvc2l0aW9uLW1hcmdpbi1vZmZzZXQ6ICN7JHBvc2l0aW9uLWxhcmdlLW1hcmdpbn07XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstcG9zaXRpb24tbGFyZ2Uge1xuICAgICAgICBtYXJnaW46ICRwb3NpdGlvbi1sYXJnZS1tYXJnaW4tbDtcbiAgICAgICAgLS11ay1wb3NpdGlvbi1tYXJnaW4tb2Zmc2V0OiAjeyRwb3NpdGlvbi1sYXJnZS1tYXJnaW4tbH07XG4gICAgfVxuXG59XG5cblxuLyogU2NoZW1lc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wb3NpdGlvbi1yZWxhdGl2ZSB7IHBvc2l0aW9uOiByZWxhdGl2ZSAgIWltcG9ydGFudDsgfVxuLnVrLXBvc2l0aW9uLWFic29sdXRlIHsgcG9zaXRpb246IGFic29sdXRlICAhaW1wb3J0YW50OyB9XG4udWstcG9zaXRpb24tZml4ZWQgeyBwb3NpdGlvbjogZml4ZWQgICFpbXBvcnRhbnQ7IH1cbi51ay1wb3NpdGlvbi1zdGlja3kgeyBwb3NpdGlvbjogc3RpY2t5ICAhaW1wb3J0YW50OyB9XG5cblxuLyogTGF5ZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcG9zaXRpb24tei1pbmRleCB7IHotaW5kZXg6IDE7IH1cbi51ay1wb3NpdGlvbi16LWluZGV4LXplcm8geyB6LWluZGV4OiAwOyB9XG4udWstcG9zaXRpb24tei1pbmRleC1uZWdhdGl2ZSB7IHotaW5kZXg6IC0xOyB9XG4udWstcG9zaXRpb24tei1pbmRleC1oaWdoIHsgei1pbmRleDogJGdsb2JhbC16LWluZGV4IC0gMTA7IH0gLy8gSGlnaGVyIHRoYW4gZHJvcGJhciBzbyBpdCBpcyBiZWhpbmRcblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1wb3NpdGlvbi1taXNjKSkge0BpbmNsdWRlIGhvb2stcG9zaXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stcG9zaXRpb24tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVHJhbnNpdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIHRyYW5zaXRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdHJhbnNpdGlvbi0qYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXRyYW5zaXRpb24tZmFkZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zaXRpb24tc2NhbGUtdXBgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2l0aW9uLXNjYWxlLWRvd25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2l0aW9uLXNsaWRlLXRvcC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1zbGlkZS1ib3R0b20tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zaXRpb24tc2xpZGUtbGVmdC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1zbGlkZS1yaWdodC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1vcGFxdWVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2l0aW9uLXNsb3dgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2l0aW9uLWRpc2FibGVgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstdHJhbnNpdGlvbi10b2dnbGVgLFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1hY3RpdmVgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVHJhbnNpdGlvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFRyYW5zaXRpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFRoZSB0b2dnbGUgaXMgdHJpZ2dlcmVkIG9uIHRvdWNoIGRldmljZXMgYnkgdHdvIG1ldGhvZHM6XG4gKiAxLiBVc2luZyBgOmZvY3VzYCBhbmQgdGFiaW5kZXhcbiAqIDIuIFVzaW5nIGA6aG92ZXJgIGFuZCBhIGB0b3VjaHN0YXJ0YCBldmVudCBsaXN0ZW5lciByZWdpc3RlcmVkIG9uIHRoZSBkb2N1bWVudFxuICogICAgKERvZXNuJ3Qgd29yayBvbiBTdXJmYWNlIHRvdWNoIGRldmljZXMpXG4gKi9cblxuOndoZXJlKC51ay10cmFuc2l0aW9uLWZhZGUpLFxuOndoZXJlKFtjbGFzcyo9XCJ1ay10cmFuc2l0aW9uLXNjYWxlXCJdKSxcbjp3aGVyZShbY2xhc3MqPVwidWstdHJhbnNpdGlvbi1zbGlkZVwiXSkge1xuICAgIC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXg6IDA7XG4gICAgLS11ay1wb3NpdGlvbi10cmFuc2xhdGUteTogMDtcbn1cblxuLnVrLXRyYW5zaXRpb24tZmFkZSxcbltjbGFzcyo9XCJ1ay10cmFuc2l0aW9uLXNjYWxlXCJdLFxuW2NsYXNzKj1cInVrLXRyYW5zaXRpb24tc2xpZGVcIl0ge1xuICAgIC0tdWstdHJhbnNsYXRlLXg6IDA7XG4gICAgLS11ay10cmFuc2xhdGUteTogMDtcbiAgICAtLXVrLXNjYWxlLXg6IDE7XG4gICAgLS11ay1zY2FsZS15OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLXVrLXBvc2l0aW9uLXRyYW5zbGF0ZS14KSwgdmFyKC0tdWstcG9zaXRpb24tdHJhbnNsYXRlLXkpKVxuICAgICAgICAgICAgICAgdHJhbnNsYXRlKHZhcigtLXVrLXRyYW5zbGF0ZS14KSwgdmFyKC0tdWstdHJhbnNsYXRlLXkpKVxuICAgICAgICAgICAgICAgc2NhbGUodmFyKC0tdWstc2NhbGUteCksIHZhcigtLXVrLXNjYWxlLXkpKTtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGZpbHRlcjtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4vKlxuICogRmFkZVxuICovXG5cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciAudWstdHJhbnNpdGlvbi1mYWRlLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzIC51ay10cmFuc2l0aW9uLWZhZGUsXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMtd2l0aGluIC51ay10cmFuc2l0aW9uLWZhZGUsXG4udWstdHJhbnNpdGlvbi1hY3RpdmUudWstYWN0aXZlIC51ay10cmFuc2l0aW9uLWZhZGUgeyBvcGFjaXR5OiAxOyB9XG5cbi8qXG4gKiBTY2FsZVxuICogMS4gTWFrZSBpbWFnZSByZW5kZXJpbmcgdGhlIHNhbWUgZHVyaW5nIHRoZSB0cmFuc2l0aW9uIGFzIGJlZm9yZSBhbmQgYWZ0ZXIuIFByZWZpeGVkIGJlY2F1c2Ugb2YgU2FmYXJpLlxuICovXG5cbi8qIDEgKi9cbltjbGFzcyo9XCJ1ay10cmFuc2l0aW9uLXNjYWxlXCJdIHsgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnVrLXRyYW5zaXRpb24tc2NhbGUtdXAge1xuICAgIC0tdWstc2NhbGUteDogMTtcbiAgICAtLXVrLXNjYWxlLXk6IDE7XG59XG4udWstdHJhbnNpdGlvbi1zY2FsZS1kb3duIHtcbiAgICAtLXVrLXNjYWxlLXg6ICN7JHRyYW5zaXRpb24tc2NhbGV9O1xuICAgIC0tdWstc2NhbGUteTogI3skdHJhbnNpdGlvbi1zY2FsZX07XG59XG5cbi8qIFNob3cgKi9cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciAudWstdHJhbnNpdGlvbi1zY2FsZS11cCxcbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpmb2N1cyAudWstdHJhbnNpdGlvbi1zY2FsZS11cCxcbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpmb2N1cy13aXRoaW4gLnVrLXRyYW5zaXRpb24tc2NhbGUtdXAsXG4udWstdHJhbnNpdGlvbi1hY3RpdmUudWstYWN0aXZlIC51ay10cmFuc2l0aW9uLXNjYWxlLXVwIHtcbiAgICAtLXVrLXNjYWxlLXg6ICN7JHRyYW5zaXRpb24tc2NhbGV9O1xuICAgIC0tdWstc2NhbGUteTogI3skdHJhbnNpdGlvbi1zY2FsZX07XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmhvdmVyIC51ay10cmFuc2l0aW9uLXNjYWxlLWRvd24sXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMgLnVrLXRyYW5zaXRpb24tc2NhbGUtZG93bixcbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpmb2N1cy13aXRoaW4gLnVrLXRyYW5zaXRpb24tc2NhbGUtZG93bixcbi51ay10cmFuc2l0aW9uLWFjdGl2ZS51ay1hY3RpdmUgLnVrLXRyYW5zaXRpb24tc2NhbGUtZG93biB7XG4gICAgLS11ay1zY2FsZS14OiAxO1xuICAgIC0tdWstc2NhbGUteTogMTtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4vKlxuICogU2xpZGVcbiAqL1xuXG4udWstdHJhbnNpdGlvbi1zbGlkZS10b3AgeyAtLXVrLXRyYW5zbGF0ZS15OiAtMTAwJTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtYm90dG9tIHsgLS11ay10cmFuc2xhdGUteTogMTAwJTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtbGVmdCB7IC0tdWstdHJhbnNsYXRlLXg6IC0xMDAlOyB9XG4udWstdHJhbnNpdGlvbi1zbGlkZS1yaWdodCB7IC0tdWstdHJhbnNsYXRlLXg6IDEwMCU7IH1cblxuLnVrLXRyYW5zaXRpb24tc2xpZGUtdG9wLXNtYWxsIHsgLS11ay10cmFuc2xhdGUteTogY2FsYygtMSAqICN7JHRyYW5zaXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlfSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLWJvdHRvbS1zbWFsbCB7IC0tdWstdHJhbnNsYXRlLXk6ICN7JHRyYW5zaXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlfTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtbGVmdC1zbWFsbCB7IC0tdWstdHJhbnNsYXRlLXg6IGNhbGMoLTEgKiAjeyR0cmFuc2l0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZX0pOyB9XG4udWstdHJhbnNpdGlvbi1zbGlkZS1yaWdodC1zbWFsbCB7IC0tdWstdHJhbnNsYXRlLXg6ICN7JHRyYW5zaXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlfTsgfVxuXG4udWstdHJhbnNpdGlvbi1zbGlkZS10b3AtbWVkaXVtIHsgLS11ay10cmFuc2xhdGUteTogY2FsYygtMSAqICN7JHRyYW5zaXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZX0pOyB9XG4udWstdHJhbnNpdGlvbi1zbGlkZS1ib3R0b20tbWVkaXVtIHsgLS11ay10cmFuc2xhdGUteTogI3skdHJhbnNpdGlvbi1zbGlkZS1tZWRpdW0tdHJhbnNsYXRlfTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtbGVmdC1tZWRpdW0geyAtLXVrLXRyYW5zbGF0ZS14OiBjYWxjKC0xICogI3skdHJhbnNpdGlvbi1zbGlkZS1tZWRpdW0tdHJhbnNsYXRlfSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLXJpZ2h0LW1lZGl1bSB7IC0tdWstdHJhbnNsYXRlLXg6ICN7JHRyYW5zaXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZX07IH1cblxuLyogU2hvdyAqL1xuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmhvdmVyIFtjbGFzcyo9XCJ1ay10cmFuc2l0aW9uLXNsaWRlXCJdLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzIFtjbGFzcyo9XCJ1ay10cmFuc2l0aW9uLXNsaWRlXCJdLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzLXdpdGhpbiBbY2xhc3MqPVwidWstdHJhbnNpdGlvbi1zbGlkZVwiXSxcbi51ay10cmFuc2l0aW9uLWFjdGl2ZS51ay1hY3RpdmUgW2NsYXNzKj1cInVrLXRyYW5zaXRpb24tc2xpZGVcIl0ge1xuICAgIC0tdWstdHJhbnNsYXRlLXg6IDA7XG4gICAgLS11ay10cmFuc2xhdGUteTogMDtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG5cbi8qIE9wYWNpdHkgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdHJhbnNpdGlvbi1vcGFxdWUgeyBvcGFjaXR5OiAxOyB9XG5cblxuLyogRHVyYXRpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdHJhbnNpdGlvbi1zbG93IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tc2xvdy1kdXJhdGlvbjsgfVxuXG4vKiBEaXNhYmxlIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRyYW5zaXRpb24tZGlzYWJsZSxcbi51ay10cmFuc2l0aW9uLWRpc2FibGUgKiB7IHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXRyYW5zaXRpb24tbWlzYykpIHtAaW5jbHVkZSBob29rLXRyYW5zaXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stdHJhbnNpdGlvbi1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBWaXNpYmlsaXR5XG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyB0byBzaG93IG9yIGhpZGUgY29udGVudCBvbiBicmVha3BvaW50cywgaG92ZXIgb3IgdG91Y2hcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1oaWRkZW4tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXZpc2libGUtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWludmlzaWJsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWhpZGRlbi12aXN1YWxseWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXZpc2libGUtdG9nZ2xlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaGlkZGVuLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaW52aXNpYmxlLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaGlkZGVuLXRvdWNoYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaGlkZGVuLW5vdG91Y2hgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFZpc2liaWxpdHlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSGlkZGVuXG4gKiBgaGlkZGVuYCBhdHRyaWJ1dGUgYWxzbyBzZXQgaGVyZSB0byBtYWtlIGl0IHN0cm9uZ2VyXG4gKi9cblxuW2hpZGRlbl0sXG4udWstaGlkZGVuLFxuLnVrLWhpZGRlbi1lbXB0eTplbXB0eSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstaGlkZGVuXFxAcyB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWhpZGRlblxcQG0geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWhpZGRlblxcQGwgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLnVrLWhpZGRlblxcQHhsIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbn1cblxuLypcbiAqIFZpc2libGVcbiAqL1xuXG4vKiBQaG9uZSBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzbWFsbC1tYXgpIHtcblxuICAgIC51ay12aXNpYmxlXFxAcyB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtYWxsLW1heCkge1xuXG4gICAgLnVrLXZpc2libGVcXEBtIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1lZGl1bS1tYXgpIHtcblxuICAgIC51ay12aXNpYmxlXFxAbCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZS1tYXgpIHtcblxuICAgIC51ay12aXNpYmxlXFxAeGwgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG5cbi8qIFZpc2liaWxpdHlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstaW52aXNpYmxlIHsgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7IH1cblxuXG4vKiBCYXNlZCBvbiB0aGUgU3RhdGUgb2YgdGhlIFBhcmVudCBFbGVtZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIE1pbmQgdGhhdCBgZGlzcGxheTogbm9uZWAsIGB2aXNpYmlsaXR5OiBoaWRkZW5gIGFuZCBgb3BhY2l0eTogMGBcbiAqIHJlbW92ZSB0aGUgZWxlbWVudCBmcm9tIHRoZSBhY2Nlc3NpYmlsaXR5IHRyZWUgYW5kIHRoYXRcbiAqIGBkaXNwbGF5OiBub25lYCBhbmQgYHZpc2liaWxpdHk6IGhpZGRlbmAgYXJlIG5vdCBmb2N1c2FibGUuXG4gKlxuICogVGhlIHRhcmdldCBzdGF5cyB2aXNpYmxlIGlmIGFueSBlbGVtZW50IHdpdGhpbiByZWNlaXZlcyBmb2N1cyB0aHJvdWdoIGtleWJvYXJkLlxuICovXG5cbi8qXG4gKiBSZW1vdmUgc3BhY2Ugd2hlbiBoaWRkZW4uXG4gKiAxLiBSZW1vdmUgZnJvbSBkb2N1bWVudCBmbG93LlxuICogMi4gSGlkZSBlbGVtZW50IGFuZCBzaHJpbmsgaXRzIGRpbWVuc2lvbi4gQ3VycmVudCBicm93c2VycyBhbmQgc2NyZWVuIHJlYWRlcnNcbiAqICAgIGtlZXAgdGhlIGVsZW1lbnQgaW4gdGhlIGFjY2Vzc2liaWxpdHkgdHJlZSBldmVuIHdpdGggemVybyBkaW1lbnNpb25zLlxuICogICAgVXNpbmcgYHRhYmluZGV4PVwiLTFcImAgd2lsbCBzaG93IHRoZSBlbGVtZW50IG9uIHRvdWNoIGRldmljZXMuXG4gKiAgICBOb3RlOiBgY2xpcC1wYXRoYCBkb2Vzbid0IHdvcmsgd2l0aCBgdGFiaW5kZXhgIG9uIHRvdWNoIGRldmljZXMuXG4gKi9cblxuLnVrLWhpZGRlbi12aXN1YWxseTpub3QoOmZvY3VzKTpub3QoOmFjdGl2ZSk6bm90KDpmb2N1cy13aXRoaW4pLFxuLnVrLXZpc2libGUtdG9nZ2xlOm5vdCg6aG92ZXIpOm5vdCg6Zm9jdXMpIC51ay1oaWRkZW4taG92ZXI6bm90KDpmb2N1cy12aXNpYmxlKTpub3QoOmhhcyg6Zm9jdXMtdmlzaWJsZSkpLFxuLy8gRmFsbGJhY2sgZm9yIFNhZmFyaSAxOC4zIGA6bm90KDpoYXMoLi4uKSkgaW52YWxpZGF0aW9uYCBidWcuIFJlbW92ZSB3aGVuIGZpeGVkLlxuLnVrLXZpc2libGUtdG9nZ2xlOm5vdCg6aG92ZXIpOm5vdCg6Zm9jdXMpIC51ay1oaWRkZW4taG92ZXI6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLypcbiAqIEtlZXAgc3BhY2Ugd2hlbiBoaWRkZW4uXG4gKiBIaWRlIGVsZW1lbnQgd2l0aG91dCBzaHJpbmtpbmcgaXRzIGRpbWVuc2lvbi5cbiAqIE5vdGU6IGBjbGlwLXBhdGhgIGRvZXNuJ3Qgd29yayB3aXRoIGhvdmVyIGZvciBlbGVtZW50cyBvdXRzaWRlIG9mIHRoZSB0b2dnbGUgYm94LlxuICovXG5cbi51ay12aXNpYmxlLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSAudWstaW52aXNpYmxlLWhvdmVyOm5vdCg6Zm9jdXMtd2l0aGluKSB7IG9wYWNpdHk6IDAgIWltcG9ydGFudDsgfVxuXG5cbi8qIEJhc2VkIG9uIEhvdmVyIENhcGFiaWxpdHkgb2YgdGhlIFBvaW50aW5nIERldmljZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbi8qIEhpZGUgaWYgcHJpbWFyeSBwb2ludGluZyBkZXZpY2UgZG9lc24ndCBzdXBwb3J0IGhvdmVyLCBlLmcuIHRvdWNoIHNjcmVlbnMuICovXG5AbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgLnVrLWhpZGRlbi10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxufVxuXG4vKiBIaWRlIGlmIHByaW1hcnkgcG9pbnRpbmcgZGV2aWNlIHN1cHBvcnRzIGhvdmVyLCBlLmcuIG1pY2UuICovXG5AbWVkaWEgKGhvdmVyKSB7XG4gICAgLnVrLWhpZGRlbi1ub3RvdWNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdmlzaWJpbGl0eS1taXNjKSkge0BpbmNsdWRlIGhvb2stdmlzaWJpbGl0eS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay12aXNpYmlsaXR5LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEludmVyc2Vcbi8vIERlc2NyaXB0aW9uOiAgICAgSW52ZXJzZSBjb21wb25lbnQgc3R5bGUgZm9yIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1saWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRhcmtgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBJbnZlcnNlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKlxuICogSW1wbGVtZW50ZWQgY2xhc3MgZGVwZW5kcyBvbiB0aGUgZ2VuZXJhbCB0aGVtZSBjb2xvclxuICogYHVrLWxpZ2h0YCBpcyBmb3IgbGlnaHQgY29sb3JzIG9uIGRhcmsgYmFja2dyb3VuZHNcbiAqIGB1ay1kYXJrYCBpcyBvciBkYXJrIGNvbG9ycyBvbiBsaWdodCBiYWNrZ3JvdW5kc1xuICovXG5cbkBpZiAoJGludmVyc2UtZ2xvYmFsLWNvbG9yLW1vZGUgPT0gbGlnaHQpIHsgLnVrLWxpZ2h0IHsgQGlmIChtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZSgpO319fVxuXG5AaWYgKCRpbnZlcnNlLWdsb2JhbC1jb2xvci1tb2RlID09IGRhcmspIHsgLnVrLWRhcmsgeyBAaWYgKG1peGluLWV4aXN0cyhob29rLWludmVyc2UpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlKCk7fX19XG5cbi8qXG4gKiBQYXNzIGRyb3BiYXIgYmVoaW5kIGNvbG9yIHRvIEpTXG4gKi9cblxuKiB7IC0tdWstaW52ZXJzZTogaW5pdGlhbDsgfVxuXG4udWstbGlnaHQgeyAtLXVrLWludmVyc2U6IGxpZ2h0OyB9XG4udWstZGFyayB7IC0tdWstaW52ZXJzZTogZGFyazsgfVxuXG4udWstaW52ZXJzZS1saWdodCB7IC0tdWstaW52ZXJzZTogbGlnaHQgIWltcG9ydGFudDsgfVxuLnVrLWludmVyc2UtZGFyayB7IC0tdWstaW52ZXJzZTogZGFyayAhaW1wb3J0YW50OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBQcmludFxuLy8gRGVzY3JpcHRpb246ICAgICBPcHRpbWl6ZSBwYWdlIGZvciBwcmludGluZ1xuLy9cbi8vIEFkYXB0ZWQgZnJvbSBodHRwOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlXG4vL1xuLy8gTW9kaWZpY2F0aW9uczogICBSZW1vdmVkIGxpbmsgYGhyZWZgIGFuZCBgdGl0bGVgIHJlbGF0ZWQgcnVsZXNcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogUHJpbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWVkaWEgcHJpbnQge1xuXG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBvcnBoYW5zOiAzO1xuICAgICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcHJpbnQpKSB7QGluY2x1ZGUgaG9vay1wcmludCgpO31cblxufVxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXByaW50KCl7fVxuIiwiKiB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6IGdlb21ldHJpY1ByZWNpc2lvbjtcbn1cblxuaHRtbC5tZW51LWlzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmh0bWwsIGJvZHlcbntcbiAgICBmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUgeyBcbiAgICBmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDsgXG5cdGNvbG9yOiAjMzE1NEExO1xufVxuXG5oMSBcbntcbiAgZm9udC1zaXplOiA1OHB4O1xuICBsaW5lLWhlaWdodDogNzBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuaDJcbntcbiAgZm9udC1zaXplOiA1MXB4O1xuICBsaW5lLWhlaWdodDogNjRweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuXG5oM1xue1xuICBmb250LXNpemU6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG5oNFxue1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbmg1XG57XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uc2VjdGlvbi1Ib21lcGFnZSBoNCwgLmFib3V0QmxvY2sgaDRcbntcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5hIHtcbiAgICBjb2xvcjogIzMxNTRBMTtcbn1cblxuYTpob3ZlciB7XG4gICAgY29sb3I6ICMzMTU0QTE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hLmJ1dHRvbixcbmJ1dHRvbi5idXR0b25cbntcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5hLmJ1dHRvbjpob3ZlcixcbmJ1dHRvbi5idXR0b246aG92ZXJcbntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUU2NzRDO1xufVxuXG5hLmJ1dHRvbi5yZWQsXG5idXR0b24uYnV0dG9uLnJlZFxue1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRTY3NEM7XG59XG5cbmEuYnV0dG9uLnJlZDpob3ZlcixcbmJ1dHRvbi5idXR0b24ucmVkOmhvdmVyXG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbn1cblxuZW1cbntcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuKlt0cmFuc2l0aW9uXVxue1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXQsXG50ZXh0YXJlYVxue1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogNTVweDtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxudGV4dGFyZWFcbntcbiAgICBoZWlnaHQ6IDE2OXB4O1xuICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmhlYWRlciBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDk1MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4udGl0bGVIb2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBhZGRpbmc6IDUwcHggMjBweCAyMHB4O1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gNjIwcHgpO1xuICAgIHdpZHRoOiA2NDBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4udGl0bGVIb2xkZXIgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDY2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDgzcHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4udGl0bGVIb2xkZXIgLnN1YnRpdGVsIHtcbiAgICBmb250LXNpemU6IDY2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDgzcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi50aXRsZUhvbGRlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDMwMDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogLTE7XG59XG5cbi5pbnRyb0NvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTAwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5pbnRyb0NvbnRhaW5lciAuaW50cm8ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvaG9tZV9pbnRyb19ibG9jay5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICBwYWRkaW5nOiA3MHB4IDEwMHB4IDcwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtaW4taGVpZ2h0OiAyNjVweDtcbn1cblxuLmludHJvQ29udGFpbmVyIC5pbnRybzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDMwMDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogLTE7XG59XG5cbi5ldmVuZW1lbnRlbkN0YSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltYWdlcy9ldmVudF9ibG9jay5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICBwYWRkaW5nOiA2NXB4IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgaGVpZ2h0OiAyNjVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ldmVuZW1lbnRlbkN0YSBoNCB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5ldmVuZW1lbnRlbkN0YSAuYnV0dG9uSG9sZGVyIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTlweCAzMHB4IDIwcHggOTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiAudGVrc3Qge1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5ldmVuZW1lbnRlbkN0YSAuYnV0dG9uOmhvdmVyIC50ZWtzdCB7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLmV2ZW5lbWVudGVuQ3RhIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG59XG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbiAuaWNvbiB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0M3MUY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZXZlbmVtZW50ZW5DdGEgLmJ1dHRvbjpob3ZlciAuaWNvbntcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG59XG5cbi5ldmVuZW1lbnRlbkN0YSAuYnV0dG9uIC5pY29uOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9jYWxlbmRhcl9zdGFyLnN2Zyk7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMzcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLml0ZW1Db2x1bW4uaGlkZS51ay1ncmlkLW1hcmdpbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmFib3V0QmxvY2tzQ29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hYm91dEJsb2Nrc0NvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiA0MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbn1cblxuLmFib3V0QmxvY2tzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4IDEwMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5hYm91dEJsb2NrcyAuc2Nyb2xsZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRvcDogMjAwcHg7XG4gICAgbGVmdDogLTgwcHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmFib3V0QmxvY2tzIC5zY3JvbGxlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvYXJyb3dfYmxhY2suc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgd2lkdGg6IDE3cHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg5MGRlZyk7XG4gICAgYW5pbWF0aW9uOiBib3VuY2UgMXMgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSkgcm90YXRlKDkwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwcHgsIC01MCUpIHJvdGF0ZSg5MGRlZyk7XG4gIH1cbn1cblxuLmFib3V0QmxvY2tzSW50cm8ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuXG4uYWJvdXRCbG9ja3NSaWdodCB7XG4gICAgbWFyZ2luLXRvcDogLTE3NXB4O1xufVxuXG4uYWJvdXRCbG9ja3MgLmFib3V0QmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jazo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoIzAwMCx0cmFuc3BhcmVudCk7XG4gICAgb3BhY2l0eTogLjY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICBcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jayAuYWJvdXRCbG9ja0NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwcHg7XG4gICAgbGVmdDogNTBweDtcbiAgICByaWdodDogNTBweDtcbiAgICBib3R0b206IDUwcHg7XG4gICAgei1pbmRleDogNTtcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrIC5hYm91dEJsb2NrQ29udGVudCBoNCB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jayAuYWJvdXRCbG9ja0NvbnRlbnQgLmJ1dHRvbkhvbGRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbn1cblxuLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jazpob3Zlcjo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5hYm91dEJsb2NrcyAuYWJvdXRCbG9jazpob3ZlciAuYWJvdXRCbG9ja0NvbnRlbnQgYS5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMzMTU0QTE7XG59XG5cbi5ldmVuZW1lbnRDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZXZlbmVtZW50SW50cm9Ib2xkZXIge1xuICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmV2ZW5lbWVudEludHJvSG9sZGVyIC5ldmVuZW1lbnRJbnRybyB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW46IDAgYXV0byA2NXB4O1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIge1xuICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NBQ0FDQTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmRlZWxuZW1lckhvbGRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIHNhbnMtc2VyaWY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweCAzNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFNzM5Mjc7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5kZWVsbmVtZXJIb2xkZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltYWdlcy9rYWRvSWNvblNtYWxsLnN2ZycpO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmRlZWxuZW1lckhvbGRlciBzcGFuIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50LmN1c3RvbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuaW1hZ2VIb2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuaW1hZ2VIb2xkZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmltYWdlSG9sZGVyIC5yZWFkTW9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQ6aG92ZXIgLmltYWdlSG9sZGVyIC5yZWFkTW9yZSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciAuaW1hZ2VIb2xkZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuaW1hZ2VIb2xkZXIgaW1nIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmV1cm9JY29uIGltZyB7XG4gICAgd2lkdGg6IDE0cHg7XG59XG5cbi5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQ6aG92ZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMTU0QTE7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciwgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciBoNSwgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciAuZXZlbnRDYXQge1xuICAgIGNvbG9yOiAjMzE1NEExO1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnRDYXQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjODI4MjgyO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLm9tc2NocmlqdmluZyB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIGg1IHtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIC5kYXRlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0NBQ0FDQTtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIC5ldmVudERldGFpbCAuZXVyb0ljb24ge1xuICAgIG1hcmdpbi1yaWdodDogMTFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIC5ldmVudERldGFpbCAuY2xvY2tJY29uIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMzE1NEExO1xufVxuXG4uZXZlbmVtZW50ZW5MYXJnZUN0YSB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5ldmVudHNTbGlkZXJIb2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gICAgcGFkZGluZzogNzVweCAyMHB4IDc1cHggMDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbn1cblxuLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmV2ZW50c1NsaWRlckhvbGRlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzAwMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAtMTtcbn1cblxuLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2NztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHM6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNjBFMzc7XG59XG5cbi5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMgLmFsbEV2ZW50c1Rla3N0IHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbn1cblxuLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyAuYWxsRXZlbnRzVGVrc3QgLnRla3N0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9waWpsdGplLnN2Zyk7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcmlnaHQ6IC01MHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTtcbn1cblxuLyogZXZlbmVtZW50IGluZGllbmVuICovXG5cbi5ldmVudEZvcm0gdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWxcbn1cblxuZm9ybSAubGFiZWxcbntcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBjb2xvcjogIzMxNTRBMTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5hbGdvbGlhLXBsYWNlcyB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4uYWxnb2xpYS1wbGFjZXMgLmFwLWRyb3Bkb3duLW1lbnUgLmFwLWZvb3Rlclxue1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hcC1pbnB1dC1pY29uXG57XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmFwLXN1Z2dlc3Rpb24gZW0gXG57XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGNvbG9yOiAjNjZDMDdEO1xufVxuXG4uYXAtaW5wdXQsIFxuLmFwLWhpbnQgXG57XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6IDE3cHg7XG59XG5cbi5hcC1zdWdnZXN0aW9uLWljb24gc3ZnIFxue1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luLXRvcDogMTFweDtcbn1cblxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5mbGF0cGlja3ItbW9udGhEcm9wZG93bi1tb250aHMge1xuICAgIG1hcmdpbi1yaWdodDogNTBweCAhaW1wb3J0YW50O1xufVxuXG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLmZsYXRwaWNrci1tb250aERyb3Bkb3duLW1vbnRocyxcbi5mbGF0cGlja3ItY3VycmVudC1tb250aCBpbnB1dC5jdXIteWVhclxue1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZCwgLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZSwgLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UsIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLmluUmFuZ2UsIC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UuaW5SYW5nZSwgLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UuaW5SYW5nZSwgLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQ6Zm9jdXMsIC5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2U6Zm9jdXMsIC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmZvY3VzLCAuZmxhdHBpY2tyLWRheS5zZWxlY3RlZDpob3ZlciwgLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZTpob3ZlciwgLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2U6aG92ZXIsIC5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLnByZXZNb250aERheSwgLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5wcmV2TW9udGhEYXksIC5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnByZXZNb250aERheSwgLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQubmV4dE1vbnRoRGF5LCAuZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLm5leHRNb250aERheSwgLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UubmV4dE1vbnRoRGF5IHtcbiAgICBiYWNrZ3JvdW5kOiAjNjZDMDdEICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjZDMDdEICFpbXBvcnRhbnQ7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlclxue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmRhdGVwaWNrZXJfaG9sZGVyIGlucHV0XG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgei1pbmRleDogMjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlciAudWstaWNvblxue1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTVweDtcbiAgICB0b3A6IDE4cHg7XG4gICAgY29sb3I6ICMzMTU0QTE7XG4gICAgei1pbmRleDogMTtcbn1cblxuLmRhdGVwaWNrZXJfaG9sZGVyLmV2ZW50IC5pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZGF0ZXBpY2tlcl9ob2xkZXIuZXZlbnQ6aG92ZXIgLmljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFNzM5Mjc7XG59XG5cbi5kYXRlcGlja2VyX2hvbGRlci5ldmVudCAuaWNvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9jYWxlbmRhcl93aGl0ZS5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAyM3B4O1xuICAgIGhlaWdodDogMjdweDtcbn1cblxuXG5mb3JtIC5sYWJlbC5tdWx0aXBsZV9kYXlfaXRlbSxcbi5tdWx0aXBsZV9kYXlfaXRlbSxcbmZvcm0gLmxhYmVsLnNpbmdsZV9kYXlfaXRlbSxcbi5zaW5nbGVfZGF5X2l0ZW1cbntcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5mb3JtIC5sYWJlbC5tdWx0aXBsZV9kYXlfaXRlbS5hY3RpdmUsXG4ubXVsdGlwbGVfZGF5X2l0ZW0uYWN0aXZlLFxuZm9ybSAubGFiZWwuc2luZ2xlX2RheV9pdGVtLmFjdGl2ZSxcbi5zaW5nbGVfZGF5X2l0ZW0uYWN0aXZlXG57XG4gICAgb3BhY2l0eTogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuZm9ybSAuc3dpdGNoXG57XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiAyOXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzMxNTRBMTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5mb3JtIC5zd2l0Y2ggLmNpcmNsZVxue1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTlweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzljOWM5O1xuICAgIGxlZnQ6IDRweDtcbiAgICB0b3A6IDNweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG59XG5cbmZvcm0gLnN3aXRjaC5hY3RpdmUgLmNpcmNsZVxue1xuICAgIGxlZnQ6IDIzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbn1cblxuLnN3aXRjaF9sYWJlbFxue1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjb2xvcjogIzk5OTtcbn1cblxuI2FmYmVlbGRpbmctdXBsb2FkXG57XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmtpZXNfYWZiZWVsZGluZ1xue1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIHBhZGRpbmc6IDExcHggMTVweCAxMXB4IDMwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5raWVzX2FmYmVlbGRpbmcgLnVrLWljb25cbntcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY29sb3I6ICMzMTU0QTE7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG5oMy5nZWdldmVuc19nZWJydWlrZXJcbntcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuaDMuZ2VnZXZlbnNfZXZlbmVtZW50XG57XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbn1cblxuLmVycm9yXG57XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xufVxuXG4uZXJyb3JzXG57XG4gICAgY29sb3I6IHJlZDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xufVxuXG4jZXZlbmVuZW50LWZvcm11bGllciBidXR0b24uYnV0dG9uXG57XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDU1cHg7XG59XG5cbi53b3JkU2xpZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi53b3JkU2xpZGVyIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4ud29yZFNsaWRlciB1bCBsaSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi53b3JkU2xpZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIFxuICBcbiBcbn1cblxuLndvcmRTbGlkZXJfd29yZHMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB3b3JkU2xpZGVyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMjBzO1xufVxuICBcbi53b3JkU2xpZGVyX3dvcmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbkBrZXlmcmFtZXMgd29yZFNsaWRlciB7XG4gICAgJHN0ZXBzOiAtMCUsIC0xMCUsIC0yMCUsIC0zMCUsIC00MCUsIC01MCUsIC02MCUsIC03MCUsIC04MCUsIC05MCU7XG4gICAgXG4gICAgQGZvciAkaW5kZXggZnJvbSAwIHRvIGxlbmd0aCgkc3RlcHMpLTEge1xuICAgICAgICAkbmV4dDogJGluZGV4KzE7XG4gICAgICAgICRzdGVwOiBmbG9vcigxMDAvKGxlbmd0aCgkc3RlcHMpLTEpKTtcbiAgICAgICAgJGFuaW1hdGlvbl9zdGVwOiBmbG9vcigkc3RlcCouMik7XG4gICAgICAgIFxuICAgICAgICAjeyRzdGVwKiRpbmRleH0lLFxuICAgICAgICAjeygkc3RlcCokbmV4dCkgLSAkYW5pbWF0aW9uX3N0ZXB9JSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkobnRoKCRzdGVwcywgJGluZGV4KzEpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKG50aCgkc3RlcHMsIGxlbmd0aCgkc3RlcHMpKSk7XG4gICAgfVxufVxuXG4uYWRkRXZlbnRDdGFDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLmFkZEV2ZW50Q3RhIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmFkZEV2ZW50Q3RhIGltZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYWRkRXZlbnRDdGEgLnRla3N0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5hZGRFdmVudEN0YSAudGVrc3QgYSB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5pbXByZXNzaWVIb2xkZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDEwMHB4IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogNjcwcHg7XG59XG5cbi5pbXByZXNzaWVIb2xkZXIgLnNsaWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC44cztcbiAgICB6LWluZGV4OiAtMTtcbn1cblxuLmltcHJlc3NpZUhvbGRlciAuc2xpZGUgLnNsaWRlVGVrc3Qge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC44cztcbn1cblxuLmltcHJlc3NpZUhvbGRlciAuc2xpZGUuYWN0aXZlIC5zbGlkZVRla3N0IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZSAuc2xpZGVJbWFnZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjhzO1xufVxuXG4uaW1wcmVzc2llSG9sZGVyIC5zbGlkZS5hY3RpdmUgLnNsaWRlSW1hZ2Uge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5pbXByZXNzaWVIb2xkZXIgLnNsaWRlLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbn1cblxuLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9yZWRfYmxvY2tfc2xpZGVyLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgcGFkZGluZzogMTE1cHggOTVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSA2OTBweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgICB3aWR0aDogNzcwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uc2xpZGVJbWFnZUhvbGRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gODBweCk7XG4gICAgdG9wOiAwO1xuICAgIFxuICAgIG1heC1oZWlnaHQ6IDY3MHB4O1xuICAgIG1heC13aWR0aDogMTA0MHB4O1xufVxuXG4ucHJvZ3Jlc3NDb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDBweDtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDcxMHB4KTtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnByb2dyZXNzQ29udGFpbmVyIC5pdGVtQ291bnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnByb2dyZXNzTGluZUNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnByb2dyZXNzTGluZUNvbnRhaW5lciAubGluZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JiYjtcbn1cblxuLmltcHJlc3NpZUhvbGRlciAucHJvZ3Jlc3NDb250YWluZXIgLnByb2dyZXNzIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xufVxuXG5cbi5hcnJvd0hvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFycm93SG9sZGVyIGltZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYXJyb3dIb2xkZXIgLmFycm93TmV4dCBpbWcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYXJyb3dIb2xkZXIgLmFycm93UHJldiBpbWcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qIExhbmRpbmdzcGFnaW5hICAqL1xuLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNjBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyIHtcbiAgICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbiAgICBcbn1cblxuLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgICBtYXJnaW4tbGVmdDogMTAwcHg7XG59XG5cbi5sYW5kaW5nc0hlYWRlciAuaW50cm9Ib2xkZXIgcHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4ubGFuZGluZ3NIZWFkZXJDb250YWluZXIgLmJ1dHRvbkhvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyIC5pbWFnZUhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5sYW5kaW5nc0hlYWRlciAuaW1hZ2VIb2xkZXIgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG59XG5cbi8qIEdlZW4gaGVhZGVyICovXG5cbi5sYW5kaW5nc0hlYWRlci5nZWVuX2hlYWRlciB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG59XG5cbi5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG5cbi5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2xhbmRpbmdfaGVhZGVyLnN2ZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTQwcHg7XG4gICAgdG9wOiAtMTQwcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogY2FsYyg1MCUgLSA1NTBweCk7XG59XG5cbi5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlciAubGFuZGluZ3NUaXRsZUhvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyLmdlZW5faGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKiBDYWxsIHRvIGFjdGlvbiAqL1xuXG4uY2FsbFRvQWN0aW9uSG9sZGVyIHtcbiAgICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmNhbGxUb0FjdGlvbkhvbGRlciAuaW1hZ2VIb2xkZXIge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uSG9sZGVyIC5pbWFnZUhvbGRlciBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gICAgcGFkZGluZzogMTAwcHggMTAwcHggMTAwcHggMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgaDMge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IC03MHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmNhbGxUb0FjdGlvblRla3N0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2Nztcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuXG57XG4gICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdFxue1xuICAgIHBhZGRpbmc6IDAgMjBweCAyMDBweCAxMDBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IGgxXG57XG4gICAgZm9udC1zaXplOiA0OHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1NXB4O1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmltYWdlX2NvbHVtbiBpbWdcbntcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIGEuYmFjaywgLmxhbmRpbmdzSGVhZGVyIGEuYmFjayBcbntcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIGEuYmFjazo6YmVmb3JlLCAubGFuZGluZ3NIZWFkZXIgYS5iYWNrOjpiZWZvcmVcbntcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltYWdlcy9ibHVlX2Fycm93LnN2ZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiBhLmJhY2s6aG92ZXI6OmJlZm9yZSwgLmxhbmRpbmdzSGVhZGVyIGEuYmFjazpob3Zlcjo6YmVmb3JlXG57XG4gICAgbGVmdDogLTNweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2JsYWNrX2Fycm93LnN2ZycpO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gYS5iYWNrOmhvdmVyLCAubGFuZGluZ3NIZWFkZXIgYS5iYWNrOmhvdmVyXG57XG4gICAgY29sb3I6ICMwMDA7XG59XG5cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrXG57XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTYwcHg7XG4gICAgbGVmdDogNDBweDtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDUwcHggODBweDtcbiAgICBtaW4taGVpZ2h0OiAyMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzA1NEEwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2JsdWVfd2F2ZS5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICAgIFxuICAgICYuZXZlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogLTE0MHB4IDAgLTgwcHggMjBweDtcbiAgICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgfVxufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sucmVkXG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VDNjc0QztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvcmVkX2ludHJvX3dhdmUuc3ZnKTtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrLmdyZWVuXG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2QzA3RDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvZ3JlZW5fYmxvY2tfd2F2ZS5zdmcpO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sgc3Bhbi5sYWJlbFxue1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sgc3Bhbi52YWx1ZVxue1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTEwcHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay53aW5rZWwgc3Bhbi5sYWJlbFxue1xuICAgIHdpZHRoOiAxMTBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrLndpbmtlbCBzcGFuLnZhbHVlXG57XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEyMHB4KTtcbn1cblxuLmhlYWRlcl9pbnRyb190ZWtzdFxue1xuICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgIG1hcmdpbjogNTBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5oZWFkZXJfaW50cm9fdGVrc3QgPiAqXG57XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5pbWFnZUhvbGRlciB7XG4gICAgbWluLWhlaWdodDogNjAwcHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaW1hZ2VIb2xkZXIgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IHVuc2V0O1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2sge1xuICAgIHdpZHRoOiA1NyU7XG4gICAgYm90dG9tOiA1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3JlZF93YXZlLnN2Zyk7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCBoMSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDU4cHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gICAgcGFkZGluZzogNTVweCA1MHB4IDAgMTAwcHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAgLmRldGFpbHNfYmxvY2tfaW50cm8ge1xuICAgIG1heC13aWR0aDogNDQ1cHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuZGV0YWlsc19ibG9jayAuaWNvb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNTdweDtcbiAgICBoZWlnaHQ6IDU3cHg7XG4gICAgcmlnaHQ6IDExOXB4O1xuICAgIHRvcDogLTU2cHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbi5kZXRhaWwge1xuICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xufVxuXG4uYWJvdXRCbG9ja3NDb250YWluZXIuY3VzdG9tIHtcbiAgICBtYXJnaW46IDEwMHB4IDAgMDtcbn1cblxuLnVpdGdlbGljaHRlV2lua2VsSG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuXG4udWl0Z2VsaWNodGVXaW5rZWxIb2xkZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvd2lua2VsX3JlZF93YXZlLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB0b3A6IDEyMHB4O1xuICAgIGxlZnQ6IC03MHB4O1xuICAgIHotaW5kZXg6IDM7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWwgeyAgIFxuICAgIG1pbi1oZWlnaHQ6IDMyMHB4O1xufVxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIC5idXR0b246aG92ZXIgeyAgIFxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWwgLmNhbGxUb0FjdGlvblRla3N0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbn1cblxuLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCBoNSB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWwgaDMge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWwgLmJ1dHRvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGJvdHRvbTogMTAwcHg7XG59IFxuXG4uY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIud2lua2VsIC5vdmVydmlld0J1dHRvbiB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgbWFyZ2luOiAzMHB4IDIwcHggMCAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrLmdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZDMDdEO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9ncmVlbl93YXZlLnN2Zyk7XG4gICAgY29sb3I6ICMwMDA7XG59XG5cbi5sYXJnZUJhY2tncm91bmQgLmFib3V0QmxvY2tzQ29udGFpbmVyOjpiZWZvcmUge1xuICAgIGhlaWdodDogNzAlO1xufVxuXG4ubmV3c0NvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAxMDBweCAwIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubmV3c0ludHJvQ29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm5ld3NDb250YWluZXIud2F0VGVEb2VuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbn1cblxuLmZpbHRlckNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG8gNjBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmZpbHRlckhvbGRlciB7XG4gICAgcGFkZGluZzogNjVweCA4MHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xufVxuXG4uZmlsdGVyQ29udGFpbmVyIGlucHV0IHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5maWx0ZXJIb2xkZXIgLm5pY2Utc2VsZWN0e1xuICAgIGhlaWdodDogNTVweDtcbiAgICBsaW5lLWhlaWdodDogNTVweDtcbn1cblxuLmZpbHRlckhvbGRlciAubmljZS1zZWxlY3Qge1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmZpbHRlckhvbGRlciAubmljZS1zZWxlY3QgLm9wdGlvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZmlsdGVySG9sZGVyIC5uaWNlLXNlbGVjdDo6YWZ0ZXJ7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2ZmZjtcbiAgICByaWdodDogMjNweDtcbn1cblxuLmZpbHRlckhvbGRlciAubmljZS1zZWxlY3QuY2F0ZWdvcmllOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogNTVweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZmlsdGVySG9sZGVyIC5uaWNlLXNlbGVjdC5jYXRlZ29yaWU6aG92ZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2Nztcbn1cblxuLmZpbHRlckhvbGRlciBpbnB1dCB7XG4gICAgcGFkZGluZzogMCA1NXB4IDAgMjBweDtcbn1cblxuLmZpbHRlckhvbGRlciAuaW5wdXRTZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZpbHRlckhvbGRlciAuaW5wdXRTZWFyY2ggLnNlYXJjaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZmlsdGVySG9sZGVyIC5pbnB1dFNlYXJjaDpob3ZlciAuc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczMTY3O1xufVxuXG4uZmlsdGVySG9sZGVyIC5pbnB1dFNlYXJjaCAuc2VhcmNoOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvc2VhcmNoX2ljb25fd2hpdGUuc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI5cHg7XG59XG5cbi5maWx0ZXJIb2xkZXIgLmlucHV0U2VhcmNoIC5zZWFyY2gucmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUM2NzRDO1xufVxuXG4uZmlsdGVySG9sZGVyIC5pbnB1dFNlYXJjaDpob3ZlciAuc2VhcmNoLnJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0U3MzkyNztcbn1cblxuLmZpbHRlckhvbGRlci5ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2QzA3RDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvZ3JlZW5fZmlsdGVyX3dhdmUuc3ZnKTtcbn1cblxuLmZpbHRlckhvbGRlci5ncmVlbiAub3B0aW9uLmFjdGl2ZSB7XG4gICAgY29sb3I6ICM2NkMwN0Q7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmZpbHRlckhvbGRlci5ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9ibHVlX2ZpbHRlcl93YXZlLnN2Zyk7XG59XG5cbi5maWx0ZXJIb2xkZXIuYmx1ZSAub3B0aW9uLmFjdGl2ZSB7XG4gICAgY29sb3I6ICMzMTU0QTE7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmZpbHRlckhvbGRlci5yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL3JlZF9maWx0ZXJfd2F2ZS5zdmcpO1xufVxuXG4uZmlsdGVySG9sZGVyLnJlZCAub3B0aW9uLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNFQzY3NEM7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmZpbHRlckhvbGRlci5ibHVlIC5uaWNlLXNlbGVjdC5jYXRlZ29yaWU6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VDNjc0QztcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZmlsdGVySG9sZGVyLmJsdWUgLm5pY2Utc2VsZWN0LmNhdGVnb3JpZTpob3Zlcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTczOTI3O1xufVxuXG4uZGF0ZXBpY2tlcl9ob2xkZXIgLnVrLWljb24uZGF0ZV9jbGVhciB7XG4gICAgcmlnaHQ6IDU4cHg7XG4gICAgdG9wOiAxOXB4O1xuICAgIHotaW5kZXg6IDQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmRhdGVwaWNrZXJfaG9sZGVyIC51ay1pY29uLmRhdGVfY2xlYXIuYWN0aXZlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ubmV3c0NvbnRhaW5lci50b3BPZmZzZXQge1xuICAgIG1hcmdpbjogODBweCAwO1xufVxuXG4uZXZlbnREZXRhaWwgLmxvY2F0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cblxuLmV2ZW50RGV0YWlsIC5sb2NhdGlvbi53aW5rZWwge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uZXZlbmVtZW50ZW5Ib2xkZXIubmV3cyB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG59XG5cbi5sb2NhdGlvbkljb24ge1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgIGNvbG9yOiAjMzE1NEExO1xufVxuXG4ubG9jYXRpb25JY29uLmJsYWNrIHtcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudDpob3ZlciAubG9jYXRpb25JY29uLmJsYWNrIHtcbiAgICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnREZXRhaWwgLmV1cm9JY29uLnBhcmtpbmcge1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnREZXRhaWwgLmV1cm9JY29uLndhdFRlRG9lbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xufVxuXG4uZXZlbnRDb250ZW50SG9sZGVyIC5ldmVudERldGFpbCAucGFya2luZ0ljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG59XG5cbi5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIC5wYXJraW5nSWNvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvcGFya2VyZW5fYmx1ZS5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sucGFya2luZyBzcGFuLmxhYmVsIHtcbiAgICB3aWR0aDogMTUwcHg7XG59XG5cbi5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay5wYXJraW5nIHNwYW4udmFsdWUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNjBweCk7XG59XG5cbi5pdGVtQ29sdW1uIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5pdGVtQ29sdW1uLmhpZGUge1xuICAgIGhlaWdodDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuXG4ubG9hZE1vcmVCdXR0b25Ib2xkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmxvYWRNb3JlQnV0dG9uSG9sZGVyIC5sYWFkX21lZXIge1xuICAgIGNvbG9yOiAjMzE1NEExO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sb2FkTW9yZUJ1dHRvbkNvbnRhaW5lci5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubG9hZE1vcmVCdXR0b25Ib2xkZXIgLmxhYWRfbWVlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltYWdlcy9ibHVlX2Fycm93LnN2ZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgcmlnaHQ6IC0yMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmxvYWRNb3JlQnV0dG9uSG9sZGVyIC5sYWFkX21lZXI6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uZmlsdGVyQ29udGFpbmVyLmV2ZW50RmlsdGVyIC5idXR0b25Ib2xkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNlY3Rpb24tZXZlbmVtZW50ZW5PdmVyemljaHQgLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICNFQzY3NEMgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICNFQzY3NEMgIWltcG9ydGFudDtcbn1cblxuLmJ1dHRvbi5maWx0ZXJCdXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4uYnV0dG9uLmZpbHRlckJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0U3MzkyNztcbn1cblxuLnpvZWtzdWdnZXN0aWVzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE4cHg7XG59XG5cbi56b2Vrc3VnZ2VzdGllcyAubGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uem9la3N1Z2dlc3RpZXMgLnZhbHVlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLnpvZWtzdWdnZXN0aWVzIC52YWx1ZTpob3ZlciB7XG4gICAgY29sb3I6ICNFQzY3NEM7XG59XG5cbi5zaGFyZUNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLmNvbnRlbnRfZ3JleV9ob2xkZXJcbntcbiAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDk1cHggMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY3RkI7XG59XG5cbi5jb250ZW50X2dyZXlfaG9sZGVyOjpiZWZvcmVcbntcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICByaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjdGQjtcbn1cblxuLmNvbnRlbnRfZ3JleVxue1xuICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgcGFkZGluZzogMHB4IDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmNvbnRlbnRfZ3JleSAuY29udGVudF9ibG9ja1xue1xuICAgIG1heC13aWR0aDogNzAwcHg7XG59XG5cbi5jb250ZW50X2dyZXkgLmNvbnRlbnRfYmxvY2sgLm9wZW5pbmdzVGl0ZWwge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmNvbnRlbnRfZ3JleSAuY29udGVudF9ibG9jayAub3BlbmluZ3N0aWpkZW5UYWJlbCB7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbi5jb250ZW50X2dyZXkgLmNvbnRlbnRfYmxvY2sgLm9wZW5pbmdzdGlqZGVuVGFiZWwgLmNvbHVtbl9yaWdodCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4uc21hbGxfdGV4dFxue1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGNvbG9yOiAjOTk5O1xufVxuXG4uc21hbGxfdGV4dC5jdXN0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDdweDtcbn1cblxuLnNtYWxsX3RleHQgc3Ryb25nXG57XG4gICAgY29sb3I6ICMwMDA7XG59XG5cbi5zaWRlX2Jsb2NrXG57XG4gICAgcGFkZGluZzogMzBweCAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5zaWRlX2Jsb2NrIHBcbntcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2lkZV9ibG9jayAuYmxvY2tfaW5kaWNhdG9yXG57XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjRDMTdDO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogN3B4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uc2lkZV9ibG9jay5rYWRvIC5ibG9ja19pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFNzM5Mjc7XG59XG5cbi5zaWRlX2Jsb2NrLmthZG8gLmJsb2NrX2luZGljYXRvciAuaWNvb24ge1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG59XG5cbi5zaWRlX2Jsb2NrLmthZG8gYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5zaWRlX2Jsb2NrIC5ibG9ja19pbmRpY2F0b3IgLmljb29uIHtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG59XG5cbi5zaWRlX2Jsb2NrIC5ibG9ja19pbmRpY2F0b3IgLmljb29uLmV1cm8ge1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGhlaWdodDogMTdweDtcbn1cblxuLnNpZGVfYmxvY2sgLmJsb2NrX3RhYmxlX2lkaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4uc2lkZV9ibG9jayAuYmxvY2tfdGFibGVfaWRpY2F0b3IgLmljb29uIHtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG59XG5cbi5zaWRlX2Jsb2NrIC5ibG9ja19pbmRpY2F0b3IgLnVrLWljb25cbntcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4uc2lkZV9ibG9jayAudWstaWNvblxue1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLnNpZGVfYmxvY2sgLnNvY2lhbF9pY29ucyBcbntcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTRlNGU0O1xufVxuXG4uc2lkZV9ibG9jayAuc29jaWFsX2ljb25zIC51ay1pY29uLWJ1dHRvblxue1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6ICNGRUM2MzM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuXG4uc2lkZV9ibG9jayAuc29jaWFsX2ljb25zIC51ay1pY29uLWJ1dHRvbjpob3Zlclxue1xuICAgIGJhY2tncm91bmQ6ICMzMDU0QTA7XG59XG5cbi5zaWRlX2Jsb2NrIC5jb2x1bW5fcmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLnNpZGVfYmxvY2sgdHIge1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnJlZF9idXR0b25zXG57XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLnJlZF9idXR0b25zIGEuYnV0dG9uXG57XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUU2NzRDO1xufVxuXG4ucmVkX2J1dHRvbnMgYS5idXR0b246aG92ZXJcbntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTYzQTI4O1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0XG57XG4gICAgd2lkdGg6IDE3NXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRTY3NEM7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIGhlaWdodDogNjJweDtcbiAgICBsaW5lLWhlaWdodDogNjJweDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG59XG5cbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Q6aG92ZXJcbntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTYzQTI4O1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0OjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2ZmZjtcbiAgICBoZWlnaHQ6IDlweDtcbiAgICByaWdodDogMjVweDtcbiAgICB0b3A6IDQyJTtcbiAgICB3aWR0aDogOXB4O1xufVxuXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0IC51ay1pY29uXG57XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDlweDtcbn1cblxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdCAubGlzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VFNjc0QztcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSg2OCwgNjgsIDY4LCAwLjExKTtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG59XG5cbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3QgLm9wdGlvbiBcbntcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdDphY3RpdmUsIFxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdC5vcGVuLCBcbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Q6Zm9jdXMgXG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0U2M0EyODtcbn1cblxuLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdCAub3B0aW9uOmhvdmVyLCBcbi5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3QgLm9wdGlvbi5mb2N1cywgXG4ucmVkX2J1dHRvbnMgLm5pY2Utc2VsZWN0IC5vcHRpb24uc2VsZWN0ZWQuZm9jdXMgXG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0U2M0EyODtcbn1cblxuLmZvb3Rlcl9jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gICAgcGFkZGluZzogMTE1cHggMCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZvb3Rlcl9jb250YWluZXIgLnR3ZW50ZUxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbn1cblxuLmZvb3RlciB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAyMHB4IDEwMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDU7XG59XG5cbi5mb290ZXIgLmZvb3RlclRpdGVsIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5mb290ZXIgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZm9vdGVyIGE6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogLTVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG59XG5cbi5mb290ZXIgYTpob3Zlcjo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwJTtcbn1cblxuLmZvb3RlciB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xufVxuXG4uZm9vdGVyIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmZvb3RlciAuY29udGFjdEljb24ge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmZvb3RlckJvdHRvbSB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogODBweCAyMHB4IDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuLmRpc2NsYWltZXJfaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW06IGNlbnRlcjtcbn1cblxuLmNvcHlyaWdodCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTAwcHg7XG59XG5cbi5kaXNjbGFpbWVyX21lbnUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZGlzY2xhaW1lcl9tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZjtcbn1cblxuLmRpc2NsYWltZXJfbWVudSBsaTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLmRpc2NsYWltZXJfbWVudSBsaSBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kaXNjbGFpbWVyX21lbnUgbGkgYTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAtNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbn1cblxuLmRpc2NsYWltZXJfbWVudSBsaSBhOmhvdmVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDAlO1xufVxuXG4uZmFjZWJvb2sge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLmZvb3RlckJvdHRvbUNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZm9vdGVyQm90dG9tQ29udGFpbmVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvZm9vdGVyX3dhdmUuc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uZm9vdGVyQm90dG9tIC5zb2NpYWxzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmZvb3RlckJvdHRvbSAuc29jaWFsSWNvbiB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLmZvb3RlckJvdHRvbSAuc29jaWFsSWNvbjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbn1cblxuLmZvb3RlckJvdHRvbSAuc29jaWFsSWNvbi5saW5rZWRpbiB7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuXG4uc3RpY2t5U2Nyb2xsZXIge1xuICAgIHdpZHRoOiA2NHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAtMTUwcHg7XG4gICAgYm90dG9tOiA1MHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc3RpY2t5U2Nyb2xsZXIuYWN0aXZlIHtcbiAgICByaWdodDogMzBweDtcbn1cblxuLnN0aWNreVNjcm9sbGVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvcGlqbHRqZS5zdmcnKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDIzcHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uZm9vdGVyIC5zbmVsTWVudSAubGlzdEl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMHB4KTtcbn1cblxuLnN0aWNreVNjcm9sbGVyOmhvdmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMjUpO1xufVxuXG5cbi5zZWN0aW9uLXdhdFRlRG9lbiAuY29udGVudF9ibG9jayAuY29tcG9uZW50OmZpcnN0LWNoaWxkXG57XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmJ1dHRvbnNUYWJsZXREb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGF0ZXBpY2tlcl9ob2xkZXIuZXZlbnQgaW5wdXRbdHlwZT1cImRhdGVcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnRvZ2dsZUZpbHRlciB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZvb3RlckRpc2NsYWltZXJIb2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xufVxuXG4uZm9vdGVyRGlzY2xhaW1lciB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5mb290ZXJEaXNjbGFpbWVyIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZm9vdGVyRGlzY2xhaW1lciBpbWcge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW4tbGVmdDogNzBweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuXG4uZm9vdGVyRGlzY2xhaW1lciAuZGlzY2xhaW1lckhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZvb3RlckRpc2NsYWltZXIgLmRpc2NsYWltZXJUZWtzdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlOyBcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5wb3B1cCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAtMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiA0MHB4IDMwcHggNTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLnBvcHVwLnNob3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk5O1xufVxuXG4ucG9wdXBfY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI1cHg7XG4gICAgcmlnaHQ6IDI1cHg7XG59XG5cbi5wb3B1cCBoMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDM0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG59XG5cbi5wb3B1cCAudGVrc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5maWxlX3NpemVfZXJyb3Ige1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY29sb3I6ICNmMDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLmZpbGVfc2l6ZV9lcnJvci5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5kdWVfbm90aWZpY2F0aW9uXG57XG4gICAgcGFkZGluZzogN3B4IDE1cHggOXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFNjNBMjg7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5kdWVfbm90aWZpY2F0aW9uIHBcbntcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xufVxuXG4ucmVzdWx0YXRlbiB7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTAwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5yZXN1bHRhdGVuIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogODBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnJlc3VsdGF0ZW4gLnNlYXJjaF9pdGVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzE1NEExO1xufVxuXG4ubmlldXdzYnJpZWZIb2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG4gICAgcGFkZGluZzogOTBweCAwO1xufVxuXG4ubmlldXdzYnJpZWZDb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubmlldXdzYnJpZWZDb250YWluZXIgLnRla3N0SG9sZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4ubmlldXdzYnJpZWZDb250YWluZXIgLnRla3N0SG9sZGVyIGgyIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG59XG5cbi5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIge1xuICAgIG1heC13aWR0aDogNTcwcHg7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgaW5wdXQge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMCAxODVweCAwIDMwcHg7XG59XG5cbi5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgYnV0dG9uIHtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgc2Fucy1zZXJpZjtcbiAgICB3aWR0aDogMTY1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm5pZXV3c2JyaWVmQ29udGFpbmVyIC5pbnB1dEhvbGRlciBidXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG59XG5cblxuLnVwbG9hZF9mb3JtIHtcbiAgICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvIDEwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiNmb3RvLXVwbG9hZFxue1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51cGxvYWRfZm9ybSAuZmlsZW5hbWVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiAjRUU2NzRDO1xufVxuXG4udXBsb2FkX2Zvcm0gLmJ1dHRvbi51cGxvYWQuZm90b191cGxvYWRcbntcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4udXBsb2FkX2Zvcm0gLmJ1dHRvbi51cGxvYWQuZm90b191cGxvYWQuaGlkZVxue1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzdWJtaXQtZm90byB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuI3N1Ym1pdC1mb3RvLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tb2JpbGVIZWFkZXJDdGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHotaW5kZXg6IDU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIFxuICAgIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxM3B4IDlweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2V2ZW50X2Jsb2NrLnN2ZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgXG4gICAgLmljb24ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cblxuLnVpLXdpZGdldCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIG1heC13aWR0aDogMzAwcHg7XG59XG5cbi51aS13aWRnZXQgbGkge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjlweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4udWktd2lkZ2V0IGxpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xufVxuXG4uY29udGVudF9ncmV5X2hvbGRlciAuZGlzY2xhaW1lciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIG1heC13aWR0aDogNDcwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLmxhbmd1YWdlLXNlbGVjdG9yIHtcbiAgICBtYXJnaW4tbGVmdDogNDVweDtcbn1cblxuLmxhbmd1YWdlLXNlbGVjdG9yIGFcbntcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBcbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbn1cblxuLmxhbmd1YWdlLXNlbGVjdG9yIHNwYW4ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBtYXJnaW46IDAgN3B4IDAgNnB4O1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3IubW9iaWxlLWxhbmd1YWdlLXNlbGVjdG9yIHtcbiAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEzOXB4O1xuICB0b3A6IDI0cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5sYW5ndWFnZS1zZWxlY3Rvci5tb2JpbGUtbGFuZ3VhZ2Utc2VsZWN0b3IgYSB7XG4gIGNvbG9yOiAjMzE1NEExO1xufVxuXG4ubGFuZ3VhZ2Utc2VsZWN0b3IubW9iaWxlLWxhbmd1YWdlLXNlbGVjdG9yIHNwYW4ge1xuICBjb2xvcjogIzMxNTRBMTtcbn1cblxuLm5pZXV3c2JyaWVmQ29udGFpbmVyIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uYWR2ZW50c2thbGVuZGVyQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzMxNjc7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWR2ZW50c0hlYWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNS41dnc7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmFkdmVudHNrYWxlbmRlckNvbnRhaW5lciBoMSB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5hZHZlbnRza2FsZW5kZXJDb250YWluZXIgLmludHJvIHtcbiAgICBtYXgtd2lkdGg6IDQ3MHB4O1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmFkdmVudHNOaWV1d3NicmllZmNvbnRhaW5lciB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5hZHZlbnRzTmlldXdzYnJpZWZjb250YWluZXIubmlldXdzYnJpZWZDb250YWluZXIgLmlucHV0SG9sZGVyIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWF4LXdpZHRoOiA0NzBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYWR2ZW50c05pZXV3c2JyaWVmY29udGFpbmVyLm5pZXV3c2JyaWVmQ29udGFpbmVyIC5pbnB1dEhvbGRlciBidXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uYWR2ZW50c05pZXV3c2JyaWVmY29udGFpbmVyLm5pZXV3c2JyaWVmQ29udGFpbmVyIC50ZWtzdEhvbGRlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmFkdmVudHNOaWV1d3NicmllZmNvbnRhaW5lci5uaWV1d3NicmllZkNvbnRhaW5lciAuZnVpLXR5cGUtZW1haWwge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi5hZHZlbnRzTmlldXdzYnJpZWZjb250YWluZXIubmlldXdzYnJpZWZDb250YWluZXIgLmZ1aS1jaGVja2JveC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmFkdmVudHNrYWxlbmRlckNvbnRhaW5lciBzdmcua2FsZW5kZXJib29tIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmFkdmVudCB7XG5cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjY7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAyMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAua3JhcyB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbiAgICB9XG5cblxuICAgICAmLmNsaWNrZWQge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAua3JhcyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmxha2Uge1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cblxuLmZsYWtlW3k9XCI4OFwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlODg7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS4xcztcbn1cblxuLmZsYWtlW3k9XCI0OTZcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTQ5NjtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE2cztcbn1cblxuLmZsYWtlW3k9XCIxMDRcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTEwNDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE3cztcbn1cblxuLmZsYWtlW3k9XCIzMTlcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTMxOTtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE1LjVzO1xufVxuXG4uZmxha2VbeT1cIjIyM1wiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlMjIzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTYuN3M7XG59XG5cbi5mbGFrZVt5PVwiODEwXCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2U4MTA7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNy4ycztcbn1cblxuLmZsYWtlW3k9XCI1MzdcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTUzNztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE1LjNzO1xufVxuXG4uZmxha2VbeT1cIjg3MFwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlODcwO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTYuNXM7XG59XG5cbi5mbGFrZVt5PVwiMTA1NFwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlMTA1NDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE3LjRzO1xufVxuXG4uZmxha2VbeT1cIjY0NlwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNjQ2O1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUuOXM7XG59XG5cbi5mbGFrZVt5PVwiNzIwXCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2U3MjA7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNi4zcztcbn1cblxuLmZsYWtlW3k9XCI2NDRcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTY0NDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE3LjJzO1xufVxuXG4uZmxha2VbeT1cIjEwMTlcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTEwMTk7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS4yNXM7XG59XG5cbi5mbGFrZVt5PVwiMTIxMlwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlMTIxMjtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE2LjhzO1xufVxuXG4uZmxha2VbeT1cIjkxOVwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlOTE5O1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTcuNzdzO1xufVxuXG4uZmxha2VbeT1cIjc1MVwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNzUxO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTUuMTNzO1xufVxuXG4uZmxha2VbeT1cIjY4NFwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNjg0O1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTYuNTZzO1xufVxuXG4uZmxha2VbeT1cIjU3MlwiXSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYWtlNTcyO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTcuN3M7XG59XG5cbi5mbGFrZVt5PVwiMzA1XCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2UzMDU7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS4wNXM7XG59XG5cbi5mbGFrZVt5PVwiNDY3XCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2U0Njc7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNi44NXM7XG59XG5cbi5mbGFrZVt5PVwiODY2XCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2U4NjY7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNy4xNXM7XG59XG5cbi5mbGFrZVt5PVwiOTE4XCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2U5MTg7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxNS44cztcbn1cblxuLmZsYWtlW3k9XCI0NzZcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTQ3NjtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE2LjU1cztcbn1cblxuLmZsYWtlW3k9XCIzMDhcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTMwODtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE3Ljk1cztcbn1cblxuLmZsYWtlW3k9XCIxNTVcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTE1NTtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE1LjMzcztcbn1cblxuLmZsYWtlW3k9XCI0OTNcIl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFrZTQ5MztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE2LjY2cztcbn1cblxuLmZsYWtlW3k9XCIxMTgzXCJdIHtcbiAgICBhbmltYXRpb24tbmFtZTogZmxha2UxMTgzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTcuNDZzO1xufVxuXG5Aa2V5ZnJhbWVzIGZsYWtlNDk2IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA2NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5NzRweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNjYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOTk1cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNjclIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQ5NnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDY4JSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQ3NXB4KTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYWtlODgge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDkzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzODdweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgOTQlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTQwM3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDk1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04OHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDk2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2UxMDQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDkyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzNzFweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgOTMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTM4N3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDRweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODhweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYWtlMzE5IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA3OCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTU3cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDc5JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExNzJweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzE5cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgODElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwNHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2UyMjMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDg0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyNTJweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgODUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTI2OHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDg2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMjNweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA4NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjA3cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTgxMCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNDQlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjY2cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDY4MXB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDQ2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA0NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzk1cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTUzNyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNjMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOTM4cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDY0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDk1NHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDY1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MzdweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAgNjYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUyMXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U4NzAge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwNXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA0MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MjFweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA0MiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODcwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNDMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTg1NHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2UxMDU0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAyOCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MjFweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDM3cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwNTRweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAzMSUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDM4cHgpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U2NDYge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDU2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDgyOXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA1NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4NDVweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA1OCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjQ2cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNTklIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjMwcHgpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U3MjAge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDUxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDc1NHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA1MiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3NzFweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA1MyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzIwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNTQlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzA0cHgpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U2NDQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDU2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDgzMXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA1NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4NDdweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA1OCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjQ0cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNTklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYyOHB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2UxMDE5IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0NTZweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMzElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDcycHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgMzIlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMTlweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAzMyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwM3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2UxMjEyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxOCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNjNweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjc5cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMTJweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAyMSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTE5NnB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U5MTkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDM3JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDU1NnB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAzOCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1NzJweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAzOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTE5cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTkwM3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U3NTEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDQ4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcyM3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA0OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3NDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzUxcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNTElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTczNXB4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxha2U2ODQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gNTMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzkwcHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDU0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDgwN3B4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDU1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02ODRweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA1NiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjY4cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTU3MiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDkwM3B4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA2MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5MTlweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA2MiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTcycHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNjMlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTU2cHgpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYWtlMzA1IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA3OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTY5cHgpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExODZweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA4MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzA1cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiA4MiUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yODlweCk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTQ2NyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDY3JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDBweCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDY4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMTZweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA2OSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDY3cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiA3MCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NTFweCk7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTg2NiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwOXB4KTtcbiAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNDElIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjI1cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgNDIlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTg2NnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gICA0MyUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04NTBweCk7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTkxOCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDM3JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDU1N3B4KTtcbiAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMzglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTczcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgMzklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTkxOHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDQwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTkwMnB4KTtcbiAgICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYWtlNDc2IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNjclIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMHB4KTtcbiAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNjglIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAxNnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDY5JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NzZweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA3MCUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NjBweCk7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTMwOCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDc4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExNjZweCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDc5JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExODNweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzA4cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiA4MSUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yOTJweCk7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTE1NSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDg5JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzMTlweCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzMzZweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA5MSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTU1cHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgIDkyJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzOXB4KTtcbiAgICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsYWtlNDkzIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgNjYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOTgxcHgpO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICA2NyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg5OThweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA2OCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDkzcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiA2OSUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00NzdweCk7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFrZTExODMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyOTJweCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIDIxJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwOHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIDIyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMTgzcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgMjMlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTE2N3B4KTtcbiAgICAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufSIsIi5zaXRlLWhlbmdlbG9Qcm9tb3RpZURlIHtcbiAgICAubWVudVJlY2h0c0NvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgICB9XG4gICAgXG4gICAgLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyX2NvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgLmZvb3RlckJvdHRvbUNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL2Zvb3Rlcl93YXZlLXNvbGlkLnN2Z1wiKTtcbiAgICB9XG4gICAgXG4gICAgLmhvbWUtYmxvY2tzIHtcbiAgICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiA2MDAwcHg7XG4gICAgICAgICAgbGVmdDogLTEwMDBweDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgaGVpZ2h0OiA0NjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaG9tZS1ibG9ja3MgLmJsb2suZmlyc3QtaXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMDVweDtcbiAgICB9XG4gICAgXG4gICAgLmhvbWUtYmxvY2tzIC5ibG9rIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAmLnNlY3Rpb24taG9tZXBhZ2VEZSAubGFuZGluZ3NIZWFkZXJDb250YWluZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTIwNXB4O1xuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMzBweCA4NXB4IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9ib3R0b20tZ3JlZW4uc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBcbiAgICAgICAgJi5pdGVtcy0wIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NkMwN0Q7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvYm90dG9tLWdyZWVuLnN2Zyk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuaXRlbXMtMSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvYm90dG9tLWJsdWUuc3ZnKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDQsIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAgJi5pdGVtcy0zIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQzY3NEM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvYm90dG9tLXJlZC5zdmcpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICAgIFxuICAgIC5ibG9rLWl0ZW1zIHVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTdweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2xpanN0LXBpamwtYmxhY2suc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIDhweCBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgfVxuICAgIFxuICAgIC5ibG9rLWl0ZW1zLml0ZW1zLTEgbGkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvbGlqc3QtcGlqbC5zdmcpO1xuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI4cHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgICYudXJsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9leHRlcm5lLWxpbmstYmxhY2suc3ZnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5lbnRyeSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWFnZXMvaW50ZXJuZS1saW5rLWJsYWNrLnN2Zyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmJsb2staXRlbXMuaXRlbXMtMSBsaSBhIHtcbiAgICAgICAgJi51cmwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1hZ2VzL2V4dGVybmUtbGluay5zdmcpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmVudHJ5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9pbnRlcm5lLWxpbmsuc3ZnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyAuYnV0dG9uSG9sZGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG4gICAgXG4gICAgLmJsb2staXRlbXMgLmJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDE5cHggMzBweCAyMHB4IDkwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICAgIFxuICAgIC5ibG9rLWl0ZW1zIC5idXR0b24gLnRla3N0IHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICB9XG4gICAgXG4gICAgLmJsb2staXRlbXMgLmJ1dHRvbjpob3ZlciAudGVrc3Qge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyAuYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICB9XG4gICAgXG4gICAgLmJsb2staXRlbXMgLmJ1dHRvbiAuaWNvbiB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0M3MUY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgfVxuICAgIFxuICAgIC5ibG9rLWl0ZW1zIC5idXR0b246aG92ZXIgLmljb257XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgIH1cbiAgICBcbiAgICAuYmxvay1pdGVtcyAuYnV0dG9uIC5pY29uOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9jYWxlbmRhcl9zdGFyLnN2Zyk7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICAgIFxuICAgIC5sYW5ndWFnZS1zZWxlY3Rvci5tb2JpbGUtbGFuZ3VhZ2Utc2VsZWN0b3Ige1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICB0b3A6IDE5cHg7XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgICAgIC5ibG9rLWl0ZW1zIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHggNTBweCAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYmxvay1pdGVtcyBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYmxvay1pdGVtcy5pdGVtcy0zIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgIH1cbn0iLCIuY29tcG9uZW50IHtcbiAgICBtYXJnaW46IDcwcHggMDtcbn1cblxuLmNvbXBvbmVudCB1bCxcbi5jb21wb25lbnQgb2xcbntcbiAgICBwYWRkaW5nLWxlZnQ6IDE3cHg7XG59XG5cbi5jb21wb25lbnQgdWwgbGksXG4uY29tcG9uZW50IG9sIGxpXG57XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4uY29tcG9uZW50X2dyaWRcbntcbiAgICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5jb21wb25lbnRfZ3JpZC5mdWxsIHtcbiAgICBtYXgtd2lkdGg6IDE0NDBweDtcbn1cblxuLmNvbXBvbmVudF9ncmlkIC5pbWFnZVRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjNjVCMzJFO1xufVxuXG4uY29tcG9uZW50X2dyaWQgLnRleHRfb25lX2NvbHVtblxue1xuICAgIG1heC13aWR0aDogOTg0cHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uY29tcG9uZW50X2dyaWQgLnRleHRfb25lX2NvbHVtbiBwOmxhc3QtY2hpbGRcbntcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY29tcG9uZW50LmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmNvbXBvbmVudC5idXR0b24gLmNvbXBvbmVudF9ncmlkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZXh0cmFfdG9wX21hcmdpblxue1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbmJ1dHRvbi5leHRyYV90b3BfbWFyZ2luXG57XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuXG4ucXVvdGUgc3Bhblxue1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4ucGx5ciBidXR0b246OmFmdGVyXG57XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdhbGxlcnkgLmNvbXBvbmVudF9ncmlkIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5jb21wb25lbnQgaDMge1xuICAgIGNvbG9yOiAjMzE1NEExO1xufVxuXG4uY29tcG9uZW50LnRla3N0IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ5ODI7XG59XG5cbi5jb21wb25lbnQudGVrc3QgLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY1QjMyRTtcbn1cblxuLmNvbXBvbmVudC5xdW90ZSB7XG4gICAgbWFyZ2luOiAtNTBweCAwIDEwMHB4O1xufVxuXG4uY29tcG9uZW50LmZvcm11bGllciBmb3JtXG57XG4gICAgcGFkZGluZzogNTBweCA4MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWY2ZmU7XG4gICAgbWF4LXdpZHRoOiA5ODVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uY29tcG9uZW50LmZvcm11bGllciBpbnB1dCwgXG4uY29tcG9uZW50LmZvcm11bGllciB0ZXh0YXJlYSxcbi5jb21wb25lbnQuZm9ybXVsaWVyIC5uaWNlLXNlbGVjdFxue1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5jb21wb25lbnQuZm9ybXVsaWVyIHRleHRhcmVhIFxue1xuICAgIGhlaWdodDogMTI1cHg7XG59XG5cbi5jb21wb25lbnQuZm9ybXVsaWVyIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5jb21wb25lbnQuZm9ybXVsaWVyIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXVxue1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5jb21wb25lbnQuZm9ybXVsaWVyIC5tdWx0aV9vcHRpb25zXG57XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnF1b3RlSG9sZGVyIHtcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDM0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgLmN0YSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggNTBweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIFxuICAgIC5jb21wb25lbnQucXVvdGUge1xuICAgICAgICBtYXJnaW46IC01MHB4IDAgNzVweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcbiAgICAuY29tcG9uZW50IHtcbiAgICAgICAgbWFyZ2luOiA1MHB4IDA7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNvbXBvbmVudCB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwO1xuICAgIH1cbiAgICBcbiAgICAuY3RhIHtcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuY3RhIC5jdGFfdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMzBweDtcbiAgICB9XG4gICAgXG4gICAgLmNvbXBvbmVudC5xdW90ZSB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwIDc1cHg7XG4gICAgfVxuICAgIFxuICAgIC5xdW90ZUhvbGRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLmNvbXBvbmVudC5mb3JtdWxpZXIgZm9ybSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jb21wb25lbnQgaDMge1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIH1cbn0iLCIubmljZS1zZWxlY3Qge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMwMDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNsZWFyOiBib3RoO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiTXVsaVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGhlaWdodDogNjVweDtcbiAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMTAwJTsgXG59XG4gIFxuICBcbiAgLm5pY2Utc2VsZWN0OmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNkYmRiZGI7IH1cbiAgLm5pY2Utc2VsZWN0OmFjdGl2ZSwgLm5pY2Utc2VsZWN0Lm9wZW4sIC5uaWNlLXNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjOTk5OyB9XG4gIC5uaWNlLXNlbGVjdDphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgIzAwMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTNweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjVweDtcbiAgICB0b3A6IDM5JTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDY2JSA2NiU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNjYlIDY2JTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIHdpZHRoOiAxM3B4O1xuICB9XG4gIC5uaWNlLXNlbGVjdC5vcGVuOmFmdGVyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTsgfVxuICAubmljZS1zZWxlY3Qub3BlbiAubGlzdCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTsgfVxuICAubmljZS1zZWxlY3QuZGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogI2VkZWRlZDtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIC5uaWNlLXNlbGVjdC5kaXNhYmxlZDphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICNjY2NjY2M7IH1cbiAgLm5pY2Utc2VsZWN0LndpZGUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5pY2Utc2VsZWN0LndpZGUgLmxpc3Qge1xuICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubmljZS1zZWxlY3QucmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5uaWNlLXNlbGVjdC5yaWdodCAubGlzdCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgLm5pY2Utc2VsZWN0LnNtYWxsIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4OyB9XG4gICAgLm5pY2Utc2VsZWN0LnNtYWxsOmFmdGVyIHtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgd2lkdGg6IDRweDsgfVxuICAgIC5uaWNlLXNlbGVjdC5zbWFsbCAub3B0aW9uIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgbWluLWhlaWdodDogMzRweDsgfVxuICAubmljZS1zZWxlY3QgLmxpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDY4LCA2OCwgNjgsIDAuMTEpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAwO1xuICAgICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSkgdHJhbnNsYXRlWSgtMjFweCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNzUpIHRyYW5zbGF0ZVkoLTIxcHgpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KSB0cmFuc2xhdGVZKC0yMXB4KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEuMjUpLCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEuMjUpLCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICAgIHotaW5kZXg6IDk7IH1cbiAgICAubmljZS1zZWxlY3QgLmxpc3Q6aG92ZXIgLm9wdGlvbjpub3QoOmhvdmVyKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gIC5uaWNlLXNlbGVjdCAub3B0aW9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjlweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7IH1cbiAgICAubmljZS1zZWxlY3QgLm9wdGlvbjpob3ZlciwgLm5pY2Utc2VsZWN0IC5vcHRpb24uZm9jdXMsIC5uaWNlLXNlbGVjdCAub3B0aW9uLnNlbGVjdGVkLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7IH1cbiAgICAubmljZS1zZWxlY3QgLm9wdGlvbi5zZWxlY3RlZCB7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLm5pY2Utc2VsZWN0IC5vcHRpb24uZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4ubm8tY3NzcG9pbnRlcmV2ZW50cyAubmljZS1zZWxlY3QgLmxpc3Qge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uby1jc3Nwb2ludGVyZXZlbnRzIC5uaWNlLXNlbGVjdC5vcGVuIC5saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiIsImh0bWwubm9fb3ZlcmZsb3dcbntcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZml4ZWRfaG9sZGVyIHtcbiAgICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxODJweDtcbn1cblxuLyojcGFnZS13cmFwcGVyID4gLnVrLXN0aWNreS1wbGFjZWhvbGRlciB7XG4gICAgaGVpZ2h0OiAxMjBweCAhaW1wb3J0YW50O1xufSovXG5cbi5tZW51X2NvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMjBweCAwO1xufVxuXG4ubWVudV9ob2xkZXJcbntcbiAgICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA4MHB4O1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubWVudV9jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLnN0aWNrX2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLnN0aWNrX2NvbnRhaW5lciBhIGltZyB7XG4gICAgaGVpZ2h0OiA1MHB4O1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIC5tZW51X3RvZ2dsZSB7XG4gICAgcmlnaHQ6IDEwcHg7XG59XG5cbi5tZW51X2hvbGRlci5maXhlZFxue1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG59XG5cbi5tZW51X2hvbGRlciAubG9nbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA0NXB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLm1lbnVfaG9sZGVyIC5sb2dvX21vYmlsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA0NXB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLm1lbnVfaG9sZGVyIC5sb2dvIGFcbntcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lbnUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAyNHB4IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG59XG5cbi5tZW51IHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCA1MHB4O1xufVxuXG4ubWVudSB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCA3NXB4O1xuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbn1cblxuLm1lbnUgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1cHg7XG59XG5cbi5tZW51IGEge1xuICAgIGNvbG9yOiAjMjczMTY3O1xufVxuXG4ubWVudSA+IHVsID4gbGkgPiBhIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5tZW51X3RvZ2dsZSB7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLm1lbnVfdG9nZ2xlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvcGlqbHRqZS5zdmcnKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDIzcHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMTgwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4vKiBjdXN0b20gbWVudSBrbGV1cmVuIGxhbmRpbmdzcGFnaW5hICovXG5cbi5zZWN0aW9uLWxhbmRpbmdzcGFnaW5hIC5maXhlZF9ob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY3RkI7XG59XG5cbi5zZWN0aW9uLWxhbmRpbmdzcGFnaW5hIC5tZW51IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLmdlZW5faGVhZGVyIC5tZW51X2NvbnRhaW5lciAubWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbn1cblxuLnNlY3Rpb24tbGFuZGluZ3NwYWdpbmEgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyLCAuc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLmdlZW5faGVhZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIC5tZW51IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uc2VjdGlvbi1sYW5kaW5nc3BhZ2luYSAuZml4ZWRfaG9sZGVyLmdlZW5faGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm1lbnVfYmFja2dyb3VuZFxue1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogY2FsYyg0MTRweCAtIDUwdncpO1xuICAgIGhlaWdodDogMTg2cHg7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9tZW51X3dhdmUuc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuLm1lbnU6aG92ZXIgLm1lbnVfYmFja2dyb3VuZCxcbi5tZW51LmFjdGl2ZSAubWVudV9iYWNrZ3JvdW5kXG57XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ubWVudS50b2dnbGVDbG9zZSAubWVudV9iYWNrZ3JvdW5kIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLm1lbnUudG9nZ2xlQ2xvc2UgdWwgLnN1Ym1lbnUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbn1cblxuLm1lbnUudG9nZ2xlQ2xvc2UgLm1lbnVfdG9nZ2xlOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxODBkZWcpICFpbXBvcnRhbnQ7XG59XG5cbi5tZW51X2xpXG57XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWVudSB1bCAuc3VibWVudVxue1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuXG4ubWVudTpob3ZlciB1bCAuc3VibWVudVxue1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLm1lbnU6aG92ZXIgLm1lbnVfdG9nZ2xlOjpiZWZvcmUsXG4ubWVudS5hY3RpdmUgLm1lbnVfdG9nZ2xlOjpiZWZvcmVcbntcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XG59XG5cbi5tZW51ID4gdWwgPiBsaTo6YWZ0ZXJcbntcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMCU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2NztcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7XG59XG5cbi5tZW51ID4gdWwgPiBsaTpob3Zlcjo6YWZ0ZXJcbntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwJTtcbn1cblxuLm1lbnUgdWwgLnN1Ym1lbnUgbGlcbntcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYVxue1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYTo6YWZ0ZXJcbntcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAtNXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcztcbn1cblxuLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYTpob3Zlcjo6YWZ0ZXJcbntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwJTtcbn1cblxuLm1lbnUgdWwgLmFjdGl2ZVRvcCA+IGEge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMzMTU0QTE7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLm1lbnU6aG92ZXIgdWwgLmFjdGl2ZVRvcCA+IGFcbntcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMjczMTY3O1xufVxuXG4ubWVudSB1bCAuYWN0aXZlVG9wOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yNXB4O1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTU0QTE7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbn1cblxuLm1lbnU6aG92ZXIgdWwgLmFjdGl2ZVRvcDo6YmVmb3JlXG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzE2Nztcbn1cblxuLm1lbnUgdWwgLmFjdGl2ZSBhOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC01cHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmhhbWJ1cmdlcl9ob2xkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgICByaWdodDogMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgei1pbmRleDogNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTRBMTtcbn1cblxuLmhhbWJ1cmdlciB7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbjogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXIgLmxpbmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5oYW1idXJnZXIgLmxpbmUubGluZV90b3Age1xuICAgIHRvcDogM3B4O1xuICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbn1cblxuLm1lbnUuYWN0aXZlIC5oYW1idXJnZXIgLmxpbmUubGluZV90b3BcbntcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRvcDogMTNweDtcbn1cblxuLmhhbWJ1cmdlciAubGluZS5saW5lX21pZGRsZSB7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDJweCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xufVxuXG4uaGFtYnVyZ2VyIC5saW5lLmxpbmVfYm90dG9tIHtcbiAgICBib3R0b206IDRweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG59XG5cbi5tZW51LmFjdGl2ZSAuaGFtYnVyZ2VyIC5saW5lLmxpbmVfYm90dG9tXG57XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIGJvdHRvbTogMTRweDtcbn1cblxuLm1lbnUuYWN0aXZlIC5oYW1idXJnZXIgLmxpbmUubGluZV9taWRkbGVcbntcbiAgICB3aWR0aDogMDtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi50b3BNZW51SG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDY2NGFhO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDYycHg7XG4gICAgcGFkZGluZzogMTVweCAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC50b3BNZW51SG9sZGVyLnVrLWFjdGl2ZSB7XG4gICAgcGFkZGluZzogMTVweCAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLnRvcE1lbnVIb2xkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xufVxuXG4vKi50b3BNZW51SG9sZGVyLmhpZGUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufSovXG5cbi50b3BNZW51Q29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEyNDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciBpbnB1dCB7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NjY0YWE7XG4gICAgcGFkZGluZzogMCA4NXB4IDAgMjVweDtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNBMkIxRDQ7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMzBweCAjNDY2NGFhIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjZzO1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjQTJCMUQ0O1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciAuaW5wdXRfaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tZW51Wm9la2VuSG9sZGVyIC5pbnB1dF9ob2xkZXIgLnNlYXJjaEljb24sIFxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlciAuc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNnM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciAuaW5wdXRfaG9sZGVyLmZvY3VzIC5zZWFyY2hJY29uLFxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlci5mb2N1cyAuc2VhcmNoIHtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLSAzMHB4KTtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlci5mb2N1cyBpbnB1dCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlciAuc2VhcmNoSWNvbiBpbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlciAuc2VhcmNoIGltZyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4ubWVudVpvZWtlbkhvbGRlciAuaW5wdXRfaG9sZGVyIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjZzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlciAuY2xvc2UgaW1nIHtcbiAgICB3aWR0aDogMTdweDtcbn1cblxuLm1lbnVab2VrZW5Ib2xkZXIgLmlucHV0X2hvbGRlci5mb2N1cyAuY2xvc2Uge1xuICAgIHJpZ2h0OiAtMjBweDtcbn1cblxuLm1lbnVSZWNodHMge1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLm1lbnVSZWNodHNDb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4ubWVudVJlY2h0c0NvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA2MDAwcHg7XG4gICAgdG9wOiAtMTVweDtcbiAgICBoZWlnaHQ6IDYycHg7XG4gICAgei1pbmRleDogLTE7XG59XG5cbi5tZW51UmVjaHRzIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4ubWVudVJlY2h0cyB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWVudVJlY2h0cyB1bCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG59XG5cbi5tZW51UmVjaHRzIHVsIGxpIGEge1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4ubW9iaWVsTWVudVpvZWtlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xufVxuXG4udG9wTWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJ1dHRvbi1ob2xkZXItbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAgIC5tZW51X2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gICAgLm1lbnUge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjA5cHgpO1xuICAgIH1cbiAgICBcbiAgICAubWVudSB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogODNweDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgbGkge1xuICAgICAgICBtYXJnaW46IDAgNTVweDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfYmFja2dyb3VuZCB7XG4gICAgICAgIGxlZnQ6IC0xNTBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgLm1lbnUgdWwgbGkge1xuICAgICAgICBtYXJnaW46IDAgNDVweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLnRvcE1lbnVIb2xkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAudG9wTWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAubWVudSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5tZW51ID4gdWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjdweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG4gICAgfVxuICAgIFxuICAgIC5tZW51X2NvbnRhaW5lci5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzE1NEExO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSAubWVudSA+IHVsIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBcbiAgICAubWVudV9ob2xkZXIgLmxvZ29fbW9iaWxlIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogODVweDtcbiAgICB9XG4gICAgXG4gICAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfaG9sZGVyIC5sb2dvIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNjVweDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcztcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSB7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDAwMTtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICBcbiAgICAubWVudV90b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuaGFtYnVyZ2VyX2hvbGRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAubWVudTpob3ZlciB1bCAuc3VibWVudSB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfYmFja2dyb3VuZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5tZW51ID4gdWwgPiBsaSxcbiAgICAubWVudSA+IHVsID4gbGk6Zmlyc3QtY2hpbGRcbiAgICB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tZW51ID4gdWwgPiBsaTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAubWVudSB1bCAuYWN0aXZlVG9wID4gYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICBcbiAgICAubWVudTpob3ZlciB1bCAuYWN0aXZlVG9wID4gYVxuICAgIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIFxuICAgIC5tZW51IHVsIC5zdWJtZW51IHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLmhhc19zdWIuYWN0aXZlU3ViIC5zdWJtZW51IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAubWVudSB1bCAuaGFzX3N1YiA+IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIFxuICAgIC5tZW51IHVsIC5oYXNfc3ViID4gYTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvYXJyb3dfd2hpdGUuc3ZnJyk7XG4gICAgICAgIHdpZHRoOiAxOXB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIHRvcDogNHB4O1xuICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLmhhc19zdWIuYWN0aXZlU3ViID4gYTo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgfVxuICAgIFxuICAgIC5tZW51IHVsIC5zdWJtZW51IGxpIGE6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tZW51IHVsIC5zdWJtZW51IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgICBcbiAgICAuZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAuc3RpY2tfY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLmFjdGl2ZVRvcDo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgPiB1bCA+IGxpID4gYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICBcbiAgICAubWVudV9jb250YWluZXIsIC5tZW51X2hvbGRlciwgLm1lbnUge1xuICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgfVxuXG4gICAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUge1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB9XG5cbiAgICAubWVudV9jb250YWluZXIuYWN0aXZlIC5tZW51X2hvbGRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIFxuICAgIC5tZW51X2NvbnRhaW5lci5hY3RpdmUge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBcbiAgICAubWVudV9jb250YWluZXIuYWN0aXZlIC5tZW51X2hvbGRlciwgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSAubWVudSB7XG4gICAgICAgIGhlaWdodDogOTVweDtcbiAgICB9XG4gICAgXG4gICAgLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSAubWVudV9ob2xkZXIsIC5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5tZW51X2NvbnRhaW5lci5hY3RpdmUgLm1lbnUge1xuICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgfVxuICAgIFxuICAgIC5tZW51LmFjdGl2ZSAubW9iaWVsTWVudVpvZWtlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICBcbiAgICAubW9iaWVsTWVudVpvZWtlbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogNzdweDtcbiAgICB9XG4gICAgXG4gICAgLm1vYmllbE1lbnVab2VrZW4gaW5wdXQge1xuICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQ2NjRhYTtcbiAgICAgICAgcGFkZGluZzogMCA4NXB4IDAgMjVweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDMwcHggIzQ2NjRhYSBpbnNldCAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNnM7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpZWxNZW51Wm9la2VuIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyAgICBcbiAgICB9XG4gICAgXG4gICAgLm1vYmllbE1lbnVab2VrZW4gLmlucHV0X2hvbGRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLm1vYmllbE1lbnVab2VrZW4gLmlucHV0X2hvbGRlciAuc2VhcmNoIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gICAgXG4gICAgLm1vYmllbE1lbnVab2VrZW4gLmlucHV0X2hvbGRlciAuc2VhcmNoIGltZyB7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgIH1cbiAgICBcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5tZW51PnVsPmxpLCAubWVudT51bD5saTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnU+dWw+bGk+YSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLmhhc19zdWIgPiBhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAubWVudSB1bCAuaGFzX3N1YiA+IGE6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICBcbiAgICAubWVudV9ob2xkZXIgLm1lbnUgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAubWVudV9ob2xkZXIgLm1lbnUgdWwubW9iaWxlSG9vZmRNZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTQwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tZW51IHVsIC5oYXNfc3ViLmFjdGl2ZVN1YiAuc3VibWVudSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAubWVudV9jb250YWluZXI6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvbWVudWJhY2tncm91bmQuc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVfY29udGFpbmVyLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICBcbiAgICAubWVudV9jb250YWluZXIuYWN0aXZlIC5tZW51X2hvbGRlciB7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuICAgIFxuICAgIC5idXR0b24taG9sZGVyLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweCAhaW1wb3J0YW50O1xuICAgICAgICBcbiAgICAgICAgLyomOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9tZW51YmFja2dyb3VuZC5zdmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9Ki9cbiAgICB9XG4gICAgXG4gICAgYS5tZW51LWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIHBhZGRpbmc6IDE3cHggMjBweCAxN3B4IDcwcHggIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvY2FkZWF1SWNvbi5zdmcnKTtcbiAgICAgICAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLm1lbnVfY29udGFpbmVyLmFjdGl2ZSBhLm1lbnUtYnV0dG9uIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgXG4gICAgLm1lbnVTZWFyY2hJY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogODBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgIH1cbiAgICBcbiAgICAuZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSB7XG4gICAgICAgIGhlaWdodDogNzVweDtcbiAgICB9XG59IiwiJHRoZW1lQ29sb3I6ICNFQzY3NEM7XG5cbkBrZXlmcmFtZXMgcGx5ci1wcm9ncmVzc3tcbiAgICB0b3tcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjoyNXB4IDBcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIHBseXItcG9wdXB7XG4gICAgMCV7XG4gICAgICAgIG9wYWNpdHk6LjU7XG4gICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDEwcHgpXG4gICAgfVxuICAgIHRve1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDApXG4gICAgfVxufVxuQGtleWZyYW1lcyBwbHlyLWZhZGUtaW57XG4gICAgZnJvbXtcbiAgICAgICAgb3BhY2l0eTowXG4gICAgfVxuICAgIHRve1xuICAgICAgICBvcGFjaXR5OjFcbiAgICB9XG59XG4ucGx5cntcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzphdXRvO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6c3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gICAgZGlyZWN0aW9uOmx0cjtcbiAgICBmb250LWZhbWlseTpBdmVuaXIsXCJBdmVuaXIgTmV4dFwiLFwiSGVsdmV0aWNhIE5ldWVcIixcIlNlZ29lIFVJXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBsaW5lLWhlaWdodDoxLjc7XG4gICAgbWF4LXdpZHRoOjEwMCU7XG4gICAgbWluLXdpZHRoOjIwMHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRleHQtc2hhZG93Om5vbmU7XG4gICAgdHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBlYXNlXG59XG4ucGx5ciBhdWRpbywucGx5ciB2aWRlb3tcbiAgICBib3JkZXItcmFkaXVzOmluaGVyaXQ7XG4gICAgaGVpZ2h0OmF1dG87XG4gICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyIGJ1dHRvbntcbiAgICBmb250OmluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6aW5oZXJpdDtcbiAgICB3aWR0aDphdXRvO1xuICAgIGhlaWdodDogYXV0bztcbn1cbi5wbHlyIGJ1dHRvbjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnBseXI6Zm9jdXN7XG4gICAgb3V0bGluZTowXG59XG4ucGx5ci0tZnVsbC11aXtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3hcbn1cbi5wbHlyLS1mdWxsLXVpICosLnBseXItLWZ1bGwtdWkgOjphZnRlciwucGx5ci0tZnVsbC11aSA6OmJlZm9yZXtcbiAgICBib3gtc2l6aW5nOmluaGVyaXRcbn1cbi5wbHlyLS1mdWxsLXVpIGEsLnBseXItLWZ1bGwtdWkgYnV0dG9uLC5wbHlyLS1mdWxsLXVpIGlucHV0LC5wbHlyLS1mdWxsLXVpIGxhYmVse1xuICAgIHRvdWNoLWFjdGlvbjptYW5pcHVsYXRpb25cbn1cbi5wbHlyX19iYWRnZXtcbiAgICBiYWNrZ3JvdW5kOiM0ZjViNWY7XG4gICAgYm9yZGVyLXJhZGl1czoycHg7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBmb250LXNpemU6OXB4O1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgcGFkZGluZzozcHggNHB4XG59XG4ucGx5ci0tZnVsbC11aSA6Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXJ7XG4gICAgZGlzcGxheTpub25lXG59XG4ucGx5cl9fY2FwdGlvbnN7XG4gICAgYW5pbWF0aW9uOnBseXItZmFkZS1pbiAuM3MgZWFzZTtcbiAgICBib3R0b206MDtcbiAgICBjb2xvcjojZmZmO1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBmb250LXNpemU6MTRweDtcbiAgICBsZWZ0OjA7XG4gICAgcGFkZGluZzoxMHB4O1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHRyYW5zaXRpb246dHJhbnNmb3JtIC40cyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cl9fY2FwdGlvbnMgLnBseXJfX2NhcHRpb257XG4gICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLC44KTtcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgICAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrOmNsb25lO1xuICAgIGJveC1kZWNvcmF0aW9uLWJyZWFrOmNsb25lO1xuICAgIGxpbmUtaGVpZ2h0OjE4NSU7XG4gICAgcGFkZGluZzouMmVtIC41ZW07XG4gICAgd2hpdGUtc3BhY2U6cHJlLXdyYXBcbn1cbi5wbHlyX19jYXB0aW9ucyAucGx5cl9fY2FwdGlvbiBkaXZ7XG4gICAgZGlzcGxheTppbmxpbmVcbn1cbi5wbHlyX19jYXB0aW9ucyBzcGFuOmVtcHR5e1xuICAgIGRpc3BsYXk6bm9uZVxufVxuQG1lZGlhIChtaW4td2lkdGg6NDgwcHgpe1xuICAgIC5wbHlyX19jYXB0aW9uc3tcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgIHBhZGRpbmc6MjBweFxuICAgIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXtcbiAgICAucGx5cl9fY2FwdGlvbnN7XG4gICAgICAgIGZvbnQtc2l6ZToxOHB4XG4gICAgfVxufVxuLnBseXItLWNhcHRpb25zLWFjdGl2ZSAucGx5cl9fY2FwdGlvbnN7XG4gICAgZGlzcGxheTpibG9ja1xufVxuLnBseXI6bm90KC5wbHlyLS1oaWRlLWNvbnRyb2xzKSAucGx5cl9fY29udHJvbHM6bm90KDplbXB0eSl+LnBseXJfX2NhcHRpb25ze1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC00MHB4KVxufVxuLnBseXJfX2NvbnRyb2x7XG4gICAgYmFja2dyb3VuZDowIDA7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czozcHg7XG4gICAgY29sb3I6aW5oZXJpdDtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBmbGV4LXNocmluazowO1xuICAgIG92ZXJmbG93OnZpc2libGU7XG4gICAgcGFkZGluZzo3cHg7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2Vcbn1cbi5wbHlyX19jb250cm9sIHN2Z3tcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZpbGw6Y3VycmVudENvbG9yO1xuICAgIGhlaWdodDoxOHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7XG4gICAgd2lkdGg6MThweFxufVxuLnBseXJfX2NvbnRyb2w6Zm9jdXN7XG4gICAgb3V0bGluZTowXG59XG4ucGx5cl9fY29udHJvbC5wbHlyX190YWItZm9jdXN7XG4gICAgb3V0bGluZTowXG59XG5hLnBseXJfX2NvbnRyb2x7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmVcbn1cbmEucGx5cl9fY29udHJvbDo6YWZ0ZXIsYS5wbHlyX19jb250cm9sOjpiZWZvcmV7XG4gICAgZGlzcGxheTpub25lXG59XG4ucGx5cl9fY29udHJvbC5wbHlyX19jb250cm9sLS1wcmVzc2VkIC5pY29uLS1ub3QtcHJlc3NlZCwucGx5cl9fY29udHJvbC5wbHlyX19jb250cm9sLS1wcmVzc2VkIC5sYWJlbC0tbm90LXByZXNzZWQsLnBseXJfX2NvbnRyb2w6bm90KC5wbHlyX19jb250cm9sLS1wcmVzc2VkKSAuaWNvbi0tcHJlc3NlZCwucGx5cl9fY29udHJvbDpub3QoLnBseXJfX2NvbnRyb2wtLXByZXNzZWQpIC5sYWJlbC0tcHJlc3NlZHtcbiAgICBkaXNwbGF5Om5vbmVcbn1cbi5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbC5wbHlyX190YWItZm9jdXMsLnBseXItLWF1ZGlvIC5wbHlyX19jb250cm9sOmhvdmVyLC5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbFthcmlhLWV4cGFuZGVkPXRydWVde1xuICAgIGJhY2tncm91bmQ6JHRoZW1lQ29sb3I7XG4gICAgY29sb3I6I2ZmZlxufVxuLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9sIHN2Z3tcbiAgICBmaWx0ZXI6ZHJvcC1zaGFkb3coMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjE1KSlcbn1cbi5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbC5wbHlyX190YWItZm9jdXMsLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9sOmhvdmVyLC5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbFthcmlhLWV4cGFuZGVkPXRydWVde1xuICAgIGJhY2tncm91bmQ6JHRoZW1lQ29sb3I7XG4gICAgY29sb3I6I2ZmZlxufVxuLnBseXJfX2NvbnRyb2wtLW92ZXJsYWlke1xuICAgIGJhY2tncm91bmQ6JHRoZW1lQ29sb3I7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czoxMDAlO1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KTtcbiAgICBjb2xvcjojZmZmO1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBsZWZ0OjUwJTtcbiAgICBwYWRkaW5nOjE1cHg7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjUwJTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgei1pbmRleDoyXG59XG4ucGx5cl9fY29udHJvbC0tb3ZlcmxhaWQgc3Zne1xuICAgIGxlZnQ6MnB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlXG59XG4ucGx5cl9fY29udHJvbC0tb3ZlcmxhaWQ6Zm9jdXMsLnBseXJfX2NvbnRyb2wtLW92ZXJsYWlkOmhvdmVye1xuICAgIGJhY2tncm91bmQ6JHRoZW1lQ29sb3Jcbn1cbi5wbHlyLS1wbGF5aW5nIC5wbHlyX19jb250cm9sLS1vdmVybGFpZHtcbiAgICBvcGFjaXR5OjA7XG4gICAgdmlzaWJpbGl0eTpoaWRkZW5cbn1cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9sLS1vdmVybGFpZHtcbiAgICBkaXNwbGF5OmJsb2NrXG59XG4ucGx5ci0tZnVsbC11aSA6Oi13ZWJraXQtbWVkaWEtY29udHJvbHN7XG4gICAgZGlzcGxheTpub25lXG59XG4ucGx5cl9fY29udHJvbHN7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXJcbn1cbi5wbHlyX19jb250cm9scyAucGx5cl9fbWVudSwucGx5cl9fY29udHJvbHMgLnBseXJfX3Byb2dyZXNzLC5wbHlyX19jb250cm9scyAucGx5cl9fdGltZSwucGx5cl9fY29udHJvbHMgLnBseXJfX3ZvbHVtZSwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2x7XG4gICAgbWFyZ2luLWxlZnQ6NXB4XG59XG4ucGx5cl9fY29udHJvbHMgLnBseXJfX21lbnUrLnBseXJfX2NvbnRyb2wsLnBseXJfX2NvbnRyb2xzIC5wbHlyX19wcm9ncmVzcysucGx5cl9fY29udHJvbCwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2wrLnBseXJfX2NvbnRyb2wsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sKy5wbHlyX19tZW51e1xuICAgIG1hcmdpbi1sZWZ0OjJweFxufVxuLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCtbZGF0YS1wbHlyPXBhdXNlXXtcbiAgICBtYXJnaW4tbGVmdDowO1xuICAgIG1hcmdpbi1yaWdodDphdXRvXG59XG4ucGx5cl9fY29udHJvbHM6ZW1wdHl7XG4gICAgZGlzcGxheTpub25lXG59XG5AbWVkaWEgKG1pbi13aWR0aDo0ODBweCl7XG4gICAgLnBseXJfX2NvbnRyb2xzIC5wbHlyX19tZW51LC5wbHlyX19jb250cm9scyAucGx5cl9fcHJvZ3Jlc3MsLnBseXJfX2NvbnRyb2xzIC5wbHlyX190aW1lLC5wbHlyX19jb250cm9scyAucGx5cl9fdm9sdW1lLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MTBweFxuICAgIH1cbn1cbi5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbHN7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6aW5oZXJpdDtcbiAgICBjb2xvcjojNGY1YjVmO1xuICAgIHBhZGRpbmc6MTBweFxufVxuLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9sc3tcbiAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLDApLHJnYmEoMCwwLDAsLjcpKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOmluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6aW5oZXJpdDtcbiAgICBib3R0b206MDtcbiAgICBjb2xvcjojZmZmO1xuICAgIGxlZnQ6MDtcbiAgICBwYWRkaW5nOjIwcHggNXB4IDVweDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICByaWdodDowO1xuICAgIHRyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZS1pbi1vdXQsdHJhbnNmb3JtIC40cyBlYXNlLWluLW91dDtcbiAgICB6LWluZGV4OjNcbn1cbkBtZWRpYSAobWluLXdpZHRoOjQ4MHB4KXtcbiAgICAucGx5ci0tdmlkZW8gLnBseXJfX2NvbnRyb2xze1xuICAgICAgICBwYWRkaW5nOjM1cHggMTBweCAxMHB4XG4gICAgfVxufVxuLnBseXItLXZpZGVvLnBseXItLWhpZGUtY29udHJvbHMgLnBseXJfX2NvbnRyb2xze1xuICAgIG9wYWNpdHk6MDtcbiAgICBwb2ludGVyLWV2ZW50czpub25lO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpXG59XG4ucGx5ciBbZGF0YS1wbHlyPWFpcnBsYXldLC5wbHlyIFtkYXRhLXBseXI9Y2FwdGlvbnNdLC5wbHlyIFtkYXRhLXBseXI9ZnVsbHNjcmVlbl0sLnBseXIgW2RhdGEtcGx5cj1waXBde1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXItLWFpcnBsYXktc3VwcG9ydGVkIFtkYXRhLXBseXI9YWlycGxheV0sLnBseXItLWNhcHRpb25zLWVuYWJsZWQgW2RhdGEtcGx5cj1jYXB0aW9uc10sLnBseXItLWZ1bGxzY3JlZW4tZW5hYmxlZCBbZGF0YS1wbHlyPWZ1bGxzY3JlZW5dLC5wbHlyLS1waXAtc3VwcG9ydGVkIFtkYXRhLXBseXI9cGlwXXtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9ja1xufVxuLnBseXJfX3ZpZGVvLWVtYmVke1xuICAgIGhlaWdodDowO1xuICAgIHBhZGRpbmctYm90dG9tOjU2LjI1JTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZVxufVxuLnBseXJfX3ZpZGVvLWVtYmVkIGlmcmFtZXtcbiAgICBib3JkZXI6MDtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBsZWZ0OjA7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6bm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB1c2VyLXNlbGVjdDpub25lO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyLS1mdWxsLXVpIC5wbHlyX192aWRlby1lbWJlZD4ucGx5cl9fdmlkZW8tZW1iZWRfX2NvbnRhaW5lcntcbiAgICBwYWRkaW5nLWJvdHRvbToyNDAlO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC0zOC4yODEyNSUpXG59XG4ucGx5cl9fbWVudXtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgcG9zaXRpb246cmVsYXRpdmVcbn1cbi5wbHlyX19tZW51IC5wbHlyX19jb250cm9sIHN2Z3tcbiAgICB0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgZWFzZVxufVxuLnBseXJfX21lbnUgLnBseXJfX2NvbnRyb2xbYXJpYS1leHBhbmRlZD10cnVlXSBzdmd7XG4gICAgdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZylcbn1cbi5wbHlyX19tZW51IC5wbHlyX19jb250cm9sW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLnBseXJfX3Rvb2x0aXB7XG4gICAgZGlzcGxheTpub25lXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVye1xuICAgIGFuaW1hdGlvbjpwbHlyLXBvcHVwIC4ycyBlYXNlO1xuICAgIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuOSk7XG4gICAgYm9yZGVyLXJhZGl1czo0cHg7XG4gICAgYm90dG9tOjEwMCU7XG4gICAgYm94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMTUpO1xuICAgIGNvbG9yOiM0ZjViNWY7XG4gICAgZm9udC1zaXplOjE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbToxMHB4O1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHJpZ2h0Oi0zcHg7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICB6LWluZGV4OjNcbn1cbi5wbHlyX19tZW51X19jb250YWluZXI+ZGl2e1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOmhlaWdodCAuMzVzIGN1YmljLWJlemllciguNCwwLC4yLDEpLHdpZHRoIC4zNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSlcbn1cbi5wbHlyX19tZW51X19jb250YWluZXI6OmFmdGVye1xuICAgIGJvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC45KTtcbiAgICBjb250ZW50OicnO1xuICAgIGhlaWdodDowO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHJpZ2h0OjE1cHg7XG4gICAgdG9wOjEwMCU7XG4gICAgd2lkdGg6MFxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciBbcm9sZT1tZW51XXtcbiAgICBwYWRkaW5nOjdweFxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciBbcm9sZT1tZW51aXRlbV0sLnBseXJfX21lbnVfX2NvbnRhaW5lciBbcm9sZT1tZW51aXRlbXJhZGlvXXtcbiAgICBtYXJnaW4tdG9wOjJweFxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciBbcm9sZT1tZW51aXRlbV06Zmlyc3QtY2hpbGQsLnBseXJfX21lbnVfX2NvbnRhaW5lciBbcm9sZT1tZW51aXRlbXJhZGlvXTpmaXJzdC1jaGlsZHtcbiAgICBtYXJnaW4tdG9wOjBcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2x7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGNvbG9yOiM0ZjViNWY7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgIHBhZGRpbmc6NHB4IDExcHg7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6bm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB1c2VyLXNlbGVjdDpub25lO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2w+c3BhbntcbiAgICBhbGlnbi1pdGVtczppbmhlcml0O1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sOjphZnRlcntcbiAgICBib3JkZXI6NHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjUwJTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKVxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tZm9yd2FyZHtcbiAgICBwYWRkaW5nLXJpZ2h0OjI4cHhcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wtLWZvcndhcmQ6OmFmdGVye1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOnJnYmEoNzksOTEsOTUsLjgpO1xuICAgIHJpZ2h0OjVweFxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tZm9yd2FyZC5wbHlyX190YWItZm9jdXM6OmFmdGVyLC5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wtLWZvcndhcmQ6aG92ZXI6OmFmdGVye1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOmN1cnJlbnRDb2xvclxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tYmFja3tcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgbWFyZ2luOjdweDtcbiAgICBtYXJnaW4tYm90dG9tOjNweDtcbiAgICBwYWRkaW5nLWxlZnQ6MjhweDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB3aWR0aDpjYWxjKDEwMCUgLSAxNHB4KVxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbC0tYmFjazo6YWZ0ZXJ7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOnJnYmEoNzksOTEsOTUsLjgpO1xuICAgIGxlZnQ6N3B4XG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sLS1iYWNrOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZDojYjdjNWNkO1xuICAgIGJveC1zaGFkb3c6MCAxcHggMCAjZmZmO1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgaGVpZ2h0OjFweDtcbiAgICBsZWZ0OjA7XG4gICAgbWFyZ2luLXRvcDo0cHg7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHJpZ2h0OjA7XG4gICAgdG9wOjEwMCVcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2wtLWJhY2sucGx5cl9fdGFiLWZvY3VzOjphZnRlciwucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sLS1iYWNrOmhvdmVyOjphZnRlcntcbiAgICBib3JkZXItcmlnaHQtY29sb3I6Y3VycmVudENvbG9yXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb117XG4gICAgcGFkZGluZy1sZWZ0OjdweFxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOjphZnRlciwucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb106OmJlZm9yZXtcbiAgICBib3JkZXItcmFkaXVzOjEwMCVcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTo6YmVmb3Jle1xuICAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuMSk7XG4gICAgY29udGVudDonJztcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZsZXgtc2hyaW5rOjA7XG4gICAgaGVpZ2h0OjE2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OjEwcHg7XG4gICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2U7XG4gICAgd2lkdGg6MTZweFxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOjphZnRlcntcbiAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgYm9yZGVyOjA7XG4gICAgaGVpZ2h0OjZweDtcbiAgICBsZWZ0OjEycHg7XG4gICAgb3BhY2l0eTowO1xuICAgIHRvcDo1MCU7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2Usb3BhY2l0eSAuM3MgZWFzZTtcbiAgICB3aWR0aDo2cHhcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXVthcmlhLWNoZWNrZWQ9dHJ1ZV06OmJlZm9yZXtcbiAgICBiYWNrZ3JvdW5kOiR0aGVtZUNvbG9yXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb11bYXJpYS1jaGVja2VkPXRydWVdOjphZnRlcntcbiAgICBvcGFjaXR5OjE7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSlcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXS5wbHlyX190YWItZm9jdXM6OmJlZm9yZSwucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb106aG92ZXI6OmJlZm9yZXtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEpXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19tZW51X192YWx1ZXtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgbWFyZ2luLXJpZ2h0Oi01cHg7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIHBhZGRpbmctbGVmdDoyNXB4O1xuICAgIHBvaW50ZXItZXZlbnRzOm5vbmVcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2Vde1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xuICAgIGJhY2tncm91bmQ6MCAwO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MjhweDtcbiAgICBjb2xvcjokdGhlbWVDb2xvcjtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGhlaWdodDoyMHB4O1xuICAgIG1hcmdpbjowO1xuICAgIHBhZGRpbmc6MDtcbiAgICB0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGVhc2U7XG4gICAgd2lkdGg6MTAwJVxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre1xuICAgIGJhY2tncm91bmQ6MCAwO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGhlaWdodDo0cHg7XG4gICAgdHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBlYXNlO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB1c2VyLXNlbGVjdDpub25lO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LGN1cnJlbnRDb2xvciB2YXIoLS12YWx1ZSwwKSx0cmFuc3BhcmVudCB2YXIoLS12YWx1ZSwwKSlcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci10aHVtYntcbiAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czoxMDAlO1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMik7XG4gICAgaGVpZ2h0OjE0cHg7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7XG4gICAgd2lkdGg6MTRweDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtcbiAgICBtYXJnaW4tdG9wOi01cHhcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNre1xuICAgIGJhY2tncm91bmQ6MCAwO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGhlaWdodDo0cHg7XG4gICAgdHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBlYXNlO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB1c2VyLXNlbGVjdDpub25lXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10aHVtYntcbiAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czoxMDAlO1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMik7XG4gICAgaGVpZ2h0OjE0cHg7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7XG4gICAgd2lkdGg6MTRweFxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtcHJvZ3Jlc3N7XG4gICAgYmFja2dyb3VuZDpjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czoycHg7XG4gICAgaGVpZ2h0OjRweFxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFja3tcbiAgICBiYWNrZ3JvdW5kOjAgMDtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgICBoZWlnaHQ6NHB4O1xuICAgIHRyYW5zaXRpb246Ym94LXNoYWRvdyAuM3MgZWFzZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB1c2VyLXNlbGVjdDpub25lO1xuICAgIGNvbG9yOnRyYW5zcGFyZW50XG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtdXBwZXJ7XG4gICAgYmFja2dyb3VuZDowIDA7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czoycHg7XG4gICAgaGVpZ2h0OjRweDtcbiAgICB0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGVhc2U7XG4gICAgLW1zLXVzZXItc2VsZWN0Om5vbmU7XG4gICAgdXNlci1zZWxlY3Q6bm9uZVxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy1maWxsLWxvd2Vye1xuICAgIGJhY2tncm91bmQ6MCAwO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGhlaWdodDo0cHg7XG4gICAgdHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBlYXNlO1xuICAgIC1tcy11c2VyLXNlbGVjdDpub25lO1xuICAgIHVzZXItc2VsZWN0Om5vbmU7XG4gICAgYmFja2dyb3VuZDpjdXJyZW50Q29sb3Jcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWJ7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpO1xuICAgIGhlaWdodDoxNHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlO1xuICAgIHdpZHRoOjE0cHg7XG4gICAgbWFyZ2luLXRvcDowXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRvb2x0aXB7XG4gICAgZGlzcGxheTpub25lXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTpmb2N1c3tcbiAgICBvdXRsaW5lOjBcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LWZvY3VzLW91dGVye1xuICAgIGJvcmRlcjowXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXS5wbHlyX190YWItZm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre1xuICAgIGJveC1zaGFkb3c6MCAwIDAgNXB4IHJnYmEoMjYsMTc1LDI1NSwuNSk7XG4gICAgb3V0bGluZTowXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXS5wbHlyX190YWItZm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2t7XG4gICAgYm94LXNoYWRvdzowIDAgMCA1cHggcmdiYSgyNiwxNzUsMjU1LC41KTtcbiAgICBvdXRsaW5lOjBcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdLnBseXJfX3RhYi1mb2N1czo6LW1zLXRyYWNre1xuICAgIGJveC1zaGFkb3c6MCAwIDAgNXB4IHJnYmEoMjYsMTc1LDI1NSwuNSk7XG4gICAgb3V0bGluZTowXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4yNSlcbn1cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMjUpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRyYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMjUpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1ie1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMiksMCAwIDAgM3B4IHJnYmEoMjU1LDI1NSwyNTUsLjUpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi1tb3otcmFuZ2UtdGh1bWJ7XG4gICAgYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuMTUpLDAgMCAwIDFweCByZ2JhKDQ3LDUyLDYxLC4yKSwwIDAgMCAzcHggcmdiYSgyNTUsMjU1LDI1NSwuNSlcbn1cbi5wbHlyLS1mdWxsLXVpLnBseXItLXZpZGVvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LW1zLXRodW1ie1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMiksMCAwIDAgM3B4IHJnYmEoMjU1LDI1NSwyNTUsLjUpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDE4MywxOTcsMjA1LC42Nilcbn1cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRyYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgxODMsMTk3LDIwNSwuNjYpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRyYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgxODMsMTk3LDIwNSwuNjYpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1ie1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMiksMCAwIDAgM3B4IHJnYmEoMCwwLDAsLjEpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi1tb3otcmFuZ2UtdGh1bWJ7XG4gICAgYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuMTUpLDAgMCAwIDFweCByZ2JhKDQ3LDUyLDYxLC4yKSwwIDAgMCAzcHggcmdiYSgwLDAsMCwuMSlcbn1cbi5wbHlyLS1mdWxsLXVpLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9cmFuZ2VdOmFjdGl2ZTo6LW1zLXRodW1ie1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMiksMCAwIDAgM3B4IHJnYmEoMCwwLDAsLjEpXG59XG4ucGx5cl9fcG9zdGVye1xuICAgIGJhY2tncm91bmQtY29sb3I6IzAwMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIGxlZnQ6MDtcbiAgICBvcGFjaXR5OjA7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgdHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgei1pbmRleDoxXG59XG4ucGx5ci0tc3RvcHBlZC5wbHlyX19wb3N0ZXItZW5hYmxlZCAucGx5cl9fcG9zdGVye1xuICAgIG9wYWNpdHk6MVxufVxuLnBseXJfX3RpbWV7XG4gICAgZm9udC1zaXplOjE0cHhcbn1cbi5wbHlyX190aW1lKy5wbHlyX190aW1lOjpiZWZvcmV7XG4gICAgY29udGVudDonXFwyMDQ0JztcbiAgICBtYXJnaW4tcmlnaHQ6MTBweFxufVxuQG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpe1xuICAgIC5wbHlyX190aW1lKy5wbHlyX190aW1le1xuICAgICAgICBkaXNwbGF5Om5vbmVcbiAgICB9XG59XG4ucGx5ci0tdmlkZW8gLnBseXJfX3RpbWV7XG4gICAgdGV4dC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KVxufVxuLnBseXJfX3Rvb2x0aXB7XG4gICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC45KTtcbiAgICBib3JkZXItcmFkaXVzOjNweDtcbiAgICBib3R0b206MTAwJTtcbiAgICBib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xNSk7XG4gICAgY29sb3I6IzRmNWI1ZjtcbiAgICBmb250LXNpemU6MTRweDtcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgbGVmdDo1MCU7XG4gICAgbGluZS1oZWlnaHQ6MS4zO1xuICAgIG1hcmdpbi1ib3R0b206MTBweDtcbiAgICBvcGFjaXR5OjA7XG4gICAgcGFkZGluZzo1cHggNy41cHg7XG4gICAgcG9pbnRlci1ldmVudHM6bm9uZTtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsMTBweCkgc2NhbGUoLjgpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46NTAlIDEwMCU7XG4gICAgdHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIC4xcyBlYXNlLG9wYWNpdHkgLjJzIC4xcyBlYXNlO1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICB6LWluZGV4OjJcbn1cbi5wbHlyX190b29sdGlwOjpiZWZvcmV7XG4gICAgYm9yZGVyLWxlZnQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDo0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDo0cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuOSk7XG4gICAgYm90dG9tOi00cHg7XG4gICAgY29udGVudDonJztcbiAgICBoZWlnaHQ6MDtcbiAgICBsZWZ0OjUwJTtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aWR0aDowO1xuICAgIHotaW5kZXg6MlxufVxuLnBseXIgLnBseXJfX2NvbnRyb2wucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLC5wbHlyIC5wbHlyX19jb250cm9sOmhvdmVyIC5wbHlyX190b29sdGlwLC5wbHlyX190b29sdGlwLS12aXNpYmxle1xuICAgIG9wYWNpdHk6MTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsMCkgc2NhbGUoMSlcbn1cbi5wbHlyIC5wbHlyX19jb250cm9sOmhvdmVyIC5wbHlyX190b29sdGlwe1xuICAgIHotaW5kZXg6M1xufVxuLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkIC5wbHlyX190b29sdGlwLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCsucGx5cl9fY29udHJvbCAucGx5cl9fdG9vbHRpcHtcbiAgICBsZWZ0OjA7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDEwcHgpIHNjYWxlKC44KTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOjAgMTAwJVxufVxuLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkIC5wbHlyX190b29sdGlwOjpiZWZvcmUsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkKy5wbHlyX19jb250cm9sIC5wbHlyX190b29sdGlwOjpiZWZvcmV7XG4gICAgbGVmdDoxNnB4XG59XG4ucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZCAucGx5cl9fdG9vbHRpcHtcbiAgICBsZWZ0OmF1dG87XG4gICAgcmlnaHQ6MDtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKDAsMTBweCkgc2NhbGUoLjgpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46MTAwJSAxMDAlXG59XG4ucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZCAucGx5cl9fdG9vbHRpcDo6YmVmb3Jle1xuICAgIGxlZnQ6YXV0bztcbiAgICByaWdodDoxNnB4O1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSlcbn1cbi5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCAucGx5cl9fdG9vbHRpcC0tdmlzaWJsZSwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQrLnBseXJfX2NvbnRyb2wgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkKy5wbHlyX19jb250cm9sLnBseXJfX3RhYi1mb2N1cyAucGx5cl9fdG9vbHRpcCwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQrLnBseXJfX2NvbnRyb2w6aG92ZXIgLnBseXJfX3Rvb2x0aXAsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkLnBseXJfX3RhYi1mb2N1cyAucGx5cl9fdG9vbHRpcCwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQ6aG92ZXIgLnBseXJfX3Rvb2x0aXAsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmxhc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmxhc3QtY2hpbGQucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpsYXN0LWNoaWxkOmhvdmVyIC5wbHlyX190b29sdGlwe1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMCwwKSBzY2FsZSgxKVxufVxuLnBseXItLXZpZGVve1xuICAgIGJhY2tncm91bmQ6IzAwMDtcbiAgICBvdmVyZmxvdzpoaWRkZW5cbn1cbi5wbHlyLS12aWRlby5wbHlyLS1tZW51LW9wZW57XG4gICAgb3ZlcmZsb3c6dmlzaWJsZVxufVxuLnBseXJfX3ZpZGVvLXdyYXBwZXJ7XG4gICAgYmFja2dyb3VuZDojMDAwO1xuICAgIGJvcmRlci1yYWRpdXM6aW5oZXJpdDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgei1pbmRleDowXG59XG4ucGx5cl9fcHJvZ3Jlc3N7XG4gICAgZmxleDoxO1xuICAgIGxlZnQ6N3B4O1xuICAgIG1hcmdpbi1yaWdodDoxNHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlXG59XG4ucGx5cl9fcHJvZ3Jlc3MgaW5wdXRbdHlwZT1yYW5nZV0sLnBseXJfX3Byb2dyZXNzX19idWZmZXJ7XG4gICAgbWFyZ2luLWxlZnQ6LTdweDtcbiAgICBtYXJnaW4tcmlnaHQ6LTdweDtcbiAgICB3aWR0aDpjYWxjKDEwMCUgKyAxNHB4KVxufVxuLnBseXJfX3Byb2dyZXNzIGlucHV0W3R5cGU9cmFuZ2Vde1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHotaW5kZXg6MlxufVxuLnBseXJfX3Byb2dyZXNzIC5wbHlyX190b29sdGlwe1xuICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgIGxlZnQ6MFxufVxuLnBseXJfX3Byb2dyZXNzX19idWZmZXJ7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XG4gICAgYmFja2dyb3VuZDowIDA7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czoxMDBweDtcbiAgICBoZWlnaHQ6NHB4O1xuICAgIGxlZnQ6MDtcbiAgICBtYXJnaW4tdG9wOi0ycHg7XG4gICAgcGFkZGluZzowO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDo1MCVcbn1cbi5wbHlyX19wcm9ncmVzc19fYnVmZmVyOjotd2Via2l0LXByb2cgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTo6YWZ0ZXIsLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOjpiZWZvcmV7XG4gICAgYm9yZGVyLXJhZGl1czoxMDAlXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb106OmJlZm9yZXtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEpO1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBmbGV4LXNocmluazowO1xuICAgIGhlaWdodDoxNnB4O1xuICAgIG1hcmdpbi1yaWdodDoxMHB4O1xuICAgIHRyYW5zaXRpb246YWxsIC4zcyBlYXNlO1xuICAgIHdpZHRoOjE2cHhcbn1cbi5wbHlyX19tZW51X19jb250YWluZXIgLnBseXJfX2NvbnRyb2xbcm9sZT1tZW51aXRlbXJhZGlvXTo6YWZ0ZXJ7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGJvcmRlcjowO1xuICAgIGhlaWdodDo2cHg7XG4gICAgbGVmdDoxMnB4O1xuICAgIG9wYWNpdHk6MDtcbiAgICB0b3A6NTAlO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBlYXNlLG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgd2lkdGg6NnB4XG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb11bYXJpYS1jaGVja2VkPXRydWVdOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZDokdGhlbWVDb2xvclxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dW2FyaWEtY2hlY2tlZD10cnVlXTo6YWZ0ZXJ7XG4gICAgb3BhY2l0eToxO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpXG59XG4ucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9bWVudWl0ZW1yYWRpb10ucGx5cl9fdGFiLWZvY3VzOjpiZWZvcmUsLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fY29udHJvbFtyb2xlPW1lbnVpdGVtcmFkaW9dOmhvdmVyOjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xKVxufVxuLnBseXJfX21lbnVfX2NvbnRhaW5lciAucGx5cl9fbWVudV9fdmFsdWV7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgIG1hcmdpbi1yaWdodDotNXB4O1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBwYWRkaW5nLWxlZnQ6MjVweDtcbiAgICBwb2ludGVyLWV2ZW50czpub25lXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXXtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtcbiAgICBiYWNrZ3JvdW5kOjAgMDtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjI4cHg7XG4gICAgY29sb3I6JHRoZW1lQ29sb3I7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBoZWlnaHQ6MjBweDtcbiAgICBtYXJnaW46MDtcbiAgICBwYWRkaW5nOjA7XG4gICAgdHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBlYXNlO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tcbiAgICBiYWNrZ3JvdW5kOjAgMDtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgICBoZWlnaHQ6NHB4O1xuICAgIHRyYW5zaXRpb246Ym94LXNoYWRvdyAuM3MgZWFzZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7XG4gICAgdXNlci1zZWxlY3Q6bm9uZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCxjdXJyZW50Q29sb3IgdmFyKC0tdmFsdWUsMCksdHJhbnNwYXJlbnQgdmFyKC0tdmFsdWUsMCkpXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpO1xuICAgIGhlaWdodDoxNHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlO1xuICAgIHdpZHRoOjE0cHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XG4gICAgbWFyZ2luLXRvcDotNXB4XG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFja3tcbiAgICBiYWNrZ3JvdW5kOjAgMDtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgICBoZWlnaHQ6NHB4O1xuICAgIHRyYW5zaXRpb246Ym94LXNoYWRvdyAuM3MgZWFzZTtcbiAgICAtbW96LXVzZXItc2VsZWN0Om5vbmU7XG4gICAgdXNlci1zZWxlY3Q6bm9uZVxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdGh1bWJ7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpO1xuICAgIGhlaWdodDoxNHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlO1xuICAgIHdpZHRoOjE0cHhcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXByb2dyZXNze1xuICAgIGJhY2tncm91bmQ6Y3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGhlaWdodDo0cHhcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2t7XG4gICAgYmFja2dyb3VuZDowIDA7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLXJhZGl1czoycHg7XG4gICAgaGVpZ2h0OjRweDtcbiAgICB0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjNzIGVhc2U7XG4gICAgLW1zLXVzZXItc2VsZWN0Om5vbmU7XG4gICAgdXNlci1zZWxlY3Q6bm9uZTtcbiAgICBjb2xvcjp0cmFuc3BhcmVudFxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy1maWxsLXVwcGVye1xuICAgIGJhY2tncm91bmQ6MCAwO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGhlaWdodDo0cHg7XG4gICAgdHJhbnNpdGlvbjpib3gtc2hhZG93IC4zcyBlYXNlO1xuICAgIC1tcy11c2VyLXNlbGVjdDpub25lO1xuICAgIHVzZXItc2VsZWN0Om5vbmVcbn1cbi5wbHlyLS1mdWxsLXVpIGlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlcntcbiAgICBiYWNrZ3JvdW5kOjAgMDtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgICBoZWlnaHQ6NHB4O1xuICAgIHRyYW5zaXRpb246Ym94LXNoYWRvdyAuM3MgZWFzZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB1c2VyLXNlbGVjdDpub25lO1xuICAgIGJhY2tncm91bmQ6Y3VycmVudENvbG9yXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRodW1ie1xuICAgIGJhY2tncm91bmQ6I2ZmZjtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjEwMCU7XG4gICAgYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuMTUpLDAgMCAwIDFweCByZ2JhKDQ3LDUyLDYxLC4yKTtcbiAgICBoZWlnaHQ6MTRweDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZTtcbiAgICB3aWR0aDoxNHB4O1xuICAgIG1hcmdpbi10b3A6MFxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10b29sdGlwe1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXN7XG4gICAgb3V0bGluZTowXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1mb2N1cy1vdXRlcntcbiAgICBib3JkZXI6MFxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV0ucGx5cl9fdGFiLWZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tcbiAgICBib3gtc2hhZG93OjAgMCAwIDVweCByZ2JhKDI2LDE3NSwyNTUsLjUpO1xuICAgIG91dGxpbmU6MFxufVxuLnBseXItLWZ1bGwtdWkgaW5wdXRbdHlwZT1yYW5nZV0ucGx5cl9fdGFiLWZvY3VzOjotbW96LXJhbmdlLXRyYWNre1xuICAgIGJveC1zaGFkb3c6MCAwIDAgNXB4IHJnYmEoMjYsMTc1LDI1NSwuNSk7XG4gICAgb3V0bGluZTowXG59XG4ucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPXJhbmdlXS5wbHlyX190YWItZm9jdXM6Oi1tcy10cmFja3tcbiAgICBib3gtc2hhZG93OjAgMCAwIDVweCByZ2JhKDI2LDE3NSwyNTUsLjUpO1xuICAgIG91dGxpbmU6MFxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tdmlkZW8gaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMjUpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFja3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjI1KVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tdmlkZW8gaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFja3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjI1KVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tdmlkZW8gaW5wdXRbdHlwZT1yYW5nZV06YWN0aXZlOjotd2Via2l0LXNsaWRlci10aHVtYntcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpLDAgMCAwIDNweCByZ2JhKDI1NSwyNTUsMjU1LC41KVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tdmlkZW8gaW5wdXRbdHlwZT1yYW5nZV06YWN0aXZlOjotbW96LXJhbmdlLXRodW1ie1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMiksMCAwIDAgM3B4IHJnYmEoMjU1LDI1NSwyNTUsLjUpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi1tcy10aHVtYntcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpLDAgMCAwIDNweCByZ2JhKDI1NSwyNTUsMjU1LC41KVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tYXVkaW8gaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgxODMsMTk3LDIwNSwuNjYpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFja3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTgzLDE5NywyMDUsLjY2KVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tYXVkaW8gaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFja3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTgzLDE5NywyMDUsLjY2KVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tYXVkaW8gaW5wdXRbdHlwZT1yYW5nZV06YWN0aXZlOjotd2Via2l0LXNsaWRlci10aHVtYntcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpLDAgMCAwIDNweCByZ2JhKDAsMCwwLC4xKVxufVxuLnBseXItLWZ1bGwtdWkucGx5ci0tYXVkaW8gaW5wdXRbdHlwZT1yYW5nZV06YWN0aXZlOjotbW96LXJhbmdlLXRodW1ie1xuICAgIGJveC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMCwwLDAsLjE1KSwwIDAgMCAxcHggcmdiYSg0Nyw1Miw2MSwuMiksMCAwIDAgM3B4IHJnYmEoMCwwLDAsLjEpXG59XG4ucGx5ci0tZnVsbC11aS5wbHlyLS1hdWRpbyBpbnB1dFt0eXBlPXJhbmdlXTphY3RpdmU6Oi1tcy10aHVtYntcbiAgICBib3gtc2hhZG93OjAgMXB4IDFweCByZ2JhKDAsMCwwLC4xNSksMCAwIDAgMXB4IHJnYmEoNDcsNTIsNjEsLjIpLDAgMCAwIDNweCByZ2JhKDAsMCwwLC4xKVxufVxuLnBseXJfX3Bvc3RlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjo1MCUgNTAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBsZWZ0OjA7XG4gICAgb3BhY2l0eTowO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDowO1xuICAgIHRyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHotaW5kZXg6MTtcbn1cbi5wbHlyLS1zdG9wcGVkLnBseXJfX3Bvc3Rlci1lbmFibGVkIC5wbHlyX19wb3N0ZXJ7XG4gICAgb3BhY2l0eToxO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4ucGx5cl9fdGltZXtcbiAgICBmb250LXNpemU6MTRweFxufVxuLnBseXJfX3RpbWUrLnBseXJfX3RpbWU6OmJlZm9yZXtcbiAgICBjb250ZW50OidcXDIwNDQnO1xuICAgIG1hcmdpbi1yaWdodDoxMHB4XG59XG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7XG4gICAgLnBseXJfX3RpbWUrLnBseXJfX3RpbWV7XG4gICAgICAgIGRpc3BsYXk6bm9uZVxuICAgIH1cbn1cbi5wbHlyLS12aWRlbyAucGx5cl9fdGltZXtcbiAgICB0ZXh0LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuMTUpXG59XG4ucGx5cl9fdG9vbHRpcHtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjkpO1xuICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgIGJvdHRvbToxMDAlO1xuICAgIGJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjE1KTtcbiAgICBjb2xvcjojNGY1YjVmO1xuICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBsZWZ0OjUwJTtcbiAgICBsaW5lLWhlaWdodDoxLjM7XG4gICAgbWFyZ2luLWJvdHRvbToxMHB4O1xuICAgIG9wYWNpdHk6MDtcbiAgICBwYWRkaW5nOjVweCA3LjVweDtcbiAgICBwb2ludGVyLWV2ZW50czpub25lO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwxMHB4KSBzY2FsZSguOCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjo1MCUgMTAwJTtcbiAgICB0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgLjFzIGVhc2Usb3BhY2l0eSAuMnMgLjFzIGVhc2U7XG4gICAgd2hpdGUtc3BhY2U6bm93cmFwO1xuICAgIHotaW5kZXg6MlxufVxuLnBseXJfX3Rvb2x0aXA6OmJlZm9yZXtcbiAgICBib3JkZXItbGVmdDo0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OjRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOjRweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC45KTtcbiAgICBib3R0b206LTRweDtcbiAgICBjb250ZW50OicnO1xuICAgIGhlaWdodDowO1xuICAgIGxlZnQ6NTAlO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdpZHRoOjA7XG4gICAgei1pbmRleDoyXG59XG4ucGx5ciAucGx5cl9fY29udHJvbC5wbHlyX190YWItZm9jdXMgLnBseXJfX3Rvb2x0aXAsLnBseXIgLnBseXJfX2NvbnRyb2w6aG92ZXIgLnBseXJfX3Rvb2x0aXAsLnBseXJfX3Rvb2x0aXAtLXZpc2libGV7XG4gICAgb3BhY2l0eToxO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwwKSBzY2FsZSgxKVxufVxuLnBseXIgLnBseXJfX2NvbnRyb2w6aG92ZXIgLnBseXJfX3Rvb2x0aXB7XG4gICAgei1pbmRleDozXG59XG4ucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkKy5wbHlyX19jb250cm9sIC5wbHlyX190b29sdGlwe1xuICAgIGxlZnQ6MDtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKDAsMTBweCkgc2NhbGUoLjgpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46MCAxMDAlXG59XG4ucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXA6OmJlZm9yZSwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQrLnBseXJfX2NvbnRyb2wgLnBseXJfX3Rvb2x0aXA6OmJlZm9yZXtcbiAgICBsZWZ0OjE2cHhcbn1cbi5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpsYXN0LWNoaWxkIC5wbHlyX190b29sdGlwe1xuICAgIGxlZnQ6YXV0bztcbiAgICByaWdodDowO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMCwxMHB4KSBzY2FsZSguOCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjoxMDAlIDEwMCVcbn1cbi5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpsYXN0LWNoaWxkIC5wbHlyX190b29sdGlwOjpiZWZvcmV7XG4gICAgbGVmdDphdXRvO1xuICAgIHJpZ2h0OjE2cHg7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTAlKVxufVxuLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmZpcnN0LWNoaWxkIC5wbHlyX190b29sdGlwLS12aXNpYmxlLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCsucGx5cl9fY29udHJvbCAucGx5cl9fdG9vbHRpcC0tdmlzaWJsZSwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQrLnBseXJfX2NvbnRyb2wucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZCsucGx5cl9fY29udHJvbDpob3ZlciAucGx5cl9fdG9vbHRpcCwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6Zmlyc3QtY2hpbGQucGx5cl9fdGFiLWZvY3VzIC5wbHlyX190b29sdGlwLC5wbHlyX19jb250cm9scz4ucGx5cl9fY29udHJvbDpmaXJzdC1jaGlsZDpob3ZlciAucGx5cl9fdG9vbHRpcCwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZCAucGx5cl9fdG9vbHRpcC0tdmlzaWJsZSwucGx5cl9fY29udHJvbHM+LnBseXJfX2NvbnRyb2w6bGFzdC1jaGlsZC5wbHlyX190YWItZm9jdXMgLnBseXJfX3Rvb2x0aXAsLnBseXJfX2NvbnRyb2xzPi5wbHlyX19jb250cm9sOmxhc3QtY2hpbGQ6aG92ZXIgLnBseXJfX3Rvb2x0aXB7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDApIHNjYWxlKDEpXG59XG4ucGx5ci0tdmlkZW97XG4gICAgYmFja2dyb3VuZDojMDAwO1xuICAgIG92ZXJmbG93OmhpZGRlblxufVxuLnBseXItLXZpZGVvLnBseXItLW1lbnUtb3BlbntcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG4ucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBiYWNrZ3JvdW5kOiMwMDA7XG4gICAgYm9yZGVyLXJhZGl1czppbmhlcml0O1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjBcbn1cbi5wbHlyX19wcm9ncmVzc3tcbiAgICBmbGV4OjE7XG4gICAgbGVmdDo3cHg7XG4gICAgbWFyZ2luLXJpZ2h0OjE0cHg7XG4gICAgcG9zaXRpb246cmVsYXRpdmVcbn1cbi5wbHlyX19wcm9ncmVzcyBpbnB1dFt0eXBlPXJhbmdlXSwucGx5cl9fcHJvZ3Jlc3NfX2J1ZmZlcntcbiAgICBtYXJnaW4tbGVmdDotN3B4O1xuICAgIG1hcmdpbi1yaWdodDotN3B4O1xuICAgIHdpZHRoOmNhbGMoMTAwJSArIDE0cHgpXG59XG4ucGx5cl9fcHJvZ3Jlc3MgaW5wdXRbdHlwZT1yYW5nZV17XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgei1pbmRleDoyXG59XG4ucGx5cl9fcHJvZ3Jlc3MgLnBseXJfX3Rvb2x0aXB7XG4gICAgZm9udC1zaXplOjE0cHg7XG4gICAgbGVmdDowXG59XG4ucGx5cl9fcHJvZ3Jlc3NfX2J1ZmZlcntcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtcbiAgICBiYWNrZ3JvdW5kOjAgMDtcbiAgICBib3JkZXI6MDtcbiAgICBib3JkZXItcmFkaXVzOjEwMHB4O1xuICAgIGhlaWdodDo0cHg7XG4gICAgbGVmdDowO1xuICAgIG1hcmdpbi10b3A6LTJweDtcbiAgICBwYWRkaW5nOjA7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjUwJVxufVxuLnBseXJfX3Byb2dyZXNzX19idWZmZXI6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFye1xuICAgIGJhY2tncm91bmQ6MCAwO1xuICAgIHRyYW5zaXRpb246d2lkdGggLjJzIGVhc2Vcbn1cbi5wbHlyX19wcm9ncmVzc19fYnVmZmVyOjotd2Via2l0LXByb2dyZXNzLXZhbHVle1xuICAgIGJhY2tncm91bmQ6Y3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6MTAwcHg7XG4gICAgbWluLXdpZHRoOjRweFxufVxuLnBseXJfX3Byb2dyZXNzX19idWZmZXI6Oi1tb3otcHJvZ3Jlc3MtYmFye1xuICAgIGJhY2tncm91bmQ6Y3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6MTAwcHg7XG4gICAgbWluLXdpZHRoOjRweDtcbiAgICB0cmFuc2l0aW9uOndpZHRoIC4ycyBlYXNlXG59XG4ucGx5cl9fcHJvZ3Jlc3NfX2J1ZmZlcjo6LW1zLWZpbGx7XG4gICAgYm9yZGVyLXJhZGl1czoxMDBweDtcbiAgICB0cmFuc2l0aW9uOndpZHRoIC4ycyBlYXNlXG59XG4ucGx5ci0tdmlkZW8gLnBseXJfX3Byb2dyZXNzX19idWZmZXJ7XG4gICAgYm94LXNoYWRvdzowIDFweCAxcHggcmdiYSgwLDAsMCwuMTUpO1xuICAgIGNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjI1KVxufVxuLnBseXItLWF1ZGlvIC5wbHlyX19wcm9ncmVzc19fYnVmZmVye1xuICAgIGNvbG9yOnJnYmEoMTgzLDE5NywyMDUsLjY2KVxufVxuLnBseXItLWxvYWRpbmcgLnBseXJfX3Byb2dyZXNzX19idWZmZXJ7XG4gICAgYW5pbWF0aW9uOnBseXItcHJvZ3Jlc3MgMXMgbGluZWFyIGluZmluaXRlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KC00NWRlZyxyZ2JhKDQ3LDUyLDYxLC42KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDQ3LDUyLDYxLC42KSA1MCUscmdiYSg0Nyw1Miw2MSwuNikgNzUlLHRyYW5zcGFyZW50IDc1JSx0cmFuc3BhcmVudCk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOjI1cHggMjVweDtcbiAgICBjb2xvcjp0cmFuc3BhcmVudFxufVxuLnBseXItLXZpZGVvLnBseXItLWxvYWRpbmcgLnBseXJfX3Byb2dyZXNzX19idWZmZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4yNSlcbn1cbi5wbHlyLS1hdWRpby5wbHlyLS1sb2FkaW5nIC5wbHlyX19wcm9ncmVzc19fYnVmZmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgxODMsMTk3LDIwNSwuNjYpXG59XG4ucGx5cl9fdm9sdW1le1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleDoxO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlXG59XG4ucGx5cl9fdm9sdW1lIGlucHV0W3R5cGU9cmFuZ2Vde1xuICAgIG1hcmdpbi1sZWZ0OjVweDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjJcbn1cbkBtZWRpYSAobWluLXdpZHRoOjQ4MHB4KXtcbiAgICAucGx5cl9fdm9sdW1le1xuICAgICAgICBtYXgtd2lkdGg6OTBweFxuICAgIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXtcbiAgICAucGx5cl9fdm9sdW1le1xuICAgICAgICBtYXgtd2lkdGg6MTEwcHhcbiAgICB9XG59XG4ucGx5ci0taXMtaW9zIC5wbHlyX192b2x1bWV7XG4gICAgZGlzcGxheTpub25lIWltcG9ydGFudFxufVxuLnBseXItLWlzLWlvcy5wbHlyLS12aW1lbyBbZGF0YS1wbHlyPW11dGVde1xuICAgIGRpc3BsYXk6bm9uZSFpbXBvcnRhbnRcbn1cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW57XG4gICAgYmFja2dyb3VuZDojMDAwO1xuICAgIGJvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgbWFyZ2luOjA7XG4gICAgd2lkdGg6MTAwJVxufVxuLnBseXI6LW1vei1mdWxsLXNjcmVlbntcbiAgICBiYWNrZ3JvdW5kOiMwMDA7XG4gICAgYm9yZGVyLXJhZGl1czowIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBtYXJnaW46MDtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbntcbiAgICBiYWNrZ3JvdW5kOiMwMDA7XG4gICAgYm9yZGVyLXJhZGl1czowIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBtYXJnaW46MDtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cjpmdWxsc2NyZWVue1xuICAgIGJhY2tncm91bmQ6IzAwMDtcbiAgICBib3JkZXItcmFkaXVzOjAhaW1wb3J0YW50O1xuICAgIGhlaWdodDoxMDAlO1xuICAgIG1hcmdpbjowO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gdmlkZW97XG4gICAgaGVpZ2h0OjEwMCVcbn1cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gdmlkZW97XG4gICAgaGVpZ2h0OjEwMCVcbn1cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIHZpZGVve1xuICAgIGhlaWdodDoxMDAlXG59XG4ucGx5cjpmdWxsc2NyZWVuIHZpZGVve1xuICAgIGhlaWdodDoxMDAlXG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby13cmFwcGVye1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX3ZpZGVvLXdyYXBwZXJ7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgd2lkdGg6MTAwJVxufVxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gLnBseXJfX3ZpZGVvLXdyYXBwZXJ7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgd2lkdGg6MTAwJVxufVxuLnBseXI6ZnVsbHNjcmVlbiAucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby1lbWJlZHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby1lbWJlZHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fdmlkZW8tZW1iZWR7XG4gICAgb3ZlcmZsb3c6dmlzaWJsZVxufVxuLnBseXI6ZnVsbHNjcmVlbiAucGx5cl9fdmlkZW8tZW1iZWR7XG4gICAgb3ZlcmZsb3c6dmlzaWJsZVxufVxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbi5wbHlyLS12aW1lbyAucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBoZWlnaHQ6MDtcbiAgICB0b3A6NTAlO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpXG59XG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVye1xuICAgIGhlaWdodDowO1xuICAgIHRvcDo1MCU7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSlcbn1cbi5wbHlyOi1tcy1mdWxsc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVye1xuICAgIGhlaWdodDowO1xuICAgIHRvcDo1MCU7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSlcbn1cbi5wbHlyOmZ1bGxzY3JlZW4ucGx5ci0tdmltZW8gLnBseXJfX3ZpZGVvLXdyYXBwZXJ7XG4gICAgaGVpZ2h0OjA7XG4gICAgdG9wOjUwJTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKVxufVxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVue1xuICAgIGRpc3BsYXk6YmxvY2tcbn1cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbntcbiAgICBkaXNwbGF5OmJsb2NrXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVue1xuICAgIGRpc3BsYXk6YmxvY2tcbn1cbi5wbHlyOmZ1bGxzY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbntcbiAgICBkaXNwbGF5OmJsb2NrXG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4rc3Zne1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuK3N2Z3tcbiAgICBkaXNwbGF5Om5vbmVcbn1cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4rc3Zne1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXI6ZnVsbHNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuK3N2Z3tcbiAgICBkaXNwbGF5Om5vbmVcbn1cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4ucGx5ci0taGlkZS1jb250cm9sc3tcbiAgICBjdXJzb3I6bm9uZVxufVxuLnBseXI6LW1vei1mdWxsLXNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xze1xuICAgIGN1cnNvcjpub25lXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xze1xuICAgIGN1cnNvcjpub25lXG59XG4ucGx5cjpmdWxsc2NyZWVuLnBseXItLWhpZGUtY29udHJvbHN7XG4gICAgY3Vyc29yOm5vbmVcbn1cbkBtZWRpYSAobWluLXdpZHRoOjEwMjRweCl7XG4gICAgLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGx5cl9fY2FwdGlvbnN7XG4gICAgICAgIGZvbnQtc2l6ZToyMXB4XG4gICAgfVxuICAgIC5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX2NhcHRpb25ze1xuICAgICAgICBmb250LXNpemU6MjFweFxuICAgIH1cbiAgICAucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fY2FwdGlvbnN7XG4gICAgICAgIGZvbnQtc2l6ZToyMXB4XG4gICAgfVxuICAgIC5wbHlyOmZ1bGxzY3JlZW4gLnBseXJfX2NhcHRpb25ze1xuICAgICAgICBmb250LXNpemU6MjFweFxuICAgIH1cbn1cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW57XG4gICAgYmFja2dyb3VuZDojMDAwO1xuICAgIGJvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgbWFyZ2luOjA7XG4gICAgd2lkdGg6MTAwJVxufVxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiB2aWRlb3tcbiAgICBoZWlnaHQ6MTAwJVxufVxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby1lbWJlZHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVye1xuICAgIGhlaWdodDowO1xuICAgIHRvcDo1MCU7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSlcbn1cbi5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbntcbiAgICBkaXNwbGF5OmJsb2NrXG59XG4ucGx5cjotd2Via2l0LWZ1bGwtc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4rc3Zne1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXI6LXdlYmtpdC1mdWxsLXNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xze1xuICAgIGN1cnNvcjpub25lXG59XG5AbWVkaWEgKG1pbi13aWR0aDoxMDI0cHgpe1xuICAgIC5wbHlyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBseXJfX2NhcHRpb25ze1xuICAgICAgICBmb250LXNpemU6MjFweFxuICAgIH1cbn1cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW57XG4gICAgYmFja2dyb3VuZDojMDAwO1xuICAgIGJvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgbWFyZ2luOjA7XG4gICAgd2lkdGg6MTAwJVxufVxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiB2aWRlb3tcbiAgICBoZWlnaHQ6MTAwJVxufVxuLnBseXI6LW1vei1mdWxsLXNjcmVlbiAucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuIC5wbHlyX192aWRlby1lbWJlZHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuLnBseXItLXZpbWVvIC5wbHlyX192aWRlby13cmFwcGVye1xuICAgIGhlaWdodDowO1xuICAgIHRvcDo1MCU7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSlcbn1cbi5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbntcbiAgICBkaXNwbGF5OmJsb2NrXG59XG4ucGx5cjotbW96LWZ1bGwtc2NyZWVuIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4rc3Zne1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXI6LW1vei1mdWxsLXNjcmVlbi5wbHlyLS1oaWRlLWNvbnRyb2xze1xuICAgIGN1cnNvcjpub25lXG59XG5AbWVkaWEgKG1pbi13aWR0aDoxMDI0cHgpe1xuICAgIC5wbHlyOi1tb3otZnVsbC1zY3JlZW4gLnBseXJfX2NhcHRpb25ze1xuICAgICAgICBmb250LXNpemU6MjFweFxuICAgIH1cbn1cbi5wbHlyOi1tcy1mdWxsc2NyZWVue1xuICAgIGJhY2tncm91bmQ6IzAwMDtcbiAgICBib3JkZXItcmFkaXVzOjAhaW1wb3J0YW50O1xuICAgIGhlaWdodDoxMDAlO1xuICAgIG1hcmdpbjowO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyOi1tcy1mdWxsc2NyZWVuIHZpZGVve1xuICAgIGhlaWdodDoxMDAlXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fdmlkZW8tZW1iZWR7XG4gICAgb3ZlcmZsb3c6dmlzaWJsZVxufVxuLnBseXI6LW1zLWZ1bGxzY3JlZW4ucGx5ci0tdmltZW8gLnBseXJfX3ZpZGVvLXdyYXBwZXJ7XG4gICAgaGVpZ2h0OjA7XG4gICAgdG9wOjUwJTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKVxufVxuLnBseXI6LW1zLWZ1bGxzY3JlZW4gLnBseXJfX2NvbnRyb2wgLmljb24tLWV4aXQtZnVsbHNjcmVlbntcbiAgICBkaXNwbGF5OmJsb2NrXG59XG4ucGx5cjotbXMtZnVsbHNjcmVlbiAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuK3N2Z3tcbiAgICBkaXNwbGF5Om5vbmVcbn1cbi5wbHlyOi1tcy1mdWxsc2NyZWVuLnBseXItLWhpZGUtY29udHJvbHN7XG4gICAgY3Vyc29yOm5vbmVcbn1cbkBtZWRpYSAobWluLXdpZHRoOjEwMjRweCl7XG4gICAgLnBseXI6LW1zLWZ1bGxzY3JlZW4gLnBseXJfX2NhcHRpb25ze1xuICAgICAgICBmb250LXNpemU6MjFweFxuICAgIH1cbn1cbi5wbHlyLS1mdWxsc2NyZWVuLWZhbGxiYWNre1xuICAgIGJhY2tncm91bmQ6IzAwMDtcbiAgICBib3JkZXItcmFkaXVzOjAhaW1wb3J0YW50O1xuICAgIGhlaWdodDoxMDAlO1xuICAgIG1hcmdpbjowO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYm90dG9tOjA7XG4gICAgbGVmdDowO1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHJpZ2h0OjA7XG4gICAgdG9wOjA7XG4gICAgei1pbmRleDoxMDAwMDAwMFxufVxuLnBseXItLWZ1bGxzY3JlZW4tZmFsbGJhY2sgdmlkZW97XG4gICAgaGVpZ2h0OjEwMCVcbn1cbi5wbHlyLS1mdWxsc2NyZWVuLWZhbGxiYWNrIC5wbHlyX192aWRlby13cmFwcGVye1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHdpZHRoOjEwMCVcbn1cbi5wbHlyLS1mdWxsc2NyZWVuLWZhbGxiYWNrIC5wbHlyX192aWRlby1lbWJlZHtcbiAgICBvdmVyZmxvdzp2aXNpYmxlXG59XG4ucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjay5wbHlyLS12aW1lbyAucGx5cl9fdmlkZW8td3JhcHBlcntcbiAgICBoZWlnaHQ6MDtcbiAgICB0b3A6NTAlO1xuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpXG59XG4ucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjayAucGx5cl9fY29udHJvbCAuaWNvbi0tZXhpdC1mdWxsc2NyZWVue1xuICAgIGRpc3BsYXk6YmxvY2tcbn1cbi5wbHlyLS1mdWxsc2NyZWVuLWZhbGxiYWNrIC5wbHlyX19jb250cm9sIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4rc3Zne1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXItLWZ1bGxzY3JlZW4tZmFsbGJhY2sucGx5ci0taGlkZS1jb250cm9sc3tcbiAgICBjdXJzb3I6bm9uZVxufVxuQG1lZGlhIChtaW4td2lkdGg6MTAyNHB4KXtcbiAgICAucGx5ci0tZnVsbHNjcmVlbi1mYWxsYmFjayAucGx5cl9fY2FwdGlvbnN7XG4gICAgICAgIGZvbnQtc2l6ZToyMXB4XG4gICAgfVxufVxuLnBseXJfX2Fkc3tcbiAgICBib3JkZXItcmFkaXVzOmluaGVyaXQ7XG4gICAgYm90dG9tOjA7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgbGVmdDowO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICByaWdodDowO1xuICAgIHRvcDowO1xuICAgIHotaW5kZXg6LTFcbn1cbi5wbHlyX19hZHM+ZGl2LC5wbHlyX19hZHM+ZGl2IGlmcmFtZXtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDoxMDAlXG59XG4ucGx5cl9fYWRzOjphZnRlcntcbiAgICBiYWNrZ3JvdW5kOnJnYmEoNDcsNTIsNjEsLjgpO1xuICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgIGJvdHRvbToxMHB4O1xuICAgIGNvbG9yOiNmZmY7XG4gICAgY29udGVudDphdHRyKGRhdGEtYmFkZ2UtdGV4dCk7XG4gICAgZm9udC1zaXplOjExcHg7XG4gICAgcGFkZGluZzoycHggNnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgcmlnaHQ6MTBweDtcbiAgICB6LWluZGV4OjNcbn1cbi5wbHlyX19hZHM6OmFmdGVyOmVtcHR5e1xuICAgIGRpc3BsYXk6bm9uZVxufVxuLnBseXJfX2N1ZXN7XG4gICAgYmFja2dyb3VuZDpjdXJyZW50Q29sb3I7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBoZWlnaHQ6NHB4O1xuICAgIGxlZnQ6MDtcbiAgICBtYXJnaW46LTJweCAwIDA7XG4gICAgb3BhY2l0eTouODtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6NTAlO1xuICAgIHdpZHRoOjNweDtcbiAgICB6LWluZGV4OjNcbn1cbi5wbHlyLS1uby10cmFuc2l0aW9ue1xuICAgIHRyYW5zaXRpb246bm9uZSFpbXBvcnRhbnRcbn1cbi5wbHlyX19zci1vbmx5e1xuICAgIGNsaXA6cmVjdCgxcHgsMXB4LDFweCwxcHgpO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBib3JkZXI6MCFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OjFweCFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzowIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6MXB4IWltcG9ydGFudFxufVxuLnBseXIgW2hpZGRlbl17XG4gICAgZGlzcGxheTpub25lIWltcG9ydGFudFxufVxuIiwiI3BhZ2Utd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI2xvYWRlclxue1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjAwdmg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk5OTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjdzIGN1YmljLWJlemllcigwLjc1LCAwLCAwLjM4LCAwLjk4KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBcbn1cblxuI2xvYWRlci5sb2FkXG57ICAgXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNsb2FkZXIubG9hZC5sb2FkZWRcbnsgICBcbiAgICB0b3A6IDEwMCU7XG59XG5cbiNsb2FkZXIubG9hZGVkLnZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cblxuI2xvYWRlci51bmxvYWRwYWdlXG57XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuIiwiQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxOTIwcHgpIHtcbiAgIC5zbGlkZUltYWdlSG9sZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTgwMHB4KSB7XG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5pbWFnZUhvbGRlciBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA5MDBweDtcbiAgICB9XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjUwcHgpIHtcbiAgICAuc2xpZGVUZWtzdEhvbGRlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ5MHB4O1xuICAgICAgICB3aWR0aDogNzAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaW1hZ2VIb2xkZXIgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogODIwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE2NTBweCkge1xuICAgIC5zbGlkZUltYWdlSG9sZGVyIHtcbiAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC50aXRsZUhvbGRlciAuc3VidGl0ZWwsIC50aXRsZUhvbGRlciAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDU2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2M3B4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDU1MHB4O1xuICAgIH1cbiAgICBcbiAgICAubmV3c0NvbnRhaW5lci50b3BPZmZzZXQge1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmFib3V0QmxvY2tzQ29udGFpbmVyLmN1c3RvbSB7XG4gICAgICAgIG1hcmdpbjogNTBweCAwIDA7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaW1hZ2VIb2xkZXIgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmRldGFpbHNfYmxvY2sgLmljb29uIHtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZVRla3N0SG9sZGVyIHtcbiAgICAgICAgcGFkZGluZzogNjVweDtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgbWluLWhlaWdodDogMzc1cHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZUltYWdlSG9sZGVyIGltZyB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5pbXByZXNzaWVIb2xkZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiA1NTBweDtcbiAgICB9XG4gICAgXG4gICAgLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0MzlweCkge1xuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAyMDBweCA2MHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmhlYWRfdGVrc3Qge1xuICAgICAgICBwYWRkaW5nOiA1NXB4IDUwcHggMCA2MHB4O1xuICAgIH1cbiAgICBcbiAgICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAgIC5wcm9ncmVzc0NvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgIFxuICAgIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciB7XG4gICAgICAgIHBhZGRpbmc6IDc1cHggNzVweCA3NXB4IDA7XG4gICAgfVxuICAgIFxuICAgIC5hYm91dEJsb2NrcyAuc2Nyb2xsZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzgwcHgpIHtcbiAgICBcbiAgICAuc2xpZGVUZWtzdEhvbGRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggNTBweCAxMDBweDtcbiAgICAgICAgbWluLWhlaWdodDogNDUwcHg7XG4gICAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IGgxLCBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuc3VidGl0ZWwge1xuICAgICAgICBmb250LXNpemU6IDQ2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDQycHg7XG4gICAgfVxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlciAuaW50cm9Ib2xkZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogNDJweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM1MHB4KSB7XG4gICAgLnByb2dyZXNzQ29udGFpbmVyIHtcbiAgICAgICAgYm90dG9tOiAtNTBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmltYWdlSG9sZGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogNTUwcHg7XG4gICAgfVxuICAgIFxuICAgIC5maWx0ZXJIb2xkZXIge1xuICAgICAgICBwYWRkaW5nOiA2NXB4IDUwcHg7XG4gICAgfVxuICAgIFxuICAgIC5uZXdzQ29udGFpbmVyLnRvcE9mZnNldCB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDgwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gICAgICAgIHBhZGRpbmc6IDU1cHggNTBweCAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlciAuaW50cm9Ib2xkZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICB9XG4gICAgXG4gICAgLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNDBweCkge1xuICAgIC50aXRsZUhvbGRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIFxuICAgIC5zdGlja3lTY3JvbGxlciB7XG4gICAgICAgIHdpZHRoOiA1NHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmludHJvQ29udGFpbmVyIC5pbnRybyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweFxuICAgIH1cbiAgICBcbiAgICAuaW50cm9Db250YWluZXIgLmludHJvOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLmFib3V0QmxvY2tzIC5zY3JvbGxlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayB7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jay5ldmVudCB7XG4gICAgICAgIG1hcmdpbjogLTEyMHB4IDAgLTgwcHggMHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmhlYWRfdGVrc3Qge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTUwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICAgICAgYm90dG9tOiAtOTNweDtcbiAgICB9XG4gICAgXG4gICAgLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuaGVhZF90ZWtzdCB7XG4gICAgICAgIHBhZGRpbmc6IDU1cHggNTBweCAwIDBweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICAgIH1cblxuICAgIC5hZHZlbnRza2FsZW5kZXJDb250YWluZXIgLmludHJvIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzOXZ3O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZm9vdGVyX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMCAwO1xuICAgIH1cbiAgICBcbiAgICAuaW50cm9Db250YWluZXIgLmludHJvIHtcbiAgICAgICAgcGFkZGluZzogNTBweCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5DdGEge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5hYm91dEJsb2Nrc0ludHJvIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLnNsaWRlVGVrc3RIb2xkZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAuc2xpZGVJbWFnZUhvbGRlciBpbWcge1xuICAgICAgICBoZWlnaHQ6IDU1MHB4O1xuICAgIH1cbiAgICBcbiAgICAuaW1wcmVzc2llSG9sZGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogNTcwcHg7XG4gICAgfVxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlciAuaW50cm9Ib2xkZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmltYWdlSG9sZGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogdW5zZXQ7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmhlYWRfdGVrc3Qge1xuICAgICAgICBwYWRkaW5nOiA1NXB4IDBweCAwIDBweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciBoMyB7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuICAgIFxuICAgIC5uZXdzQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiA3NXB4IDAgMDtcbiAgICB9XG4gICAgXG4gICAgLmZpbHRlckNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogNDBweCBhdXRvO1xuICAgIH1cbiAgICBcbiAgICAuZmlsdGVyQ29udGFpbmVyLmV2ZW50RmlsdGVyIC5idXR0b25Ib2xkZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5zb2NpYWxJY29uIHtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5zb2NpYWxJY29uLmxpbmtlZGluIHtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICB9XG4gICAgXG4gICAgLmZhY2Vib29rIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5zb2NpYWxzIHtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUwcHgpIHtcbiAgICAudGl0bGVIb2xkZXIge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMjBweDtcbiAgICAgICAgd2lkdGg6IDU1MHB4O1xuICAgIH1cbiAgICBcbiAgICAudGl0bGVIb2xkZXIgLnRpdGxlLCAudGl0bGVIb2xkZXIgLnN1YnRpdGVsIHtcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICB9XG4gICAgXG4gICAgLnNlY3Rpb24tSG9tZXBhZ2UgaDQge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuICAgIFxuICAgIC5hYm91dEJsb2NrcyAuYWJvdXRCbG9jayAuYWJvdXRCbG9ja0NvbnRlbnQgaDQge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmhlYWRfdGVrc3QgaDEsIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDlweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5zdWJ0aXRlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ5cHg7XG4gICAgfVxuICAgIFxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmV2ZW50c1NsaWRlckhvbGRlciB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjBweCA0MHB4IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyAuYWxsRXZlbnRzVGVrc3Qge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMgLmFsbEV2ZW50c1Rla3N0IC50ZWtzdDo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgcmlnaHQ6IC0zNXB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gYS5iYWNrIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBoNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZUltYWdlSG9sZGVyIGltZyB7XG4gICAgICAgIGhlaWdodDogNDgwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZVRla3N0SG9sZGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWluLWhlaWdodDogMzgwcHg7XG4gICAgfVxuICAgIFxuICAgIC53b3JkU2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgIH1cbiAgICBcbiAgICAud29yZFNsaWRlciB1bCBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA1MHB4KSB7XG4gICAgLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIHtcbiAgICAgICAgcGFkZGluZzogNTBweCA1MHB4IDUwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmludHJvQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gNTBweDtcbiAgICB9XG4gICAgXG4gICAgLnBvcHVwIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAzMHB4IDUwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tZW51IHVsIC5zdWJtZW51IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgIHdpZHRoOiAxNjhweDtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLnN1Ym1lbnUgbGkgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmludHJvQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gNTBweDtcbiAgICB9XG4gICAgXG4gICAgLmNvcHlyaWdodCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrX2ludHJvIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCAuYnV0dG9ucyB7XG4gICAgICAgIGJvdHRvbTogNTBweDtcbiAgICB9XG4gICAgXG4gICAgLndvcmRTbGlkZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICB9XG4gICAgXG4gICAgLnN0aWNreVNjcm9sbGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgLm1lbnUgdWwgLnN1Ym1lbnUge1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgIH1cbiAgICBcbiAgICAubWVudSB1bCAuc3VibWVudSBsaSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgIH1cbiAgICBcbiAgICAuZml4ZWRfaG9sZGVyIHtcbiAgICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgIH1cbiAgICBcbiAgICAubGFuZ3VhZ2Utc2VsZWN0b3IubW9iaWxlLWxhbmd1YWdlLXNlbGVjdG9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaGVhZF90ZWtzdCBoMSwgaDEge1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgICB9XG4gICAgXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgIH1cbiAgICBcbiAgICAuYWJvdXRCbG9ja3MgLmFib3V0QmxvY2sgLmFib3V0QmxvY2tDb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICBib3R0b206IDUwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBhLmJhY2sge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuaW1wcmVzc2llSG9sZGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogNTAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZVRla3N0SG9sZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgbWluLWhlaWdodDogMzIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZUltYWdlSG9sZGVyIGltZyB7XG4gICAgICAgIGhlaWdodDogNDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgaDMge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIH1cbiAgICBcbiAgICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIgLmNhbGxUb0FjdGlvblRla3N0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB9XG4gICAgXG4gICAgICAgIC5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Qge1xuICAgICAgICBoZWlnaHQ6IDUycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MnB4O1xuICAgICAgICB3aWR0aDogMTM5cHg7XG4gICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5yZWRfYnV0dG9ucyBhLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICB9XG4gICAgXG4gICAgLnJlZF9idXR0b25zIC5uaWNlLXNlbGVjdCAub3B0aW9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxM3B4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmZpbHRlckhvbGRlciB7XG4gICAgICAgIHBhZGRpbmc6IDY1cHggMzVweDtcbiAgICB9XG59XG5cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NTBweCkge1xuICAgIC5kaXNjbGFpbWVyX21lbnUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgXG4gICAgLmRpc2NsYWltZXJfbWVudSBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuZGV0YWlsc19ibG9jayB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrX2ludHJvIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDQwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWw6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IGgxLCBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgfVxuICAgIFxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICB9XG4gICAgXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBcbiAgICAudGl0bGVIb2xkZXIgLnRpdGxlLCAudGl0bGVIb2xkZXIgLnN1YnRpdGVsIHtcbiAgICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICB9XG4gICAgXG4gICAgLnRpdGxlSG9sZGVyIHtcbiAgICAgICAgd2lkdGg6IDQwMHB4O1xuICAgIH1cbiAgICBcbiAgICAucG9wdXAgaDIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIH1cbiAgICBcbiAgICAucG9wdXAgLnRla3N0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICB9XG4gICAgXG4gICAgLmxhbmRpbmdzSGVhZGVyIC5pbnRyb0hvbGRlciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgXG4gICAgLmFib3V0QmxvY2tzIHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDUwcHg7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkhvbGRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAuc2xpZGVUZWtzdEhvbGRlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI4MHB4O1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDQwcHggODBweDtcbiAgICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICBcbiAgICAuaW1wcmVzc2llSG9sZGVyIHtcbiAgICAgICAgbWFyZ2luOiA4MHB4IGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5mb290ZXIgLmZvb3RlclRpdGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLnN1YnRpdGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAud29yZFNsaWRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICB9XG4gICAgXG4gICAgLnF1b3RlSG9sZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIC5jYWxsVG9BY3Rpb25UZWtzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuICAgIFxuICAgIGEuYnV0dG9uLCBidXR0b24uYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuYWJvdXRCbG9ja3MgLmFib3V0QmxvY2sgLmFib3V0QmxvY2tDb250ZW50IGg0IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gICAgXG4gICAgLm5pZXV3c2JyaWVmSG9sZGVyIHtcbiAgICAgICAgcGFkZGluZzogNjBweCAwO1xuICAgIH1cbiAgICBcbiAgICAubmlldXdzYnJpZWZDb250YWluZXIgLnRla3N0SG9sZGVyIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgICB9XG4gICAgXG4gICAgLm5pZXV3c2JyaWVmQ29udGFpbmVyIC50ZWtzdEhvbGRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmhlYWRfdGVrc3QgaDEsIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW50Q29udGVudEhvbGRlciBoNSB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgICBcbiAgICAuZXZlbnRDb250ZW50SG9sZGVyIC5kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbi5icmVlZCAuc3VidGl0ZWwge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4ge1xuICAgICAgICBtYXJnaW46IDVweCBhdXRvIDMwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiBoMSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICAgICAgbGVmdDogNDBweDtcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAxMjZweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuLmJyZWVkIC5kZXRhaWxzX2Jsb2NrIC5pY29vbiB7XG4gICAgICAgIHRvcDogLTU3cHg7XG4gICAgfVxuXG4gICAgLmhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICAudGl0bGVIb2xkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIFxuICAgIC5hYm91dEJsb2Nrc1JpZ2h0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkhvbGRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuZXZlbnRzU2xpZGVySG9sZGVyOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuZXZlbnRzU2xpZGVySG9sZGVyIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgIH1cbiAgICAgICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyB7XG4gICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5hZGRFdmVudEN0YUNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmZvb3RlciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAubG9nb0NvbnRhaW5lciB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICBcbiAgICAuZGlzY2xhaW1lckNvbnRhaW5lciB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgICBcbiAgICAuY29weXJpZ2h0SG9sZGVyIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgfVxuICAgIFxuICAgIC5zb2NpYWxDb250YWluZXIge1xuICAgICAgICBvcmRlcjogNDtcbiAgICB9XG4gICAgXG4gICAgLmZvb3RlckJvdHRvbUNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9XG4gICAgXG4gICAgLmNvcHlyaWdodCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5kaXNjbGFpbWVyX21lbnUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5zb2NpYWxzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5mYWNlYm9vayB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5zb2NpYWxJY29uLmxpbmtlZGluIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB9XG4gICAgXG4gICAgLmZvb3RlckJvdHRvbSAuc29jaWFsSWNvbiB7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIyMHB4O1xuICAgIH1cbiAgICBcbiAgICAucmVkX2J1dHRvbnMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5yZWRfYnV0dG9ucyBhLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuc2xpZGVUZWtzdEhvbGRlciB7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5zbGlkZUltYWdlSG9sZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLnNsaWRlSW1hZ2VIb2xkZXIgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAwXG4gICAgfVxuICAgIFxuICAgIC5pbXByZXNzaWVIb2xkZXIgLnNsaWRlIHtcbiAgICAgICAgbWluLWhlaWdodDogMzcwcHg7XG4gICAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgfVxuXG4gICAgLmltcHJlc3NpZUhvbGRlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDc1MHB4O1xuICAgICAgICBtYXJnaW46IDUwcHggYXV0byAxMDBweDtcbiAgICB9XG4gICAgXG4gICAgLnByb2dyZXNzQ29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgIH1cbiAgICBcbiAgICAuc2xpZGVUZWtzdEhvbGRlciB7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMyMHB4O1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDIwcHggMTAwcHg7XG4gICAgfVxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlciAuaW1hZ2VIb2xkZXIgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBcbiAgICAubGFuZGluZ3NIZWFkZXIgLmltYWdlSG9sZGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuY2FsbFRvQWN0aW9uVGVrc3RIb2xkZXIge1xuICAgICAgICBwYWRkaW5nOiA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAuY2FsbFRvQWN0aW9uSG9sZGVyIC5pbWFnZUhvbGRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIFxuICAgIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlci53aW5rZWw6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyQm90dG9tIC5zb2NpYWxzIHtcbiAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgIH1cbiAgICBcbiAgICAuZmlsdGVySG9sZGVyIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuZmlsdGVySG9sZGVyIC51ay1ncmlkLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuICAgIFxuICAgIGZvcm0gLmxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB9XG4gICAgXG4gICAgLmJ1dHRvbnNUYWJsZXREb3duIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgXG4gICAgLmJ1dHRvbnNUYWJsZXREb3duIC5idXR0b24udG9tb3Jyb3cge1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICB9XG4gICAgXG4gICAgLyoubW9iaWxlVG9nZ2xlRmlsdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGVUb2dnbGVGaWx0ZXIuYWN0aXZlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH0qL1xuICAgIFxuICAgIC50b2dnbGVGaWx0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLnRvZ2dsZUZpbHRlci5hY3RpdmU6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIFxuICAgIC50b2dnbGVGaWx0ZXI6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9waWpsdGplLnN2Zyk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgfVxuICAgIFxuICAgIC5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIFxuICAgIC5uaWV1d3NicmllZkNvbnRhaW5lciAuaW5wdXRIb2xkZXIgaW5wdXQge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTI1cHggMCAxNXB4O1xuICAgIH1cbiAgICBcbiAgICAubmlldXdzYnJpZWZDb250YWluZXIgLnRla3N0SG9sZGVyIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICB9XG4gICAgXG4gICAgLnBvcHVwIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB9XG4gICAgXG4gICAgLmxhbmRpbmdzSGVhZGVyQ29udGFpbmVyLmdlZW5faGVhZGVyIC5pbnRyb0hvbGRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgIH1cbiAgICBcbiAgICAubGFuZGluZ3NIZWFkZXIgLmludHJvSG9sZGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICB9ICAgIFxuICAgIFxuICAgIC5sYW5kaW5nc0hlYWRlckNvbnRhaW5lci5nZWVuX2hlYWRlciAubGFuZGluZ3NUaXRsZUhvbGRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuICAgIFxuICAgIC50aXRsZUhvbGRlciB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIFxuICAgIC5pbnRyb0NvbnRhaW5lciAuaW50cm8ge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMzVweCAwO1xuICAgIH1cbiAgICBcbiAgICAuYWJvdXRCbG9ja3MgLnVrLXNsaWRlci1jb250YWluZXIge1xuICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICB9XG4gICAgXG4gICAgLmFib3V0QmxvY2tzU2xpZGVyIC5hYm91dEJsb2NrIC5hYm91dEJsb2NrQ29udGVudCB7XG4gICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgIH1cbiAgICBcbiAgICAuYWJvdXRCbG9ja3NTbGlkZXIgLmFib3V0QmxvY2sgLmFib3V0QmxvY2tDb250ZW50IC5idXR0b257XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyAuYWxsRXZlbnRzVGVrc3QgLnRla3N0OjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogMTdweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkxhcmdlQ3RhIC5hbGxFdmVudHMgLmFsbEV2ZW50c1Rla3N0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5MYXJnZUN0YSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGVGb290ZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAubW9iaWxlRm9vdGVyIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZUZvb3RlciAudG9nZ2xlSXRlbSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGVGb290ZXIgLnRvZ2dsZUl0ZW06OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltYWdlcy9hcnJvd193aGl0ZS5zdmcpO1xuICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGVGb290ZXIgLmFjdGl2ZSAudG9nZ2xlSXRlbTo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZUZvb3RlciAuY29sbGFwc2VJdGVtSG9sZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAxN3B4IDA7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGVGb290ZXIgLmNvbGxhcHNlSXRlbUhvbGRlcjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbiAgICBcbiAgICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW1Ib2xkZXIubGFzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICAgIFxuICAgIC5tb2JpbGVGb290ZXIgLmNvbGxhcHNlSXRlbUhvbGRlci5sYXN0OjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZUZvb3RlciAuY29sbGFwc2VJdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZUZvb3RlciAuYWN0aXZlIC5jb2xsYXBzZUl0ZW0ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAubW9iaWxlRm9vdGVyIC5jb2xsYXBzZUl0ZW0gdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIFxuICAgIC5mb290ZXJfY29udGFpbmVyIC50d2VudGVMb2dvIHtcbiAgICAgICAgYm90dG9tOiAxNTBweDtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICB9XG4gICAgXG4gICAgLmZpbHRlclpvZWtlbkhvbGRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5maXR5cGVyY2VudEhvbGRlciB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICAgIFxuICAgIC5ldmVudENvbnRlbnRIb2xkZXIgLmV2ZW50RGV0YWlsIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5ldmVudENvbnRlbnRIb2xkZXIgPiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW50Q29udGVudEhvbGRlcjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvYmxvY2tEb29ydmVyd2lqemluZy5zdmcnKTtcbiAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cbiAgICBcbiAgICAuZml4ZWRfaG9sZGVyIHtcbiAgICAgICAgaGVpZ2h0OiA5NXB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLnRleHRDb250YWluZXIge1xuICAgICAgICBvcmRlcjogMjtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC50ZXh0Q29udGFpbmVyIC5oZWFkX3Rla3N0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3OHZ3O1xuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDQwcHggMzBweCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuaW1hZ2VDb250YWluZXIge1xuICAgICAgICBvcmRlcjogMTtcbiAgICB9XG4gICAgXG4gICAgLm5ld3NJbnRyb0NvbnRhaW5lciBoMy5jdXN0b21NYXJnaW4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmltYWdlSG9sZGVyLm1vYmlsZUJsb2cge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmltYWdlSG9sZGVyLm1vYmlsZUJsb2cgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmV2ZW50Q29udGVudEhvbGRlci5tb2JpbGVCbG9nIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDgwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCAuZXZlbnRDb250ZW50SG9sZGVyLm1vYmlsZUJsb2cgaDUge1xuICAgICAgICBtYXJnaW46IDVweCAwIDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5Ib2xkZXIgLmV2ZW50IC5ldmVudENvbnRlbnRIb2xkZXIubW9iaWxlQmxvZyA+ICoge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIC5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmV2ZW50Q29udGVudEhvbGRlci5tb2JpbGVCbG9nIC5vbXNjaHJpanZpbmcsIC5ldmVuZW1lbnRlbkhvbGRlciAuZXZlbnQgLmV2ZW50Q29udGVudEhvbGRlciAub21zY2hyaWp2aW5nIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogNzBweDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuSG9sZGVyIC5ldmVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMTNweCAwIHJnYigwIDAgMCAvIDEwJSk7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiB7XG4gICAgICAgIG1hcmdpbjogNXB4IGF1dG8gMDtcbiAgICB9XG4gICAgXG4gICAgLm5ld3NDb250YWluZXIuYmx1ZUJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGN0ZCO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAwO1xuICAgIH1cbiAgICBcbiAgICAubmV3c0NvbnRhaW5lci50b3BPZmZzZXQge1xuICAgICAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgIH1cbiAgICBcbiAgICAuZmlsdGVyQ29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgLmhvbGRlcldpdGhCYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjdGQjtcbiAgICB9XG4gICAgXG4gICAgLmhvbGRlcldpdGhCYWNrZ3JvdW5kLm92ZXJuYWNodGVuIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgfVxuICAgIFxuICAgIC5uZXdzQ29udGFpbmVyLndhdFRlRG9lbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIFxuICAgIC5mb290ZXJEaXNjbGFpbWVyIGltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogNzhweDtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gICAgXG4gICAgLm1vYmlsZUZvb3RlciAuY29sbGFwc2VJdGVtIC5jb250YWN0SWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5kZXRhaWxzX2Jsb2NrLmV2ZW50IHtcbiAgICAgICAgbWFyZ2luOiAtNzVweCAwIC01MHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLmFkdmVudHNIZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5hZHZlbnRza2FsZW5kZXJDb250YWluZXIgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbiAgICB9XG5cbiAgICAuYWR2ZW50c2thbGVuZGVyQ29udGFpbmVyIC5pbnRybyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuYWR2ZW50c2thbGVuZGVyQ29udGFpbmVyIHN2Zy5rYWxlbmRlcmJvb20ge1xuICAgICAgICB3aWR0aDogMTYwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxNjAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTMwdnc7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICBcbiAgICAucG9wdXAge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICB9XG4gICAgLnBvcHVwIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICB9XG4gICAgXG4gICAgLnRpdGxlSG9sZGVyIC50aXRsZSwgLnRpdGxlSG9sZGVyIC5zdWJ0aXRlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUzcHg7XG4gICAgfVxuICAgIFxuICAgIC5tZW51X2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcl90d2VlX2tvbG9tbWVuIC5oZWFkX3Rla3N0IHtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4gLmRldGFpbHNfYmxvY2sge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayBzcGFuLmxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXJfdHdlZV9rb2xvbW1lbiAuZGV0YWlsc19ibG9jayBzcGFuLnZhbHVlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICAgIH1cbiAgICBcbiAgICAuaGVhZGVyX3R3ZWVfa29sb21tZW4uYnJlZWQgLmhlYWRfdGVrc3Qge1xuICAgICAgICBwYWRkaW5nOiAwcHggMjBweCAwIDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5yZWRfYnV0dG9ucyAubmljZS1zZWxlY3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgLnJlZF9idXR0b25zIGEuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMzBweDtcbiAgICB9XG4gICAgXG4gICAgLnNpZGVfYmxvY2sge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jYWxsVG9BY3Rpb25UZWtzdEhvbGRlciB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmFib3V0QmxvY2tzQ29udGFpbmVyLmN1c3RvbSB7XG4gICAgICAgIG1hcmdpbjogNTBweCAwIDA7XG4gICAgfVxuICAgIFxuICAgIC5hYm91dEJsb2Nrc0ludHJvIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICAgIFxuICAgIC5hYm91dEJsb2NrcyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAudWl0Z2VsaWNodGVXaW5rZWxIb2xkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyIC5mb290ZXJUaXRlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuICAgIFxuICAgIC5hZGRFdmVudEN0YSBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuYWRkRXZlbnRDdGEgLnRla3N0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICB9XG4gICAgXG4gICAgLmFib3V0QmxvY2tzIC5hYm91dEJsb2NrIC5hYm91dEJsb2NrQ29udGVudCBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW50Q29udGVudEhvbGRlciAuZXZlbnRDYXQge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgfVxuICAgIFxuICAgIC5pbnRyb0NvbnRhaW5lciAuaW50cm8sIC5ldmVuZW1lbnRlbkN0YSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweCA1NXB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5pbnRyb0NvbnRhaW5lciAuaW50cm9cbiAgICB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweCAzNXB4IDA7XG4gICAgfVxuICAgIFxuICAgIC5pbnRyb0NvbnRhaW5lciAuaW50cm86OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XG4gICAgfVxuICAgIFxuICAgIC5yZWRfYnV0dG9ucyBhLmJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIC5jYWxsVG9BY3Rpb25UZWtzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG4gICAgfVxuICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLm1lbnUgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfSAgICBcbiAgICBcbiAgICAudGl0bGVIb2xkZXIgLnRpdGxlLCAudGl0bGVIb2xkZXIgLnN1YnRpdGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gICAgXG4gICAgLnNlY3Rpb24tSG9tZXBhZ2UgaDQge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgfVxuICAgIFxuICAgIC5hZGRFdmVudEN0YUNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICB9XG4gICAgXG4gICAgLmFkZEV2ZW50Q3RhIC50ZWtzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuTGFyZ2VDdGEgLmFsbEV2ZW50cyB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyLndpbmtlbCAub3ZlcnZpZXdCdXR0b24ge1xuICAgICAgICBtYXJnaW46IDIwcHggMjBweCAwIDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG4gICAgXG4gICAgLmV2ZW5lbWVudGVuQ3RhIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxOXB4IDIwcHggMjBweCA3OHB4O1xuICAgIH1cbiAgICBcbiAgICAuZXZlbmVtZW50ZW5MYXJnZUN0YSAuYWxsRXZlbnRzIC5hbGxFdmVudHNUZWtzdCB7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIHRvcDogMzAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICAgIFxuICAgIC5idXR0b25zVGFibGV0RG93biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIFxuICAgIC50b2dnbGVGaWx0ZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgLmNhbGxUb0FjdGlvblRla3N0SG9sZGVyIC5jYWxsVG9BY3Rpb25UZWtzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIH1cbiAgICBcbiAgICAubW9iaWVsTWVudVpvZWtlbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzBweCkge1xuICAgIC53b3JkU2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgfVxuICAgIFxuICAgIC5mb290ZXJfY29udGFpbmVyIC50d2VudGVMb2dvIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgfVxufSIsIi5sb2dvIC5zaG9ydFxue1xuICAgIHRyYW5zaXRpb246IGFsbCAxMDAwbXM7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvIC5zaG9ydFxue1xuICAgIHRyYW5zaXRpb246IGFsbCAxMDAwbXM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTAwMG1zO1xufVxuXG4ubG9nbyAubG9uZ1xue1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTAwbXM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTAwMG1zO1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvICNsZXR0ZXJfZVxue1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAjbGV0dGVyX25cbntcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMjBtcztcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gI2xldHRlcl9nXG57XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzQwbXM7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvICNsZXR0ZXJfZTJcbntcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAzNDBtcztcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gI2xldHRlcl9sXG57XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzM1bXM7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvICNsZXR0ZXJfb1xue1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDM0MG1zO1xufVxuXG4ubG9nbyAjbGV0dGVyX2VcbntcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAzODBtcztcbn1cblxuLmxvZ28gI2xldHRlcl9uXG57XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzYwbXM7XG59XG5cbi5sb2dvICNsZXR0ZXJfZ1xue1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDM0MG1zO1xufVxuXG4ubG9nbyAjbGV0dGVyX2UyXG57XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzIwbXM7XG59XG5cbi5sb2dvICNsZXR0ZXJfbFxue1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zO1xufVxuXG4ubG9nbyAjbGV0dGVyX29cbntcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcztcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gLmxvbmdcbntcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubG9nb19tb2JpbGUge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoNTAlICsgLTU1cHgpKTtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gLmJyYWNrZXQge1xuICAgIHRyYW5zaXRpb246IGFsbCAxMDAwbXM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG59XG5cbi5sb2dvIC5icmFja2V0IHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMTAwMG1zO1xufVxuXG4uZml4ZWRfaG9sZGVyLnVrLWFjdGl2ZSAubG9nbyAuYnJhY2tldCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbn1cblxuLmZpeGVkX2hvbGRlci51ay1hY3RpdmUgLmxvZ28gLnNob3J0XG57XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ4cHgpO1xufVxuXG4ubG9nb19tb2JpbGUgLnN0aWNreUxvZ28ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvX21vYmlsZSAuc3RpY2t5TG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5maXhlZF9ob2xkZXIudWstYWN0aXZlIC5sb2dvX21vYmlsZSAuc3RhdGljTG9nbyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5sb2dvX21vYmlsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIFxuICAgIC5sb2dvIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/