@media only screen and (min-width: 860px) {
  span.mejs-captions-text { 
    line-height: 58px !important;
    font-size:  42px !important;
  }
} 

.location-option:hover, a.panel:hover, .panel.panel--active {
  border-color: #36B2DF;
  border-style: solid;
  box-shadow: 0 0 0 4px rgba(54, 178, 223, 0.1);
}

.location-options--disabled:after {
  display: block;
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
}

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `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 border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
  display: inline-block;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type="search"] {
  /*-webkit-appearance: textfield;*/
  /*!* 1 *!*/
  /*box-sizing: content-box;*/
  /* 2 */
  height:200px;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

html {
  font-size: 100%;
  box-sizing: border-box;
  height: 100%;
}

*, *:before, *:after {
  box-sizing: inherit;
}

html, body {
  margin: 0;
  padding: 0;
  background: #07384A;
}

.app-body {
  background: white;
  margin-bottom: 2.25rem;
}

.app-section {
  background: white;
  width: 100%;
}

.app-section__body {
  max-width: 75rem;
  margin: 0 auto;
  padding: 1.5rem 0.9375rem;
}

@media only screen and (min-width: 860px) {
  .app-section__body {
    padding: 3rem 1.875rem;
  }
}

@media only screen and (min-width: 1200px) {
  .app-section__body {
    padding: 3.75rem 1.875rem;
  }
}

.app-section--gray {
  background: #f5f5f5;
}

.icon {
  fill: #222222;
  stroke: #222222;
}

body {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 16px;
  line-height: 1.5rem;
}

a {
  color: #36B2DF;
}

.icon-link svg,
.icon-text svg {
  position: relative;
  top: 0.18em;
}

a.neutral-link {
  color: #888;
}

a.neutral-link:hover {
  color: #36B2DF;
}

h1, h2, h3, h4, h5, h6, p, ul, ol {
  margin-top: 0;
}

h1, .alpha {
  font-family: inherit;
  font-weight: 300;
  font-style: inherit;
  font-size: 2.25rem;
  line-height: 3rem;
  margin-bottom: 0.75rem;
}

@media only screen and (min-width: 860px) {
  h1, .alpha {
    font-size: 4.25rem;
    line-height: 4.5rem;
    margin-bottom: 1.5rem;
  }
}

h2, .beta {
  font-family: inherit;
  font-weight: 300;
  font-style: inherit;
  font-size: 1.75rem;
  line-height: 3rem;
  margin-bottom: 1.5rem;
}

@media only screen and (min-width: 860px) {
  h2, .beta {
    font-size: 2.625rem;
    line-height: 3rem;
    margin-bottom: 1.5rem;
  }
}

h3, .gamma {
  font-family: inherit;
  font-weight: 300;
  font-style: inherit;
  font-size: 1.3125rem;
  line-height: 1.5rem;
  margin-bottom: 6px;
}

@media only screen and (min-width: 860px) {
  h3, .gamma {
    font-size: 1.625rem;
    line-height: 3rem;
    margin-bottom: 12px;
  }
}

h4, .delta, fieldset legend {
  font-family: inherit;
  font-weight: 600;
  font-style: inherit;
  font-size: 16px;
  line-height: 1.5rem;
  margin-bottom: 0.375rem;
}

@media only screen and (min-width: 860px) {
  h4, .delta, fieldset legend {
    font-size: 16px;
    line-height: 1.5rem;
    margin-bottom: 0.75rem;
  }
}

h5, .epsilon, .panel__header, .panel__section-header, .progress-steps__step-label {
  font-family: inherit;
  font-weight: 400;
  font-size: 0.84375rem;
  line-height: 1.5rem;
  text-transform: uppercase;
  letter-spacing: 0.045em;
  margin-bottom: 0px;
}

@media only screen and (min-width: 860px) {
  h5, .epsilon, .panel__header, .panel__section-header, .progress-steps__step-label {
    font-size: 0.84375rem;
    line-height: 1.5rem;
    margin-bottom: 0.375rem;
  }
}

p, ul, ol, pre, table, blockquote {
  margin-top: 0px;
  margin-bottom: 1.5rem;
}

ul ul, ol ol, ul ol, ol ul {
  margin-top: 0;
  margin-bottom: 0;
}

ul li,
ol li {
  margin-bottom: 0.375rem;
}

.no-bullets {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
}

.link-list {
  line-height: 1.9;
}

hr {
  border: none;
  border-top: 1px solid #e6e6e6;
  margin: 1.5rem 0 1.4375rem;
}

b, strong, em, small, code {
  line-height: 1;
}

strong {
  font-weight: 600;
}

small {
  display: inline-block;
  font-size: 0.85em;
  line-height: 1.4;
}

.large-text {
  font-size: 1.5rem;
  line-height: 1.45;
}

.small-text {
  font-size: 0.9rem;
  line-height: 1.45;
}

.tooltip {
  position: relative;
  display: inline-block;
}

.tooltip .tooltiptext {
  visibility: hidden;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 5px;
  border-radius: 6px;
  position: absolute;
  z-index: 1;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: opacity 0.3s;
}

.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}


.button,.stripe-payment-elements-submit-button,
button.button,
input.button {
  display: inline-block;
  line-height: 1;
  padding: 0.8em 3em;
  background: #36B2DF;
  color: white;
  font-weight: 400;
  text-decoration: none;
  border: none;
  text-align: center;
  margin-bottom: 0.375rem;
  border-radius: 0.1875rem;
  border: 1px solid #209ecc;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 3px 12px -6px black;
  text-shadow: 0 -1px 0 #1c86ad;
  transition: box-shadow 0.15s linear;
}

.stripe-payment-elements-submit-button {
  margin-top: 1.25rem;
}

.button:hover,
button.button:hover,
input.button:hover {
  background: #3fb5e0;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 6px 15px -6px rgba(0, 0, 0, 0.5);
  transition: box-shadow 0.1 0.5s linear;
}

.button:active,
button.button:active,
input.button:active {
  background: #23a8d9;
  box-shadow: 0 0 0;
  text-shadow: none;
  border-color: #36B2DF;
}

.button--secondary, .button--link,
button.button--secondary,
button.button--link,
input.button--secondary,
input.button--link {
  background: transparent;
  color: #888;
  text-decoration: underline;
  border: none;
  box-shadow: 0 0 0;
  text-shadow: none;
}

.button--secondary:hover, .button--secondary:active, .button--link:hover, .button--link:active,
button.button--secondary:hover,
button.button--secondary:active,
button.button--link:hover,
button.button--link:active,
input.button--secondary:hover,
input.button--secondary:active,
input.button--link:hover,
input.button--link:active {
  background: transparent;
  box-shadow: 0 0 0;
}

.button--neutral,
button.button--neutral,
input.button--neutral {
  border-color: #cfcfcf;
  background: #f5f5f5;
  color: #36B2DF;
  text-shadow: 0 1px 0 white;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.3) inset, 0 3px 12px -6px darkgray;
}

.button--neutral:hover,
button.button--neutral:hover,
input.button--neutral:hover {
  background: #f8f8f8;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 6px 15px -6px rgba(169, 169, 169, 0.5);
}

.button--neutral:active,
button.button--neutral:active,
input.button--neutral:active {
  background: #ebebeb;
  box-shadow: 0 0 0;
  text-shadow: none;
  border-color: #ebebeb;
}

.button .icon,
button.button .icon,
input.button .icon {
  width: 0.95em;
  height: 0.95em;
  margin-bottom: -0.12em;
}

.button--small,
button.button--small,
input.button--small {
  font-size: 0.75rem;
  padding: 0.8em 0.95em;
}

.button--large,
button.button--large,
input.button--large {
  font-size: 1.125rem;
}

.button--expand,
button.button--expand,
input.button--expand {
  width: 100%;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
}

.button--expand + .button--expand,
button.button--expand + .button--expand,
input.button--expand + .button--expand {
  margin-top: 0.375rem;
}

.button--link,
button.button--link,
input.button--link {
  color: #36B2DF;
  padding: 0;
  margin: 0 0.25rem 0 0;
}

.button--disabled,
button.button--disabled,
input.button--disabled {
  border-color: #cfcfcf;
  background: #f5f5f5;
  color: #aaa;
  text-shadow: 0 1px 0 white;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.3) inset, 0 0 0;
}

.button--disabled:hover, .button--disabled:active,
button.button--disabled:hover,
button.button--disabled:active,
input.button--disabled:hover,
input.button--disabled:active {
  border-color: #cfcfcf;
  background: #f5f5f5;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 0 0;
}

.button--error,
button.button--error,
input.button--error {
  background-color: #EB261A;
  border-color: #aa180f;
  background: #EB261A;
  color: white;
  text-shadow: 0 -1px 0 #aa180f;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.3) inset, 0 3px 12px -6px #630e09;
}

.button--error:hover,
button.button--error:hover,
input.button--error:hover {
  background: #eb2a1f;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 6px 15px -6px rgba(99, 14, 9, 0.5);
}

.button--error:active,
button.button--error:active,
input.button--error:active {
  background: #dd1f13;
  box-shadow: 0 0 0;
  text-shadow: none;
  border-color: #dd1f13;
}

.button--success,
button.button--success,
input.button--success {
  background-color: #12C421;
  border-color: #0c7e15;
  background: #12C421;
  color: white;
  text-shadow: 0 -1px 0 #0c7e15;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.3) inset, 0 3px 12px -6px #053809;
}

.button--success:hover,
button.button--success:hover,
input.button--success:hover {
  background: #12c922;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 6px 15px -6px rgba(5, 56, 9, 0.5);
}

.button--success:active,
button.button--success:active,
input.button--success:active {
  background: #10b11e;
  box-shadow: 0 0 0;
  text-shadow: none;
  border-color: #10b11e;
}

.button--warning,
button.button--warning,
input.button--warning {
  background-color: #F6D12D;
  border-color: #cea909;
  background: #F6D12D;
  color: white;
  text-shadow: 0 -1px 0 #cea909;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.3) inset, 0 3px 12px -6px #846d06;
}

.button--warning:hover,
button.button--warning:hover,
input.button--warning:hover {
  background: #f6d232;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 6px 15px -6px rgba(132, 109, 6, 0.5);
}

.button--warning:active,
button.button--warning:active,
input.button--warning:active {
  background: #f5cd19;
  box-shadow: 0 0 0;
  text-shadow: none;
  border-color: #f5cd19;
}

.button--attention,
button.button--attention,
input.button--attention {
  background-color: #098AD8;
  border-color: #065b8f;
  background: #098AD8;
  color: white;
  text-shadow: 0 -1px 0 #065b8f;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.3) inset, 0 3px 12px -6px #032c45;
}

.button--attention:hover,
button.button--attention:hover,
input.button--attention:hover {
  background: #098ddd;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.1) inset, 0 6px 15px -6px rgba(3, 44, 69, 0.5);
}

.button--attention:active,
button.button--attention:active,
input.button--attention:active {
  background: #087dc4;
  box-shadow: 0 0 0;
  text-shadow: none;
  border-color: #087dc4;
}

fieldset {
  border: none;
  border-top: 1px solid #e1e1e1;
  padding: 0;
  margin: 1.875rem 0 0;
}

.panel fieldset {
  border-top-color: #d6d6d6;
}

.panel--raised fieldset {
  border-top-color: #f5f5f5;
}

fieldset legend {
  font-weight: 600;
  padding: 0 0.375rem 0 0;
  background: transparent;
  margin-bottom: 1.5rem;
}

.form__field {
  margin: 0.75rem 0 1.125rem;
}

label:not(.form__option-group__label),
.form__field__label {
  display: block;
  margin-bottom: 0.1875rem;
  font-weight: 600;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.035em;
  color: #888;
}

input[type=text],
input[type=url],
input[type=email],
input[type=tel],
input[type=password],
textarea {
  display: block;
  width: 100%;
  background: white;
  padding: 0.6875rem;
  background: white;
  border: 1px solid #e6e6e6;
  margin-bottom: 0.375rem;
  border-radius: 3px;
  box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.095) inset;
}

input[type=search],
textarea {
  background: white;
  padding: 0.6875rem;
  background: white;
  border: 1px solid #e6e6e6;
  margin-bottom: 0.375rem;
  border-radius: 3px;
  box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.095) inset;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=password]:focus,
textarea:focus {
  box-shadow: 0 0 0 3px rgba(54, 178, 223, 0.1);
  outline: 0 none;
  border-color: #a0daf0;
}

input[type=text][disabled], input[type=text].input--disabled,
input[type=email][disabled],
input[type=email].input--disabled,
input[type=tel][disabled],
input[type=tel].input--disabled,
input[type=password][disabled],
input[type=password].input--disabled,
textarea[disabled],
textarea.input--disabled {
  background-color: #f5f5f5;
  box-shadow: 0 0 0;
  border-color: #e6e6e6;
  color: #888;
}

input[type=text].inline-input,
input[type=email].inline-input,
input[type=tel].inline-input,
input[type=password].inline-input,
textarea.inline-input {
  width: auto;
}

select {
  background: white;
  border-color: #ddd;
  height: 2.625rem;
  min-width: 11.25rem;
  margin-bottom: 0.375rem;
  box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.095);
  max-width: 100%;
}

.form__field__option-group {
  margin-bottom: 1.5rem;
}

.form__field__option-group label {
  text-transform: none;
  font-size: 16px;
  font-weight: 400;
  color: #0B232C;
  letter-spacing: 0;
  display: inline-block;
  margin-right: 1.125rem;
  margin-bottom: 0.375rem;
}

.form__field__option-group label.big-option {
  display: block;
  padding: 0.75rem;
  border: 1px solid transparent;
  border-radius: 5px;
}

.form__field__option-group label.big-option input {
  margin-right: 0.375rem;
}

.form__field__option-group label.big-option .form__field__help-text,
.form__field__option-group label.big-option .form__field__error-text {
  padding-top: 0.375rem;
  padding-left: 1.5rem;
  line-height: 1.5;
}

.form__field__help-text {
  font-weight: 500;
  font-size: 0.8em;
  color: #414141;
}

.form__field__help-text [class*="icon"] {
  position: relative;
  top: 1px;
}

.form__field__help-text {
  font-style: italic;
}

.form__field__error-text {
  color: #EB261A;
}

.form__field--has-error label {
  color: #EB261A;
}

.form__field--has-error input[type=text],
.form__field--has-error input[type=email],
.form__field--has-error input[type=tel],
.form__field--has-error input[type=password],
.form__field--has-error textarea {
  box-shadow: 0 0 0 3px rgba(235, 38, 26, 0.1);
  outline: 0 none;
  border-color: #f5918b;
}

.grid-row {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  max-width: 75rem;
  margin: 0 auto;
}

.grid-row.expand {
  max-width: 100%;
}

.grid-row.centered {
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.grid-row.align-right {
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.grid-row .grid-column .vertical-center {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
}

.grid-row .grid-column .fit-contents {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.grid-row .grid-column .fit-contents > * {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.grid-row .grid-column--stroke {
  border: 1px solid #e6e6e6;
}

@media only screen and (min-width: 320px) {
  .grid-row .grid-column {
    padding: 0 0.75rem;
  }
  .grid-row .grid-column .grid-row.collapse {
    margin: 0 -0.75rem;
  }
  .grid-row .grid-column.small-span-1 {
    width: 8.33333%;
  }
  .grid-row .grid-column.small-span-2 {
    width: 16.66667%;
  }
  .grid-row .grid-column.small-span-3 {
    width: 25%;
  }
  .grid-row .grid-column.small-span-4 {
    width: 33.33333%;
  }
  .grid-row .grid-column.small-span-5 {
    width: 41.66667%;
  }
  .grid-row .grid-column.small-span-6 {
    width: 50%;
  }
  .grid-row .grid-column.small-span-7 {
    width: 58.33333%;
  }
  .grid-row .grid-column.small-span-8 {
    width: 66.66667%;
  }
  .grid-row .grid-column.small-span-9 {
    width: 75%;
  }
  .grid-row .grid-column.small-span-10 {
    width: 83.33333%;
  }
  .grid-row .grid-column.small-span-11 {
    width: 91.66667%;
  }
  .grid-row .grid-column.small-span-12 {
    width: 100%;
  }
}

@media only screen and (min-width: 860px) {
  .grid-row .grid-column.medium-span-1 {
    width: 8.33333%;
  }
  .grid-row .grid-column.medium-span-2 {
    width: 16.66667%;
  }
  .grid-row .grid-column.medium-span-3 {
    width: 25%;
  }
  .grid-row .grid-column.medium-span-4 {
    width: 33.33333%;
  }
  .grid-row .grid-column.medium-span-5 {
    width: 41.66667%;
  }
  .grid-row .grid-column.medium-span-6 {
    width: 50%;
  }
  .grid-row .grid-column.medium-span-7 {
    width: 58.33333%;
  }
  .grid-row .grid-column.medium-span-8 {
    width: 66.66667%;
  }
  .grid-row .grid-column.medium-span-9 {
    width: 75%;
  }
  .grid-row .grid-column.medium-span-10 {
    width: 83.33333%;
  }
  .grid-row .grid-column.medium-span-11 {
    width: 91.66667%;
  }
  .grid-row .grid-column.medium-span-12 {
    width: 100%;
  }
}

@media only screen and (min-width: 1200px) {
  .grid-row .grid-column {
    padding: 0 1.125rem;
  }
  .grid-row .grid-column .grid-row.collapse {
    margin: 0 -1.125rem;
  }
  .grid-row .grid-column.large-span-1 {
    width: 8.33333%;
  }
  .grid-row .grid-column.large-span-2 {
    width: 16.66667%;
  }
  .grid-row .grid-column.large-span-3 {
    width: 25%;
  }
  .grid-row .grid-column.large-span-4 {
    width: 33.33333%;
  }
  .grid-row .grid-column.large-span-5 {
    width: 41.66667%;
  }
  .grid-row .grid-column.large-span-6 {
    width: 50%;
  }
  .grid-row .grid-column.large-span-7 {
    width: 58.33333%;
  }
  .grid-row .grid-column.large-span-8 {
    width: 66.66667%;
  }
  .grid-row .grid-column.large-span-9 {
    width: 75%;
  }
  .grid-row .grid-column.large-span-10 {
    width: 83.33333%;
  }
  .grid-row .grid-column.large-span-11 {
    width: 91.66667%;
  }
  .grid-row .grid-column.large-span-12 {
    width: 100%;
  }
}

table {
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  border-top: 1px solid #e6e6e6;
  background: white;
}

.panel__body--collapse table {
  border: none;
}

.panel__body--collapse table th:last-child, .panel__body--collapse table td:last-child {
  border-right: none;
}

.panel__body--collapse table tr:last-child td {
  border-bottom: none;
}

table.table--full-width {
  width: 100%;
}

table th,
table td {
  padding: 0.375rem 0.75rem;
  border-right: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
}

table th:last-child,
table td:last-child {
  border-right: none;
}

@media only screen and (min-width: 860px) {
  table.table--roomy th,
  table.table--roomy td {
    padding: 0.75rem 1.5rem;
  }
}

@media only screen and (min-width: 860px) {
  table.table--extra-roomy th,
  table.table--extra-roomy td {
    padding: 1.5rem 2.25rem;
  }
}

table tr.no-borders th,
table tr.no-borders td {
  border-right: none;
}

table tr.shade th,
table tr.shade td {
  background: #f5f5f5;
}

.app-nav-menu {
  text-align: center;
  width:100%;
  display:none;
}

.app-nav-menu a {
  display: block;
  border-bottom: 1px solid #36b2df;
  margin: 0;
  background-color: rgba(7,56,74, 0.9);
  position: relative;
  z-index: 1000;
}

label#hamburger {
  padding: 0 1.5rem;
  height: 48px;
  line-height: 48px;
  font-size: 1.5rem;
  display: block;
  cursor: pointer;
  width: 26px;
  float: right;
  color: rgba(255, 255, 255, 0.7);
}

#htoggle {
  display:none;
}

#htoggle:checked + .app-nav-menu {
  display:block;
}

.app-nav {
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.app-nav-menu__item {
  padding: 0 3rem;
  height: 48px;
  line-height: 48px;
  text-decoration: none;
  color: #888;
  font-weight: 300;
}

.app-nav-menu__item a {
  font-weight: 500;
  text-decoration: none;
  transition: color 0.15s linear;
}

.app-nav-menu__item .icon {
  margin-right: 0.25rem;
}

.app-header--dark .app-nav-menu__item {
  color: white;
  color: rgba(255, 255, 255, 0.7);
}

.app-header--dark .app-nav-menu__item a {
  color: rgba(255, 255, 255, 0.7);
}

.app-header--dark .app-nav-menu__item a:hover, .app-header--dark .app-nav-menu__item a.active {
  color: white;
}

@media only screen and (min-width: 860px) {
  label#hamburger {
    display: none;
  }
  .app-nav-trigger {
    display: none;
  }
  #htoggle:checked + .app-nav-menu {
  display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .app-nav-menu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .app-nav-menu a {
    display: block;
    border-bottom: none;
    margin: 0;
    background-color: #07384A !important;
  }
  .app-nav-menu__item {
    padding: 0 1.125rem;
    height: 72px;
    line-height: 72px;
  }
  .app-nav-menu__item a {
        color: rgba(255, 255, 255, 0.7) !important; 
  }
  .app-nav--left .app-nav-menu {
    text-align: left;
  }
  .app-nav--right {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end;
  }
  .app-nav--right .app-nav-menu {
    text-align: right;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

.action-bar .button {
  margin-right: 0.75rem;
}

.action-bar .secondary-action {
  padding: 0.75rem 0;
  margin: 0 0.75rem;
  color: #888;
}

.address-display {
  font-size: 0.875rem;
  font-weight: 500;
}

.address-display p {
  line-height: 1.5;
}

.breadcrumbs {
  margin: 0 0 1.5rem;
  padding: 0.75rem 1.125rem;
  border-radius: 5px;
  background: white;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 600;
  border-bottom: 1px solid #e6e6e6;
}

.breadcrumbs--anchored {
  margin-bottom: 0;
  border-radius: 0;
}

.breadcrumbs a {
  text-decoration: none;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs__crumb:after {
  content: "";
  display: inline-block;
  width: 0.5rem;
  height: 0.875rem;
  margin: 0 0.0625rem 0 0.5625rem;
  background: url(/assets/icons/SVG/chevron-right.svg) no-repeat center center;
  background-size: 100%;
  opacity: 0.8;
  position: relative;
  top: 2px;
}

.breadcrumbs__crumb:last-child {
  color: #888;
}

.breadcrumbs__crumb:last-child:after {
  display: none;
}

.panel__header .breadcrumbs, .panel__section-header .breadcrumbs {
  margin-bottom: 0;
  background: transparent;
  padding: 0;
  font-weight: inherit;
}

.panel__header .breadcrumbs .breadcrumbs__crumb:after, .panel__section-header .breadcrumbs .breadcrumbs__crumb:after {
  margin-left: 0.3125rem;
}

.icon-list__item {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}

.icon-list__icon {
  margin-right: 0.375rem;
}

.input-pair {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  margin-bottom: 0.75rem;
}

.input-pair .input-pair__label {
  background: #f5f5f5;
  border: 1px solid #e6e6e6;
  font-weight: 400;
}

.input-pair .button,
.input-pair .input-pair__label {
  margin: 0;
  padding: 0 1.125rem;
}

.input-pair input {
  margin: 0;
}

.input-pair .input-pair__prefix,
.input-pair .input-pair__postfix {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.input-pair .input-pair__prefix {
  border-radius: 3px 0 0 3px;
  margin-right: -1px;
}

.input-pair .input-pair__postfix {
  border-radius: 0 3px 3px 0;
}

.island {
  display: block;
  margin-bottom: 1.5rem;
}

.island--contain {
  padding: 1.125rem;
  border: 1px solid #e6e6e6;
}

.island--fill {
  background: #f5f5f5;
}

.island--extra-margin {
  margin-bottom: 3rem;
}

.location-options {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  position: relative;
}

.location-option {
  border: 1px solid #e6e6e6;
  padding: 0.75rem 2.25rem 0.75rem 1.125rem;
  margin-bottom: 1.125rem;
  -webkit-flex: 0 0 98%;
      -ms-flex: 0 0 98%;
          flex: 0 0 98%;
  cursor: pointer;
  position: relative;
  font-weight: 500;
  font-size: 0.9em;
}

@media only screen and (min-width: 860px) {
  .location-option {
    min-height: 7.5rem;
    -webkit-flex: 0 0 48%;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
    padding: 1.5rem 2.25rem 1.5rem 1.5rem;
  }
  .location-option > span {
    display: block;
  }
}

.location-option__name {
  font-weight: 700;
}

.location-option__address {
  font-size: 0.95em;
}

.location-option__image {
  display: none;
  width: 1.875rem;
  height: 1.875rem;
  background: #36B2DF;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
              -ms-grid-row-align: center;
          align-items: center;
}

.location-option__image .icon {
  width: 80%;
  fill: white;
}

.location-option--selected {
  border-color: #36B2DF;
}

.location-option--selected .location-option__image {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.location-option--new {
  font-weight: 600;
  color: #36B2DF;
  text-align: center;
}

.location-option--new:hover {
  color: #36B2DF;
}

.location-option--new .location-option__add-icon {
  width: 1.5625rem;
  height: 1.5625rem;
  margin-bottom: -0.375rem;
  margin-right: 0.3125rem;
}

@media only screen and (min-width: 860px) {
  .location-option--new {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0.75rem 1.5rem;
  }
  .location-option--new .location-option__add-icon {
    display: block;
    margin: 0 auto 0.3125rem;
    width: 2.1875rem;
    height: 2.1875rem;
  }
}

.notice {
  padding: 1.5rem 1.5rem 0;
  margin: 0 auto 0;
  font-weight: 400;
  max-width: 1200px;
  color: #888;
}

@media only screen and (min-width: 860px) {
  .notice {
    padding: 3rem 3rem 0;
  }
}

.notice__bd {
  padding: 1.125rem 3.75rem 1.125rem 1.125rem;
  border: 1px solid #e6e6e6;
  border-radius: 3px;
  background: white;
  margin: 0 auto;
  position: relative;
}

.notice__bd p, .notice__bd ul {
  margin-bottom: 0;
}

.notice__bd p + p, .notice__bd p ul, .notice__bd ul + p, .notice__bd ul ul {
  margin-top: 1rem;
}

.notice__dismiss {
  display: block;
  width: 3.875rem;
  height: 3.875rem;
  position: absolute;
  right: 0;
  top: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: inherit;
}

.notice--error {
  color: #EB261A;
}

.notice--error .notice__bd {
  box-shadow: 0 0 0 3px rgba(235, 38, 26, 0.1);
  border-color: #EB261A;
}

.notice--warning {
  color: #cea909;
}

.notice--warning .notice__bd {
  color: #2a2a2a;
  box-shadow: 0 0 0 3px rgba(246, 209, 45, 0.15);
  border-color: #F6D12D;
}

.notice--success {
  color: #12C421;
}

.notice--success .notice__bd {
  box-shadow: 0 0 0 3px rgba(18, 196, 33, 0.1);
  border-color: #12C421;
}

.notice--attention {
  color: #098AD8;
}

.notice--attention .notice__bd {
  box-shadow: 0 0 0 3px rgba(9, 138, 216, 0.1);
  border-color: #098AD8;
}

.panel {
  border-radius: 5px;
  margin-bottom: 1.5rem;
  background: white;
  border: 1px solid #e6e6e6;
  box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.05);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.panel .panel {
  margin-bottom: 1.5rem;
}

.panel > :first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.panel > :last-child {
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.panel__header, .panel__section-header, .panel__section-header, .panel__footer, .panel__body, .panel__block-link {
  margin: 0;
  padding: 1.125rem 1.125rem 1rem;
}

@media only screen and (min-width: 860px) {
  .panel__header, .panel__section-header, .panel__section-header, .panel__footer, .panel__body, .panel__block-link {
    padding: 1.5rem 2.25rem 1.375rem;
  }
}

.panel--compact .panel__header, .panel--compact .panel__section-header, .panel--compact .panel__section-header, .panel--compact .panel__footer, .panel--compact .panel__body, .panel--compact .panel__block-link {
  padding: 1.125rem 1.125rem 1rem;
}

.panel__header, .panel__section-header {
  border-bottom: 1px solid #e6e6e6;
  font-weight: 600;
  margin-top: 0;
  line-height: 1.2;
}

.panel__header em, .panel__section-header em {
  color: #888;
  letter-spacing: 0.02em;
  font-weight: normal;
  font-style: normal;
}

.panel__header__description {
  font-style: normal;
  letter-spacing: 0;
  color: #888;
  text-transform: none;
  font-weight: normal;
  padding: 0.1875rem 0 0;
}

.panel__header__action {
  float: right;
}

.panel__section-header {
  border-top: 1px solid #e6e6e6;
  border-bottom: none;
}

.panel__section-header + .panel__body {
  border-top: 1px solid #e6e6e6;
}

.panel__body > :first-child {
  margin-top: 0;
}

.panel__body > :last-child {
  margin-bottom: 0;
}

.panel__body + .panel__body {
  border-top: 1px solid #e6e6e6;
}

.panel__body > .panel :first-child {
  margin-top: 0;
}

.panel__body > .panel :last-child {
  margin-bottom: 0;
}

.panel__body.attention {
  background: #ebf7fc;
  border-color: #cdecf7;
}

.panel__footer, .panel__actions {
  border-top: 1px solid #e6e6e6;
}

.panel__footer .button, .panel__actions .button {
  margin-bottom: 0;
}

.panel__actions {
  border-top: 1px solid #e6e6e6;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  overflow: hidden;
}

.panel__actions:last-of-type {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.panel__actions .button {
  display: block;
  background: white;
  color: #36B2DF;
  text-shadow: none;
  border: none;
  box-shadow: none;
  border-radius: 0;
  border-right: 1px solid #e6e6e6;
  -webkit-flex: 1 0 0;
      -ms-flex: 1 0 0;
          flex: 1 0 0;
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}

.panel__actions .button:hover {
  background: #f5f5f5;
}

.panel__actions .button:last-child {
  border: none;
}

.panel__body--collapse {
  padding: 0;
}

.panel--flat {
  background: #f5f5f5;
  box-shadow: none;
  border: none;
}

.panel--flat .panel__header, .panel--flat .panel__section-header,
.panel--flat .panel__footer,
.panel--flat .panel__actions,
.panel--flat .panel__section-header,
.panel--flat .panel__section-header + .panel__body,
.panel--flat .panel__body + .panel__body {
  border-color: white;
}

.panel--flat .panel__actions .button {
  background: #36B2DF;
  color: white;
}

.panel--shade {
  background: #efefef;
  box-shadow: none;
  border: none;
}

.panel--shade .panel__header, .panel--shade .panel__section-header,
.panel--shade .panel__footer,
.panel--shade .panel__section-header,
.panel--shade .panel__body + .panel__body {
  border-color: #f5f5f5;
}

.panel--invisible {
  background: transparent;
  border: none;
  box-shadow: none;
}

.panel--invisible > .panel__header, .panel--invisible > .panel__section-header,
.panel--invisible > .panel__body,
.panel--invisible > .panel__footer {
  border: none;
  padding-left: 0;
  padding-right: 0;
}

.panel hr.expand {
  margin-left: -1.125rem;
  margin-right: -1.125rem;
}

@media only screen and (min-width: 860px) {
  .panel hr.expand {
    margin-left: -2.25rem;
    margin-right: -2.25rem;
  }
}

.panel__block-link {
  display: block;
  text-decoration: none;
  border-top: 1px solid #e6e6e6;
  position: relative;
  font-weight: 500;
}

.panel__block-link.plain-text,
.panel__block-link .plain-text {
  color: #888;
}

.panel__block-link .icon:first-child {
  position: relative;
  top: 2px;
  margin-right: 0.75rem;
}

.panel__block-link .icon.block-link-arrow {
  position: absolute;
  top: 50%;
  right: 1.125rem;
  margin-top: -0.375rem;
  margin-right: 0;
  stroke-width: 1px;
}

@media only screen and (min-width: 860px) {
  .panel__block-link .icon.block-link-arrow {
    right: 2.25rem;
  }
}

.panel__block-link:first-child {
  border-top: none;
}

.panel__block-link--compact {
  padding-top: 1.125rem;
  padding-bottom: 1.125rem;
}

.panel__block-link--disabled {
  background: #f5f5f5;
  color: #888;
  cursor: default;
}

.panel__block-link--disabled:hover, .panel__block-link--disabled:active {
  background: #f5f5f5;
}

.panel__block-link--active {
  background: #36B2DF;
  color: white;
  cursor: default;
  border-color: #36B2DF;
  margin: -1px;
  position: relative;
  z-index: 1;
}

.panel__block-link--active:hover, .panel__block-link--active:active {
  background: #36B2DF;
}

.panel--compact .panel__block-link {
  padding: 0.75rem 1.125rem;
}

.panel--compact .panel__block-link .icon.block-link-arrow {
  right: 1.125rem;
  margin-top: -0.5rem;
}

@media only screen and (min-width: 860px) {
  .panel--compact .panel__block-link .icon.block-link-arrow {
    right: 1.125rem;
  }
}

.panel a.panel__block-link:hover {
  background: #fafafa;
}

.panel__header + .panel__block-link, .panel__section-header + .panel__block-link {
  border: none;
}

a.panel {
  display: block;
}

a.panel .panel__block-link {
  color: #36B2DF;
}

a.panel:hover .panel__block-link {
  background: transparent;
}

.panel.panel--active .panel__block-link {
  background: transparent;
}

.panel--attention {
  background: #ebf7fc;
  border-color: #cdecf7;
  box-shadow: none;
}

.panel--attention .panel__header, .panel--attention .panel__section-header,
.panel--attention .panel__footer {
  border-color: #cdecf7;
}

.panel--warning {
  background: #fefaea;
  border-color: #fdf4cb;
  box-shadow: none;
}

.panel--warning .panel__header, .panel--warning .panel__section-header,
.panel--warning .panel__footer {
  border-color: #fdf4cb;
}

.panel--success {
  background: #e7f9e9;
  border-color: #c4f0c8;
  box-shadow: none;
}

.panel--success .panel__header, .panel--success .panel__section-header,
.panel--success .panel__footer {
  border-color: #c4f0c8;
}

.progress-steps-container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 3rem;
  padding-top: 1.5rem;
}

.progress-steps {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.progress-steps__bar {
  display: none;
}

.progress-steps__step {
  position: relative;
  margin-bottom: 1.5rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-right: 1.125rem;
}

.progress-steps__step-icon {
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 100%;
  border: 0.25rem solid #e6e6e6;
  position: relative;
  z-index: 1;
  text-align: center;
  margin-right: 0.75rem;
}

.progress-steps__step-icon svg {
  display: none;
}

.progress-steps a {
  color: #888;
}

.progress-steps__step-label {
  line-height: 1.35;
  font-weight: 600;
  margin: 0;
  font-size: 0.7em;
  max-width: 10rem;
  padding-top: 0.0625rem;
}

.progress-steps__step--complete .progress-steps__step-icon {
  background: #e6e6e6 url(/assets/icons/SVG/check.svg) no-repeat center;
  background-size: 80%;
}

.progress-steps__step--active .progress-steps__step-icon {
  background: #36B2DF;
  border-color: white;
  border-width: 0.125rem;
  box-shadow: 0 0 0 1px #e6e6e6;
  color: white;
}

@media only screen and (min-width: 860px) {
  .progress-steps__step--active .progress-steps__step-icon {
    border-width: 0.25rem;
    box-shadow: 0 0 0 3px #e6e6e6;
  }
}

.progress-steps__step--active .progress-steps__step-label {
  color: #36B2DF;
}

@media only screen and (min-width: 860px) {
  .progress-steps {
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    position: relative;
  }
  .progress-steps__bar {
    display: block;
    position: absolute;
    left: 5.875rem;
    right: 5.875rem;
    top: 1.25rem;
    height: 0.25rem;
    margin-top: -0.25rem;
    background: #e6e6e6;
  }
  .progress-steps__step {
    position: relative;
    width: 10rem;
    margin-bottom: 0;
    margin-right: 0;
    display: block;
  }
  .progress-steps__step-icon {
    margin: 0 auto;
    width: 2.25rem;
    height: 2.25rem;
    background: white;
  }
  .progress-steps__step-icon svg {
    display: inline;
  }
  .progress-steps__step-label {
    padding: 0.75rem 0 0;
  }
}

.section-actions {
  margin: 0 0 1.5rem;
  border-radius: 5px;
  text-align: center;
  border: 1px solid #e6e6e6;
}

@media only screen and (min-width: 860px) {
  .section-actions {
    text-align: left;
  }
}

.section-actions a {
  display: block;
  padding: 0.75rem 1.125rem;
  text-decoration: none;
}

.section-actions a .icon {
  position: relative;
  top: 2px;
}

.status-label {
  display: inline-block;
  background: #e6e6e6;
  font-weight: 600;
}

.status-label.live {
  background: #12C421;
  color: white;
}

.status-label.coming-up {
  background: #F6D12D;
  color: white;
}

.status-label.not-purchased {
  background: #EB261A;
  color: white;
}

.app-header {
  background: white;
  height: 3rem;
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.04);
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding-right: 0.75rem;
  position: relative;
}

.app-header .brand {
  display: block;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  text-decoration: none;
}

.app-header .brand__mark {
  width: 3rem;
  padding: 0.75rem;
  height: 3rem;
}

.app-header .brand__mark img {
  max-width: 100%;
}

.app-header .brand__label {
  height: 3rem;
  line-height: 3rem;
  color: #36B2DF;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.065em;
  font-size: 13.33333px;
  display: none;
}

@media only screen and (min-width: 860px) {
  .app-header {
    height: 4.5rem;
    padding-right: 1.125rem;
  }
  .app-header .brand__mark {
    padding: 1.125rem;
    width: 4.5rem;
    height: 4.5rem;
  }
  .app-header .brand__label {
    font-weight: 400;
    font-size: 16px;
    line-height: 4.5rem;
  }
}

.app-header--dark {
  background: #07384A;
  color: white;
  box-shadow: 0 0 0;
}

.app-footer {
  text-align: center;
  padding-bottom: 2.25rem;
  color: #f5f5f5;
  font-size: 0.9em;
}

.app-footer p {
  max-width: none;
  margin-bottom: 0;
}

.app-footer small {
  color: #ccc;
}

.kits-input {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.125rem 1.5rem;
  background: #f5f5f5;
  max-width: 25rem;
  margin: 0 auto;
}

.kits-input input {
  -webkit-flex: 0 0 70px;
      -ms-flex: 0 0 70px;
          flex: 0 0 70px;
  margin-right: 1.125rem;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 500;
}

.kits-input p {
  margin-bottom: 0;
}

.session-input {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}

.session-input__label {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 0 0 30px;
      -ms-flex: 0 0 30px;
          flex: 0 0 30px;
  padding-top: 2.4375rem;
  padding-right: 1rem;
}

.session-input__label > div {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.session-input__label span {
  display: none;
}

.session-input__date {
  -webkit-flex: 1 0 0;
      -ms-flex: 1 0 0;
          flex: 1 0 0;
  margin: 0 0.75rem 0 0;
}

.session-input__time {
  -webkit-flex: 1 0 0;
      -ms-flex: 1 0 0;
          flex: 1 0 0;
}

@media only screen and (min-width: 860px) {
  .session-input__label {
    -webkit-flex: 0 0 100px;
        -ms-flex: 0 0 100px;
            flex: 0 0 100px;
  }
  .session-input__label > div {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .session-input__label span {
    display: inline;
  }
}

/* Shipping method container */
.shipping-method-item {
  display: flex;
  align-items: center; /* Vertically align the content */
  margin-bottom: 10px; /* Lower the radio button */
}

/* Radio button */
.shipping-method-item input[type="radio"] {
  width: 10px;
  height: 10px;
  margin-top: 4px; /* Lower the radio button */
  align-self: flex-start; /* Keep it aligned independently */
}

/* Logo image */
.shipping-logo {
  width: 25px;
  height: 25px;
  margin-right: 6px; /* Optional: space between logo and text */
  margin-left: 4px; /* Optional: space between logo and text */
}

.shipping-logo {
  width: 25px;
  vertical-align: top; /* Align the logo with the middle of the text */
  margin-right: 2px; /* Optional: space between logo and text */
}

.sign-in-form {
  width: 20rem;
  margin: 5% auto;
}

.sign-in-form__brand {
  width: 6.25rem;
  height: 6.25rem;
  margin: 0 auto;
  text-align: center;
  padding: 0.625rem;
  border-radius: 100%;
  margin-bottom: 0.75rem;
}

.sign-in-form__brand img {
  max-width: 95%;
}

.sign-in-form__welcome {
  text-align: center;
  margin-bottom: 1.5rem;
  color: white;
}

.sign-in-form__bd {
  box-shadow: 0 18px 30px -6px rgba(0, 0, 0, 0.35);
  background: white;
  border-radius: 3px;
  overflow: hidden;
}

.sign-in-form__title {
  background: #f0f0f0;
  color: white;
  padding: 0.75rem 1.5rem;
  text-align: center;
  color: #888;
  font-weight: 400;
}

.sign-in-form form {
  padding: 1.5rem;
}

.sign-in-form__support {
  padding: 1.5rem 0 0;
  text-align: center;
}

.sign-in-form__support a {
  text-decoration: none;
}

.sign-in-form__support a:hover {
  text-decoration: underline;
}

@media only screen and (min-width: 860px) {
  .sign-in-form__support {
    font-size: 0.8em;
  }
  .sign-in-form__support a {
    color: #888;
  }
}

.sign-in-form .no-account-actions {
  background: transparent;
  color: white;
  text-align: center;
  padding: 3rem 1.5rem 1.5rem;
}

.sign-in-form .no-account-actions .button {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.8);
  color: white;
  text-shadow: none;
  box-shadow: none;
}

.sign-in-form .no-account-actions .button:hover {
  background: white;
  color: #2a2a2a;
}

.workshop-summaries .workshop-summary {
  display: block;
  text-decoration: none;
  line-height: 1.6;
  max-width: 18.75rem;
  font-size: 0.875rem;
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: visible;
  margin-bottom: 2.25rem;
  color: #0B232C;
}

.workshop-summaries .workshop-summary .status-label {
  position: absolute;
  right: 0;
  top: 0;
  padding: 0.125rem 0.75rem;
  border-radius: 0 4px 0 0;
  font-size: 0.9em;
}

.workshop-entry .status-label {
  font-size: 10px;
  padding: 0.2rem 0.3rem;
  border-radius: 4px;
  position: relative;
  top: -1.5px; /* move it up slightly; adjust to taste (-1px to -4px usually works) */
  line-height: 0.9;
}

.workshop-summaries .workshop-summary__image {
  text-align: center;
  padding: 3rem 0.75rem 1.5rem;
  border-bottom: 1px solid #e6e6e6;
  background: #f5f5f5;
  border-radius: 5px 5px 0 0;
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
}

.workshop-summaries .workshop-summary__image img {
  max-width: 12.5rem;
}

@media only screen and (min-width: 860px) {
  .workshop-summaries .workshop-summary__image img {
    max-width: 60%;
  }
}

.workshop-summaries .workshop-summary .panel__body {
  -webkit-flex-grow: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
}

.workshop-summaries .workshop-summary__title {
  color: #0B232C;
  font-weight: 600;
  font-size: 1.125rem;
}

.workshop-summaries .workshop-summary__dates {
  color: #888;
  display: block;
  color: #888;
}

.workshop-summaries .workshop-summary__code {
  color: #888;
}

.workshop-summaries .workshop-summary__code .label {
  display: inline-block;
  padding: 0 0.375rem;
  border-radius: 1.875rem;
  border: 1px solid #dadada;
  background: transparent;
  color: #555;
  font-size: 0.8em;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.workshop-summaries .workshop-summary .panel__block-link {
  font-weight: 600;
  -webkit-flex-shrink: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
  padding-top: 1.125rem;
  padding-bottom: 1.125rem;
}

.workshop-summaries .workshop-summary .panel__block-link svg {
  stroke-width: 2;
  margin-top: -6px;
}

.workshop-summaries .workshop-summary .panel__actions .button {
  padding: 1.375rem 0.375rem;
  font-weight: 600;
}

@media only screen and (min-width: 860px) {
  .workshop-summaries {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .workshop-summaries .workshop-summary {
    width: 17.5rem;
    margin-right: 1.875rem;
  }
}

.workshop-summaries .workshop-summary--new {
  border-color: #d9d9d9;
}

.workshop-summaries .workshop-summary--more {
  border: 2px dashed #d9d9d9;
  background: #f3f3f3;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-align-items: center;
      -ms-flex-align: center;
              -ms-grid-row-align: center;
          align-items: center;
}

.workshop-summaries .workshop-summary--more > div {
  text-align: center;
  font-size: 1.5rem;
  padding: 1.5rem;
  color: #888;
}

.workshop-header {
  line-height: 1.8;
  margin-bottom: 1.5rem;
}

@media only screen and (min-width: 860px) {
  .workshop-header {
    margin-bottom: 3rem;
  }
}

.workshop-header__title {
  margin-bottom: 0.75rem;
}

.workshop-header .status-label {
  padding: 0.3125rem 0.75rem;
}

.ui-datepicker-group {
  float: left;
}

.ui-datepicker-group:nth-child(even) {
  margin-left: 0.375rem;
}

.ui-datepicker {
  background: white;
  box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.2);
}

.ui-datepicker .ui-datepicker-calendar {
  margin: 0;
  margin: 0.75rem;
}

.ui-datepicker .ui-datepicker-calendar td {
  padding: 0;
}

.ui-datepicker .ui-datepicker-calendar td a {
  font-size: 0.875rem;
  padding: 0.1875rem;
}

.ui-datepicker a {
  color: #888;
}

.ui-datepicker td:not(.ui-state-disabled) {
  cursor: pointer;
}

.ui-datepicker td:not(.ui-state-disabled):hover {
  background: #36B2DF;
}

.ui-datepicker td:not(.ui-state-disabled):hover a {
  color: white;
}

.ui-datepicker .ui-state-disabled {
  background: #f5f5f5;
}

.ui-datepicker .ui-datepicker-header {
  margin-bottom: 0.75rem;
  padding: 0.75rem 0.75rem 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  cursor: pointer;
  color: #36B2DF;
}

.ui-datepicker .ui-datepicker-prev {
  float: left;
}

.ui-datepicker .ui-datepicker-next {
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  float: right;
}

.ui-datepicker .ui-datepicker-title {
  text-align: center;
}

.ui-datepicker .ui-state-default {
  display: block;
  text-align: center;
  text-decoration: none;
}

.ui-datepicker td.ui-datepicker-today {
  background: #d7f0f9;
}

.ui-datepicker td.ui-datepicker-today a {
  color: #36B2DF;
}

.ui-datepicker td.ui-datepicker-current-day {
  background: #36B2DF;
}

.ui-datepicker td.ui-datepicker-current-day a {
  color: white;
}

.sign-in {
  padding: 2.625rem;
  background: linear-gradient(to right, #133e4e, #52592a);
  min-height: 100%;
}

.color-firefly {
  color: #0B232C !important;
}

.color-tarawera {
  color: #07384A !important;
}

.color-blue-green {
  color: #128DBA !important;
}

.color-summer-sky {
  color: #36B2DF !important;
}

.color-wattle {
  color: #D0DD43 !important;
}

.color-honeysuckle {
  color: #E9FF77 !important;
}

.color-white-smoke {
  color: #f5f5f5 !important;
}

.color-mercury {
  color: #e6e6e6 !important;
}

.color-alto {
  color: #dadada !important;
}

.color-jumbo, .color-neutral {
  color: #888 !important;
}

.color-strawberry {
  color: #EB261A !important;
}

.color-golden-dream {
  color: #F6D12D !important;
}

.color-dark-pastel-green {
  color: #12C421 !important;
}

.color-rich-electric-blue {
  color: #098AD8 !important;
}

.bg-firefly {
  background-color: #0B232C;
}

.bg-tarawera {
  background-color: #07384A;
}

.bg-blue-green {
  background-color: #128DBA;
}

.bg-summer-sky {
  background-color: #36B2DF;
}

.bg-wattle {
  background-color: #D0DD43;
}

.bg-honeysuckle {
  background-color: #E9FF77;
}

.bg-white-smoke {
  background-color: #f5f5f5;
}

.bg-mercury {
  background-color: #e6e6e6;
}

.bg-alto {
  background-color: #dadada;
}

.bg-jumbo, .bg-neutral {
  background-color: #888;
}

.bg-strawberry {
  background-color: #EB261A;
}

.bg-golden-dream {
  background-color: #F6D12D;
}

.bg-dark-pastel-green {
  background-color: #12C421;
}

.bg-rich-electric-blue {
  background-color: #098AD8;
}

.fill-strawberry {
  fill: #EB261A;
}

.fill-golden-dream {
  fill: #F6D12D;
}

.fill-dark-pastel-green {
  fill: #12C421;
}

.fill-rich-electric-blue {
  fill: #098AD8;
}

.stroke-strawberry {
  stroke: #EB261A;
}

.stroke-golden-dream {
  stroke: #F6D12D;
}

.stroke-dark-pastel-green {
  stroke: #12C421;
}

.stroke-rich-electric-blue {
  stroke: #098AD8;
}

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

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.expand-height {
  height: 100%;
}

.expand-width {
  width: 100%;
}

.collapse-margin {
  margin: 0 !important;
}

.collapse-margin-top {
  margin-top: 0 !important;
}

.collapse-margin-bottom {
  margin-bottom: 0 !important;
}

.collapse-margin-left {
  margin-left: 0 !important;
}

.collapse-margin-right {
  margin-right: 0 !important;
}

.collapse-padding {
  padding: 0 !important;
}

.collapse-padding-top {
  padding-top: 0 !important;
}

.collapse-padding-bottom {
  padding-bottom: 0 !important;
}

.collapse-padding-left {
  padding-left: 0 !important;
}

.collapse-padding-right {
  padding-right: 0 !important;
}

.pad-fill-neutral {
  padding: 0.375rem;
  background: #e6e6e6;
  margin-bottom: 0.125rem;
}

.hide {
  display: none;
}

a:focus {
  outline: none;
}

.gm-style .gm-style-iw {
  text-align: center;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

@media only screen and (min-width: 860px) {
  .medium-pull-right {
    float: right !important;
  }
}

@media only screen and (min-width: 860px) {
  .medium-pull-left {
    float: left !important;
  }
}

@media only screen and (min-width: 1200px) {
  .large-pull-right {
    float: right !important;
  }
}

@media only screen and (min-width: 1200px) {
  .large-pull-left {
    float: left !important;
  }
}

.stripe-payment-intents-form {
  width: auto !important;
  padding-bottom: 10%;
}


/* Resource Section Styling */
.resource-section {
  border-top: 1px solid #ccc; /* Horizontal line at top of each section */
  padding: 20px 0;            /* Equal vertical spacing above and below each section */
  margin: 0;                   /* Remove default margin if needed */
}

/* Optional: Remove border for the first section */
.resource-section:first-child {
  border-top: none;
}

/* Headings inside resource sections */
.resource-section h3 {
  margin-top: 0;
  margin-bottom: 10px;
}

.resource-section h5 {
  margin-top: 15px;
  margin-bottom: 5px;
}

/* Paragraphs inside resource sections */
.resource-section p {
  margin: 5px 0 15px 0;
}

/* Video and document links */
.resource-section a {
  display: block; /* ensures each link starts on a new line */
  margin-bottom: 5px;
}

.resource-link {
  display: block;       /* each link on its own line */
  margin: 0;            /* remove extra space */
  padding: 2px 0;       /* optional small spacing */
  text-decoration: underline; /* optional styling */
}

.hr-thick {
  height: 1px;
  background-color: #808080;
  border: none;
  margin: 2rem 0; /* controls vertical spacing */
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbmZpZy9fbWl4aW5zLnNjc3MiLCJjb25maWcvX3NldHRpbmdzLnNjc3MiLCJiYXNlL19ub3JtYWxpemUuc2NzcyIsImxobmdyb3Vwcy5jc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJjb25maWcvX2Z1bmN0aW9ucy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fYnV0dG9ucy5zY3NzIiwiYmFzZS9fZm9ybXMuc2NzcyIsImJhc2UvX2dyaWQuc2NzcyIsImJhc2UvX3RhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fYXBwLW5hdi5zY3NzIiwiY29tcG9uZW50cy9fYWN0aW9uLWJhci5zY3NzIiwiY29tcG9uZW50cy9fYWRkcmVzcy1kaXNwbGF5LnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9faWNvbi1saXN0LnNjc3MiLCJjb21wb25lbnRzL19pbnB1dC1wYWlyLnNjc3MiLCJjb21wb25lbnRzL19pc2xhbmRzLnNjc3MiLCJjb21wb25lbnRzL19sb2NhdGlvbi1vcHRpb25zLnNjc3MiLCJjb21wb25lbnRzL19ub3RpY2Uuc2NzcyIsImNvbXBvbmVudHMvX3BhbmVscy5zY3NzIiwiY29tcG9uZW50cy9fcHJvZ3Jlc3Mtc3RlcHMuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24tYWN0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fc3RhdHVzLWxhYmVsLnNjc3MiLCJtb2R1bGVzL19hcHAtaGVhZGVyLnNjc3MiLCJtb2R1bGVzL19hcHAtZm9vdGVyLnNjc3MiLCJtb2R1bGVzL19raXRzLWlucHV0LnNjc3MiLCJtb2R1bGVzL19zZXNzaW9uLWlucHV0cy5zY3NzIiwibW9kdWxlcy9fc2lnbi1pbi1mb3JtLnNjc3MiLCJtb2R1bGVzL193b3Jrc2hvcC1zdW1tYXJpZXMuc2NzcyIsIm1vZHVsZXMvX3dvcmtzaG9wLWhlYWRlci5zY3NzIiwidmVuZG9yL19qcXVlcnkuZGF0ZXBpY2tlci5zY3NzIiwibGF5b3V0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QUVEO0VBQ0kscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixvQkFBbUI7RUFDbkIsbUJEMUJ5RDtFQzJCekQsa0JEM0J5RDtFQzRCekQsdUJENUJ5RDtDQ21DNUQ7O0FOM0NPO0VNOEJSO0lBU1EsbUJEL0JxRDtJQ2dDckQsb0JEaENxRDtJQ2lDckQsc0JEakNxRDtHQ21DNUQ7Q0hpZEE7O0FHaGREO0VBQ0kscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixvQkFBbUI7RUFDbkIsbUJEeEN5RDtFQ3lDekQsa0JEekN5RDtFQzBDekQsc0JEMUN5RDtDQ2lENUQ7O0FOekRPO0VNNENSO0lBU1Esb0JEN0NxRDtJQzhDckQsa0JEOUNxRDtJQytDckQsc0JEL0NxRDtHQ2lENUQ7Q0hvZEE7O0FHbmREO0VBQ0kscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixvQkFBbUI7RUFDbkIscUJEdER5RDtFQ3VEekQsb0JEdkR5RDtFQ3dEekQsbUJMakVVO0NLd0ViOztBTnZFTztFTTBEUjtJQVNRLG9CRDNEcUQ7SUM0RHJELGtCRDVEcUQ7SUM2RHJELG9CQUE4QjtHQUVyQztDSHVkQTs7QUd0ZEQ7RUFDSSxxQkFBb0I7RUFDcEIsaUJBQWdCO0VBQ2hCLG9CQUFtQjtFQUNuQixnQkw5RVc7RUsrRVgsb0JEckV5RDtFQ3NFekQsd0JEdEV5RDtDQzZFNUQ7O0FOckZPO0VNd0VSO0lBU1EsZ0JMbkZPO0lLb0ZQLG9CRDFFcUQ7SUMyRXJELHVCRDNFcUQ7R0M2RTVEO0NIMGRBOztBR3pkRDtFQUNJLHFCQUFvQjtFQUNwQixpQkFBZ0I7RUFDaEIsc0JEakZ5RDtFQ2tGekQsb0JEbEZ5RDtFQ21GekQsMEJBQXlCO0VBQ3pCLHdCQUF1QjtFQUN2QixtQkFBa0I7Q0FPckI7O0FOcEdPO0VNc0ZSO0lBVVEsc0JEeEZxRDtJQ3lGckQsb0JEekZxRDtJQzBGckQsd0JEMUZxRDtHQzRGNUQ7Q0g2ZEE7O0FHemREO0VBQ0ksZ0JBQWU7RUFDZixzQkRsR3lEO0NDbUc1RDs7QUFFRDtFQUNJLGNBQWE7RUFDYixpQkFBZ0I7Q0FDbkI7O0FBRUQ7O0VBRUksd0JENUd5RDtDQzZHNUQ7O0FBRUQ7RUFDSSxlQUFjO0VBQ2QsZ0JBQWU7RUFDZixpQkFBZ0I7Q0FDbkI7O0FBRUQ7RUFDSSxpQkFBZ0I7Q0FDbkI7O0FBRUQ7RUFDSSxhQUFZO0VBQ1osOEJMMUhhO0VLMkhiLDJCRDVIeUQ7Q0M2SDVEOztBQUVEO0VBQ0ksZUFBYztDQUNqQjs7QUFFRDtFQUNJLGlCQUFnQjtDQUNuQjs7QUFFRDtFQUNJLHNCQUFxQjtFQUNyQixrQkFBaUI7RUFDakIsaUJBQWdCO0NBQ25COztBQUVEO0VBQ0ksa0JEOUl5RDtFQytJekQsa0JBQWlCO0NBQ3BCOztBQUVEO0VBQ0ksa0JEbkp5RDtFQ29KekQsa0JBQWlCO0NBQ3BCOztBQ2hLRDs7O0VBR0ksc0JBQXFCO0VBQ3JCLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsb0JORWdCO0VNRGhCLGFBQVk7RUFDWixpQkFBZ0I7RUFDaEIsc0JBQXFCO0VBQ3JCLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsd0JGRHlEO0VFRXpELHlCRkZ5RDtFRUd6RCwwQkFBeUM7RUFDekMsNEVBQzRDO0VBQzVDLDhCQUE4QztFQUM5QyxvQ0FBbUM7Q0FzTXRDOztBQXhORDs7O0VBcUJRLG9CQUFvQztFQUNwQyx5RkFDaUQ7RUFDakQsdUNBQW9DO0NBQ3ZDOztBQXpCTDs7O0VBNEJRLG9CQUFtQztFQUNuQyxrQkFBaUI7RUFDakIsa0JBQWlCO0VBQ2pCLHNCTnZCWTtDTXdCZjs7QUFHRDs7Ozs7RUFFSSx3QkFBdUI7RUFDdkIsWUFBVztFQUNYLDJCQUEwQjtFQUMxQixhQUFZO0VBQ1osa0JBQWlCO0VBQ2pCLGtCQUFpQjtDQU9wQjs7QUFkRDs7Ozs7Ozs7O0VBV1Esd0JBQXVCO0VBQ3ZCLGtCQUFpQjtDQUNwQjs7QUFJTDs7O0VBQ0ksc0JBQXVDO0VBQ3ZDLG9CTjNDYTtFTTRDYixlTi9DWTtFTWdEWiwyQkFBMEI7RUFDMUIsK0VBQzZDO0NBY2hEOztBQXBCRDs7O0VBU1Esb0JBQXFDO0VBQ3JDLCtGQUNrRDtDQUNyRDs7QUFaTDs7O0VBZVEsb0JBQW9DO0VBQ3BDLGtCQUFpQjtFQUNqQixrQkFBaUI7RUFDakIsc0JBQXNDO0NBQ3pDOztBQXZFVDs7O0VBNEVRLGNBQWE7RUFDYixlQUFjO0VBQ2QsdUJBQXNCO0NBQ3pCOztBQUdEOzs7RUFDSSxtQkZ4RXFEO0VFeUVyRCxzQkFBcUI7Q0FDeEI7O0FBRUQ7OztFQUNJLG9CRjdFcUQ7Q0U4RXhEOztBQUVEOzs7RUFDSSxZQUFXO0VBQ1gsdUJGbEZxRDtFRW1GckQsd0JGbkZxRDtDRXdGeEQ7O0FBUkQ7OztFQU1RLHFCRnRGaUQ7Q0V1RnBEOztBQUdMOzs7RUFDSSxlTjlGWTtFTStGWixXQUFVO0VBQ1Ysc0JGNUYwQjtDRTZGN0I7O0FBR0Q7OztFQUNJLHNCQUF1QztFQUN2QyxvQk5uR2E7RU1vR2IsWUFBVztFQUNYLDJCQUEwQjtFQUMxQiw0REFBbUQ7Q0FRdEQ7O0FBYkQ7Ozs7O0VBU1Esc0JBQXVDO0VBQ3ZDLG9CTjNHUztFTTRHVCw0REFBbUQ7Q0FDdEQ7O0FBSUw7OztFQUNJLDBCTjNHWTtFTTRHWixzQkFBc0M7RUFDdEMsb0JON0dZO0VNOEdaLGFBQVk7RUFDWiw4QkFBOEM7RUFDOUMsOEVBQzRDO0NBYy9DOztBQXJCRDs7O0VBVVEsb0JBQW9DO0VBQ3BDLDJGQUNpRDtDQUNwRDs7QUFiTDs7O0VBZ0JRLG9CQUFtQztFQUNuQyxrQkFBaUI7RUFDakIsa0JBQWlCO0VBQ2pCLHNCQUFxQztDQUN4Qzs7QUFHTDs7O0VBQ0ksMEJOaEltQjtFTWlJbkIsc0JBQTZDO0VBQzdDLG9CTmxJbUI7RU1tSW5CLGFBQVk7RUFDWiw4QkFBcUQ7RUFDckQsOEVBQ21EO0NBY3REOztBQXJCRDs7O0VBVVEsb0JBQTJDO0VBQzNDLDBGQUN3RDtDQUMzRDs7QUFiTDs7O0VBZ0JRLG9CQUEwQztFQUMxQyxrQkFBaUI7RUFDakIsa0JBQWlCO0VBQ2pCLHNCQUE0QztDQUMvQzs7QUFHTDs7O0VBQ0ksMEJOeEpjO0VNeUpkLHNCQUF3QztFQUN4QyxvQk4xSmM7RU0ySmQsYUFBWTtFQUNaLDhCQUFnRDtFQUNoRCw4RUFDOEM7Q0FjakQ7O0FBckJEOzs7RUFVUSxvQkFBc0M7RUFDdEMsNkZBQ21EO0NBQ3REOztBQWJMOzs7RUFnQlEsb0JBQXFDO0VBQ3JDLGtCQUFpQjtFQUNqQixrQkFBaUI7RUFDakIsc0JBQXVDO0NBQzFDOztBQUdMOzs7RUFDSSwwQk43S29CO0VNOEtwQixzQkFBOEM7RUFDOUMsb0JOL0tvQjtFTWdMcEIsYUFBWTtFQUNaLDhCQUFzRDtFQUN0RCw4RUFDb0Q7Q0FjdkQ7O0FBckJEOzs7RUFVUSxvQkFBNEM7RUFDNUMsMkZBQ3lEO0NBQzVEOztBQWJMOzs7RUFnQlEsb0JBQTJDO0VBQzNDLGtCQUFpQjtFQUNqQixrQkFBaUI7RUFDakIsc0JBQTZDO0NBQ2hEOztBQ3JOVDtFQUNJLGFBQVk7RUFDWiw4QkFBOEM7RUFDOUMsV0FBVTtFQUNWLHFCSFE4QjtDR1NqQzs7QUFmRztFQUNJLDBCQUEyQztDQUM5Qzs7QUFFRDtFQUNJLDBCUEFhO0NPQ2hCOztBQVpMO0VBZ0JRLGlCQUFnQjtFQUNoQix3QkhMMEI7RUdNMUIsd0JBQXVCO0VBQ3ZCLHNCSFJxRDtDR1N4RDs7QUFHTDtFQUNJLDJCSGJ5RDtDR2M1RDs7QUFFRDs7RUFFSSxlQUFjO0VBQ2QseUJIbkJ5RDtFR29CekQsaUJBQWdCO0VBQ2hCLG1CSHJCeUQ7RUdzQnpELDBCQUF5QjtFQUN6Qix3QkFBdUI7RUFDdkIsWVByQlE7Q09zQlg7O0FBRUQ7Ozs7O0VBS0ksZUFBYztFQUNkLFlBQVc7RUFDWCxrQkFBaUI7RUFDakIsbUJIbkN5RDtFR29DekQsa0JBQWlCO0VBQ2pCLDBCUHBDYTtFT3FDYix3Qkh0Q3lEO0VHdUN6RCxtQkFBa0I7RUFDbEIscURBQWtEO0NBbUJyRDs7QUFoQ0Q7Ozs7O0VBZ0JRLDhDUDlDWTtFTytDWixnQkFBZTtFQUNmLHNCQUF1QztDQUMxQzs7QUFuQkw7Ozs7Ozs7OztFQXVCUSwwQlBsRGE7RU9tRGIsa0JBQWlCO0VBQ2pCLHNCUG5EUztFT29EVCxZUGxESTtDT21EUDs7QUEzQkw7Ozs7O0VBOEJRLFlBQVc7Q0FDZDs7QUFHTDtFQUNJLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFDbEIsaUJIaEV5RDtFR2lFekQsb0JIakV5RDtFR2tFekQsd0JIbEV5RDtFR21FekQsK0NBQW9DO0VBQ3BDLGdCQUFlO0NBQ2xCOztBQUdEO0VBQ0ksc0JIekV5RDtDR3VHNUQ7O0FBL0JEO0VBSVEscUJBQW9CO0VBQ3BCLGdCUHZGTztFT3dGUCxpQkFBZ0I7RUFDaEIsZVAxRVM7RU8yRVQsa0JBQWlCO0VBQ2pCLHNCQUFxQjtFQUNyQix1QkhsRnFEO0VHbUZyRCx3QkhuRnFEO0NHc0d4RDs7QUE5Qkw7RUFjWSxlQUFjO0VBQ2QsaUJIdkZpRDtFR3dGakQsOEJBQTZCO0VBQzdCLG1CQUFrQjtDQVlyQjs7QUE3QlQ7RUFvQmdCLHVCSDVGNkM7Q0c2RmhEOztBQXJCYjs7RUF5QmdCLHNCSGpHNkM7RUdrRzdDLHFCSGxHNkM7RUdtRzdDLGlCQUFnQjtDQUNuQjs7QUFNYjtFQUNJLGlCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsZVB6R2M7Q08rR2pCOztBQVREO0VBTVEsbUJBQWtCO0VBQ2xCLFNBQVE7Q0FDWDs7QUFHTDtFQUNJLG1CQUFrQjtDQUNyQjs7QUFFRDtFQUNJLGVQbkhnQjtDT29IbkI7O0FBR0Q7RUFFUSxlUHpIWTtDTzBIZjs7QUFITDs7Ozs7RUFVUSw2Q1BqSVk7RU9rSVosZ0JBQWU7RUFDZixzQkFBdUM7Q0FDMUM7O0FDdEpMO0VBQ0ksc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYix3QkFBZTtNQUFmLG9CQUFlO1VBQWYsZ0JBQWU7RUFDZiw2QkFBb0I7TUFBcEIsd0JBQW9CO1VBQXBCLHFCQUFvQjtFQUNwQixvQ0FBMkI7TUFBM0IscUJBQTJCO1VBQTNCLDRCQUEyQjtFQUMzQixpQkpNeUQ7RUlMekQsZUFBYztDQTRFakI7O0FBbEZEO0VBU1EsZ0JBQWU7Q0FDbEI7O0FBVkw7RUFhUSxnQ0FBdUI7TUFBdkIsc0JBQXVCO1VBQXZCLHdCQUF1QjtDQUMxQjs7QUFkTDtFQWlCUSxrQ0FBeUI7TUFBekIsbUJBQXlCO1VBQXpCLDBCQUF5QjtDQUM1Qjs7QUFsQkw7RUFzQlksMkJBQWtCO01BQWxCLDRCQUFrQjtVQUFsQixtQkFBa0I7Q0FDckI7O0FBdkJUO0VBMkJZLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsNkJBQW9CO01BQXBCLHdCQUFvQjtVQUFwQixxQkFBb0I7Q0FLdkI7O0FBakNUO0VBK0JnQixxQkFBWTtNQUFaLHFCQUFZO1VBQVosYUFBWTtDQUNmOztBQWhDYjtFQW9DWSwwQlJ4Qks7Q1F5QlI7O0FUbENEO0VTSFI7SUEwQ1ksbUJKL0JpRDtHSTBDcEQ7RUFyRFQ7SUE2Q2dCLG1CSmxDNkM7R0ltQ2hEO0VBOUNiO0lBa0RvQixnQkFBb0M7R0FDdkM7RUFuRGpCO0lBa0RvQixpQkFBb0M7R0FDdkM7RUFuRGpCO0lBa0RvQixXQUFvQztHQUN2QztFQW5EakI7SUFrRG9CLGlCQUFvQztHQUN2QztFQW5EakI7SUFrRG9CLGlCQUFvQztHQUN2QztFQW5EakI7SUFrRG9CLFdBQW9DO0dBQ3ZDO0VBbkRqQjtJQWtEb0IsaUJBQW9DO0dBQ3ZDO0VBbkRqQjtJQWtEb0IsaUJBQW9DO0dBQ3ZDO0VBbkRqQjtJQWtEb0IsV0FBb0M7R0FDdkM7RUFuRGpCO0lBa0RvQixpQkFBb0M7R0FDdkM7RUFuRGpCO0lBa0RvQixpQkFBb0M7R0FDdkM7RUFuRGpCO0lBa0RvQixZQUFvQztHQUN2QztDTmlrQ2hCOztBSGpuQ087RVNIUjtJQTZEb0IsZ0JBQWtDO0dBQ3JDO0VBOURqQjtJQTZEb0IsaUJBQWtDO0dBQ3JDO0VBOURqQjtJQTZEb0IsV0FBa0M7R0FDckM7RUE5RGpCO0lBNkRvQixpQkFBa0M7R0FDckM7RUE5RGpCO0lBNkRvQixpQkFBa0M7R0FDckM7RUE5RGpCO0lBNkRvQixXQUFrQztHQUNyQztFQTlEakI7SUE2RG9CLGlCQUFrQztHQUNyQztFQTlEakI7SUE2RG9CLGlCQUFrQztHQUNyQztFQTlEakI7SUE2RG9CLFdBQWtDO0dBQ3JDO0VBOURqQjtJQTZEb0IsaUJBQWtDO0dBQ3JDO0VBOURqQjtJQTZEb0IsaUJBQWtDO0dBQ3JDO0VBOURqQjtJQTZEb0IsWUFBa0M7R0FDckM7Q042bENoQjs7QUh4cENPO0VTSFI7SUFxRVksb0JKMURpRDtHSXFFcEQ7RUFoRlQ7SUF3RWdCLG9CSjdENkM7R0k4RGhEO0VBekViO0lBNkVvQixnQkFBa0M7R0FDckM7RUE5RWpCO0lBNkVvQixpQkFBa0M7R0FDckM7RUE5RWpCO0lBNkVvQixXQUFrQztHQUNyQztFQTlFakI7SUE2RW9CLGlCQUFrQztHQUNyQztFQTlFakI7SUE2RW9CLGlCQUFrQztHQUNyQztFQTlFakI7SUE2RW9CLFdBQWtDO0dBQ3JDO0VBOUVqQjtJQTZFb0IsaUJBQWtDO0dBQ3JDO0VBOUVqQjtJQTZFb0IsaUJBQWtDO0dBQ3JDO0VBOUVqQjtJQTZFb0IsV0FBa0M7R0FDckM7RUE5RWpCO0lBNkVvQixpQkFBa0M7R0FDckM7RUE5RWpCO0lBNkVvQixpQkFBa0M7R0FDckM7RUE5RWpCO0lBNkVvQixZQUFrQztHQUNyQztDTjBuQ2hCOztBT3hzQ0Q7RUFDSSwrQlRXYTtFU1ZiLGdDVFVhO0VTVGIsOEJUU2E7RVNSYixrQkFBaUI7Q0E0RHBCOztBQTFERztFQUNJLGFBQVk7Q0FTZjs7QUFWRDtFQUlRLG1CQUFrQjtDQUNyQjs7QUFMTDtFQVFRLG9CQUFtQjtDQUN0Qjs7QUFmVDtFQW1CUSxZQUFXO0NBQ2Q7O0FBcEJMOztFQXdCUSwwQkxicUQ7RUtjckQsZ0NUYlM7RVNjVCxpQ1RkUztDU21CWjs7QUEvQkw7O0VBNkJZLG1CQUFrQjtDQUNyQjs7QVYzQkQ7RVVIUjs7SUFxQ2dCLHdCTDFCNkM7R0syQmhEO0NQNHNDWjs7QUgvdUNPO0VVSFI7O0lBOENnQix3QkxuQzZDO0dLb0NoRDtDUDBzQ1o7O0FPenZDRDs7RUFzRFksbUJBQWtCO0NBQ3JCOztBQXZEVDs7RUE2RFksb0JUbERTO0NTbURaOztBQzNEVDtFQUNJLHFCQUFZO01BQVoscUJBQVk7VUFBWixhQUFZO0NBNkVmOztBQXZFRztFQUNJLGNBQWE7Q0FtQ2hCOztBQWpDRztFQUNJLG1CTkhpRDtFTUlqRCxhVmlCYztFVWhCZCxrQlZnQmM7RVVmZCxzQkFBcUI7RUFDckIsWVZKQTtFVUtBLGlCQUFnQjtDQTBCbkI7O0FBaENEO0VBU1EsaUJBQWdCO0VBQ2hCLGVWZkk7RVVnQkosc0JBQXFCO0VBQ3JCLCtCQUE4QjtDQUNqQzs7QUFiTDtFQWdCUSxzQk5sQjZDO0NNbUJoRDs7QUFFRDtFQUNJLGFBQWdDO0VBQ2hDLGdDQUFpQjtDQVVwQjs7QUFaRDtFQUtRLGdDQUFpQjtDQU1wQjs7QUFYTDtFQVNZLGFBQVk7Q0FDZjs7QVh2Q2I7RVcrQ0E7SUFDSSxjQUFhO0dBQ2hCO0VBRUQ7SUFDSSxzQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYTtJQUNiLDhCQUFxQjtRQUFyQiwwQkFBcUI7WUFBckIsc0JBQXFCO0lBQ3JCLDZCQUFvQjtRQUFwQix3QkFBb0I7WUFBcEIscUJBQW9CO0dBT3ZCO0VBTEc7SUFDSSxvQk5qRDZDO0lNa0Q3QyxhVjVCVTtJVTZCVixrQlY3QlU7R1U4QmI7RUFHTDtJQUVRLGlCQUFnQjtHQUNuQjtFQUdMO0lBQ0ksNkJBQW9CO1FBQXBCLHlCQUFvQjtZQUFwQixxQkFBb0I7R0FNdkI7RUFQRDtJQUlRLGtCQUFpQjtJQUNqQixrQ0FBeUI7UUFBekIsbUJBQXlCO1lBQXpCLDBCQUF5QjtHQUM1QjtDUnd2Q1o7O0FTdDBDRDtFQUVRLHNCUFNxRDtDT1J4RDs7QUFITDtFQU1RLG1CUE0wQjtFT0wxQixrQlBJcUQ7RU9IckQsWUFBVztDQUNkOztBQ1RMO0VBQ0ksb0JSVXlEO0VRVHpELGlCQUFnQjtDQUtuQjs7QUFQRDtFQUtRLGlCQUFnQjtDQUNuQjs7QUNOTDtFQUNJLG1CVFV5RDtFU1R6RCwwQlRTeUQ7RVNSekQsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQiwwQkFBeUI7RUFDekIsbUJUS3lEO0VTSnpELGlCQUFnQjtFQUNoQixpQ2JJYTtDYTRDaEI7O0FBOUNHO0VBQ0ksaUJBQWdCO0VBQ2hCLGlCQUFnQjtDQUNuQjs7QUFiTDtFQWdCUSxzQkFBcUI7Q0FLeEI7O0FBckJMO0VBbUJZLDJCQUEwQjtDQUM3Qjs7QUFHTDtFQUVRLFlBQVc7RUFDWCxzQkFBcUI7RUFDckIsY1RoQmlEO0VTaUJqRCxpQlRqQmlEO0VTa0JqRCxnQ1RsQmlEO0VTbUJqRCw2RUFBNEU7RUFDNUUsc0JBQXFCO0VBQ3JCLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsU0FBUTtDQUNYOztBQVpMO0VBZVEsWWJ4QkE7Q2EyQkg7O0FBbEJMO0VBaUJpQixjQUFhO0NBQUk7O0FBSWxDO0VBQ0ksaUJBQWdCO0VBQ2hCLHdCQUF1QjtFQUN2QixXQUFVO0VBQ1YscUJBQW9CO0NBT3ZCOztBQVhEO0VBUVksdUJUekM2QztDUzBDaEQ7O0FDcERUO0VBQ0ksc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw4QkFBcUI7TUFBckIsMEJBQXFCO1VBQXJCLHNCQUFxQjtDQUN4Qjs7QUFFRDtFQUNJLHVCVklxRDtDVUh4RDs7QUNQTDtFQUNJLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsOEJBQXFCO01BQXJCLDBCQUFxQjtVQUFyQixzQkFBcUI7RUFDckIsdUJYT3lEO0NXeUI1RDs7QUFuQ0Q7RUFNUSxvQmZJYTtFZUhiLDBCZklTO0VlSFQsaUJBQWdCO0NBQ25COztBQVRMOztFQWFRLFVBQVM7RUFDVCxvQlhKcUQ7Q1dLeEQ7O0FBZkw7RUFrQlEsVUFBUztDQUNaOztBQW5CTDs7RUF1QlEsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw0QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtDQUN0Qjs7QUF6Qkw7RUE0QlEsMkJBQTBCO0VBQzFCLG1CQUFrQjtDQUNyQjs7QUE5Qkw7RUFpQ1EsMkJBQTBCO0NBQzdCOztBQy9CTDtFQUNJLGVBQWM7RUFDZCxzQlpLeUQ7Q1lTNUQ7O0FBWkc7RUFDSSxrQlpFcUQ7RVlEckQsMEJoQkVTO0NnQkRaOztBQUVEO0VBQ0ksb0JoQkhhO0NnQkloQjs7QUFFRDtFQUNJLG9CWlBxRDtDWVF4RDs7QUNuQkw7RUFDSSxzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDRCQUFtQjtNQUFuQix3QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLHVDQUE4QjtNQUE5Qix1QkFBOEI7VUFBOUIsK0JBQThCO0VBQzlCLDZCQUFvQjtNQUFwQix3QkFBb0I7VUFBcEIscUJBQW9CO0VBQ3BCLG1CQUFrQjtDQU9yQjs7QUFFRDtFQUNJLDBCakJIYTtFaUJJYiwwQ2JMeUQ7RWFNekQsd0JiTnlEO0VhT3pELHNCQUFhO01BQWIsa0JBQWE7VUFBYixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixtQkFBa0I7RUFDbEIsaUJBQWdCO0VBQ2hCLGlCQUFnQjtDQWdGbkI7O0FsQm5HTztFa0JXUjtJQVdRLG1CYmRxRDtJYWVyRCxzQkFBYTtRQUFiLGtCQUFhO1lBQWIsY0FBYTtJQUNiLHNDYmhCcUQ7R2EyRjVEO0VBeEZEO0lBZ0JZLGVBQWM7R0FDakI7Q2ZnOUNSOztBZTc4Q0c7RUFDSSxpQkFBZ0I7Q0FDbkI7O0FBRUQ7RUFDSSxrQkFBaUI7Q0FDcEI7O0FBRUQ7RUFDSSxjQUFhO0VBQ2IsZ0JiakNxRDtFYWtDckQsaUJibENxRDtFYW1DckQsb0JqQnRDWTtFaUJ1Q1osbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixPQUFNO0VBQ04sZ0NBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIsNEJBQW1CO01BQW5CLHVCQUFtQjtjQUFuQiwyQkFBbUI7VUFBbkIsb0JBQW1CO0NBTXRCOztBQWZEO0VBWVEsV0FBVTtFQUNWLFlBQVc7Q0FDZDs7QUFPTDtFQUNJLHNCakJ4RFk7Q2lCNkRmOztBQU5EO0VBSVEsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7Q0FDaEI7O0FBR0w7RUFDSSxpQkFBZ0I7RUFDaEIsZWpCakVZO0VpQmtFWixtQkFBa0I7Q0EyQnJCOztBQTlCRDtFQU1RLGVqQnJFUTtDaUJzRVg7O0FBUEw7RUFVUSxpQmJ0RWlEO0VhdUVqRCxrQmJ2RWlEO0Vhd0VqRCx5QmJ4RWlEO0VheUVqRCx3QmJ6RWlEO0NhMEVwRDs7QWxCbEZEO0VrQm9FSjtJQWlCUSxzQkFBYTtJQUFiLHFCQUFhO0lBQWIsY0FBYTtJQUNiLDBCQUFpQjtRQUFqQixzQkFBaUI7WUFBakIsa0JBQWlCO0lBQ2pCLDZCQUFvQjtRQUFwQix3QkFBb0I7WUFBcEIscUJBQW9CO0lBQ3BCLGdDQUF1QjtRQUF2QixzQkFBdUI7WUFBdkIsd0JBQXVCO0lBQ3ZCLHdCYmpGaUQ7R2EwRnhEO0VBOUJEO0lBd0JZLGVBQWM7SUFDZCx5QmJyRjZDO0lhc0Y3QyxpQmJ0RjZDO0lhdUY3QyxrQmJ2RjZDO0dhd0ZoRDtDZjg4Q1o7O0FnQmpqREQ7RUFDSSx5QmRXOEI7RWNWOUIsaUJkVThCO0VjVDlCLGlCQUFnQjtFQUNoQixrQmxCb0JjO0VrQm5CZCxZbEJTUTtDa0IrRFg7O0FuQjFFTztFbUJIUjtJQVFRLHFCZEkwQjtHY2lFakM7Q2hCay9DQTs7QWdCcGpERztFQUNJLDRDZERxRDtFY0VyRCwwQmxCRFM7RWtCRVQsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQixlQUFjO0VBQ2QsbUJBQWtCO0NBU3JCOztBQWZEO0VBU1EsaUJBQWdCO0NBS25COztBQWRMO0VBWVksaUJkWjZDO0NjYWhEOztBQUlUO0VBQ0ksZUFBYztFQUNkLGdCZG5CcUQ7RWNvQnJELGlCZHBCcUQ7RWNxQnJELG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsT0FBTTtFQUNOLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsZ0NBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIsNEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIsZUFBYztDQUNqQjs7QUFFRDtFQUNJLGVsQnhCWTtDa0I4QmY7O0FBUEQ7RUFJUSw2Q2xCM0JRO0VrQjRCUixzQmxCNUJRO0NrQjZCWDs7QUFHTDtFQUNJLGVBQWlDO0NBT3BDOztBQVJEO0VBSVEsZUFBYztFQUNkLCtDbEJwQ1U7RWtCcUNWLHNCbEJyQ1U7Q2tCc0NiOztBQUdMO0VBQ0ksZWxCekNtQjtDa0IrQ3RCOztBQVBEO0VBSVEsNkNsQjVDZTtFa0I2Q2Ysc0JsQjdDZTtDa0I4Q2xCOztBQUdMO0VBQ0ksZWxCakRvQjtDa0J1RHZCOztBQVBEO0VBSVEsNkNsQnBEZ0I7RWtCcURoQixzQmxCckRnQjtDa0JzRG5COztBQzNFVDtFQUNJLG1CQUFrQjtFQUNsQixzQmZTeUQ7RWVSekQsa0JBQWlCO0VBQ2pCLDBCbkJRYTtFbUJQYiwwQ0FBZ0M7RUFDaEMsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiwwQkFBaUI7TUFBakIsc0JBQWlCO1VBQWpCLGtCQUFpQjtFQUNqQix1Q0FBOEI7TUFBOUIsdUJBQThCO1VBQTlCLCtCQUE4QjtDQTZTakM7O0FBclREO0VBV1Esc0JmQXFEO0NlQ3hEOztBQVpMO0VBZVEsNEJBQTJCO0VBQzNCLDZCQUE0QjtDQUMvQjs7QUFqQkw7RUFvQlEsZ0NBQStCO0VBQy9CLCtCQUE4QjtDQUNqQzs7QUFFRDtFQUtJLFVBQVM7RUFDVCxnQ2ZuQnFEO0NlNEJ4RDs7QXBCcENHO0VvQnFCSjtJQVNRLGlDZnRCaUQ7R2U0QnhEO0NqQituREo7O0FpQmxvRE87RUFDSSxnQ2YxQmlEO0NlMkJwRDs7QUFHTDtFQUVJLGlDbkIvQlM7RW1CZ0NULGlCQUFnQjtFQUNoQixjQUFhO0VBQ2IsaUJBQWdCO0NBcUJuQjs7QUExQkQ7RUFRUSxZbkJuQ0E7RW1Cb0NBLHVCQUFzQjtFQUN0QixvQkFBbUI7RUFDbkIsbUJBQWtCO0NBQ3JCOztBQUVEO0VBQ0ksbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQixZbkI1Q0E7RW1CNkNBLHFCQUFvQjtFQUNwQixvQkFBbUI7RUFDbkIsdUJmakRzQjtDZWtEekI7O0FBRUQ7RUFDSSxhQUFZO0NBQ2Y7O0FBR0w7RUFFSSw4Qm5CM0RTO0VtQjREVCxvQkFBbUI7Q0FLdEI7O0FBUkQ7RUFNUSw4Qm5CL0RLO0NtQmdFUjs7QUFHTDtFQUVRLGNBQWE7Q0FDaEI7O0FBSEw7RUFLUSxpQkFBZ0I7Q0FDbkI7O0FBTkw7RUFTUSw4Qm5CNUVLO0NtQjZFUjs7QUFWTDtFQWVZLGNBQWE7Q0FDaEI7O0FBaEJUO0VBa0JZLGlCQUFnQjtDQUNuQjs7QUFuQlQ7RUF1QlEsb0JBQXdDO0VBQ3hDLHNCQUEwQztDQUM3Qzs7QUFHTDtFQUVJLDhCbkJqR1M7Q21Cc0daOztBQVBEO0VBS1EsaUJBQWdCO0NBQ25COztBQUlMO0VBQ0ksOEJuQjFHUztFbUIyR1Qsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYixZQUFXO0VBQ1gsaUJBQWdCO0NBNEJuQjs7QUFoQ0Q7RUFPUSwrQkFBOEI7RUFDOUIsZ0NBQStCO0NBQ2xDOztBQVRMO0VBWVEsZUFBYztFQUNkLGtCQUFpQjtFQUNqQixlbkIzSFE7RW1CNEhSLGtCQUFpQjtFQUNqQixhQUFZO0VBQ1osaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixnQ25CNUhLO0VtQjZITCxvQkFBVztNQUFYLGdCQUFXO1VBQVgsWUFBVztFQUNYLHVCZi9IaUQ7RWVnSWpELHdCZmhJaUQ7Q2V5SXBEOztBQS9CTDtFQXlCWSxvQm5CbklLO0NtQm9JUjs7QUExQlQ7RUE2QlksYUFBWTtDQUNmOztBQUlUO0VBQ0ksV0FBVTtDQUNiOztBQUdEO0VBQ0ksb0JuQmxKYTtFbUJtSmIsaUJBQWdCO0VBQ2hCLGFBQVk7Q0FpQmY7O0FBcEJEOzs7Ozs7RUFXUSxvQkFBbUI7Q0FDdEI7O0FBWkw7RUFnQlksb0JuQnBLSTtFbUJxS0osYUFBWTtDQUNmOztBQUtUO0VBQ0ksb0JBQXNDO0VBQ3RDLGlCQUFnQjtFQUNoQixhQUFZO0NBUWY7O0FBWEQ7Ozs7RUFTUSxzQm5CakxTO0NtQmtMWjs7QUFLTDtFQUNJLHdCQUF1QjtFQUN2QixhQUFZO0VBQ1osaUJBQWdCO0NBU25COztBQVpEOzs7RUFRUSxhQUFZO0VBQ1osZ0JBQWU7RUFDZixpQkFBZ0I7Q0FDbkI7O0FBN01UO0VBbU5ZLHVCZnhNaUQ7RWV5TWpELHdCZnpNaUQ7Q2UrTXBEOztBcEJ2TkQ7RW9CSFI7SUF1TmdCLHNCZjVNNkM7SWU2TTdDLHVCZjdNNkM7R2UrTXBEO0NqQnNuRFI7O0FpQmpuREc7RUFDSSxlQUFjO0VBQ2Qsc0JBQXFCO0VBQ3JCLDhCbkJ0TlM7RW1CdU5ULG1CQUFrQjtFQUNsQixpQkFBZ0I7Q0EwRW5COztBQS9FRDs7RUFTUSxZbkIxTkE7Q21CMk5IOztBQVZMO0VBYVEsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixzQmZuT2lEO0Nlb09wRDs7QUFoQkw7RUFtQlEsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixnQmZ6T2lEO0VlME9qRCxzQmYxT2lEO0VlMk9qRCxnQkFBZTtFQUNmLGtCQUFpQjtDQUtwQjs7QXBCelBEO0VvQjROSjtJQTJCWSxlZi9PNkM7R2VpUHBEO0NqQnNuRFI7O0FpQm5wREc7RUFnQ1EsaUJBQWdCO0NBQ25COztBQUdEO0VBQ0ksc0JmelBpRDtFZTBQakQseUJmMVBpRDtDZTJQcEQ7O0FBRUQ7RUFDSSxvQm5COVBTO0VtQitQVCxZbkI1UEE7RW1CNlBBLGdCQUFlO0NBTWxCOztBQVREO0VBT1Esb0JuQnBRSztDbUJxUVI7O0FBR0w7RUFDSSxvQm5CNVFRO0VtQjZRUixhQUFZO0VBQ1osZ0JBQWU7RUFDZixzQm5CL1FRO0VtQmdSUixhQUFZO0VBQ1osbUJBQWtCO0VBQ2xCLFdBQVU7Q0FNYjs7QUFiRDtFQVdRLG9CbkJ0Ukk7Q21CdVJQOztBQUdMO0VBQ0ksMEJmeFJpRDtDZWtTcEQ7O0FBWEQ7RUFJUSxnQmYzUjZDO0VlNFI3QyxvQmY1UjZDO0NlaVNoRDs7QXBCelNMO0VvQitSQTtJQVFZLGdCZi9SeUM7R2VpU2hEO0NqQnNuRFo7O0FpQmw2REQ7RUFpVFEsb0JBQW1CO0NBQ3RCOztBQUVEO0VBQWdDLGFBQVk7Q0FBSTs7QUFLcEQ7RUFDSSxlQUFjO0NBYWpCOztBQWREO0VBSVEsZW5CclRZO0NtQnNUZjs7QUFMTDtFQVdZLHdCQUF1QjtDQUMxQjs7QUFJVDtFQUlRLHdCQUF1QjtDQUMxQjs7QUFNRDtFQUNJLG9CQUF3QztFQUN4QyxzQkFBMEM7RUFDMUMsaUJBQWdCO0NBTW5COztBQVREOztFQU9RLHNCQUEwQztDQUM3Qzs7QUFHTDtFQUNJLG9CQUEwQztFQUMxQyxzQkFBNEM7RUFDNUMsaUJBQWdCO0NBTW5COztBQVREOztFQU9RLHNCQUE0QztDQUMvQzs7QUFHTDtFQUNJLG9CQUErQztFQUMvQyxzQkFBaUQ7RUFDakQsaUJBQWdCO0NBTW5COztBQVREOztFQU9RLHNCQUFpRDtDQUNwRDs7QUM5V1Q7RUFDSSxzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLGdDQUF1QjtNQUF2QixzQkFBdUI7VUFBdkIsd0JBQXVCO0VBQ3ZCLG9CaEJJeUQ7RWdCSHpELG9CaEJHeUQ7Q2dCRjVEOztBQUVEO0VBQ0ksc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw0QkFBbUI7TUFBbkIsd0JBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQixvQ0FBMkI7TUFBM0IscUJBQTJCO1VBQTNCLDRCQUEyQjtDQTJHOUI7O0FBekdHO0VBQ0ksY0FBYTtDQUNoQjs7QUFFRDtFQUNJLG1CQUFrQjtFQUNsQixzQmhCWHFEO0VnQllyRCxzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLG9DQUEyQjtNQUEzQixxQkFBMkI7VUFBM0IsNEJBQTJCO0VBQzNCLHVCaEJkcUQ7Q2dCZXhEOztBQUVEO0VBQ0ksZ0JoQmxCcUQ7RWdCbUJyRCxpQmhCbkJxRDtFZ0JvQnJELG9CQUFtQjtFQUNuQiw4QnBCcEJTO0VvQnFCVCxtQkFBa0I7RUFDbEIsV0FBVTtFQUNWLG1CQUFrQjtFQUNsQixzQmhCekJxRDtDZ0I0QnhEOztBQVhEO0VBVVMsY0FBYTtDQUFJOztBQTNCOUI7RUErQlEsWXBCNUJJO0NvQjZCUDs7QUFFRDtFQUVJLGtCQUFpQjtFQUNqQixpQkFBZ0I7RUFDaEIsVUFBUztFQUNULGlCQUFnQjtFQUNoQixpQmhCeENxRDtFZ0J5Q3JELHVCaEJ6Q3FEO0NnQjBDeEQ7O0FBR0Q7RUFFUSxzRUFBc0U7RUFDdEUscUJBQW9CO0NBQ3ZCOztBQUdMO0VBRVEsb0JwQnpEUTtFb0IwRFIsb0JBQW1CO0VBQ25CLHVCaEJ4RGlEO0VnQnlEakQsOEJwQnhESztFb0J5REwsYUFBWTtDQU1mOztBckJ4RUQ7RXFCNERKO0lBU1ksc0JoQjdENkM7SWdCOEQ3Qyw4QnBCN0RDO0dvQitEUjtDbEJ5OURSOztBa0JyK0RHO0VBZVEsZXBCdEVRO0NvQnVFWDs7QXJCNUVEO0VxQlFSO0lBd0VRLDhCQUFxQjtRQUFyQiwwQkFBcUI7WUFBckIsc0JBQXFCO0lBQ3JCLGdDQUF1QjtRQUF2QixzQkFBdUI7WUFBdkIsd0JBQXVCO0lBQ3ZCLG1CQUFrQjtJQUNsQix1QkFBYztRQUFkLG1CQUFjO1lBQWQsZUFBYztJQUNkLG1CQUFrQjtHQWtDekI7RUFoQ087SUFDSSxlQUFjO0lBQ2QsbUJBQWtCO0lBQ2xCLGVoQmpGaUQ7SWdCa0ZqRCxnQmhCbEZpRDtJZ0JtRmpELGFoQm5GaUQ7SWdCb0ZqRCxnQmhCcEZpRDtJZ0JxRmpELHFCaEJyRmlEO0lnQnNGakQsb0JwQnJGSztHb0JzRlI7RUFFRDtJQUNJLG1CQUFrQjtJQUNsQixhaEIzRmlEO0lnQjRGakQsaUJBQWdCO0lBQ2hCLGdCQUFlO0lBQ2YsZUFBYztHQUNqQjtFQUVEO0lBQ0ksZUFBYztJQUNkLGVoQm5HaUQ7SWdCb0dqRCxnQmhCcEdpRDtJZ0JxR2pELGtCQUFpQjtHQUdwQjtFQVBEO0lBTVMsZ0JBQWU7R0FBSTtFQUc1QjtJQUNJLHFCaEIxR3NCO0dnQjJHekI7Q2xCdzlEUjs7QW1CL2tFRDtFQUNJLG1CakJVeUQ7RWlCVHpELG1CQUFrQjtFQUNsQixtQkFBa0I7RUFDbEIsMEJyQlFhO0NxQlFoQjs7QXRCakJPO0VzQkhSO0lBT1EsaUJBQWdCO0dBYXZCO0NuQndrRUE7O0FtQjVsRUQ7RUFXUSxlQUFjO0VBQ2QsMEJqQkRxRDtFaUJFckQsc0JBQXFCO0NBTXhCOztBQW5CTDtFQWdCWSxtQkFBa0I7RUFDbEIsU0FBUTtDQUNYOztBQ2xCVDtFQUNJLHNCQUFxQjtFQUNyQixvQnRCVWE7RXNCVGIsaUJBQWdCO0NBZ0JuQjs7QUFuQkQ7RUFNUSxvQnRCY21CO0VzQmJuQixhQUFZO0NBQ2Y7O0FBUkw7RUFXUSxvQnRCUWM7RXNCUGQsYUFBWTtDQUNmOztBQWJMO0VBZ0JRLG9CdEJFWTtFc0JEWixhQUFZO0NBQ2Y7O0FDbEJMO0VBQ0ksa0JBQWlCO0VBQ2pCLGFuQlN5RDtFbUJSekQsMENBQWdDO0VBQ2hDLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2Isb0NBQTJCO01BQTNCLHFCQUEyQjtVQUEzQiw0QkFBMkI7RUFDM0IsdUJuQkt5RDtFbUJKekQsbUJBQWtCO0NBa0RyQjs7QUF6REQ7RUFVUSxlQUFjO0VBQ2QseUJBQWdCO01BQWhCLDhCQUFnQjtVQUFoQixpQkFBZ0I7RUFDaEIsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw2QkFBb0I7TUFBcEIsd0JBQW9CO1VBQXBCLHFCQUFvQjtFQUNwQixzQkFBcUI7Q0F1QnhCOztBQXJDTDtFQWlCWSxZbkJOaUQ7RW1CT2pELGlCbkJQaUQ7RW1CUWpELGFuQlJpRDtDbUJhcEQ7O0FBeEJUO0VBc0JnQixnQkFBZTtDQUNsQjs7QUF2QmI7RUEyQlksYW5CaEJpRDtFbUJpQmpELGtCbkJqQmlEO0VtQmtCakQsZXZCckJRO0V1QnNCUiwwQkFBeUI7RUFDekIsaUJBQWdCO0VBQ2hCLHdCQUF1QjtFQUN2QixzQkFBMEI7RUFDMUIsY0FBYTtDQUNoQjs7QXhCaENEO0V3QkhSO0lBd0NRLGVuQjdCcUQ7SW1COEJyRCx3Qm5COUJxRDtHbUI4QzVEO0VBekREO0lBNkNnQixrQm5CbEM2QztJbUJtQzdDLGNuQm5DNkM7SW1Cb0M3QyxlbkJwQzZDO0dtQnFDaEQ7RUFoRGI7SUFtRGdCLGlCQUFnQjtJQUNoQixnQnZCbkREO0l1Qm9EQyxvQm5CMUM2QztHbUIyQ2hEO0NyQjhuRVo7O0FxQnZuRUQ7RUFDSSxvQnZCeERjO0V1QnlEZCxhQUFZO0VBQ1osa0JBQWlCO0NBQ3BCOztBQ2pFRDtFQUNJLG1CQUFrQjtFQUNsQix3QnBCU3lEO0VvQlJ6RCxleEJRaUI7RXdCUGpCLGlCQUFnQjtDQVVuQjs7QUFkRDtFQU9RLGdCQUFlO0VBQ2YsaUJBQWdCO0NBQ25COztBQVRMO0VBWVEsWUFBVztDQUNkOztBQ2JMO0VBQ0ksc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiw4QkFBcUI7TUFBckIsMEJBQXFCO1VBQXJCLHNCQUFxQjtFQUNyQixnQ0FBdUI7TUFBdkIsc0JBQXVCO1VBQXZCLHdCQUF1QjtFQUN2Qiw0QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQix5QnJCTXlEO0VxQkx6RCxvQnpCS2lCO0V5QkpqQixpQnJCSXlEO0VxQkh6RCxlQUFjO0NBYWpCOztBQXJCRDtFQVdRLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjO0VBQ2QsdUJyQkRxRDtFcUJFckQsaUJBQWdCO0VBQ2hCLGtCckJIcUQ7RXFCSXJELGlCQUFnQjtDQUNuQjs7QUFoQkw7RUFtQlEsaUJBQWdCO0NBQ25COztBQ3BCTDtFQUNJLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsOEJBQXFCO01BQXJCLDBCQUFxQjtVQUFyQixzQkFBcUI7Q0F3Q3hCOztBQXRDRztFQUNJLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsdUJBQWM7TUFBZCxtQkFBYztVQUFkLGVBQWM7RUFDZCx1QnRCSXFEO0VzQkhyRCxvQnRCR3FEO0NzQk14RDs7QUFiRDtFQU9RLGdCQUFPO01BQVAsWUFBTztVQUFQLFFBQU87Q0FDVjs7QUFSTDtFQVdRLGNBQWE7Q0FDaEI7O0FBR0w7RUFDSSxvQkFBVztNQUFYLGdCQUFXO1VBQVgsWUFBVztFQUNYLHNCdEJUMEI7Q3NCVTdCOztBQUVEO0VBQ0ksb0JBQVc7TUFBWCxnQkFBVztVQUFYLFlBQVc7Q0FDZDs7QTNCdkJHO0UyQjJCQTtJQUNJLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZTtHQVNsQjtFQVZEO0lBSVEsZ0JBQU87UUFBUCxZQUFPO1lBQVAsUUFBTztHQUNWO0VBTEw7SUFRUSxnQkFBZTtHQUNsQjtDeEJtdUVaOztBeUIxd0VEO0VBQ0ksYXZCVXlEO0V1QlR6RCxnQkFBZTtDQWtGbEI7O0FBaEZHO0VBQ0ksZXZCTXFEO0V1QkxyRCxnQnZCS3FEO0V1QkpyRCxlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLGtCdkJFcUQ7RXVCRHJELG9CQUFtQjtFQUNuQix1QnZCQXFEO0N1Qkt4RDs7QUFaRDtFQVVRLGVBQWM7Q0FDakI7O0FBR0w7RUFDSSxtQkFBa0I7RUFDbEIsc0J2QlRxRDtFdUJVckQsYUFBWTtDQUNmOztBQUVEO0VBQ0ksaURBQXVDO0VBQ3ZDLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFDbEIsaUJBQWdCO0NBQ25COztBQUVEO0VBQ0ksb0JBQW1CO0VBQ25CLGFBQVk7RUFDWix3QnZCdkJxRDtFdUJ3QnJELG1CQUFrQjtFQUNsQixZM0J0Qkk7RTJCdUJKLGlCQUFnQjtDQUNuQjs7QUF0Q0w7RUF5Q1EsZ0J2QjlCcUQ7Q3VCK0J4RDs7QUFFRDtFQUNJLG9CdkJqQzBCO0V1QmtDMUIsbUJBQWtCO0NBaUJyQjs7QUFuQkQ7RUFLUSxzQkFBcUI7Q0FLeEI7O0FBVkw7RUFRWSwyQkFBMEI7Q0FDN0I7O0E1QmxETDtFNEJ5Q0o7SUFhUSxpQkFBZ0I7R0FNdkI7RUFuQkQ7SUFnQlksWUFBVztHQUNkO0N6Qmd4RVo7O0F5QjcwRUQ7RUFrRVEsd0JBQXVCO0VBQ3ZCLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsNEJ2QjFEcUQ7Q3VCd0V4RDs7QUFuRkw7RUF3RVksd0JBQXVCO0VBQ3ZCLHVDQUF3QjtFQUN4QixhQUFZO0VBQ1osa0JBQWlCO0VBQ2pCLGlCQUFnQjtDQU1uQjs7QUFsRlQ7RUErRWdCLGtCQUFpQjtFQUNqQixlQUFjO0NBQ2pCOztBQ2pGYjtFQUdRLGVBQWM7RUFDZCxzQkFBcUI7RUFDckIsaUJBQWdCO0VBQ2hCLG9CeEJLcUQ7RXdCSnJELG9CeEJJcUQ7RXdCSHJELG1CQUFrQjtFQUNsQixzQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDBCQUFpQjtNQUFqQixzQkFBaUI7VUFBakIsa0JBQWlCO0VBQ2pCLHVDQUE4QjtNQUE5Qix1QkFBOEI7VUFBOUIsK0JBQThCO0VBQzlCLGtCQUFpQjtFQUNqQix1QnhCRnFEO0V3QkdyRCxlNUJFUztDNEI4RVo7O0FBOUZMO0VBaUJZLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsT0FBTTtFQUNOLDBCeEJUaUQ7RXdCVWpELHlCQUF3QjtFQUN4QixpQkFBZ0I7Q0FDbkI7O0FBdkJUO0VBMEJZLG1CQUFrQjtFQUNsQiw2QnhCaEJpRDtFd0JpQmpELGlDNUJoQks7RTRCaUJMLG9CNUJsQlM7RTRCbUJULDJCQUEwQjtFQUMxQix1QkFBYztNQUFkLHFCQUFjO1VBQWQsZUFBYztDQVdqQjs7QUExQ1Q7RUFrQ2dCLG1CeEJ2QjZDO0N3QndCaEQ7O0E3QmhDTDtFNkJIUjtJQXVDb0IsZUFBYztHQUNqQjtDMUJvMkVoQjs7QTBCNTRFRDtFQTZDWSxxQkFBWTtNQUFaLHFCQUFZO1VBQVosYUFBWTtDQUNmOztBQTlDVDtFQWlEWSxlNUJqQ0s7RTRCa0NMLGlCQUFnQjtFQUNoQixvQnhCeENpRDtDd0J5Q3BEOztBQXBEVDtFQXVEWSxZNUJ6Q0E7RTRCMENBLGVBQWM7RUFDZCxZNUIzQ0E7QzRCNENIOztBQTFEVDtFQTZEWSxZNUIvQ0E7QzRCNERIOztBQTFFVDtFQWdFZ0Isc0JBQXFCO0VBQ3JCLG9CeEJ0RDZDO0V3QnVEN0Msd0J4QnZENkM7RXdCd0Q3QywwQjVCdERGO0U0QnVERSx3QkFBdUI7RUFDdkIsWUFBVztFQUNYLGlCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsc0JBQXFCO0NBQ3hCOztBQXpFYjtFQTZFWSxpQkFBZ0I7RUFDaEIsdUJBQWM7TUFBZCxxQkFBYztVQUFkLGVBQWM7RUFDZCxzQnhCcEVpRDtFd0JxRWpELHlCeEJyRWlEO0N3QjJFcEQ7O0FBdEZUO0VBbUZnQixnQkFBZTtFQUNmLGlCQUFnQjtDQUNuQjs7QUFyRmI7RUEwRmdCLDJCeEIvRTZDO0V3QmdGN0MsaUJBQWdCO0NBQ25COztBN0J6Rkw7RTZCSFI7SUFpR1Esc0JBQWE7SUFBYixxQkFBYTtJQUFiLGNBQWE7SUFDYiw0QkFBbUI7UUFBbkIsd0JBQW1CO1lBQW5CLG9CQUFtQjtJQUNuQiw2QkFBb0I7UUFBcEIsd0JBQW9CO1lBQXBCLHFCQUFvQjtJQUNwQixvQ0FBMkI7UUFBM0IscUJBQTJCO1lBQTNCLDRCQUEyQjtHQTRCbEM7RUFoSUQ7SUF1R1ksZXhCNUZpRDtJd0I2RmpELHVCeEI3RmlEO0d3QjhGcEQ7QzFCaTJFUjs7QTBCMThFRDtFQThHUSxzQkFBa0M7Q0FDckM7O0FBL0dMO0VBbUhRLDJCQUF1QztFQUN2QyxvQkFBcUM7RUFDckMsZ0NBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIsOEJBQXFCO01BQXJCLDBCQUFxQjtVQUFyQixzQkFBcUI7RUFDckIsNEJBQW1CO01BQW5CLHVCQUFtQjtjQUFuQiwyQkFBbUI7VUFBbkIsb0JBQW1CO0NBUXRCOztBQS9ITDtFQTBIWSxtQkFBa0I7RUFDbEIsa0J4QmhIaUQ7RXdCaUhqRCxnQnhCakhpRDtFd0JrSGpELFk1Qi9HQTtDNEJnSEg7O0FDOUhUO0VBQ0ksaUJBQWdCO0VBQ2hCLHNCekJTeUQ7Q3lCSTVEOztBOUJaTztFOEJIUjtJQUtRLG9CekJNcUQ7R3lCSTVEO0MzQnk5RUE7O0EyQmgrRUc7RUFDSSx1QnpCRXFEO0N5QkR4RDs7QUFWTDtFQWFRLDJCekJGcUQ7Q3lCR3hEOztBQ2RMO0VBQ0ksWUFBVztDQUtkOztBQU5EO0VBSVEsc0IxQk9xRDtDMEJOeEQ7O0FBR0w7RUFDSSxrQkFBaUI7RUFDakIsNENBQW1DO0NBaUZ0Qzs7QUFuRkQ7RUFLUSxVQUFTO0VBQ1QsZ0IxQkhxRDtDMEJheEQ7O0FBaEJMO0VBU1ksV0FBVTtDQU1iOztBQWZUO0VBWWdCLG9CMUJUNkM7RTBCVTdDLG1CMUJWNkM7QzBCV2hEOztBQWRiO0VBbUJRLFk5QmJJO0M4QmNQOztBQXBCTDtFQXVCUSxnQkFBZTtDQVNsQjs7QUFoQ0w7RUEwQlksb0I5QjFCUTtDOEIrQlg7O0FBL0JUO0VBNkJnQixhQUFZO0NBQ2Y7O0FBOUJiO0VBbUNRLG9COUJoQ2E7QzhCaUNoQjs7QUFwQ0w7RUF1Q1EsdUIxQnBDcUQ7RTBCcUNyRCwyQjFCcEMwQjtDMEJxQzdCOztBQXpDTDs7RUE2Q1EsZ0JBQWU7RUFDZixlOUI5Q1k7QzhCK0NmOztBQS9DTDtFQWtEUSxZQUFXO0NBQ2Q7O0FBbkRMO0VBc0RRLGlCQUFRO01BQVIsa0JBQVE7VUFBUixTQUFRO0VBQ1IsYUFBWTtDQUNmOztBQXhETDtFQTJEUSxtQkFBa0I7Q0FDckI7O0FBNURMO0VBK0RRLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsc0JBQXFCO0NBQ3hCOztBQWxFTDtFQXFFUSxvQkFBd0M7Q0FLM0M7O0FBMUVMO0VBd0VZLGU5QnhFUTtDOEJ5RVg7O0FBekVUO0VBNkVRLG9COUI3RVk7QzhCa0ZmOztBQWxGTDtFQWdGWSxhQUFZO0NBQ2Y7O0FDekZUO0VBQ0ksa0IzQlV5RDtFMkJUekQsd0RBQWtHO0VBQ2xHLGlCQUFnQjtDQUNuQjs7QUNIRDtFQUFnQiwwQkFBMEI7Q0FBRzs7QUFDN0M7RUFBaUIsMEJBQTJCO0NBQUc7O0FBQy9DO0VBQW1CLDBCQUE2QjtDQUFHOztBQUNuRDtFQUFtQiwwQkFBNkI7Q0FBRzs7QUFDbkQ7RUFBZSwwQkFBeUI7Q0FBRzs7QUFDM0M7RUFBb0IsMEJBQThCO0NBQUc7O0FBQ3JEO0VBQW9CLDBCQUE4QjtDQUFHOztBQUNyRDtFQUFnQiwwQkFBMEI7Q0FBRzs7QUFDN0M7RUFBYSwwQkFBdUI7Q0FBRzs7QUFDdkM7RUFBOEIsdUJBQXdCO0NBQUc7O0FBRXpEO0VBQW1CLDBCQUE2QjtDQUFHOztBQUNuRDtFQUFxQiwwQkFBK0I7Q0FBRzs7QUFDdkQ7RUFBMEIsMEJBQW9DO0NBQUc7O0FBQ2pFO0VBQTJCLDBCQUFxQztDQUFHOztBQUduRTtFQUFhLDBCaENGSTtDZ0NFeUI7O0FBQzFDO0VBQWMsMEJoQ2JJO0NnQ2EwQjs7QUFDNUM7RUFBZ0IsMEJoQ2JJO0NnQ2E0Qjs7QUFDaEQ7RUFBZ0IsMEJoQ2JJO0NnQ2E0Qjs7QUFDaEQ7RUFBWSwwQmhDYkk7Q2dDYXdCOztBQUN4QztFQUFpQiwwQmhDYkk7Q2dDYTZCOztBQUNsRDtFQUFpQiwwQmhDYkk7Q2dDYTZCOztBQUNsRDtFQUFhLDBCaENiSTtDZ0NheUI7O0FBQzFDO0VBQVUsMEJoQ2JJO0NnQ2FzQjs7QUFDcEM7RUFBd0IsdUJoQ2JaO0NnQ2F1Qzs7QUFFbkQ7RUFBZ0IsMEJoQ1hJO0NnQ1c0Qjs7QUFDaEQ7RUFBa0IsMEJoQ1hJO0NnQ1c4Qjs7QUFDcEQ7RUFBdUIsMEJoQ1hJO0NnQ1dtQzs7QUFDOUQ7RUFBd0IsMEJoQ1hJO0NnQ1dvQzs7QUFHaEU7RUFBa0IsY2hDakJFO0NnQ2lCa0I7O0FBQ3RDO0VBQW9CLGNoQ2pCRTtDZ0NpQm9COztBQUMxQztFQUF5QixjaENqQkU7Q2dDaUJ5Qjs7QUFDcEQ7RUFBMEIsY2hDakJFO0NnQ2lCMEI7O0FBR3REO0VBQW9CLGdCaEN2QkE7Q2dDdUJzQjs7QUFDMUM7RUFBc0IsZ0JoQ3ZCQTtDZ0N1QndCOztBQUM5QztFQUEyQixnQmhDdkJBO0NnQ3VCNkI7O0FBQ3hEO0VBQTRCLGdCaEN2QkE7Q2dDdUI4Qjs7QUFHMUQ7RUFBYyxtQkFBa0I7Q0FBSTs7QUFDcEM7RUFBWSxpQkFBZ0I7Q0FBSTs7QUFDaEM7RUFBYSxrQkFBaUI7Q0FBSTs7QUFHbEM7RUFBZ0IsYUFBWTtDQUFJOztBQUNoQztFQUFlLFlBQVc7Q0FBSTs7QUFHOUI7RUFBbUIscUJBQW9CO0NBQUs7O0FBQzVDO0VBQXVCLHlCQUF3QjtDQUFLOztBQUNwRDtFQUEwQiw0QkFBMkI7Q0FBSzs7QUFDMUQ7RUFBd0IsMEJBQXlCO0NBQUs7O0FBQ3REO0VBQXlCLDJCQUEwQjtDQUFLOztBQUV4RDtFQUFvQixzQkFBcUI7Q0FBSzs7QUFDOUM7RUFBd0IsMEJBQXlCO0NBQUs7O0FBQ3REO0VBQTJCLDZCQUE0QjtDQUFLOztBQUM1RDtFQUF5QiwyQkFBMEI7Q0FBSzs7QUFDeEQ7RUFBMEIsNEJBQTJCO0NBQUs7O0FBRzFEO0VBQ0ksa0I1QjNEeUQ7RTRCNER6RCxvQmhDM0RhO0VnQzREYix3QjVCN0R5RDtDNEI4RDVEOztBQUdEO0VBQVEsY0FBYTtDQUFLOztBQUcxQjtFQUFjLHdCQUF1QjtDQUFLOztBQUMxQztFQUFhLHVCQUFzQjtDQUFLOztBakM3RWhDO0VpQ2dGSjtJQUNJLHdCQUF1QjtHQUMxQjtDOUJrdUZKOztBSHB6Rk87RWlDc0ZKO0lBQ0ksdUJBQXNCO0dBQ3pCO0M5Qmt1Rko7O0FIMXpGTztFaUM0Rko7SUFDSSx3QkFBdUI7R0FDMUI7QzlCa3VGSjs7QUhoMEZPO0VpQ2tHSjtJQUNJLHVCQUFzQjtHQUN6QjtDOUJrdUZKIiwiZmlsZSI6Imxobmdyb3Vwcy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBCcmVha3BvaW50c1xuQG1peGluIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KX0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIEludGVyYWN0aW9uXG4laGlnaGxpZ2h0IHtcbiAgICBib3JkZXItY29sb3I6ICRzdW1tZXItc2t5O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoJHN1bW1lci1za3ksIDAuMSk7XG59XG5cblxuJWRpc2FibGVkLW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgMC43KTtcbn1cbiIsIi8vIEJhc2UgZm9udCBzaXplXG4kcmVtLWJhc2U6IDE2cHg7XG4kYmFzZWxpbmU6IDZweDtcblxuLy8gQ29sb3JzXG5cbiR0YXJhd2VyYTogIzA3Mzg0QTtcbiRibHVlLWdyZWVuOiAjMTI4REJBO1xuJHN1bW1lci1za3k6ICMzNkIyREY7XG4kd2F0dGxlOiAjRDBERDQzO1xuJGhvbmV5c3Vja2xlOiAjRTlGRjc3O1xuJHdoaXRlLXNtb2tlOiAjZjVmNWY1O1xuJG1lcmN1cnk6ICNlNmU2ZTY7XG4kYWx0bzogI2RhZGFkYTtcbiRqdW1ibzogIzg4ODtcbiRjaGFyY29hbDogIzQxNDE0MTtcbiRmaXJlZmx5OiAjMEIyMzJDO1xuXG4kc3RyYXdiZXJyeTogI0VCMjYxQTtcbiRnb2xkZW4tZHJlYW06ICNGNkQxMkQ7XG4kZGFyay1wYXN0ZWwtZ3JlZW46ICMxMkM0MjE7XG4kcmljaC1lbGVjdHJpYy1ibHVlOiAjMDk4QUQ4O1xuXG4vLyBEaW1lbnNpb25zXG4kbWF4LXdpZHRoOiAxMjAwcHg7XG5cbi8vIEdyaWRcbiRncmlkLWNvbHVtbnM6IDEyO1xuJGd1dHRlci1zbWFsbDogMTI7XG4kZ3V0dGVyLWxhcmdlOiAxODtcblxuLy8gSGVhZGVyL05hdlxuJGhlYWRlci1oZWlnaHQtc21hbGw6IDQ4cHg7XG4kaGVhZGVyLWhlaWdodC1sYXJnZTogNzJweDtcblxuLy8gQnJlYWtwb2ludHNcbiRicmVha3BvaW50czogKFxuICAgIHNtYWxsOiAzMjBweCxcbiAgICBtZWRpdW06IDg2MHB4LFxuICAgIGxhcmdlOiAkbWF4LXdpZHRoLFxuICAgIHhsYXJnZTogMTYwMHB4XG4pO1xuXG4vLyBMYXllcnNcbiR6LWxheWVyczogKFxuICAgIGJhY2s6IC05OTk5LFxuICAgIGRlZmF1bHQ6IDEsXG4gICAgYWJvdmU6IDEwMDAsXG4gICAgb3ZlcmxheTogMzAwMFxuKTtcbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cbiIsIi5sb2NhdGlvbi1vcHRpb246aG92ZXIsIGEucGFuZWw6aG92ZXIsIC5wYW5lbC5wYW5lbC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzZCMkRGO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSg1NCwgMTc4LCAyMjMsIDAuMSk7XG59XG5cbi5sb2NhdGlvbi1vcHRpb25zLS1kaXNhYmxlZDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5odG1sLCBib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjMDczODRBO1xufVxuXG4uYXBwLWJvZHkge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbn1cblxuLmFwcC1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYXBwLXNlY3Rpb25fX2JvZHkge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMS41cmVtIDAuOTM3NXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAuYXBwLXNlY3Rpb25fX2JvZHkge1xuICAgIHBhZGRpbmc6IDNyZW0gMS44NzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmFwcC1zZWN0aW9uX19ib2R5IHtcbiAgICBwYWRkaW5nOiAzLjc1cmVtIDEuODc1cmVtO1xuICB9XG59XG5cbi5hcHAtc2VjdGlvbi0tZ3JheSB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG59XG5cbi5pY29uIHtcbiAgZmlsbDogIzIyMjIyMjtcbiAgc3Ryb2tlOiAjMjIyMjIyO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xufVxuXG5hIHtcbiAgY29sb3I6ICMzNkIyREY7XG59XG5cbi5pY29uLWxpbmsgc3ZnLFxuLmljb24tdGV4dCBzdmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC4xOGVtO1xufVxuXG5hLm5ldXRyYWwtbGluayB7XG4gIGNvbG9yOiAjODg4O1xufVxuXG5hLm5ldXRyYWwtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjMzZCMkRGO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCB1bCwgb2wge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5oMSwgLmFscGhhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgaDEsIC5hbHBoYSB7XG4gICAgZm9udC1zaXplOiA0LjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA0LjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG59XG5cbmgyLCAuYmV0YSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBpbmhlcml0O1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgaDIsIC5iZXRhIHtcbiAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxufVxuXG5oMywgLmdhbW1hIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgaDMsIC5nYW1tYSB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG59XG5cbmg0LCAuZGVsdGEsIGZpZWxkc2V0IGxlZ2VuZCB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpbmhlcml0O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIGg0LCAuZGVsdGEsIGZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgfVxufVxuXG5oNSwgLmVwc2lsb24sIC5wYW5lbF9faGVhZGVyLCAucGFuZWxfX3NlY3Rpb24taGVhZGVyLCAucHJvZ3Jlc3Mtc3RlcHNfX3N0ZXAtbGFiZWwge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjg0Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNDVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIGg1LCAuZXBzaWxvbiwgLnBhbmVsX19oZWFkZXIsIC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIsIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjg0Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gIH1cbn1cblxucCwgdWwsIG9sLCBwcmUsIHRhYmxlLCBibG9ja3F1b3RlIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbnVsIHVsLCBvbCBvbCwgdWwgb2wsIG9sIHVsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxudWwgbGksXG5vbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuXG4ubm8tYnVsbGV0cyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5saW5rLWxpc3Qge1xuICBsaW5lLWhlaWdodDogMS45O1xufVxuXG5ociB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIG1hcmdpbjogMS41cmVtIDAgMS40Mzc1cmVtO1xufVxuXG5iLCBzdHJvbmcsIGVtLCBzbWFsbCwgY29kZSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG5zbWFsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwLjg1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5sYXJnZS10ZXh0IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xufVxuXG4uc21hbGwtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsaW5lLWhlaWdodDogMS40NTtcbn1cblxuLmJ1dHRvbixcbmJ1dHRvbi5idXR0b24sXG5pbnB1dC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAwLjhlbSAzZW07XG4gIGJhY2tncm91bmQ6ICMzNkIyREY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzIwOWVjYztcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSBpbnNldCwgMCAzcHggMTJweCAtNnB4IGJsYWNrO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgIzFjODZhZDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjE1cyBsaW5lYXI7XG59XG5cbi5idXR0b246aG92ZXIsXG5idXR0b24uYnV0dG9uOmhvdmVyLFxuaW5wdXQuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNmYjVlMDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSBpbnNldCwgMCA2cHggMTVweCAtNnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjEgMC41cyBsaW5lYXI7XG59XG5cbi5idXR0b246YWN0aXZlLFxuYnV0dG9uLmJ1dHRvbjphY3RpdmUsXG5pbnB1dC5idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzIzYThkOTtcbiAgYm94LXNoYWRvdzogMCAwIDA7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6ICMzNkIyREY7XG59XG5cbi5idXR0b24tLXNlY29uZGFyeSwgLmJ1dHRvbi0tbGluayxcbmJ1dHRvbi5idXR0b24tLXNlY29uZGFyeSxcbmJ1dHRvbi5idXR0b24tLWxpbmssXG5pbnB1dC5idXR0b24tLXNlY29uZGFyeSxcbmlucHV0LmJ1dHRvbi0tbGluayB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzg4ODtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDA7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uYnV0dG9uLS1zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tLXNlY29uZGFyeTphY3RpdmUsIC5idXR0b24tLWxpbms6aG92ZXIsIC5idXR0b24tLWxpbms6YWN0aXZlLFxuYnV0dG9uLmJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLFxuYnV0dG9uLmJ1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZSxcbmJ1dHRvbi5idXR0b24tLWxpbms6aG92ZXIsXG5idXR0b24uYnV0dG9uLS1saW5rOmFjdGl2ZSxcbmlucHV0LmJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLFxuaW5wdXQuYnV0dG9uLS1zZWNvbmRhcnk6YWN0aXZlLFxuaW5wdXQuYnV0dG9uLS1saW5rOmhvdmVyLFxuaW5wdXQuYnV0dG9uLS1saW5rOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDAgMDtcbn1cblxuLmJ1dHRvbi0tbmV1dHJhbCxcbmJ1dHRvbi5idXR0b24tLW5ldXRyYWwsXG5pbnB1dC5idXR0b24tLW5ldXRyYWwge1xuICBib3JkZXItY29sb3I6ICNjZmNmY2Y7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjMzZCMkRGO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSBpbnNldCwgMCAzcHggMTJweCAtNnB4IGRhcmtncmF5O1xufVxuXG4uYnV0dG9uLS1uZXV0cmFsOmhvdmVyLFxuYnV0dG9uLmJ1dHRvbi0tbmV1dHJhbDpob3ZlcixcbmlucHV0LmJ1dHRvbi0tbmV1dHJhbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgaW5zZXQsIDAgNnB4IDE1cHggLTZweCByZ2JhKDE2OSwgMTY5LCAxNjksIDAuNSk7XG59XG5cbi5idXR0b24tLW5ldXRyYWw6YWN0aXZlLFxuYnV0dG9uLmJ1dHRvbi0tbmV1dHJhbDphY3RpdmUsXG5pbnB1dC5idXR0b24tLW5ldXRyYWw6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ViZWJlYjtcbiAgYm94LXNoYWRvdzogMCAwIDA7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6ICNlYmViZWI7XG59XG5cbi5idXR0b24gLmljb24sXG5idXR0b24uYnV0dG9uIC5pY29uLFxuaW5wdXQuYnV0dG9uIC5pY29uIHtcbiAgd2lkdGg6IDAuOTVlbTtcbiAgaGVpZ2h0OiAwLjk1ZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjEyZW07XG59XG5cbi5idXR0b24tLXNtYWxsLFxuYnV0dG9uLmJ1dHRvbi0tc21hbGwsXG5pbnB1dC5idXR0b24tLXNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBwYWRkaW5nOiAwLjhlbSAwLjk1ZW07XG59XG5cbi5idXR0b24tLWxhcmdlLFxuYnV0dG9uLmJ1dHRvbi0tbGFyZ2UsXG5pbnB1dC5idXR0b24tLWxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuLmJ1dHRvbi0tZXhwYW5kLFxuYnV0dG9uLmJ1dHRvbi0tZXhwYW5kLFxuaW5wdXQuYnV0dG9uLS1leHBhbmQge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiAxLjEyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS4xMjVyZW07XG59XG5cbi5idXR0b24tLWV4cGFuZCArIC5idXR0b24tLWV4cGFuZCxcbmJ1dHRvbi5idXR0b24tLWV4cGFuZCArIC5idXR0b24tLWV4cGFuZCxcbmlucHV0LmJ1dHRvbi0tZXhwYW5kICsgLmJ1dHRvbi0tZXhwYW5kIHtcbiAgbWFyZ2luLXRvcDogMC4zNzVyZW07XG59XG5cbi5idXR0b24tLWxpbmssXG5idXR0b24uYnV0dG9uLS1saW5rLFxuaW5wdXQuYnV0dG9uLS1saW5rIHtcbiAgY29sb3I6ICMzNkIyREY7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAwLjI1cmVtIDAgMDtcbn1cblxuLmJ1dHRvbi0tZGlzYWJsZWQsXG5idXR0b24uYnV0dG9uLS1kaXNhYmxlZCxcbmlucHV0LmJ1dHRvbi0tZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6ICNjZmNmY2Y7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjYWFhO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSBpbnNldCwgMCAwIDA7XG59XG5cbi5idXR0b24tLWRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLS1kaXNhYmxlZDphY3RpdmUsXG5idXR0b24uYnV0dG9uLS1kaXNhYmxlZDpob3ZlcixcbmJ1dHRvbi5idXR0b24tLWRpc2FibGVkOmFjdGl2ZSxcbmlucHV0LmJ1dHRvbi0tZGlzYWJsZWQ6aG92ZXIsXG5pbnB1dC5idXR0b24tLWRpc2FibGVkOmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogI2NmY2ZjZjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSBpbnNldCwgMCAwIDA7XG59XG5cbi5idXR0b24tLWVycm9yLFxuYnV0dG9uLmJ1dHRvbi0tZXJyb3IsXG5pbnB1dC5idXR0b24tLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VCMjYxQTtcbiAgYm9yZGVyLWNvbG9yOiAjYWExODBmO1xuICBiYWNrZ3JvdW5kOiAjRUIyNjFBO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCAjYWExODBmO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0LCAwIDNweCAxMnB4IC02cHggIzYzMGUwOTtcbn1cblxuLmJ1dHRvbi0tZXJyb3I6aG92ZXIsXG5idXR0b24uYnV0dG9uLS1lcnJvcjpob3ZlcixcbmlucHV0LmJ1dHRvbi0tZXJyb3I6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWIyYTFmO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIGluc2V0LCAwIDZweCAxNXB4IC02cHggcmdiYSg5OSwgMTQsIDksIDAuNSk7XG59XG5cbi5idXR0b24tLWVycm9yOmFjdGl2ZSxcbmJ1dHRvbi5idXR0b24tLWVycm9yOmFjdGl2ZSxcbmlucHV0LmJ1dHRvbi0tZXJyb3I6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2RkMWYxMztcbiAgYm94LXNoYWRvdzogMCAwIDA7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBib3JkZXItY29sb3I6ICNkZDFmMTM7XG59XG5cbi5idXR0b24tLXN1Y2Nlc3MsXG5idXR0b24uYnV0dG9uLS1zdWNjZXNzLFxuaW5wdXQuYnV0dG9uLS1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyQzQyMTtcbiAgYm9yZGVyLWNvbG9yOiAjMGM3ZTE1O1xuICBiYWNrZ3JvdW5kOiAjMTJDNDIxO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCAjMGM3ZTE1O1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0LCAwIDNweCAxMnB4IC02cHggIzA1MzgwOTtcbn1cblxuLmJ1dHRvbi0tc3VjY2Vzczpob3ZlcixcbmJ1dHRvbi5idXR0b24tLXN1Y2Nlc3M6aG92ZXIsXG5pbnB1dC5idXR0b24tLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTJjOTIyO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIGluc2V0LCAwIDZweCAxNXB4IC02cHggcmdiYSg1LCA1NiwgOSwgMC41KTtcbn1cblxuLmJ1dHRvbi0tc3VjY2VzczphY3RpdmUsXG5idXR0b24uYnV0dG9uLS1zdWNjZXNzOmFjdGl2ZSxcbmlucHV0LmJ1dHRvbi0tc3VjY2VzczphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMTBiMTFlO1xuICBib3gtc2hhZG93OiAwIDAgMDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogIzEwYjExZTtcbn1cblxuLmJ1dHRvbi0td2FybmluZyxcbmJ1dHRvbi5idXR0b24tLXdhcm5pbmcsXG5pbnB1dC5idXR0b24tLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZEMTJEO1xuICBib3JkZXItY29sb3I6ICNjZWE5MDk7XG4gIGJhY2tncm91bmQ6ICNGNkQxMkQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwICNjZWE5MDk7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgaW5zZXQsIDAgM3B4IDEycHggLTZweCAjODQ2ZDA2O1xufVxuXG4uYnV0dG9uLS13YXJuaW5nOmhvdmVyLFxuYnV0dG9uLmJ1dHRvbi0td2FybmluZzpob3ZlcixcbmlucHV0LmJ1dHRvbi0td2FybmluZzpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmNmQyMzI7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgaW5zZXQsIDAgNnB4IDE1cHggLTZweCByZ2JhKDEzMiwgMTA5LCA2LCAwLjUpO1xufVxuXG4uYnV0dG9uLS13YXJuaW5nOmFjdGl2ZSxcbmJ1dHRvbi5idXR0b24tLXdhcm5pbmc6YWN0aXZlLFxuaW5wdXQuYnV0dG9uLS13YXJuaW5nOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmNWNkMTk7XG4gIGJveC1zaGFkb3c6IDAgMCAwO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVjZDE5O1xufVxuXG4uYnV0dG9uLS1hdHRlbnRpb24sXG5idXR0b24uYnV0dG9uLS1hdHRlbnRpb24sXG5pbnB1dC5idXR0b24tLWF0dGVudGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwOThBRDg7XG4gIGJvcmRlci1jb2xvcjogIzA2NWI4ZjtcbiAgYmFja2dyb3VuZDogIzA5OEFEODtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgIzA2NWI4ZjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSBpbnNldCwgMCAzcHggMTJweCAtNnB4ICMwMzJjNDU7XG59XG5cbi5idXR0b24tLWF0dGVudGlvbjpob3ZlcixcbmJ1dHRvbi5idXR0b24tLWF0dGVudGlvbjpob3ZlcixcbmlucHV0LmJ1dHRvbi0tYXR0ZW50aW9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzA5OGRkZDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSBpbnNldCwgMCA2cHggMTVweCAtNnB4IHJnYmEoMywgNDQsIDY5LCAwLjUpO1xufVxuXG4uYnV0dG9uLS1hdHRlbnRpb246YWN0aXZlLFxuYnV0dG9uLmJ1dHRvbi0tYXR0ZW50aW9uOmFjdGl2ZSxcbmlucHV0LmJ1dHRvbi0tYXR0ZW50aW9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwODdkYzQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjMDg3ZGM0O1xufVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWUxZTE7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMS44NzVyZW0gMCAwO1xufVxuXG4ucGFuZWwgZmllbGRzZXQge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZDZkNmQ2O1xufVxuXG4ucGFuZWwtLXJhaXNlZCBmaWVsZHNldCB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmNWY1ZjU7XG59XG5cbmZpZWxkc2V0IGxlZ2VuZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAgMC4zNzVyZW0gMCAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uZm9ybV9fZmllbGQge1xuICBtYXJnaW46IDAuNzVyZW0gMCAxLjEyNXJlbTtcbn1cblxubGFiZWw6bm90KC5mb3JtX19vcHRpb24tZ3JvdXBfX2xhYmVsKSxcbi5mb3JtX19maWVsZF9fbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC4xODc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNWVtO1xuICBjb2xvcjogIzg4ODtcbn1cblxuaW5wdXRbdHlwZT10ZXh0XSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT10ZWxdLFxuaW5wdXRbdHlwZT1wYXNzd29yZF0sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHBhZGRpbmc6IDAuNjg3NXJlbTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA5NSkgaW5zZXQ7XG59XG5cbmlucHV0W3R5cGU9dGV4dF06Zm9jdXMsXG5pbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyxcbmlucHV0W3R5cGU9dGVsXTpmb2N1cyxcbmlucHV0W3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg1NCwgMTc4LCAyMjMsIDAuMSk7XG4gIG91dGxpbmU6IDAgbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjYTBkYWYwO1xufVxuXG5pbnB1dFt0eXBlPXRleHRdW2Rpc2FibGVkXSwgaW5wdXRbdHlwZT10ZXh0XS5pbnB1dC0tZGlzYWJsZWQsXG5pbnB1dFt0eXBlPWVtYWlsXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPWVtYWlsXS5pbnB1dC0tZGlzYWJsZWQsXG5pbnB1dFt0eXBlPXRlbF1bZGlzYWJsZWRdLFxuaW5wdXRbdHlwZT10ZWxdLmlucHV0LS1kaXNhYmxlZCxcbmlucHV0W3R5cGU9cGFzc3dvcmRdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdLmlucHV0LS1kaXNhYmxlZCxcbnRleHRhcmVhW2Rpc2FibGVkXSxcbnRleHRhcmVhLmlucHV0LS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGJveC1zaGFkb3c6IDAgMCAwO1xuICBib3JkZXItY29sb3I6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjODg4O1xufVxuXG5pbnB1dFt0eXBlPXRleHRdLmlubGluZS1pbnB1dCxcbmlucHV0W3R5cGU9ZW1haWxdLmlubGluZS1pbnB1dCxcbmlucHV0W3R5cGU9dGVsXS5pbmxpbmUtaW5wdXQsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXS5pbmxpbmUtaW5wdXQsXG50ZXh0YXJlYS5pbmxpbmUtaW5wdXQge1xuICB3aWR0aDogYXV0bztcbn1cblxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgaGVpZ2h0OiAyLjYyNXJlbTtcbiAgbWluLXdpZHRoOiAxMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gIGJveC1zaGFkb3c6IDFweCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA5NSk7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmZvcm1fX2ZpZWxkX19vcHRpb24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5mb3JtX19maWVsZF9fb3B0aW9uLWdyb3VwIGxhYmVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwQjIzMkM7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xufVxuXG4uZm9ybV9fZmllbGRfX29wdGlvbi1ncm91cCBsYWJlbC5iaWctb3B0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5mb3JtX19maWVsZF9fb3B0aW9uLWdyb3VwIGxhYmVsLmJpZy1vcHRpb24gaW5wdXQge1xuICBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtO1xufVxuXG4uZm9ybV9fZmllbGRfX29wdGlvbi1ncm91cCBsYWJlbC5iaWctb3B0aW9uIC5mb3JtX19maWVsZF9faGVscC10ZXh0LFxuLmZvcm1fX2ZpZWxkX19vcHRpb24tZ3JvdXAgbGFiZWwuYmlnLW9wdGlvbiAuZm9ybV9fZmllbGRfX2Vycm9yLXRleHQge1xuICBwYWRkaW5nLXRvcDogMC4zNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uZm9ybV9fZmllbGRfX2hlbHAtdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGNvbG9yOiAjNDE0MTQxO1xufVxuXG4uZm9ybV9fZmllbGRfX2hlbHAtdGV4dCBbY2xhc3MqPVwiaWNvblwiXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG59XG5cbi5mb3JtX19maWVsZF9faGVscC10ZXh0IHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uZm9ybV9fZmllbGRfX2Vycm9yLXRleHQge1xuICBjb2xvcjogI0VCMjYxQTtcbn1cblxuLmZvcm1fX2ZpZWxkLS1oYXMtZXJyb3IgbGFiZWwge1xuICBjb2xvcjogI0VCMjYxQTtcbn1cblxuLmZvcm1fX2ZpZWxkLS1oYXMtZXJyb3IgaW5wdXRbdHlwZT10ZXh0XSxcbi5mb3JtX19maWVsZC0taGFzLWVycm9yIGlucHV0W3R5cGU9ZW1haWxdLFxuLmZvcm1fX2ZpZWxkLS1oYXMtZXJyb3IgaW5wdXRbdHlwZT10ZWxdLFxuLmZvcm1fX2ZpZWxkLS1oYXMtZXJyb3IgaW5wdXRbdHlwZT1wYXNzd29yZF0sXG4uZm9ybV9fZmllbGQtLWhhcy1lcnJvciB0ZXh0YXJlYSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDIzNSwgMzgsIDI2LCAwLjEpO1xuICBvdXRsaW5lOiAwIG5vbmU7XG4gIGJvcmRlci1jb2xvcjogI2Y1OTE4Yjtcbn1cblxuLmdyaWQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmdyaWQtcm93LmV4cGFuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmdyaWQtcm93LmNlbnRlcmVkIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5ncmlkLXJvdy5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4gLnZlcnRpY2FsLWNlbnRlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmdyaWQtcm93IC5ncmlkLWNvbHVtbiAuZml0LWNvbnRlbnRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4gLmZpdC1jb250ZW50cyA+ICoge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4tLXN0cm9rZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbiB7XG4gICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4gLmdyaWQtcm93LmNvbGxhcHNlIHtcbiAgICBtYXJnaW46IDAgLTAuNzVyZW07XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5zbWFsbC1zcGFuLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLnNtYWxsLXNwYW4tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5zbWFsbC1zcGFuLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4uc21hbGwtc3Bhbi0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLm1lZGl1bS1zcGFuLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLm1lZGl1bS1zcGFuLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5tZWRpdW0tc3Bhbi0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4ubWVkaXVtLXNwYW4tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLm1lZGl1bS1zcGFuLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5tZWRpdW0tc3Bhbi02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4ubWVkaXVtLXNwYW4tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLm1lZGl1bS1zcGFuLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5tZWRpdW0tc3Bhbi05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4ubWVkaXVtLXNwYW4tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5tZWRpdW0tc3Bhbi0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLm1lZGl1bS1zcGFuLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uIHtcbiAgICBwYWRkaW5nOiAwIDEuMTI1cmVtO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4gLmdyaWQtcm93LmNvbGxhcHNlIHtcbiAgICBtYXJnaW46IDAgLTEuMTI1cmVtO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4ubGFyZ2Utc3Bhbi0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmdyaWQtcm93IC5ncmlkLWNvbHVtbi5sYXJnZS1zcGFuLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICB9XG4gIC5ncmlkLXJvdyAuZ3JpZC1jb2x1bW4ubGFyZ2Utc3Bhbi0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1yb3cgLmdyaWQtY29sdW1uLmxhcmdlLXNwYW4tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi5wYW5lbF9fYm9keS0tY29sbGFwc2UgdGFibGUge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5wYW5lbF9fYm9keS0tY29sbGFwc2UgdGFibGUgdGg6bGFzdC1jaGlsZCwgLnBhbmVsX19ib2R5LS1jb2xsYXBzZSB0YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4ucGFuZWxfX2JvZHktLWNvbGxhcHNlIHRhYmxlIHRyOmxhc3QtY2hpbGQgdGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG50YWJsZS50YWJsZS0tZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG50YWJsZSB0aCxcbnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbnRhYmxlIHRoOmxhc3QtY2hpbGQsXG50YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIHRhYmxlLnRhYmxlLS1yb29teSB0aCxcbiAgdGFibGUudGFibGUtLXJvb215IHRkIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIHRhYmxlLnRhYmxlLS1leHRyYS1yb29teSB0aCxcbiAgdGFibGUudGFibGUtLWV4dHJhLXJvb215IHRkIHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMi4yNXJlbTtcbiAgfVxufVxuXG50YWJsZSB0ci5uby1ib3JkZXJzIHRoLFxudGFibGUgdHIubm8tYm9yZGVycyB0ZCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxudGFibGUgdHIuc2hhZGUgdGgsXG50YWJsZSB0ci5zaGFkZSB0ZCB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG59XG5cbi5hcHAtbmF2IHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uYXBwLW5hdi1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmFwcC1uYXYtbWVudV9faXRlbSB7XG4gIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgaGVpZ2h0OiA0OHB4O1xuICBsaW5lLWhlaWdodDogNDhweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzg4ODtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmFwcC1uYXYtbWVudV9faXRlbSBhIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMzNkIyREY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgbGluZWFyO1xufVxuXG4uYXBwLW5hdi1tZW51X19pdGVtIC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuXG4uYXBwLWhlYWRlci0tZGFyayAuYXBwLW5hdi1tZW51X19pdGVtIHtcbiAgY29sb3I6IHdoaXRlO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4uYXBwLWhlYWRlci0tZGFyayAuYXBwLW5hdi1tZW51X19pdGVtIGEge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4uYXBwLWhlYWRlci0tZGFyayAuYXBwLW5hdi1tZW51X19pdGVtIGE6aG92ZXIsIC5hcHAtaGVhZGVyLS1kYXJrIC5hcHAtbmF2LW1lbnVfX2l0ZW0gYS5hY3RpdmUge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLmFwcC1uYXYtdHJpZ2dlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYXBwLW5hdi1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICAuYXBwLW5hdi1tZW51X19pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDEuMTI1cmVtO1xuICAgIGhlaWdodDogNzJweDtcbiAgICBsaW5lLWhlaWdodDogNzJweDtcbiAgfVxuICAuYXBwLW5hdi0tbGVmdCAuYXBwLW5hdi1tZW51IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5hcHAtbmF2LS1yaWdodCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIH1cbiAgLmFwcC1uYXYtLXJpZ2h0IC5hcHAtbmF2LW1lbnUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cblxuLmFjdGlvbi1iYXIgLmJ1dHRvbiB7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLmFjdGlvbi1iYXIgLnNlY29uZGFyeS1hY3Rpb24ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gIG1hcmdpbjogMCAwLjc1cmVtO1xuICBjb2xvcjogIzg4ODtcbn1cblxuLmFkZHJlc3MtZGlzcGxheSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5hZGRyZXNzLWRpc3BsYXkgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5icmVhZGNydW1icyB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cblxuLmJyZWFkY3J1bWJzLS1hbmNob3JlZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5icmVhZGNydW1icyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYnJlYWRjcnVtYnNfX2NydW1iOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDAuODc1cmVtO1xuICBtYXJnaW46IDAgMC4wNjI1cmVtIDAgMC41NjI1cmVtO1xuICBiYWNrZ3JvdW5kOiB1cmwoL2Fzc2V0cy9pY29ucy9TVkcvY2hldnJvbi1yaWdodC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIG9wYWNpdHk6IDAuODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbn1cblxuLmJyZWFkY3J1bWJzX19jcnVtYjpsYXN0LWNoaWxkIHtcbiAgY29sb3I6ICM4ODg7XG59XG5cbi5icmVhZGNydW1ic19fY3J1bWI6bGFzdC1jaGlsZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wYW5lbF9faGVhZGVyIC5icmVhZGNydW1icywgLnBhbmVsX19zZWN0aW9uLWhlYWRlciAuYnJlYWRjcnVtYnMge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5wYW5lbF9faGVhZGVyIC5icmVhZGNydW1icyAuYnJlYWRjcnVtYnNfX2NydW1iOmFmdGVyLCAucGFuZWxfX3NlY3Rpb24taGVhZGVyIC5icmVhZGNydW1icyAuYnJlYWRjcnVtYnNfX2NydW1iOmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbn1cblxuLmljb24tbGlzdF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbn1cblxuLmljb24tbGlzdF9faWNvbiB7XG4gIG1hcmdpbi1yaWdodDogMC4zNzVyZW07XG59XG5cbi5pbnB1dC1wYWlyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4uaW5wdXQtcGFpciAuaW5wdXQtcGFpcl9fbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uaW5wdXQtcGFpciAuYnV0dG9uLFxuLmlucHV0LXBhaXIgLmlucHV0LXBhaXJfX2xhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDEuMTI1cmVtO1xufVxuXG4uaW5wdXQtcGFpciBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmlucHV0LXBhaXIgLmlucHV0LXBhaXJfX3ByZWZpeCxcbi5pbnB1dC1wYWlyIC5pbnB1dC1wYWlyX19wb3N0Zml4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmlucHV0LXBhaXIgLmlucHV0LXBhaXJfX3ByZWZpeCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5pbnB1dC1wYWlyIC5pbnB1dC1wYWlyX19wb3N0Zml4IHtcbiAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG59XG5cbi5pc2xhbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uaXNsYW5kLS1jb250YWluIHtcbiAgcGFkZGluZzogMS4xMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5pc2xhbmQtLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xufVxuXG4uaXNsYW5kLS1leHRyYS1tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4ubG9jYXRpb24tb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxvY2F0aW9uLW9wdGlvbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMi4yNXJlbSAwLjc1cmVtIDEuMTI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjEyNXJlbTtcbiAgZmxleDogMCAwIDk4JTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLmxvY2F0aW9uLW9wdGlvbiB7XG4gICAgbWluLWhlaWdodDogNy41cmVtO1xuICAgIGZsZXg6IDAgMCA0OCU7XG4gICAgcGFkZGluZzogMS41cmVtIDIuMjVyZW0gMS41cmVtIDEuNXJlbTtcbiAgfVxuICAubG9jYXRpb24tb3B0aW9uID4gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmxvY2F0aW9uLW9wdGlvbl9fbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5sb2NhdGlvbi1vcHRpb25fX2FkZHJlc3Mge1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cblxuLmxvY2F0aW9uLW9wdGlvbl9faW1hZ2Uge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMS44NzVyZW07XG4gIGhlaWdodDogMS44NzVyZW07XG4gIGJhY2tncm91bmQ6ICMzNkIyREY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5sb2NhdGlvbi1vcHRpb25fX2ltYWdlIC5pY29uIHtcbiAgd2lkdGg6IDgwJTtcbiAgZmlsbDogd2hpdGU7XG59XG5cbi5sb2NhdGlvbi1vcHRpb24tLXNlbGVjdGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzZCMkRGO1xufVxuXG4ubG9jYXRpb24tb3B0aW9uLS1zZWxlY3RlZCAubG9jYXRpb24tb3B0aW9uX19pbWFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5sb2NhdGlvbi1vcHRpb24tLW5ldyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMzZCMkRGO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sb2NhdGlvbi1vcHRpb24tLW5ldzpob3ZlciB7XG4gIGNvbG9yOiAjMzZCMkRGO1xufVxuXG4ubG9jYXRpb24tb3B0aW9uLS1uZXcgLmxvY2F0aW9uLW9wdGlvbl9fYWRkLWljb24ge1xuICB3aWR0aDogMS41NjI1cmVtO1xuICBoZWlnaHQ6IDEuNTYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAubG9jYXRpb24tb3B0aW9uLS1uZXcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gIH1cbiAgLmxvY2F0aW9uLW9wdGlvbi0tbmV3IC5sb2NhdGlvbi1vcHRpb25fX2FkZC1pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAwLjMxMjVyZW07XG4gICAgd2lkdGg6IDIuMTg3NXJlbTtcbiAgICBoZWlnaHQ6IDIuMTg3NXJlbTtcbiAgfVxufVxuXG4ubm90aWNlIHtcbiAgcGFkZGluZzogMS41cmVtIDEuNXJlbSAwO1xuICBtYXJnaW46IDAgYXV0byAwO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgY29sb3I6ICM4ODg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLm5vdGljZSB7XG4gICAgcGFkZGluZzogM3JlbSAzcmVtIDA7XG4gIH1cbn1cblxuLm5vdGljZV9fYmQge1xuICBwYWRkaW5nOiAxLjEyNXJlbSAzLjc1cmVtIDEuMTI1cmVtIDEuMTI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubm90aWNlX19iZCBwLCAubm90aWNlX19iZCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ub3RpY2VfX2JkIHAgKyBwLCAubm90aWNlX19iZCBwIHVsLCAubm90aWNlX19iZCB1bCArIHAsIC5ub3RpY2VfX2JkIHVsIHVsIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLm5vdGljZV9fZGlzbWlzcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMy44NzVyZW07XG4gIGhlaWdodDogMy44NzVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubm90aWNlLS1lcnJvciB7XG4gIGNvbG9yOiAjRUIyNjFBO1xufVxuXG4ubm90aWNlLS1lcnJvciAubm90aWNlX19iZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDIzNSwgMzgsIDI2LCAwLjEpO1xuICBib3JkZXItY29sb3I6ICNFQjI2MUE7XG59XG5cbi5ub3RpY2UtLXdhcm5pbmcge1xuICBjb2xvcjogI2NlYTkwOTtcbn1cblxuLm5vdGljZS0td2FybmluZyAubm90aWNlX19iZCB7XG4gIGNvbG9yOiAjMmEyYTJhO1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgyNDYsIDIwOSwgNDUsIDAuMTUpO1xuICBib3JkZXItY29sb3I6ICNGNkQxMkQ7XG59XG5cbi5ub3RpY2UtLXN1Y2Nlc3Mge1xuICBjb2xvcjogIzEyQzQyMTtcbn1cblxuLm5vdGljZS0tc3VjY2VzcyAubm90aWNlX19iZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDE4LCAxOTYsIDMzLCAwLjEpO1xuICBib3JkZXItY29sb3I6ICMxMkM0MjE7XG59XG5cbi5ub3RpY2UtLWF0dGVudGlvbiB7XG4gIGNvbG9yOiAjMDk4QUQ4O1xufVxuXG4ubm90aWNlLS1hdHRlbnRpb24gLm5vdGljZV9fYmQge1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg5LCAxMzgsIDIxNiwgMC4xKTtcbiAgYm9yZGVyLWNvbG9yOiAjMDk4QUQ4O1xufVxuXG4ucGFuZWwge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4ucGFuZWwgLnBhbmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4ucGFuZWwgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG59XG5cbi5wYW5lbCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xufVxuXG4ucGFuZWxfX2hlYWRlciwgLnBhbmVsX19zZWN0aW9uLWhlYWRlciwgLnBhbmVsX19zZWN0aW9uLWhlYWRlciwgLnBhbmVsX19mb290ZXIsIC5wYW5lbF9fYm9keSwgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxLjEyNXJlbSAxLjEyNXJlbSAxcmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5wYW5lbF9faGVhZGVyLCAucGFuZWxfX3NlY3Rpb24taGVhZGVyLCAucGFuZWxfX3NlY3Rpb24taGVhZGVyLCAucGFuZWxfX2Zvb3RlciwgLnBhbmVsX19ib2R5LCAucGFuZWxfX2Jsb2NrLWxpbmsge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAyLjI1cmVtIDEuMzc1cmVtO1xuICB9XG59XG5cbi5wYW5lbC0tY29tcGFjdCAucGFuZWxfX2hlYWRlciwgLnBhbmVsLS1jb21wYWN0IC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIsIC5wYW5lbC0tY29tcGFjdCAucGFuZWxfX3NlY3Rpb24taGVhZGVyLCAucGFuZWwtLWNvbXBhY3QgLnBhbmVsX19mb290ZXIsIC5wYW5lbC0tY29tcGFjdCAucGFuZWxfX2JvZHksIC5wYW5lbC0tY29tcGFjdCAucGFuZWxfX2Jsb2NrLWxpbmsge1xuICBwYWRkaW5nOiAxLjEyNXJlbSAxLjEyNXJlbSAxcmVtO1xufVxuXG4ucGFuZWxfX2hlYWRlciwgLnBhbmVsX19zZWN0aW9uLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4ucGFuZWxfX2hlYWRlciBlbSwgLnBhbmVsX19zZWN0aW9uLWhlYWRlciBlbSB7XG4gIGNvbG9yOiAjODg4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wYW5lbF9faGVhZGVyX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGNvbG9yOiAjODg4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAgMDtcbn1cblxuLnBhbmVsX19oZWFkZXJfX2FjdGlvbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnBhbmVsX19zZWN0aW9uLWhlYWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ucGFuZWxfX3NlY3Rpb24taGVhZGVyICsgLnBhbmVsX19ib2R5IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5wYW5lbF9fYm9keSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wYW5lbF9fYm9keSA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnBhbmVsX19ib2R5ICsgLnBhbmVsX19ib2R5IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5wYW5lbF9fYm9keSA+IC5wYW5lbCA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ucGFuZWxfX2JvZHkgPiAucGFuZWwgOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFuZWxfX2JvZHkuYXR0ZW50aW9uIHtcbiAgYmFja2dyb3VuZDogI2ViZjdmYztcbiAgYm9yZGVyLWNvbG9yOiAjY2RlY2Y3O1xufVxuXG4ucGFuZWxfX2Zvb3RlciwgLnBhbmVsX19hY3Rpb25zIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5wYW5lbF9fZm9vdGVyIC5idXR0b24sIC5wYW5lbF9fYWN0aW9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnBhbmVsX19hY3Rpb25zIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGFuZWxfX2FjdGlvbnM6bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4O1xufVxuXG4ucGFuZWxfX2FjdGlvbnMgLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6ICMzNkIyREY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGZsZXg6IDEgMCAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbn1cblxuLnBhbmVsX19hY3Rpb25zIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xufVxuXG4ucGFuZWxfX2FjdGlvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucGFuZWxfX2JvZHktLWNvbGxhcHNlIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnBhbmVsLS1mbGF0IHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucGFuZWwtLWZsYXQgLnBhbmVsX19oZWFkZXIsIC5wYW5lbC0tZmxhdCAucGFuZWxfX3NlY3Rpb24taGVhZGVyLFxuLnBhbmVsLS1mbGF0IC5wYW5lbF9fZm9vdGVyLFxuLnBhbmVsLS1mbGF0IC5wYW5lbF9fYWN0aW9ucyxcbi5wYW5lbC0tZmxhdCAucGFuZWxfX3NlY3Rpb24taGVhZGVyLFxuLnBhbmVsLS1mbGF0IC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIgKyAucGFuZWxfX2JvZHksXG4ucGFuZWwtLWZsYXQgLnBhbmVsX19ib2R5ICsgLnBhbmVsX19ib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbn1cblxuLnBhbmVsLS1mbGF0IC5wYW5lbF9fYWN0aW9ucyAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzM2QjJERjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFuZWwtLXNoYWRlIHtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ucGFuZWwtLXNoYWRlIC5wYW5lbF9faGVhZGVyLCAucGFuZWwtLXNoYWRlIC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIsXG4ucGFuZWwtLXNoYWRlIC5wYW5lbF9fZm9vdGVyLFxuLnBhbmVsLS1zaGFkZSAucGFuZWxfX3NlY3Rpb24taGVhZGVyLFxuLnBhbmVsLS1zaGFkZSAucGFuZWxfX2JvZHkgKyAucGFuZWxfX2JvZHkge1xuICBib3JkZXItY29sb3I6ICNmNWY1ZjU7XG59XG5cbi5wYW5lbC0taW52aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnBhbmVsLS1pbnZpc2libGUgPiAucGFuZWxfX2hlYWRlciwgLnBhbmVsLS1pbnZpc2libGUgPiAucGFuZWxfX3NlY3Rpb24taGVhZGVyLFxuLnBhbmVsLS1pbnZpc2libGUgPiAucGFuZWxfX2JvZHksXG4ucGFuZWwtLWludmlzaWJsZSA+IC5wYW5lbF9fZm9vdGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5wYW5lbCBoci5leHBhbmQge1xuICBtYXJnaW4tbGVmdDogLTEuMTI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xLjEyNXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAucGFuZWwgaHIuZXhwYW5kIHtcbiAgICBtYXJnaW4tbGVmdDogLTIuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMi4yNXJlbTtcbiAgfVxufVxuXG4ucGFuZWxfX2Jsb2NrLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ucGFuZWxfX2Jsb2NrLWxpbmsucGxhaW4tdGV4dCxcbi5wYW5lbF9fYmxvY2stbGluayAucGxhaW4tdGV4dCB7XG4gIGNvbG9yOiAjODg4O1xufVxuXG4ucGFuZWxfX2Jsb2NrLWxpbmsgLmljb246Zmlyc3QtY2hpbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG5cbi5wYW5lbF9fYmxvY2stbGluayAuaWNvbi5ibG9jay1saW5rLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEuMTI1cmVtO1xuICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgc3Ryb2tlLXdpZHRoOiAxcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLnBhbmVsX19ibG9jay1saW5rIC5pY29uLmJsb2NrLWxpbmstYXJyb3cge1xuICAgIHJpZ2h0OiAyLjI1cmVtO1xuICB9XG59XG5cbi5wYW5lbF9fYmxvY2stbGluazpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5wYW5lbF9fYmxvY2stbGluay0tY29tcGFjdCB7XG4gIHBhZGRpbmctdG9wOiAxLjEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuMTI1cmVtO1xufVxuXG4ucGFuZWxfX2Jsb2NrLWxpbmstLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgY29sb3I6ICM4ODg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnBhbmVsX19ibG9jay1saW5rLS1kaXNhYmxlZDpob3ZlciwgLnBhbmVsX19ibG9jay1saW5rLS1kaXNhYmxlZDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xufVxuXG4ucGFuZWxfX2Jsb2NrLWxpbmstLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMzNkIyREY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBib3JkZXItY29sb3I6ICMzNkIyREY7XG4gIG1hcmdpbjogLTFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4ucGFuZWxfX2Jsb2NrLWxpbmstLWFjdGl2ZTpob3ZlciwgLnBhbmVsX19ibG9jay1saW5rLS1hY3RpdmU6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzM2QjJERjtcbn1cblxuLnBhbmVsLS1jb21wYWN0IC5wYW5lbF9fYmxvY2stbGluayB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4xMjVyZW07XG59XG5cbi5wYW5lbC0tY29tcGFjdCAucGFuZWxfX2Jsb2NrLWxpbmsgLmljb24uYmxvY2stbGluay1hcnJvdyB7XG4gIHJpZ2h0OiAxLjEyNXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAucGFuZWwtLWNvbXBhY3QgLnBhbmVsX19ibG9jay1saW5rIC5pY29uLmJsb2NrLWxpbmstYXJyb3cge1xuICAgIHJpZ2h0OiAxLjEyNXJlbTtcbiAgfVxufVxuXG4ucGFuZWwgYS5wYW5lbF9fYmxvY2stbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmYWZhZmE7XG59XG5cbi5wYW5lbF9faGVhZGVyICsgLnBhbmVsX19ibG9jay1saW5rLCAucGFuZWxfX3NlY3Rpb24taGVhZGVyICsgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5hLnBhbmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmEucGFuZWwgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgY29sb3I6ICMzNkIyREY7XG59XG5cbmEucGFuZWw6aG92ZXIgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5wYW5lbC5wYW5lbC0tYWN0aXZlIC5wYW5lbF9fYmxvY2stbGluayB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ucGFuZWwtLWF0dGVudGlvbiB7XG4gIGJhY2tncm91bmQ6ICNlYmY3ZmM7XG4gIGJvcmRlci1jb2xvcjogI2NkZWNmNztcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnBhbmVsLS1hdHRlbnRpb24gLnBhbmVsX19oZWFkZXIsIC5wYW5lbC0tYXR0ZW50aW9uIC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIsXG4ucGFuZWwtLWF0dGVudGlvbiAucGFuZWxfX2Zvb3RlciB7XG4gIGJvcmRlci1jb2xvcjogI2NkZWNmNztcbn1cblxuLnBhbmVsLS13YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZlZmFlYTtcbiAgYm9yZGVyLWNvbG9yOiAjZmRmNGNiO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ucGFuZWwtLXdhcm5pbmcgLnBhbmVsX19oZWFkZXIsIC5wYW5lbC0td2FybmluZyAucGFuZWxfX3NlY3Rpb24taGVhZGVyLFxuLnBhbmVsLS13YXJuaW5nIC5wYW5lbF9fZm9vdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmRmNGNiO1xufVxuXG4ucGFuZWwtLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjZTdmOWU5O1xuICBib3JkZXItY29sb3I6ICNjNGYwYzg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5wYW5lbC0tc3VjY2VzcyAucGFuZWxfX2hlYWRlciwgLnBhbmVsLS1zdWNjZXNzIC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIsXG4ucGFuZWwtLXN1Y2Nlc3MgLnBhbmVsX19mb290ZXIge1xuICBib3JkZXItY29sb3I6ICNjNGYwYzg7XG59XG5cbi5wcm9ncmVzcy1zdGVwcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbn1cblxuLnByb2dyZXNzLXN0ZXBzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4ucHJvZ3Jlc3Mtc3RlcHNfX2JhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wcm9ncmVzcy1zdGVwc19fc3RlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1yaWdodDogMS4xMjVyZW07XG59XG5cbi5wcm9ncmVzcy1zdGVwc19fc3RlcC1pY29uIHtcbiAgd2lkdGg6IDEuMTI1cmVtO1xuICBoZWlnaHQ6IDEuMTI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IDAuMjVyZW0gc29saWQgI2U2ZTZlNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLnByb2dyZXNzLXN0ZXBzX19zdGVwLWljb24gc3ZnIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByb2dyZXNzLXN0ZXBzIGEge1xuICBjb2xvcjogIzg4ODtcbn1cblxuLnByb2dyZXNzLXN0ZXBzX19zdGVwLWxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjdlbTtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZy10b3A6IDAuMDYyNXJlbTtcbn1cblxuLnByb2dyZXNzLXN0ZXBzX19zdGVwLS1jb21wbGV0ZSAucHJvZ3Jlc3Mtc3RlcHNfX3N0ZXAtaWNvbiB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTYgdXJsKC9hc3NldHMvaWNvbnMvU1ZHL2NoZWNrLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiA4MCU7XG59XG5cbi5wcm9ncmVzcy1zdGVwc19fc3RlcC0tYWN0aXZlIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1pY29uIHtcbiAgYmFja2dyb3VuZDogIzM2QjJERjtcbiAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXdpZHRoOiAwLjEyNXJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlNmU2ZTY7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAucHJvZ3Jlc3Mtc3RlcHNfX3N0ZXAtLWFjdGl2ZSAucHJvZ3Jlc3Mtc3RlcHNfX3N0ZXAtaWNvbiB7XG4gICAgYm9yZGVyLXdpZHRoOiAwLjI1cmVtO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAjZTZlNmU2O1xuICB9XG59XG5cbi5wcm9ncmVzcy1zdGVwc19fc3RlcC0tYWN0aXZlIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1sYWJlbCB7XG4gIGNvbG9yOiAjMzZCMkRGO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5wcm9ncmVzcy1zdGVwcyB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnByb2dyZXNzLXN0ZXBzX19iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1Ljg3NXJlbTtcbiAgICByaWdodDogNS44NzVyZW07XG4gICAgdG9wOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMC4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICB9XG4gIC5wcm9ncmVzcy1zdGVwc19fc3RlcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAucHJvZ3Jlc3Mtc3RlcHNfX3N0ZXAtaWNvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDIuMjVyZW07XG4gICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICB9XG4gIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1pY29uIHN2ZyB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG4gIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1sYWJlbCB7XG4gICAgcGFkZGluZzogMC43NXJlbSAwIDA7XG4gIH1cbn1cblxuLnNlY3Rpb24tYWN0aW9ucyB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLnNlY3Rpb24tYWN0aW9ucyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4uc2VjdGlvbi1hY3Rpb25zIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43NXJlbSAxLjEyNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2VjdGlvbi1hY3Rpb25zIGEgLmljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMnB4O1xufVxuXG4uc3RhdHVzLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc3RhdHVzLWxhYmVsLmxpdmUge1xuICBiYWNrZ3JvdW5kOiAjMTJDNDIxO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zdGF0dXMtbGFiZWwuY29taW5nLXVwIHtcbiAgYmFja2dyb3VuZDogI0Y2RDEyRDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uc3RhdHVzLWxhYmVsLm5vdC1wdXJjaGFzZWQge1xuICBiYWNrZ3JvdW5kOiAjRUIyNjFBO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5hcHAtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGhlaWdodDogM3JlbTtcbiAgYm94LXNoYWRvdzogMCAycHggMCAwIHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYXBwLWhlYWRlciAuYnJhbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleC1iYXNpczogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmFwcC1oZWFkZXIgLmJyYW5kX19tYXJrIHtcbiAgd2lkdGg6IDNyZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGhlaWdodDogM3JlbTtcbn1cblxuLmFwcC1oZWFkZXIgLmJyYW5kX19tYXJrIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmFwcC1oZWFkZXIgLmJyYW5kX19sYWJlbCB7XG4gIGhlaWdodDogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDNyZW07XG4gIGNvbG9yOiAjMzZCMkRGO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNjVlbTtcbiAgZm9udC1zaXplOiAxMy4zMzMzM3B4O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5hcHAtaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDQuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjEyNXJlbTtcbiAgfVxuICAuYXBwLWhlYWRlciAuYnJhbmRfX21hcmsge1xuICAgIHBhZGRpbmc6IDEuMTI1cmVtO1xuICAgIHdpZHRoOiA0LjVyZW07XG4gICAgaGVpZ2h0OiA0LjVyZW07XG4gIH1cbiAgLmFwcC1oZWFkZXIgLmJyYW5kX19sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQuNXJlbTtcbiAgfVxufVxuXG4uYXBwLWhlYWRlci0tZGFyayB7XG4gIGJhY2tncm91bmQ6ICMwNzM4NEE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwIDA7XG59XG5cbi5hcHAtZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMi4yNXJlbTtcbiAgY29sb3I6ICNmNWY1ZjU7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5hcHAtZm9vdGVyIHAge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hcHAtZm9vdGVyIHNtYWxsIHtcbiAgY29sb3I6ICNjY2M7XG59XG5cbi5raXRzLWlucHV0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMS4xMjVyZW0gMS41cmVtO1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBtYXgtd2lkdGg6IDI1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmtpdHMtaW5wdXQgaW5wdXQge1xuICBmbGV4OiAwIDAgNzBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxLjEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5raXRzLWlucHV0IHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2Vzc2lvbi1pbnB1dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbn1cblxuLnNlc3Npb24taW5wdXRfX2xhYmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIDMwcHg7XG4gIHBhZGRpbmctdG9wOiAyLjQzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5cbi5zZXNzaW9uLWlucHV0X19sYWJlbCA+IGRpdiB7XG4gIGZsZXg6IDE7XG59XG5cbi5zZXNzaW9uLWlucHV0X19sYWJlbCBzcGFuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlc3Npb24taW5wdXRfX2RhdGUge1xuICBmbGV4OiAxIDAgMDtcbiAgbWFyZ2luOiAwIDAuNzVyZW0gMCAwO1xufVxuXG4uc2Vzc2lvbi1pbnB1dF9fdGltZSB7XG4gIGZsZXg6IDEgMCAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5zZXNzaW9uLWlucHV0X19sYWJlbCB7XG4gICAgZmxleDogMCAwIDEwMHB4O1xuICB9XG4gIC5zZXNzaW9uLWlucHV0X19sYWJlbCA+IGRpdiB7XG4gICAgZmxleDogMTtcbiAgfVxuICAuc2Vzc2lvbi1pbnB1dF9fbGFiZWwgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbi5zaWduLWluLWZvcm0ge1xuICB3aWR0aDogMjByZW07XG4gIG1hcmdpbjogNSUgYXV0bztcbn1cblxuLnNpZ24taW4tZm9ybV9fYnJhbmQge1xuICB3aWR0aDogNi4yNXJlbTtcbiAgaGVpZ2h0OiA2LjI1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnNpZ24taW4tZm9ybV9fYnJhbmQgaW1nIHtcbiAgbWF4LXdpZHRoOiA5NSU7XG59XG5cbi5zaWduLWluLWZvcm1fX3dlbGNvbWUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uc2lnbi1pbi1mb3JtX19iZCB7XG4gIGJveC1zaGFkb3c6IDAgMThweCAzMHB4IC02cHggcmdiYSgwLCAwLCAwLCAwLjM1KTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNpZ24taW4tZm9ybV9fdGl0bGUge1xuICBiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjODg4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uc2lnbi1pbi1mb3JtIGZvcm0ge1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5cbi5zaWduLWluLWZvcm1fX3N1cHBvcnQge1xuICBwYWRkaW5nOiAxLjVyZW0gMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zaWduLWluLWZvcm1fX3N1cHBvcnQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNpZ24taW4tZm9ybV9fc3VwcG9ydCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLnNpZ24taW4tZm9ybV9fc3VwcG9ydCB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgfVxuICAuc2lnbi1pbi1mb3JtX19zdXBwb3J0IGEge1xuICAgIGNvbG9yOiAjODg4O1xuICB9XG59XG5cbi5zaWduLWluLWZvcm0gLm5vLWFjY291bnQtYWN0aW9ucyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogM3JlbSAxLjVyZW0gMS41cmVtO1xufVxuXG4uc2lnbi1pbi1mb3JtIC5uby1hY2NvdW50LWFjdGlvbnMgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnNpZ24taW4tZm9ybSAubm8tYWNjb3VudC1hY3Rpb25zIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6ICMyYTJhMmE7XG59XG5cbi53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXgtd2lkdGg6IDE4Ljc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBjb2xvcjogIzBCMjMyQztcbn1cblxuLndvcmtzaG9wLXN1bW1hcmllcyAud29ya3Nob3Atc3VtbWFyeSAuc3RhdHVzLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwIDRweCAwIDA7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnlfX2ltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzcmVtIDAuNzVyZW0gMS41cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gIGZsZXgtc2hyaW5rOiAxO1xufVxuXG4ud29ya3Nob3Atc3VtbWFyaWVzIC53b3Jrc2hvcC1zdW1tYXJ5X19pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDEyLjVyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLndvcmtzaG9wLXN1bW1hcmllcyAud29ya3Nob3Atc3VtbWFyeV9faW1hZ2UgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxufVxuXG4ud29ya3Nob3Atc3VtbWFyaWVzIC53b3Jrc2hvcC1zdW1tYXJ5IC5wYW5lbF9fYm9keSB7XG4gIGZsZXgtZ3JvdzogMjtcbn1cblxuLndvcmtzaG9wLXN1bW1hcmllcyAud29ya3Nob3Atc3VtbWFyeV9fdGl0bGUge1xuICBjb2xvcjogIzBCMjMyQztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cblxuLndvcmtzaG9wLXN1bW1hcmllcyAud29ya3Nob3Atc3VtbWFyeV9fZGF0ZXMge1xuICBjb2xvcjogIzg4ODtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjODg4O1xufVxuXG4ud29ya3Nob3Atc3VtbWFyaWVzIC53b3Jrc2hvcC1zdW1tYXJ5X19jb2RlIHtcbiAgY29sb3I6ICM4ODg7XG59XG5cbi53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnlfX2NvZGUgLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDAuMzc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjg3NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RhZGFkYTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNTU1O1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbi53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnkgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZmxleC1zaHJpbms6IDE7XG4gIHBhZGRpbmctdG9wOiAxLjEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuMTI1cmVtO1xufVxuXG4ud29ya3Nob3Atc3VtbWFyaWVzIC53b3Jrc2hvcC1zdW1tYXJ5IC5wYW5lbF9fYmxvY2stbGluayBzdmcge1xuICBzdHJva2Utd2lkdGg6IDI7XG4gIG1hcmdpbi10b3A6IC02cHg7XG59XG5cbi53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnkgLnBhbmVsX19hY3Rpb25zIC5idXR0b24ge1xuICBwYWRkaW5nOiAxLjM3NXJlbSAwLjM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAud29ya3Nob3Atc3VtbWFyaWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnkge1xuICAgIHdpZHRoOiAxNy41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS44NzVyZW07XG4gIH1cbn1cblxuLndvcmtzaG9wLXN1bW1hcmllcyAud29ya3Nob3Atc3VtbWFyeS0tbmV3IHtcbiAgYm9yZGVyLWNvbG9yOiAjZDlkOWQ5O1xufVxuXG4ud29ya3Nob3Atc3VtbWFyaWVzIC53b3Jrc2hvcC1zdW1tYXJ5LS1tb3JlIHtcbiAgYm9yZGVyOiAycHggZGFzaGVkICNkOWQ5ZDk7XG4gIGJhY2tncm91bmQ6ICNmM2YzZjM7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi53b3Jrc2hvcC1zdW1tYXJpZXMgLndvcmtzaG9wLXN1bW1hcnktLW1vcmUgPiBkaXYge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGNvbG9yOiAjODg4O1xufVxuXG4ud29ya3Nob3AtaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC53b3Jrc2hvcC1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cblxuLndvcmtzaG9wLWhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4ud29ya3Nob3AtaGVhZGVyIC5zdGF0dXMtbGFiZWwge1xuICBwYWRkaW5nOiAwLjMxMjVyZW0gMC43NXJlbTtcbn1cblxuLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnVpLWRhdGVwaWNrZXItZ3JvdXA6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xufVxuXG4udWktZGF0ZXBpY2tlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDZweCAxMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luOiAwLjc1cmVtO1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0ZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkIGEge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBwYWRkaW5nOiAwLjE4NzVyZW07XG59XG5cbi51aS1kYXRlcGlja2VyIGEge1xuICBjb2xvcjogIzg4ODtcbn1cblxuLnVpLWRhdGVwaWNrZXIgdGQ6bm90KC51aS1zdGF0ZS1kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS1kYXRlcGlja2VyIHRkOm5vdCgudWktc3RhdGUtZGlzYWJsZWQpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzM2QjJERjtcbn1cblxuLnVpLWRhdGVwaWNrZXIgdGQ6bm90KC51aS1zdGF0ZS1kaXNhYmxlZCk6aG92ZXIgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgcGFkZGluZzogMC43NXJlbSAwLjc1cmVtIDA7XG59XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzM2QjJERjtcbn1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgb3JkZXI6IDM7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS1kYXRlcGlja2VyIC51aS1zdGF0ZS1kZWZhdWx0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udWktZGF0ZXBpY2tlciB0ZC51aS1kYXRlcGlja2VyLXRvZGF5IHtcbiAgYmFja2dyb3VuZDogI2Q3ZjBmOTtcbn1cblxuLnVpLWRhdGVwaWNrZXIgdGQudWktZGF0ZXBpY2tlci10b2RheSBhIHtcbiAgY29sb3I6ICMzNkIyREY7XG59XG5cbi51aS1kYXRlcGlja2VyIHRkLnVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkge1xuICBiYWNrZ3JvdW5kOiAjMzZCMkRGO1xufVxuXG4udWktZGF0ZXBpY2tlciB0ZC51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5IGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zaWduLWluIHtcbiAgcGFkZGluZzogMi42MjVyZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzEzM2U0ZSwgIzUyNTkyYSk7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbi5jb2xvci1maXJlZmx5IHtcbiAgY29sb3I6ICMwQjIzMkMgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLXRhcmF3ZXJhIHtcbiAgY29sb3I6ICMwNzM4NEEgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWJsdWUtZ3JlZW4ge1xuICBjb2xvcjogIzEyOERCQSAhaW1wb3J0YW50O1xufVxuXG4uY29sb3Itc3VtbWVyLXNreSB7XG4gIGNvbG9yOiAjMzZCMkRGICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci13YXR0bGUge1xuICBjb2xvcjogI0QwREQ0MyAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItaG9uZXlzdWNrbGUge1xuICBjb2xvcjogI0U5RkY3NyAhaW1wb3J0YW50O1xufVxuXG4uY29sb3Itd2hpdGUtc21va2Uge1xuICBjb2xvcjogI2Y1ZjVmNSAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItbWVyY3VyeSB7XG4gIGNvbG9yOiAjZTZlNmU2ICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1hbHRvIHtcbiAgY29sb3I6ICNkYWRhZGEgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWp1bWJvLCAuY29sb3ItbmV1dHJhbCB7XG4gIGNvbG9yOiAjODg4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1zdHJhd2JlcnJ5IHtcbiAgY29sb3I6ICNFQjI2MUEgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWdvbGRlbi1kcmVhbSB7XG4gIGNvbG9yOiAjRjZEMTJEICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1kYXJrLXBhc3RlbC1ncmVlbiB7XG4gIGNvbG9yOiAjMTJDNDIxICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1yaWNoLWVsZWN0cmljLWJsdWUge1xuICBjb2xvcjogIzA5OEFEOCAhaW1wb3J0YW50O1xufVxuXG4uYmctZmlyZWZseSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwQjIzMkM7XG59XG5cbi5iZy10YXJhd2VyYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwNzM4NEE7XG59XG5cbi5iZy1ibHVlLWdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyOERCQTtcbn1cblxuLmJnLXN1bW1lci1za3kge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzZCMkRGO1xufVxuXG4uYmctd2F0dGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QwREQ0Mztcbn1cblxuLmJnLWhvbmV5c3Vja2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U5RkY3Nztcbn1cblxuLmJnLXdoaXRlLXNtb2tlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbn1cblxuLmJnLW1lcmN1cnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xufVxuXG4uYmctYWx0byB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWRhZGE7XG59XG5cbi5iZy1qdW1ibywgLmJnLW5ldXRyYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4O1xufVxuXG4uYmctc3RyYXdiZXJyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQjI2MUE7XG59XG5cbi5iZy1nb2xkZW4tZHJlYW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZEMTJEO1xufVxuXG4uYmctZGFyay1wYXN0ZWwtZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTJDNDIxO1xufVxuXG4uYmctcmljaC1lbGVjdHJpYy1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5OEFEODtcbn1cblxuLmZpbGwtc3RyYXdiZXJyeSB7XG4gIGZpbGw6ICNFQjI2MUE7XG59XG5cbi5maWxsLWdvbGRlbi1kcmVhbSB7XG4gIGZpbGw6ICNGNkQxMkQ7XG59XG5cbi5maWxsLWRhcmstcGFzdGVsLWdyZWVuIHtcbiAgZmlsbDogIzEyQzQyMTtcbn1cblxuLmZpbGwtcmljaC1lbGVjdHJpYy1ibHVlIHtcbiAgZmlsbDogIzA5OEFEODtcbn1cblxuLnN0cm9rZS1zdHJhd2JlcnJ5IHtcbiAgc3Ryb2tlOiAjRUIyNjFBO1xufVxuXG4uc3Ryb2tlLWdvbGRlbi1kcmVhbSB7XG4gIHN0cm9rZTogI0Y2RDEyRDtcbn1cblxuLnN0cm9rZS1kYXJrLXBhc3RlbC1ncmVlbiB7XG4gIHN0cm9rZTogIzEyQzQyMTtcbn1cblxuLnN0cm9rZS1yaWNoLWVsZWN0cmljLWJsdWUge1xuICBzdHJva2U6ICMwOThBRDg7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5leHBhbmQtaGVpZ2h0IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZXhwYW5kLXdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2xsYXBzZS1tYXJnaW4ge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLmNvbGxhcHNlLW1hcmdpbi10b3Age1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xsYXBzZS1tYXJnaW4tYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uY29sbGFwc2UtbWFyZ2luLWxlZnQge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uY29sbGFwc2UtbWFyZ2luLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xsYXBzZS1wYWRkaW5nIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uY29sbGFwc2UtcGFkZGluZy10b3Age1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uY29sbGFwc2UtcGFkZGluZy1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uY29sbGFwc2UtcGFkZGluZy1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xsYXBzZS1wYWRkaW5nLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucGFkLWZpbGwtbmV1dHJhbCB7XG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbn1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAubWVkaXVtLXB1bGwtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLm1lZGl1bS1wdWxsLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxhcmdlLXB1bGwtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5sYXJnZS1wdWxsLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsImh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuKiwqOmJlZm9yZSwgKjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuaHRtbCwgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogJHRhcmF3ZXJhO1xufVxuXG4uYXBwLWJvZHkge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM2KTtcbn1cblxuLmFwcC1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICZfX2JvZHkge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKCRtYXgtd2lkdGgpO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjQgMTUpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0OCAzMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAzMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ncmF5IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLXNtb2tlO1xuICAgIH1cbn1cblxuLmljb24ge1xuICAgIGZpbGw6ICMyMjIyMjI7XG4gICAgc3Ryb2tlOiAjMjIyMjIyO1xufVxuIiwiJHJlbS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBTVFJJUCBVTklUXG4vLyBJdCBzdHJpcHMgdGhlIHVuaXQgb2YgbWVhc3VyZSBhbmQgcmV0dXJucyBpdFxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuXG4vLyBDT05WRVJUIFRPIFJFTVxuQGZ1bmN0aW9uIGNvbnZlcnQtdG8tcmVtKCR2YWx1ZSwgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xuICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UtdmFsdWUpICogMXJlbTtcbiAgQGlmICgkdmFsdWUgPT0gMHJlbSkgeyAkdmFsdWU6IDA7IH0gLy8gVHVybiAwcmVtIGludG8gMFxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIGRhdGEoJGF0dHIpIHtcbiAgQGlmICRuYW1lc3BhY2Uge1xuICAgIEByZXR1cm4gJ1tkYXRhLScgKyAkbmFtZXNwYWNlICsgJy0nICsgJGF0dHIgKyAnXSc7XG4gIH1cblxuICBAcmV0dXJuICdbZGF0YS0nICsgJGF0dHIgKyAnXSc7XG59XG5cbi8vIFJFTSBDQUxDXG5cbi8vIE5ldyBTeW50YXgsIGFsbG93cyB0byBvcHRpb25hbGx5IGNhbGN1bGF0ZSBvbiBhIGRpZmZlcmVudCBiYXNlIHZhbHVlIHRvIGNvdW50ZXIgY29tcG91bmRpbmcgZWZmZWN0IG9mIHJlbSdzLlxuLy8gQ2FsbCB3aXRoIDEsIDIsIDMgb3IgNCBwYXJhbWV0ZXJzLCAncHgnIGlzIG5vdCByZXF1aXJlZCBidXQgc3VwcG9ydGVkOlxuLy9cbi8vICAgcmVtLWNhbGMoMTAgMjAgMzBweCA0MCk7XG4vL1xuLy8gU3BhY2UgZGVsaW1pdGVkLCBpZiB5b3Ugd2FudCB0byBkZWxpbWl0IHVzaW5nIGNvbW1hJ3MsIHdyYXAgaXQgaW4gYW5vdGhlciBwYWlyIG9mIGJyYWNrZXRzXG4vL1xuLy8gICByZW0tY2FsYygoMTAsIDIwLCAzMCwgNDBweCkpO1xuLy9cbi8vIE9wdGlvbmFsbHkgY2FsbCB3aXRoIGEgZGlmZmVyZW50IGJhc2UgKGVnOiA4cHgpIHRvIGNhbGN1bGF0ZSByZW0uXG4vL1xuLy8gICByZW0tY2FsYygxNnB4IDMycHggNDhweCwgOHB4KTtcbi8vXG4vLyBJZiB5b3UgcmVxdWlyZSB0byBjb21tYSBzZXBhcmF0ZSB5b3VyIGxpc3Rcbi8vXG4vLyAgIHJlbS1jYWxjKCgxNnB4LCAzMnB4LCA0OCksIDhweCk7XG5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICRtYXg6IGxlbmd0aCgkdmFsdWVzKTtcblxuICBAaWYgJG1heCA9PSAxIHsgQHJldHVybiBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgMSksICRiYXNlLXZhbHVlKTsgfVxuXG4gICRyZW1WYWx1ZXM6ICgpO1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xuICAgICRyZW1WYWx1ZXM6IGFwcGVuZCgkcmVtVmFsdWVzLCBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZS12YWx1ZSkpO1xuICB9XG4gIEByZXR1cm4gJHJlbVZhbHVlcztcbn1cblxuXG5AZnVuY3Rpb24gZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICRyZW1WYWx1ZXM6IHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpO1xuXG4gICRtYXg6IGxlbmd0aCgkcmVtVmFsdWVzKTtcblxuICBAaWYgJG1heCA9PSAxIHsgQHJldHVybiBzdHJpcC11bml0KG50aCgkcmVtVmFsdWVzLCAxKSkgKiAxZW07IH1cblxuICAkZW1WYWx1ZXM6ICgpO1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xuICAgICRlbVZhbHVlczogYXBwZW5kKCRlbVZhbHVlcywgc3RyaXAtdW5pdChudGgoJHJlbVZhbHVlcywgJGkpKSAqIDFlbSk7XG4gIH1cbiAgQHJldHVybiAkZW1WYWx1ZXM7XG59XG5cblxuXG5cbi8vIFotSU5ERVhcbkBmdW5jdGlvbiB6KCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCR6LWxheWVycywgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkei1sYXllcnMsICRrZXkpO1xuICB9XG5cbiAgQHdhcm4gXCJVbmtub3duIGAjeyRrZXl9YCBpbiAkei1sYXllcnMuXCI7XG4gIEByZXR1cm4gbnVsbDtcbn0iLCJib2R5IHtcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6ICRyZW0tYmFzZTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoJGJhc2VsaW5lICogNCk7XG59XG5cbmEge1xuICAgIGNvbG9yOiAkc3VtbWVyLXNreTtcbn1cblxuLmljb24tbGluayxcbi5pY29uLXRleHQge1xuICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAwLjE4ZW07XG4gICAgfVxufVxuXG5hLm5ldXRyYWwtbGluayB7XG4gICAgY29sb3I6ICRqdW1ibztcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHN1bW1lci1za3k7XG4gICAgfVxufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCB1bCwgb2wge1xuICAgIC8vIGJhY2tncm91bmQ6IHJnYmEocmVkLCAwLjEpO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbmgxLCAuYWxwaGEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKCRiYXNlbGluZSAqIDYpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygkYmFzZWxpbmUgKiA4KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkYmFzZWxpbmUgKiAyKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoJGJhc2VsaW5lICogMTEuMzMzMzMpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoJGJhc2VsaW5lICogMTIpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkYmFzZWxpbmUgKiA0KTtcbiAgICB9XG59XG5oMiwgLmJldGEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKCRiYXNlbGluZSAqIDQuNjY2NjYpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygkYmFzZWxpbmUgKiA4KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkYmFzZWxpbmUgKiA0KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoJGJhc2VsaW5lICogNyk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygkYmFzZWxpbmUgKiA4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGJhc2VsaW5lICogNCk7XG4gICAgfVxufVxuaDMsIC5nYW1tYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoJGJhc2VsaW5lICogMy41KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoJGJhc2VsaW5lICogNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogJGJhc2VsaW5lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygkYmFzZWxpbmUgKiA0LjMzMzMzKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKCRiYXNlbGluZSAqIDgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoJGJhc2VsaW5lICogMik7XG4gICAgfVxufVxuaDQsIC5kZWx0YSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXN0eWxlOiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogJHJlbS1iYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygkYmFzZWxpbmUgKiA0KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkYmFzZWxpbmUpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmVtLWJhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygkYmFzZWxpbmUgKiA0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGJhc2VsaW5lICogMik7XG4gICAgfVxufVxuaDUsIC5lcHNpbG9uIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoJGJhc2VsaW5lICogMi4yNSk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKCRiYXNlbGluZSAqIDQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDQ1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygkYmFzZWxpbmUgKiAyLjI1KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKCRiYXNlbGluZSAqIDQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkYmFzZWxpbmUpO1xuICAgIH1cbn1cblxuXG5cbnAsIHVsLCBvbCwgcHJlLCB0YWJsZSwgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRiYXNlbGluZSAqIDQpO1xufVxuXG51bCB1bCwgb2wgb2wsIHVsIG9sLCBvbCB1bCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG51bCBsaSxcbm9sIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbn1cblxuLm5vLWJ1bGxldHMge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGluay1saXN0IHtcbiAgICBsaW5lLWhlaWdodDogMS45O1xufVxuXG5ociB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDI0IDAgMjMpO1xufVxuXG5iLCBzdHJvbmcsIGVtLCBzbWFsbCwgY29kZSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuc21hbGwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDAuODVlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4ubGFyZ2UtdGV4dCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygkcmVtLWJhc2UgKiAxLjUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xufVxuXG4uc21hbGwtdGV4dCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygkcmVtLWJhc2UgKiAwLjkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xufVxuIiwiLmJ1dHRvbixcbmJ1dHRvbi5idXR0b24sXG5pbnB1dC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiAwLjhlbSAzZW07XG4gICAgYmFja2dyb3VuZDogJHN1bW1lci1za3k7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRzdW1tZXItc2t5LCA4JSk7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEod2hpdGUsIDAuMSkgaW5zZXQsXG4gICAgICAgIDAgM3B4IDEycHggLTZweCBkYXJrZW4oJHN1bW1lci1za3ksIDcwJSk7XG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIGRhcmtlbigkc3VtbWVyLXNreSwgMTUlKTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGxpbmVhcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRzdW1tZXItc2t5LCAyJSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKHdoaXRlLCAwLjEpIGluc2V0LFxuICAgICAgICAgICAgMCA2cHggMTVweCAtNnB4IHJnYmEoZGFya2VuKCRzdW1tZXItc2t5LCA3MCUpLCAwLjUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMS41cyBsaW5lYXI7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHN1bW1lci1za3ksIDUlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDA7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXItY29sb3I6ICRzdW1tZXItc2t5O1xuICAgIH1cblxuICAgIC8vIFNlY29uZGFyeVxuICAgICYtLXNlY29uZGFyeSxcbiAgICAmLS1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjODg4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEdyYXkgYnV0dG9uXG4gICAgJi0tbmV1dHJhbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCR3aGl0ZS1zbW9rZSwgMTUlKTtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLXNtb2tlO1xuICAgICAgICBjb2xvcjogJHN1bW1lci1za3k7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDFweCAwIHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSh3aGl0ZSwgMC4zKSBpbnNldCxcbiAgICAgICAgICAgIDAgM3B4IDEycHggLTZweCBkYXJrZW4oJHdoaXRlLXNtb2tlLCAzMCUpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkd2hpdGUtc21va2UsIDElKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKHdoaXRlLCAwLjEpIGluc2V0LFxuICAgICAgICAgICAgICAgIDAgNnB4IDE1cHggLTZweCByZ2JhKGRhcmtlbigkd2hpdGUtc21va2UsIDMwJSksIDAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHdoaXRlLXNtb2tlLCA0JSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMDtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHdoaXRlLXNtb2tlLCA0JSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uc1xuICAgIC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDAuOTVlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjk1ZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0wLjEyZW07XG4gICAgfVxuXG4gICAgLy8gU2l6ZXNcbiAgICAmLS1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICBwYWRkaW5nOiAwLjhlbSAwLjk1ZW07XG4gICAgfVxuXG4gICAgJi0tbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG5cbiAgICAmLS1leHBhbmQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxOCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE4KTtcblxuICAgICAgICArIC5idXR0b24tLWV4cGFuZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWxpbmsge1xuICAgICAgICBjb2xvcjogJHN1bW1lci1za3k7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCA0IDAgMCk7XG4gICAgfVxuXG4gICAgLy8gU3RhdGVzXG4gICAgJi0tZGlzYWJsZWQge1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkd2hpdGUtc21va2UsIDE1JSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDFweCAwIHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSh3aGl0ZSwgMC4zKSBpbnNldCwgMCAwIDA7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHdoaXRlLXNtb2tlLCAxNSUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLXNtb2tlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEod2hpdGUsIDAuMSkgaW5zZXQsIDAgMCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIGNvbG9yc1xuICAgICYtLWVycm9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0cmF3YmVycnk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRzdHJhd2JlcnJ5LCAxNSUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc3RyYXdiZXJyeTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgZGFya2VuKCRzdHJhd2JlcnJ5LCAxNSUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSh3aGl0ZSwgMC4zKSBpbnNldCxcbiAgICAgICAgICAgIDAgM3B4IDEycHggLTZweCBkYXJrZW4oJHN0cmF3YmVycnksIDMwJSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRzdHJhd2JlcnJ5LCAxJSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSh3aGl0ZSwgMC4xKSBpbnNldCxcbiAgICAgICAgICAgICAgICAwIDZweCAxNXB4IC02cHggcmdiYShkYXJrZW4oJHN0cmF3YmVycnksIDMwJSksIDAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHN0cmF3YmVycnksIDQlKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkc3RyYXdiZXJyeSwgNCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tc3VjY2VzcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXBhc3RlbC1ncmVlbjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGRhcmstcGFzdGVsLWdyZWVuLCAxNSUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1wYXN0ZWwtZ3JlZW47XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIGRhcmtlbigkZGFyay1wYXN0ZWwtZ3JlZW4sIDE1JSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKHdoaXRlLCAwLjMpIGluc2V0LFxuICAgICAgICAgICAgMCAzcHggMTJweCAtNnB4IGRhcmtlbigkZGFyay1wYXN0ZWwtZ3JlZW4sIDMwJSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRkYXJrLXBhc3RlbC1ncmVlbiwgMSUpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEod2hpdGUsIDAuMSkgaW5zZXQsXG4gICAgICAgICAgICAgICAgMCA2cHggMTVweCAtNnB4IHJnYmEoZGFya2VuKCRkYXJrLXBhc3RlbC1ncmVlbiwgMzAlKSwgMC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkZGFyay1wYXN0ZWwtZ3JlZW4sIDQlKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkZGFyay1wYXN0ZWwtZ3JlZW4sIDQlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXdhcm5pbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ29sZGVuLWRyZWFtO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkZ29sZGVuLWRyZWFtLCAxNSUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ29sZGVuLWRyZWFtO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIC0xcHggMCBkYXJrZW4oJGdvbGRlbi1kcmVhbSwgMTUlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEod2hpdGUsIDAuMykgaW5zZXQsXG4gICAgICAgICAgICAwIDNweCAxMnB4IC02cHggZGFya2VuKCRnb2xkZW4tZHJlYW0sIDMwJSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRnb2xkZW4tZHJlYW0sIDElKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKHdoaXRlLCAwLjEpIGluc2V0LFxuICAgICAgICAgICAgICAgIDAgNnB4IDE1cHggLTZweCByZ2JhKGRhcmtlbigkZ29sZGVuLWRyZWFtLCAzMCUpLCAwLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRnb2xkZW4tZHJlYW0sIDQlKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkZ29sZGVuLWRyZWFtLCA0JSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1hdHRlbnRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmljaC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcmljaC1lbGVjdHJpYy1ibHVlLCAxNSUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcmljaC1lbGVjdHJpYy1ibHVlO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIC0xcHggMCBkYXJrZW4oJHJpY2gtZWxlY3RyaWMtYmx1ZSwgMTUlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEod2hpdGUsIDAuMykgaW5zZXQsXG4gICAgICAgICAgICAwIDNweCAxMnB4IC02cHggZGFya2VuKCRyaWNoLWVsZWN0cmljLWJsdWUsIDMwJSk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRyaWNoLWVsZWN0cmljLWJsdWUsIDElKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKHdoaXRlLCAwLjEpIGluc2V0LFxuICAgICAgICAgICAgICAgIDAgNnB4IDE1cHggLTZweCByZ2JhKGRhcmtlbigkcmljaC1lbGVjdHJpYy1ibHVlLCAzMCUpLCAwLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRyaWNoLWVsZWN0cmljLWJsdWUsIDQlKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcmljaC1lbGVjdHJpYy1ibHVlLCA0JSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsImZpZWxkc2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtlbigkd2hpdGUtc21va2UsIDglKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMzAgMCAwKTtcblxuICAgIC5wYW5lbCAmIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCR3aGl0ZS1zbW9rZSwgMTIlKTtcbiAgICB9XG5cbiAgICAucGFuZWwtLXJhaXNlZCAmIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHdoaXRlLXNtb2tlO1xuICAgIH1cblxuICAgIGxlZ2VuZCB7XG4gICAgICAgIEBleHRlbmQgLmRlbHRhO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDYgMCAwKTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcbiAgICB9XG59XG5cbi5mb3JtX19maWVsZCB7XG4gICAgbWFyZ2luOiByZW0tY2FsYygxMiAwIDE4KTtcbn1cblxubGFiZWw6bm90KC5mb3JtX19vcHRpb24tZ3JvdXBfX2xhYmVsKSxcbi5mb3JtX19maWVsZF9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzVlbTtcbiAgICBjb2xvcjogJGp1bWJvO1xufVxuXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT1lbWFpbF0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcbnRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMSk7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggM3B4IDAgcmdiYShibGFjaywgMC4wOTUpIGluc2V0O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKCRzdW1tZXItc2t5LCAwLjEpO1xuICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkc3VtbWVyLXNreSwgMjQlKTtcbiAgICB9XG5cbiAgICAmW2Rpc2FibGVkXSxcbiAgICAmLmlucHV0LS1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG1lcmN1cnk7XG4gICAgICAgIGNvbG9yOiAkanVtYm87XG4gICAgfVxuXG4gICAgJi5pbmxpbmUtaW5wdXQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbnNlbGVjdCB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGRkO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDIpO1xuICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMTgwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDNweCAwIHJnYmEoYmxhY2ssIDAuMDk1KTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8vIE9wdGlvbiBncm91cCAoY2hlY2tib3hlcyBhbmQgcmFkaW9zKVxuLmZvcm1fX2ZpZWxkX19vcHRpb24tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcblxuICAgIGxhYmVsIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJlbS1iYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogJGZpcmVmbHk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcblxuICAgICAgICAmLmJpZy1vcHRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtX19maWVsZF9faGVscC10ZXh0LFxuICAgICAgICAgICAgLmZvcm1fX2ZpZWxkX19lcnJvci10ZXh0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNik7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uZm9ybV9fZmllbGRfX2hlbHAtdGV4dCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGNvbG9yOiAkY2hhcmNvYWw7XG5cbiAgICBbY2xhc3MqPVwiaWNvblwiXSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgfVxufVxuXG4uZm9ybV9fZmllbGRfX2hlbHAtdGV4dCB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uZm9ybV9fZmllbGRfX2Vycm9yLXRleHQge1xuICAgIGNvbG9yOiAkc3RyYXdiZXJyeTtcbn1cblxuLy8gVmFsaWRhdGlvbiBVSVxuLmZvcm1fX2ZpZWxkLS1oYXMtZXJyb3Ige1xuICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRzdHJhd2JlcnJ5O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgaW5wdXRbdHlwZT1lbWFpbF0sXG4gICAgaW5wdXRbdHlwZT10ZWxdLFxuICAgIGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoJHN0cmF3YmVycnksIDAuMSk7XG4gICAgICAgIG91dGxpbmU6IDAgbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRzdHJhd2JlcnJ5LCAyNCUpO1xuICAgIH1cbn1cbiIsIi5ncmlkLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoJG1heC13aWR0aCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAmLmV4cGFuZCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmNlbnRlcmVkIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgLmdyaWQtY29sdW1uIHtcbiAgICAgICAgLnZlcnRpY2FsLWNlbnRlciB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBhbGxvdyBjb250ZW50cyB0byBiZSBmdWxsIHdpZHRoIGFuZCBmdWxsIGhlaWdodFxuICAgICAgICAuZml0LWNvbnRlbnRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zdHJva2Uge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICAgIC5ncmlkLWNvbHVtbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwICRndXR0ZXItc21hbGwpO1xuXG4gICAgICAgICAgICAuZ3JpZC1yb3cuY29sbGFwc2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAoLSRndXR0ZXItc21hbGwpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICAmLnNtYWxsLXNwYW4tI3skaX0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogKCgkaSAvICRncmlkLWNvbHVtbnMpICogMTAwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgLmdyaWQtY29sdW1uIHtcblxuICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICAmLm1lZGl1bS1zcGFuLSN7JGl9IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICgkaSAvICRncmlkLWNvbHVtbnMpICogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC5ncmlkLWNvbHVtbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwICRndXR0ZXItbGFyZ2UpO1xuXG4gICAgICAgICAgICAuZ3JpZC1yb3cuY29sbGFwc2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAoLSRndXR0ZXItbGFyZ2UpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICAmLmxhcmdlLXNwYW4tI3skaX0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogKCRpIC8gJGdyaWQtY29sdW1ucykgKiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsInRhYmxlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRtZXJjdXJ5O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRtZXJjdXJ5O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAgIC5wYW5lbF9fYm9keS0tY29sbGFwc2UgJiB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICB0aDpsYXN0LWNoaWxkLCB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyOmxhc3QtY2hpbGQgdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudGFibGUtLWZ1bGwtd2lkdGgge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYgMTIpO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZXJjdXJ5O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRhYmxlLS1yb29teSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMiAyNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRhYmxlLS1leHRyYS1yb29teSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNCAzNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0ci5uby1ib3JkZXJzIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRyLnNoYWRlIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vbGl2ZXMgaW5zaWRlIG9mIC5hcHAtaGVhZGVyXG4vLy5hcHAtaGVhZGVyIHVzZXMgZGlzcGxheTpmbGV4O1xuXG4uYXBwLW5hdiB7XG4gICAgZmxleC1ncm93OiAxO1xuXG4gICAgJi10cmlnZ2VyIHtcbiAgICAgICAgLy8uLi5cbiAgICB9XG5cbiAgICAmLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMik7XG4gICAgICAgICAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LXNtYWxsO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LXNtYWxsO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICRqdW1ibztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzdW1tZXItc2t5O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBsaW5lYXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYXBwLWhlYWRlci0tZGFyayAmIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkd2hpdGUtc21va2UsIDUlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSh3aGl0ZSwgMC43KTtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSh3aGl0ZSwgMC43KTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXG4gICAgICAgICYtdHJpZ2dlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxOCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1sYXJnZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRlci1oZWlnaHQtbGFyZ2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1sZWZ0IHtcbiAgICAgICAgICAgIC5hcHAtbmF2LW1lbnUge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1yaWdodCB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgLmFwcC1uYXYtbWVudSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5hY3Rpb24tYmFyIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMik7XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1hY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMiAwKTtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDEyKTtcbiAgICAgICAgY29sb3I6ICM4ODg7XG4gICAgfVxufSIsIi5hZGRyZXNzLWRpc3BsYXkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG59XG4iLCIuYnJlYWRjcnVtYnMge1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDI0KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMiAxOCk7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lcmN1cnk7XG5cbiAgICAmLS1hbmNob3JlZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY3J1bWIge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoOCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAxIDAgOSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoL2Fzc2V0cy9pY29ucy9TVkcvY2hldnJvbi1yaWdodC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgY29sb3I6ICRqdW1ibztcblxuICAgICAgICAgICAgJjphZnRlciB7ZGlzcGxheTogbm9uZTt9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGFuZWxfX2hlYWRlciAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuXG4gICAgICAgIC5icmVhZGNydW1ic19fY3J1bWIge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmljb24tbGlzdCB7XG4gICAgJl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg2KTtcbiAgICB9XG59XG4iLCIvLyBJbnB1dCBncm91cHMgLSBpbnB1dHMgd2l0aCBwcmVmaXhlcyBvciBwb3N0Zml4ZXNcbi5pbnB1dC1wYWlyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMik7XG5cbiAgICAuaW5wdXQtcGFpcl9fbGFiZWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUtc21va2U7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZXJjdXJ5O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIC5idXR0b24sXG4gICAgLmlucHV0LXBhaXJfX2xhYmVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE4KTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuaW5wdXQtcGFpcl9fcHJlZml4LFxuICAgIC5pbnB1dC1wYWlyX19wb3N0Zml4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuaW5wdXQtcGFpcl9fcHJlZml4IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICB9XG5cbiAgICAuaW5wdXQtcGFpcl9fcG9zdGZpeCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xuICAgIH1cbn1cbiIsIi8vIElzbGFuZHMgYXJlIGp1c3Qgc2ltcGxlIGNvbnRhaW5lcnMgd2l0aCBib3R0b20gbWFyZ2luLCBhbmRcbi8vIHBvc3NpYmx5IGEgYm9yZGVyLCB0byBwdXQgY29udGVudCBpblxuLy8gRm9yIGNvbXBsZXggY29udGFpZW5ycyB3aXRoIHBhZGRpbmcsIGFuZCBiYWNrZ3JvdW5kcywgYW5kIHNoYWRvd3MsIHVzZSAucGFuZWxcblxuLmlzbGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpO1xuXG4gICAgJi0tY29udGFpbiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgfVxuXG4gICAgJi0tZmlsbCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgICB9XG5cbiAgICAmLS1leHRyYS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0OCk7XG4gICAgfVxufVxuIiwiLmxvY2F0aW9uLW9wdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi0tZGlzYWJsZWQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWRpc2FibGVkLW92ZXJsYXk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2NhdGlvbi1vcHRpb24ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZXJjdXJ5O1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyIDM2IDEyIDE4KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxOCk7XG4gICAgZmxleDogMCAwIDk4JTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAwLjllbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDEyMCk7XG4gICAgICAgIGZsZXg6IDAgMCA0OCU7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0IDM2IDI0IDI0KTtcblxuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAmX19hZGRyZXNzIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjk1ZW07XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzApO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgYmFja2dyb3VuZDogJHN1bW1lci1za3k7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIEBleHRlbmQgJWhpZ2hsaWdodDtcbiAgICB9XG5cbiAgICAmLS1zZWxlY3RlZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHN1bW1lci1za3k7XG5cbiAgICAgICAgLmxvY2F0aW9uLW9wdGlvbl9faW1hZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW5ldyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiAkc3VtbWVyLXNreTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRzdW1tZXItc2t5O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvY2F0aW9uLW9wdGlvbl9fYWRkLWljb24ge1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjUpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTYpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTIgMjQpO1xuXG4gICAgICAgICAgICAubG9jYXRpb24tb3B0aW9uX19hZGQtaWNvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoNSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5ub3RpY2Uge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0IDI0IDApO1xuICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDApO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICAgIGNvbG9yOiAkanVtYm87XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0OCA0OCAwKTtcbiAgICB9XG5cbiAgICAmX19iZCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE4IDYwIDE4IDE4KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgcCwgdWwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgKyBwLCB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoJHJlbS1iYXNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rpc21pc3Mge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDYyKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2Mik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICYtLWVycm9yIHtcbiAgICAgICAgY29sb3I6ICRzdHJhd2JlcnJ5O1xuXG4gICAgICAgIC5ub3RpY2VfX2JkIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKCRzdHJhd2JlcnJ5LCAwLjEpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkc3RyYXdiZXJyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXdhcm5pbmcge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRnb2xkZW4tZHJlYW0sIDE1JSk7XG5cbiAgICAgICAgLm5vdGljZV9fYmQge1xuICAgICAgICAgICAgY29sb3I6ICMyYTJhMmE7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgkZ29sZGVuLWRyZWFtLCAwLjE1KTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdvbGRlbi1kcmVhbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXN1Y2Nlc3Mge1xuICAgICAgICBjb2xvcjogJGRhcmstcGFzdGVsLWdyZWVuO1xuXG4gICAgICAgIC5ub3RpY2VfX2JkIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKCRkYXJrLXBhc3RlbC1ncmVlbiwgMC4xKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGRhcmstcGFzdGVsLWdyZWVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tYXR0ZW50aW9uIHtcbiAgICAgICAgY29sb3I6ICRyaWNoLWVsZWN0cmljLWJsdWU7XG5cbiAgICAgICAgLm5vdGljZV9fYmQge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoJHJpY2gtZWxlY3RyaWMtYmx1ZSwgMC4xKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHJpY2gtZWxlY3RyaWMtYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wYW5lbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYShibGFjaywgMC4wNSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAucGFuZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIsXG4gICAgJl9fc2VjdGlvbi1oZWFkZXIsXG4gICAgJl9fZm9vdGVyLFxuICAgICZfX2JvZHksXG4gICAgJl9fYmxvY2stbGluayB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTggMTggMTYpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNCAzNiAyMik7XG4gICAgICAgIH1cblxuICAgICAgICAucGFuZWwtLWNvbXBhY3QgJiB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxOCAxOCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBAZXh0ZW5kIC5lcHNpbG9uO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAgICAgZW0ge1xuICAgICAgICAgICAgY29sb3I6ICRqdW1ibztcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBjb2xvcjogJGp1bWJvO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMyAwIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYWN0aW9uIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlY3Rpb24taGVhZGVyIHtcbiAgICAgICAgQGV4dGVuZCAucGFuZWxfX2hlYWRlcjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZXJjdXJ5O1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgICAgICsgLnBhbmVsX19ib2R5IHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JvZHkge1xuICAgICAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLnBhbmVsX19ib2R5IHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLnBhbmVsIHtcblxuICAgICAgICAgICAgOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmF0dGVudGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBtaXgoJHN1bW1lci1za3ksIHdoaXRlLCAxMCUpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtaXgoJHN1bW1lci1za3ksIHdoaXRlLCAyNSUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZm9vdGVyLFxuICAgICZfX2FjdGlvbnMge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lcmN1cnk7XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29saWQgYnV0dG9ucyBhY3Jvc3MgdGhlIGJvdHRvbVxuICAgICZfX2FjdGlvbnMge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjogJHN1bW1lci1za3k7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJG1lcmN1cnk7XG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNik7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg2KTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLXNtb2tlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JvZHktLWNvbGxhcHNlIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBGbGF0XG4gICAgJi0tZmxhdCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIC5wYW5lbF9faGVhZGVyLFxuICAgICAgICAucGFuZWxfX2Zvb3RlcixcbiAgICAgICAgLnBhbmVsX19hY3Rpb25zLFxuICAgICAgICAucGFuZWxfX3NlY3Rpb24taGVhZGVyLFxuICAgICAgICAucGFuZWxfX3NlY3Rpb24taGVhZGVyICsgLnBhbmVsX19ib2R5LFxuICAgICAgICAucGFuZWxfX2JvZHkgKyAucGFuZWxfX2JvZHkge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYW5lbF9fYWN0aW9ucyB7XG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc3VtbWVyLXNreTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaGFkZSAtIHVzZWQgb24gZ3JheSBiZ1xuICAgICYtLXNoYWRlIHtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCR3aGl0ZS1zbW9rZSwgMi41JSk7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAucGFuZWxfX2hlYWRlcixcbiAgICAgICAgLnBhbmVsX19mb290ZXIsXG4gICAgICAgIC5wYW5lbF9fc2VjdGlvbi1oZWFkZXIsXG4gICAgICAgIC5wYW5lbF9fYm9keSArIC5wYW5lbF9fYm9keSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZS1zbW9rZTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gSW52aXNpYmxlXG4gICAgJi0taW52aXNpYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICA+IC5wYW5lbF9faGVhZGVyLFxuICAgICAgICA+IC5wYW5lbF9fYm9keSxcbiAgICAgICAgPiAucGFuZWxfX2Zvb3RlciB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGl2aWRlcnNcbiAgICBociB7XG4gICAgICAgICYuZXhwYW5kIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMTgpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtMTgpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMzYpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTM2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gTGlua3NcbiAgICAmX19ibG9jay1saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZXJjdXJ5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgJi5wbGFpbi10ZXh0LFxuICAgICAgICAucGxhaW4tdGV4dCB7XG4gICAgICAgICAgICBjb2xvcjogJGp1bWJvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmljb246Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLmJsb2NrLWxpbmstYXJyb3cge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTYpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIG1vZGlmaWVyc1xuICAgICAgICAmLS1jb21wYWN0IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tZGlzYWJsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLXNtb2tlO1xuICAgICAgICAgICAgY29sb3I6ICRqdW1ibztcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUtc21va2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHN1bW1lci1za3k7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRzdW1tZXItc2t5O1xuICAgICAgICAgICAgbWFyZ2luOiAtMXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc3VtbWVyLXNreTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYW5lbC0tY29tcGFjdCAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyIDE4KTtcblxuICAgICAgICAgICAgLmljb24uYmxvY2stbGluay1hcnJvdyB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtOCk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEucGFuZWxfX2Jsb2NrLWxpbms6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIH1cblxuICAgICZfX2hlYWRlciArIC5wYW5lbF9fYmxvY2stbGluayB7Ym9yZGVyOiBub25lO31cbn1cblxuXG4vLyBQYW5lbHMgYXMgbGlua3NcbmEucGFuZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgICAgICAgY29sb3I6ICRzdW1tZXItc2t5O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBAZXh0ZW5kICVoaWdobGlnaHQ7XG5cbiAgICAgICAgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFuZWwucGFuZWwtLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlaGlnaGxpZ2h0O1xuXG4gICAgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuXG5cbi8vIFBhbmVsIGNvbG9yc1xuLnBhbmVsIHtcbiAgICAmLS1hdHRlbnRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBtaXgoJHN1bW1lci1za3ksIHdoaXRlLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IG1peCgkc3VtbWVyLXNreSwgd2hpdGUsIDI1JSk7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgLnBhbmVsX19oZWFkZXIsXG4gICAgICAgIC5wYW5lbF9fZm9vdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWl4KCRzdW1tZXItc2t5LCB3aGl0ZSwgMjUlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXdhcm5pbmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiBtaXgoJGdvbGRlbi1kcmVhbSwgd2hpdGUsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbWl4KCRnb2xkZW4tZHJlYW0sIHdoaXRlLCAyNSUpO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgIC5wYW5lbF9faGVhZGVyLFxuICAgICAgICAucGFuZWxfX2Zvb3RlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IG1peCgkZ29sZGVuLWRyZWFtLCB3aGl0ZSwgMjUlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXN1Y2Nlc3Mge1xuICAgICAgICBiYWNrZ3JvdW5kOiBtaXgoJGRhcmstcGFzdGVsLWdyZWVuLCB3aGl0ZSwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtaXgoJGRhcmstcGFzdGVsLWdyZWVuLCB3aGl0ZSwgMjUlKTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAucGFuZWxfX2hlYWRlcixcbiAgICAgICAgLnBhbmVsX19mb290ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtaXgoJGRhcmstcGFzdGVsLWdyZWVuLCB3aGl0ZSwgMjUlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRzdGVwLXdpZHRoOiAxNjBweDtcbiRpY29uLXNpemU6IDM2cHg7XG4kYm9yZGVyLXdpZHRoOiA0cHg7XG5cbi5wcm9ncmVzcy1zdGVwcy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDgpO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyNCk7XG59XG5cbi5wcm9ncmVzcy1zdGVwcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICZfX2JhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fc3RlcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTgpO1xuICAgIH1cblxuICAgICZfX3N0ZXAtaWNvbiB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygkaWNvbi1zaXplIC8gMik7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoJGljb24tc2l6ZSAvIDIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBib3JkZXI6IHJlbS1jYWxjKCRib3JkZXItd2lkdGgpIHNvbGlkICRtZXJjdXJ5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMik7XG5cbiAgICAgICAgc3ZnIHtkaXNwbGF5OiBub25lO31cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRqdW1ibztcbiAgICB9XG5cbiAgICAmX19zdGVwLWxhYmVsIHtcbiAgICAgICAgQGV4dGVuZCAuZXBzaWxvbjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygkc3RlcC13aWR0aCk7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxKTtcbiAgICB9XG5cbiAgICAvLyBNb2RpZmllcnNcbiAgICAmX19zdGVwLS1jb21wbGV0ZSB7XG4gICAgICAgIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZXJjdXJ5IHVybCgvYXNzZXRzL2ljb25zL1NWRy9jaGVjay5zdmcpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDgwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N0ZXAtLWFjdGl2ZSB7XG4gICAgICAgIC5wcm9ncmVzcy1zdGVwc19fc3RlcC1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdW1tZXItc2t5O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogcmVtLWNhbGMoMik7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJG1lcmN1cnk7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiByZW0tY2FsYygkYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggJG1lcmN1cnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZ3Jlc3Mtc3RlcHNfX3N0ZXAtbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRzdW1tZXItc2t5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICZfX2JhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKCgkc3RlcC13aWR0aCAvIDIpICsgKCRpY29uLXNpemUgLyAyKSAtICgkYm9yZGVyLXdpZHRoKSk7XG4gICAgICAgICAgICByaWdodDogcmVtLWNhbGMoKCRzdGVwLXdpZHRoIC8gMikgKyAoJGljb24tc2l6ZSAvIDIpIC0gKCRib3JkZXItd2lkdGgpKTtcbiAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoKCRpY29uLXNpemUgLyAyKSArICgkYm9yZGVyLXdpZHRoIC8gMikpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygkYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0oJGJvcmRlci13aWR0aCkpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lcmN1cnk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdGVwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygkc3RlcC13aWR0aCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdGVwLWljb24ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoJGljb24tc2l6ZSk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKCRpY29uLXNpemUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG5cbiAgICAgICAgICAgIHN2ZyB7ZGlzcGxheTogaW5saW5lO31cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N0ZXAtbGFiZWwge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTIgMCAwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5zZWN0aW9uLWFjdGlvbnMge1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDI0KTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZXJjdXJ5O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyIDE4KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnN0YXR1cy1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICRtZXJjdXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAmLmxpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1wYXN0ZWwtZ3JlZW47XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAmLmNvbWluZy11cCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRnb2xkZW4tZHJlYW07XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAmLm5vdC1wdXJjaGFzZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc3RyYXdiZXJyeTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbn1cbiIsIi5hcHAtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKCRoZWFkZXItaGVpZ2h0LXNtYWxsKTtcbiAgICBib3gtc2hhZG93OiAwIDJweCAwIDAgcmdiYShibGFjaywgMC4wNCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5icmFuZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICZfX21hcmsge1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKCRoZWFkZXItaGVpZ2h0LXNtYWxsKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoJGhlYWRlci1oZWlnaHQtc21hbGwpO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoJGhlYWRlci1oZWlnaHQtc21hbGwpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKCRoZWFkZXItaGVpZ2h0LXNtYWxsKTtcbiAgICAgICAgICAgIGNvbG9yOiAkc3VtbWVyLXNreTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDY1ZW07XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZW0tYmFzZSAvIDEuMjtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoJGhlYWRlci1oZWlnaHQtbGFyZ2UpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxOCk7XG5cbiAgICAgICAgLmJyYW5kIHtcbiAgICAgICAgICAgICZfX21hcmsge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoJGhlYWRlci1oZWlnaHQtbGFyZ2UpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoJGhlYWRlci1oZWlnaHQtbGFyZ2UpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRyZW0tYmFzZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoJGhlYWRlci1oZWlnaHQtbGFyZ2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIERhcmsgSGVhZGVyXG4uYXBwLWhlYWRlci0tZGFyayB7XG4gICAgYmFja2dyb3VuZDogJHRhcmF3ZXJhO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDAgMDtcbn1cbiIsIi5hcHAtZm9vdGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDM2KTtcbiAgICBjb2xvcjogJHdoaXRlLXNtb2tlO1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG5cbiAgICBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICNjY2M7XG4gICAgfVxufVxuIiwiLmtpdHMtaW5wdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTggMjQpO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQwMCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIGZsZXg6IDAgMCA3MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuIiwiLnNlc3Npb24taW5wdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuXG4gICAgJl9fbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAwIDAgMzBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDM5KTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTYpO1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuICB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGF0ZSB7XG4gICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMTIgMCAwKTtcbiAgICB9XG5cbiAgICAmX190aW1lIHtcbiAgICAgICAgZmxleDogMSAwIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblxuICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwcHg7XG5cbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNpZ24taW4tZm9ybSB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDMyMCk7XG4gICAgbWFyZ2luOiA1JSBhdXRvO1xuXG4gICAgJl9fYnJhbmQge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMDApO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5NSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX193ZWxjb21lIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAmX19iZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMThweCAzMHB4IC02cHggcmdiYShibGFjaywgMC4zNSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjBmMGYwO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyIDI0KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGp1bWJvO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIGZvcm0ge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNCk7XG4gICAgfVxuXG4gICAgJl9fc3VwcG9ydCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0IDAgMCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4ODg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubm8tYWNjb3VudC1hY3Rpb25zIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0OCAyNCAyNCk7XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh3aGl0ZSwgMC44KTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyYTJhMmE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIud29ya3Nob3Atc3VtbWFyaWVzIHtcblxuICAgIC53b3Jrc2hvcC1zdW1tYXJ5IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzYpO1xuICAgICAgICBjb2xvcjogJGZpcmVmbHk7XG5cbiAgICAgICAgLnN0YXR1cy1sYWJlbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIgMTIpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCA0cHggMCAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQ4IDEyIDI0KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVyY3VyeTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDE7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYW5lbF9fYm9keSB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDI7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogJGZpcmVmbHk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19kYXRlcyB7XG4gICAgICAgICAgICBjb2xvcjogJGp1bWJvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGp1bWJvO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29kZSB7XG4gICAgICAgICAgICBjb2xvcjogJGp1bWJvO1xuXG4gICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDYpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYWx0bztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhbmVsX19ibG9jay1saW5rIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTgpO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhbmVsX19hY3Rpb25zIHtcbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIyIDYpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC53b3Jrc2hvcC1zdW1tYXJ5IHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyODApO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXcgd29ya3Nob3BzXG4gICAgLndvcmtzaG9wLXN1bW1hcnktLW5ldyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRtZXJjdXJ5LCA1JSk7XG4gICAgfVxuXG4gICAgLy8gTW9yZSB3b3Jrc2hvcHMgY29taW5nXG4gICAgLndvcmtzaG9wLXN1bW1hcnktLW1vcmUge1xuICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgZGFya2VuKCRtZXJjdXJ5LCA1JSk7XG4gICAgICAgIGJhY2tncm91bmQ6IG1peCgkbWVyY3VyeSwgd2hpdGUsIDUwJSk7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICBjb2xvcjogJGp1bWJvO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLndvcmtzaG9wLWhlYWRlciB7XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0OCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMik7XG4gICAgfVxuXG4gICAgLnN0YXR1cy1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMTIpO1xuICAgIH1cbn1cbiIsIi51aS1kYXRlcGlja2VyLWdyb3VwIHtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDYpO1xuICAgIH1cbn1cblxuLnVpLWRhdGVwaWNrZXIge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgNnB4IDEycHggMCByZ2JhKGJsYWNrLCAwLjIpO1xuXG4gICAgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTIpO1xuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkanVtYm87XG4gICAgfVxuXG4gICAgdGQ6bm90KC51aS1zdGF0ZS1kaXNhYmxlZCkge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc3VtbWVyLXNreTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLXNtb2tlO1xuICAgIH1cblxuICAgIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTIgMTIgMCk7XG4gICAgfVxuXG4gICAgLnVpLWRhdGVwaWNrZXItcHJldixcbiAgICAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogJHN1bW1lci1za3k7XG4gICAgfVxuXG4gICAgLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgICAgICBvcmRlcjogMztcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIC51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC51aS1zdGF0ZS1kZWZhdWx0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIHRkLnVpLWRhdGVwaWNrZXItdG9kYXkge1xuICAgICAgICBiYWNrZ3JvdW5kOiBtaXgoJHN1bW1lci1za3ksIHdoaXRlLCAyMCUpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRzdW1tZXItc2t5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGQudWktZGF0ZXBpY2tlci1jdXJyZW50LWRheSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzdW1tZXItc2t5O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNpZ24taW4ge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQyKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIG1peChibGFjaywgJHN1bW1lci1za3ksIDY1JSksIG1peChibGFjaywgJGhvbmV5c3Vja2xlLCA2NSUpKTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuIiwiLy8gQ29sb3JzXG4uY29sb3ItZmlyZWZseSB7Y29sb3I6ICRmaXJlZmx5ICFpbXBvcnRhbnQ7fVxuLmNvbG9yLXRhcmF3ZXJhIHtjb2xvcjogJHRhcmF3ZXJhICFpbXBvcnRhbnQ7fVxuLmNvbG9yLWJsdWUtZ3JlZW4ge2NvbG9yOiAkYmx1ZS1ncmVlbiAhaW1wb3J0YW50O31cbi5jb2xvci1zdW1tZXItc2t5IHtjb2xvcjogJHN1bW1lci1za3kgIWltcG9ydGFudDt9XG4uY29sb3Itd2F0dGxlIHtjb2xvcjogJHdhdHRsZSAhaW1wb3J0YW50O31cbi5jb2xvci1ob25leXN1Y2tsZSB7Y29sb3I6ICRob25leXN1Y2tsZSAhaW1wb3J0YW50O31cbi5jb2xvci13aGl0ZS1zbW9rZSB7Y29sb3I6ICR3aGl0ZS1zbW9rZSAhaW1wb3J0YW50O31cbi5jb2xvci1tZXJjdXJ5IHtjb2xvcjogJG1lcmN1cnkgIWltcG9ydGFudDt9XG4uY29sb3ItYWx0byB7Y29sb3I6ICRhbHRvICFpbXBvcnRhbnQ7fVxuLmNvbG9yLWp1bWJvLCAuY29sb3ItbmV1dHJhbCB7Y29sb3I6ICRqdW1ibyAhaW1wb3J0YW50O31cblxuLmNvbG9yLXN0cmF3YmVycnkge2NvbG9yOiAkc3RyYXdiZXJyeSAhaW1wb3J0YW50O31cbi5jb2xvci1nb2xkZW4tZHJlYW0ge2NvbG9yOiAkZ29sZGVuLWRyZWFtICFpbXBvcnRhbnQ7fVxuLmNvbG9yLWRhcmstcGFzdGVsLWdyZWVuIHtjb2xvcjogJGRhcmstcGFzdGVsLWdyZWVuICFpbXBvcnRhbnQ7fVxuLmNvbG9yLXJpY2gtZWxlY3RyaWMtYmx1ZSB7Y29sb3I6ICRyaWNoLWVsZWN0cmljLWJsdWUgIWltcG9ydGFudDt9XG5cbi8vIEJhY2tncm91bmQgY29sb3Jcbi5iZy1maXJlZmx5IHtiYWNrZ3JvdW5kLWNvbG9yOiAkZmlyZWZseTt9XG4uYmctdGFyYXdlcmEge2JhY2tncm91bmQtY29sb3I6ICR0YXJhd2VyYTt9XG4uYmctYmx1ZS1ncmVlbiB7YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtZ3JlZW47fVxuLmJnLXN1bW1lci1za3kge2JhY2tncm91bmQtY29sb3I6ICRzdW1tZXItc2t5O31cbi5iZy13YXR0bGUge2JhY2tncm91bmQtY29sb3I6ICR3YXR0bGU7fVxuLmJnLWhvbmV5c3Vja2xlIHtiYWNrZ3JvdW5kLWNvbG9yOiAkaG9uZXlzdWNrbGU7fVxuLmJnLXdoaXRlLXNtb2tlIHtiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtc21va2U7fVxuLmJnLW1lcmN1cnkge2JhY2tncm91bmQtY29sb3I6ICRtZXJjdXJ5O31cbi5iZy1hbHRvIHtiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0bzt9XG4uYmctanVtYm8sIC5iZy1uZXV0cmFsIHtiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm87fVxuXG4uYmctc3RyYXdiZXJyeSB7YmFja2dyb3VuZC1jb2xvcjogJHN0cmF3YmVycnk7fVxuLmJnLWdvbGRlbi1kcmVhbSB7YmFja2dyb3VuZC1jb2xvcjogJGdvbGRlbi1kcmVhbTt9XG4uYmctZGFyay1wYXN0ZWwtZ3JlZW4ge2JhY2tncm91bmQtY29sb3I6ICRkYXJrLXBhc3RlbC1ncmVlbjt9XG4uYmctcmljaC1lbGVjdHJpYy1ibHVlIHtiYWNrZ3JvdW5kLWNvbG9yOiAkcmljaC1lbGVjdHJpYy1ibHVlO31cblxuLy8gQ29sb3IgZmlsbHMgKGZvciBzdmcpXG4uZmlsbC1zdHJhd2JlcnJ5IHtmaWxsOiAkc3RyYXdiZXJyeTt9XG4uZmlsbC1nb2xkZW4tZHJlYW0ge2ZpbGw6ICRnb2xkZW4tZHJlYW07fVxuLmZpbGwtZGFyay1wYXN0ZWwtZ3JlZW4ge2ZpbGw6ICRkYXJrLXBhc3RlbC1ncmVlbjt9XG4uZmlsbC1yaWNoLWVsZWN0cmljLWJsdWUge2ZpbGw6ICRyaWNoLWVsZWN0cmljLWJsdWU7fVxuXG4vLyBDb2xvciBzdHJva2UgKHN2Zylcbi5zdHJva2Utc3RyYXdiZXJyeSB7c3Ryb2tlOiAkc3RyYXdiZXJyeTt9XG4uc3Ryb2tlLWdvbGRlbi1kcmVhbSB7c3Ryb2tlOiAkZ29sZGVuLWRyZWFtO31cbi5zdHJva2UtZGFyay1wYXN0ZWwtZ3JlZW4ge3N0cm9rZTogJGRhcmstcGFzdGVsLWdyZWVuO31cbi5zdHJva2UtcmljaC1lbGVjdHJpYy1ibHVlIHtzdHJva2U6ICRyaWNoLWVsZWN0cmljLWJsdWU7fVxuXG4vLyBUZXh0IGFsaWdubWVudFxuLnRleHQtY2VudGVyIHt0ZXh0LWFsaWduOiBjZW50ZXI7fVxuLnRleHQtbGVmdCB7dGV4dC1hbGlnbjogbGVmdDt9XG4udGV4dC1yaWdodCB7dGV4dC1hbGlnbjogcmlnaHQ7fVxuXG4vLyBEaW1lbnNpb25zXG4uZXhwYW5kLWhlaWdodCB7aGVpZ2h0OiAxMDAlO31cbi5leHBhbmQtd2lkdGgge3dpZHRoOiAxMDAlO31cblxuLy8gV2hpdGUgc3BhY2Vcbi5jb2xsYXBzZS1tYXJnaW4geyBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuLmNvbGxhcHNlLW1hcmdpbi10b3AgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5jb2xsYXBzZS1tYXJnaW4tYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uY29sbGFwc2UtbWFyZ2luLWxlZnQgeyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4uY29sbGFwc2UtbWFyZ2luLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLmNvbGxhcHNlLXBhZGRpbmcgeyBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbi5jb2xsYXBzZS1wYWRkaW5nLXRvcCB7IHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5jb2xsYXBzZS1wYWRkaW5nLWJvdHRvbSB7IHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5jb2xsYXBzZS1wYWRkaW5nLWxlZnQgeyBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuLmNvbGxhcHNlLXBhZGRpbmctcmlnaHQgeyBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLy8gUGFkIGZpbGxcbi5wYWQtZmlsbC1uZXV0cmFsIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2KTtcbiAgICBiYWNrZ3JvdW5kOiAkbWVyY3VyeTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyKTtcbn1cblxuLy8gVmlzaWJpbGl0eVxuLmhpZGUgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8vIEZsb2F0c1xuLnB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuLnB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAubWVkaXVtLXB1bGwtcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgLm1lZGl1bS1wdWxsLWxlZnQge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIC5sYXJnZS1wdWxsLXJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgLmxhcmdlLXB1bGwtbGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */
