/* === Framework */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,700italic,600italic,400italic);
@import url(https://fonts.googleapis.com/css?family=Roboto:300,300italic);
html {
  box-sizing: border-box; }

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

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after 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/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 when focused and also mouse hovered in all browsers.
 */
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; }

/**
 * 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
   ========================================================================== */
/**
 * Responsive images by default
 */
img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: auto;
  border: 0; }

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

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 0;
  padding: 0; }

/**
 * 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
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */ }

/**
 * 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; }

address {
  font-style: normal; }

@media (min-width: 320px) {
  body::after {
    content: '{"mobile":{"value": "320px", "active": true}, "mobile-wide":{"value": "480px", "active": false}, "tablet":{"value": "768px", "active": false}, "desktop":{"value": "1024px", "active": false}, "desktop-wide":{"value": "1280px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 480px) {
  body::after {
    content: '{"mobile":{"value": "320px", "active": true}, "mobile-wide":{"value": "480px", "active": true}, "tablet":{"value": "768px", "active": false}, "desktop":{"value": "1024px", "active": false}, "desktop-wide":{"value": "1280px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 768px) {
  body::after {
    content: '{"mobile":{"value": "320px", "active": true}, "mobile-wide":{"value": "480px", "active": true}, "tablet":{"value": "768px", "active": true}, "desktop":{"value": "1024px", "active": false}, "desktop-wide":{"value": "1280px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 1024px) {
  body::after {
    content: '{"mobile":{"value": "320px", "active": true}, "mobile-wide":{"value": "480px", "active": true}, "tablet":{"value": "768px", "active": true}, "desktop":{"value": "1024px", "active": true}, "desktop-wide":{"value": "1280px", "active": false}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

@media (min-width: 1280px) {
  body::after {
    content: '{"mobile":{"value": "320px", "active": true}, "mobile-wide":{"value": "480px", "active": true}, "tablet":{"value": "768px", "active": true}, "desktop":{"value": "1024px", "active": true}, "desktop-wide":{"value": "1280px", "active": true}}';
    display: block;
    height: 0;
    overflow: hidden;
    width: 0; } }

/* === Third party frameworks & libraries */
/* === Mixins & Helpers */
._centered {
  text-align: center; }

._hidden {
  display: none !important; }

._screenreader {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important; }

/* === Theme Variables */
* {
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  font-size: 16px;
  text-rendering: optimizeLegibility; }

.inner {
  position: relative;
  margin: 0 auto;
  padding: 0 15px; }

.grid__8,
.grid__5-5,
.grid__10,
.grid__5-7,
.grid__6-6,
.grid__12,
.inner {
  width: 100%; }
  @media screen and (min-width: 480px) {
    .grid__8,
    .grid__5-5,
    .grid__10,
    .grid__5-7,
    .grid__6-6,
    .grid__12,
    .inner {
      max-width: 460px; } }
  @media screen and (min-width: 600px) {
    .grid__8,
    .grid__5-5,
    .grid__10,
    .grid__5-7,
    .grid__6-6,
    .grid__12,
    .inner {
      max-width: 580px; } }
  @media screen and (min-width: 870px) {
    .grid__8,
    .grid__5-5,
    .grid__10,
    .grid__5-7,
    .grid__6-6,
    .grid__12,
    .inner {
      max-width: 830px; } }
  @media screen and (min-width: 1050px) {
    .grid__8,
    .grid__5-5,
    .grid__10,
    .grid__5-7,
    .grid__6-6,
    .grid__12,
    .inner {
      max-width: 980px; } }

@media screen and (min-width: 1280px) {
  .grid__5-7,
  .grid__6-6,
  .grid__12,
  .inner {
    max-width: 1200px; } }

@media screen and (min-width: 1280px) {
  .grid__5-5,
  .grid__10 {
    max-width: 970px; } }

.grid__8 {
  max-width: 770px; }

.grid__5-7,
.grid__6-6,
.grid__12,
.grid__5-5,
.grid__10,
.grid__8 {
  width: 100%;
  position: relative;
  margin: 0 auto; }
  .grid__5-7:after,
  .grid__6-6:after,
  .grid__12:after,
  .grid__5-5:after,
  .grid__10:after,
  .grid__8:after {
    content: '';
    display: block;
    clear: both; }

.col-1,
.col-2,
.grid__12,
.grid__10,
.grid__8 {
  padding: 0 15px; }

@media screen and (min-width: 870px) {
  .grid__5-7 .col-1 {
    width: 41.5%;
    float: left; } }

@media screen and (min-width: 870px) {
  .grid__5-7 .col-2 {
    width: 58.5%;
    float: right; } }

@media screen and (min-width: 870px) {
  .grid__6-6 .col-1,
  .grid__5-5 .col-1 {
    width: 50%;
    float: left; } }

@media screen and (min-width: 870px) {
  .grid__6-6 .col-2,
  .grid__5-5 .col-2 {
    width: 50%;
    float: right; } }

.col-last:after {
  content: '';
  display: block;
  clear: both; }

body {
  color: #676563;
  overflow-x: hidden; }

html {
  height: 100vh; }

body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  /* 1, 3 */ }

.site-header,
.site-footer {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  /* 2 */ }

.page-container {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  /* 2 */
  width: 100%; }
  .page-container.w-padding {
    margin-top: 60px; }

a {
  cursor: pointer; }

h1, h2 {
  font-style: normal;
  line-height: 1.1em; }

h1 {
  font-family: "Roboto", Arial, sans-serif;
  font-size: 40px;
  font-weight: 300;
  color: #e40375; }
  @media screen and (min-width: 870px) {
    h1 {
      font-size: 50px; } }

h2 {
  line-height: 1.3em;
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 26px;
  font-weight: 600; }
  @media screen and (min-width: 870px) {
    h2 {
      font-size: 30px; } }

h3 {
  font-family: "Open Sans", Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #333; }

p, li, span {
  margin: 0 0 1em 0; }

ul {
  padding-left: 20px; }

h1, h2, h3, h4, h5,
.intro p, .intro--large p,
.intro, .intro--large {
  margin: 0 0 20px 0; }

.intro p,
.intro {
  color: #931259;
  font-size: 18px; }
  @media screen and (min-width: 870px) {
    .intro p,
    .intro {
      font-size: 20px; } }
  @media screen and (min-width: 1050px) {
    .intro p,
    .intro {
      font-size: 22px; } }

.intro--large p,
.intro--large {
  font-size: 18px;
  font-weight: 600; }
  @media screen and (min-width: 870px) {
    .intro--large p,
    .intro--large {
      font-size: 22px; } }

.center {
  text-align: center; }

.top-spacer {
  display: inline-block;
  margin-top: 35px; }

.fw {
  width: 100%;
  max-width: none !important; }

.special-image-reveal.is-not-visible {
  opacity: 0;
  -webkit-transform: scale(0.9);
      -ms-transform: scale(0.9);
          transform: scale(0.9); }

.special-image-reveal.is-visible {
  -webkit-transition: all 0.3s ease-out;
          transition: all 0.3s ease-out;
  opacity: 1;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }

/* === Components */
.direction-feature {
  position: relative; }
  .direction-feature:after {
    content: '';
    display: block;
    clear: both; }
  .direction-feature--purple {
    background-color: #511c74; }
  .direction-feature--maroon {
    background-color: #e63952; }
  .direction-feature--orange {
    background-color: #e25334; }
  .direction-feature--yellow {
    background-color: #f48d2d; }
  .direction-feature--plum {
    background-color: #5b3a57; }
  .direction-feature--duck-egg-blue {
    background-color: #1abecb; }
  .direction-feature--pink {
    background-color: #e40375; }
  .direction-feature--mauve {
    background-color: #a91F77; }
  .direction-feature--gray {
    background-color: #8d8f93; }
  .direction-feature--teal {
    background-color: #4093A4; }
  .direction-feature--purple, .direction-feature--maroon, .direction-feature--orange, .direction-feature--yellow, .direction-feature--plum, .direction-feature--duck-egg-blue, .direction-feature--pink, .direction-feature--mauve, .direction-feature--gray, .direction-feature--teal {
    padding: 35px;
    margin: 50px 0 30px; }
    @media screen and (min-width: 870px) {
      .direction-feature--purple, .direction-feature--maroon, .direction-feature--orange, .direction-feature--yellow, .direction-feature--plum, .direction-feature--duck-egg-blue, .direction-feature--pink, .direction-feature--mauve, .direction-feature--gray, .direction-feature--teal {
        padding: 35px 20%; } }
    .direction-feature--purple p, .direction-feature--maroon p, .direction-feature--orange p, .direction-feature--yellow p, .direction-feature--plum p, .direction-feature--duck-egg-blue p, .direction-feature--pink p, .direction-feature--mauve p, .direction-feature--gray p, .direction-feature--teal p {
      color: #ffffff;
      font-family: "Roboto", Arial, sans-serif;
      font-size: 20px;
      font-weight: 300;
      margin: 0; }
      @media screen and (min-width: 870px) {
        .direction-feature--purple p, .direction-feature--maroon p, .direction-feature--orange p, .direction-feature--yellow p, .direction-feature--plum p, .direction-feature--duck-egg-blue p, .direction-feature--pink p, .direction-feature--mauve p, .direction-feature--gray p, .direction-feature--teal p {
          font-size: 26px; } }
  .direction-feature.is-not-visible {
    opacity: 0;
    -webkit-transform: translate(-100%, 0);
        -ms-transform: translate(-100%, 0);
            transform: translate(-100%, 0); }
  .direction-feature.is-visible {
    -webkit-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
    opacity: 1;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0); }

.campaign_form {
  background-color: white; }
  .campaign_form .success {
    background-color: #e6f4e6;
    border: 3px solid #75da75;
    padding: 24px;
    color: #000;
    text-align: center;
    width: 80%;
    margin: 0 auto; }
    .campaign_form .success p:last-of-type {
      margin-bottom: 0;
      padding-bottom: 0; }

form {
  margin: 0 auto;
  max-width: 650px; }
  form .message {
    padding: 24px;
    background-color: #f3e8f5;
    margin-top: 24px;
    color: #000; }
  form fieldset {
    border: none;
    padding: 0;
    margin: 0; }
    form fieldset legend {
      display: none; }
  form label {
    font-weight: 700;
    font-size: 14px; }
  form .req {
    color: red; }
  form .dform_container {
    margin-top: 4px;
    margin-bottom: 12px; }
    form .dform_container h3 {
      margin: 32px 0 16px; }
  form input[type="text"],
  form input[type="password"],
  form input[type="email"],
  form input[type="number"],
  form input[type="tel"] {
    width: 100%;
    border-radius: 8px;
    border: 1px solid #CCC;
    padding: 8px; }
  form select {
    border-radius: 8px;
    border: 1px solid #CCC;
    padding: 8px;
    background-color: white; }
  form .field_captcha {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #f5f2ec; }
  form .submit_button {
    margin-top: 16px; }
  form input[type="submit"] {
    text-transform: uppercase;
    border-radius: 100px;
    font-weight: 700;
    color: white;
    background-color: #e20076;
    border: none;
    padding: 8px 24px;
    -webkit-transition: all 0.2s ease-out;
            transition: all 0.2s ease-out;
    box-shadow: transparent 2px 2px 5px;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
    form input[type="submit"]:hover {
      box-shadow: rgba(0, 0, 0, 0.2) 0px 5px 20px;
      -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
      transform: scale(1.05);
      background-color: #b1025c; }
  form .dfinput_dates {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    form .dfinput_dates .df_date_elem_extra,
    form .dfinput_dates .df_date_elem {
      margin-right: 8px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      form .dfinput_dates .df_date_elem_extra label,
      form .dfinput_dates .df_date_elem label {
        font-weight: 500; }
  form .radios {
    list-style: none;
    margin: 0 0 0 8px;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    form .radios li {
      margin: 0 0 8px 0; }
      form .radios li:last-of-type {
        margin: 0; }

.our-plan-diagram {
  width: 100%;
  position: relative;
  margin-top: 55px;
  margin-bottom: 35px; }
  .our-plan-diagram a {
    text-decoration: none;
    text-shadow: transparent 2px 2px 5px;
    -webkit-transition: text-shadow, 0.3s, ease;
            transition: text-shadow, 0.3s, ease; }
    .our-plan-diagram a:hover {
      text-shadow: rgba(0, 0, 0, 0.3) 2px 2px 5px; }
      .our-plan-diagram a:hover p {
        color: white; }
  .our-plan-diagram h3, .our-plan-diagram h4, .our-plan-diagram p, .our-plan-diagram b {
    font-family: "Roboto", Arial, sans-serif;
    font-weight: 300;
    margin-bottom: 10px; }
  .our-plan-diagram h3 {
    font-size: 30px; }
    @media screen and (min-width: 870px) {
      .our-plan-diagram h3 {
        font-size: 26px; } }
    @media screen and (min-width: 1050px) {
      .our-plan-diagram h3 {
        font-size: 30px; } }
  .our-plan-diagram h4 {
    font-size: 24px; }
  .our-plan-diagram p {
    -webkit-transition: color, 0.3s, ease;
            transition: color, 0.3s, ease;
    font-size: 18px;
    color: rgba(255, 255, 255, 0.8); }
  .our-plan-diagram--goal p {
    font-size: 22px; }
  .our-plan-diagram--focus p {
    font-size: 16px;
    margin-bottom: 3px; }
  .our-plan-diagram--focus b {
    font-size: 16px;
    margin-bottom: 0px;
    font-weight: bold;
    color: white; }
  .our-plan-diagram--goal, .our-plan-diagram--direction, .our-plan-diagram--focus {
    text-align: center; }
  @media screen and (min-width: 870px) {
    .our-plan-diagram--pink h3 {
      margin-top: 27px; }
    .our-plan-diagram--purple h4 {
      margin-top: 10px; }
    .our-plan-diagram--red h4 {
      margin-top: 40px; }
    .our-plan-diagram--orange h4, .our-plan-diagram--yellow h4 {
      margin-top: 23px; }
    .our-plan-diagram--carrot p:first-child,
    .our-plan-diagram--blue p:first-child {
      margin-top: 19px; }
    .our-plan-diagram--green p:first-child {
      margin-top: 40px; }
    .our-plan-diagram--lavender p:first-child {
      margin-top: 34px; } }
  @media screen and (min-width: 1050px) {
    .our-plan-diagram--pink h3 {
      margin-top: 50px; }
    .our-plan-diagram--purple h4 {
      margin-top: 35px; }
    .our-plan-diagram--red h4 {
      margin-top: 60px; }
    .our-plan-diagram--orange h4, .our-plan-diagram--yellow h4 {
      margin-top: 50px; }
    .our-plan-diagram--carrot p:first-child,
    .our-plan-diagram--blue p:first-child {
      margin-top: 33px; }
    .our-plan-diagram--green p:first-child {
      margin-top: 53px; }
    .our-plan-diagram--lavender p:first-child {
      margin-top: 56px; } }
  @media screen and (min-width: 870px) {
    .our-plan-diagram {
      padding-bottom: 100%;
      height: 0; } }
  .our-plan-diagram--goal, .our-plan-diagram--direction {
    padding: 30px 20px;
    display: block;
    position: relative;
    margin-bottom: 10px; }
    @media screen and (min-width: 870px) {
      .our-plan-diagram--goal, .our-plan-diagram--direction {
        height: 100%;
        margin-bottom: 0;
        position: absolute;
        padding: 10% 10%; } }
  .our-plan-diagram--focus {
    padding: 20px;
    display: block;
    position: relative;
    margin-bottom: 10px; }
    @media screen and (min-width: 870px) {
      .our-plan-diagram--focus {
        margin-bottom: 0;
        height: 100%;
        position: absolute;
        padding: 0 2%; } }
    @media screen and (min-width: 1050px) {
      .our-plan-diagram--focus {
        padding: 0 3%; } }
  @media screen and (min-width: 870px) {
    .our-plan-diagram--mm, .our-plan-diagram--rm, .our-plan-diagram--bm, .our-plan-diagram--lm, .our-plan-diagram--tm, .our-plan-diagram--tr, .our-plan-diagram--br, .our-plan-diagram--bl, .our-plan-diagram--tl {
      width: 33.333%;
      height: 0;
      padding-bottom: 33.333%;
      display: block;
      position: absolute; }
    .our-plan-diagram--lm {
      left: 0; }
    .our-plan-diagram--tm, .our-plan-diagram--mm, .our-plan-diagram--bm {
      left: 33.3%; }
    .our-plan-diagram--tr, .our-plan-diagram--rm, .our-plan-diagram--br {
      left: 66.6%; }
    .our-plan-diagram--tm {
      top: 0; }
    .our-plan-diagram--lm, .our-plan-diagram--mm, .our-plan-diagram--rm {
      top: 33.3%; }
    .our-plan-diagram--bl, .our-plan-diagram--bm, .our-plan-diagram--br {
      top: 66.6%; }
    .our-plan-diagram--tl, .our-plan-diagram--tr, .our-plan-diagram--br, .our-plan-diagram--bl {
      width: 16.65%;
      padding-bottom: 16.65%; }
    .our-plan-diagram--tl {
      top: 16.65%;
      left: 16.65%; }
    .our-plan-diagram--tr {
      top: 16.65%; }
    .our-plan-diagram--bl {
      left: 16.65%; } }
  .our-plan-diagram--pink {
    background-color: #e40375; }
  .our-plan-diagram--red {
    background-color: #e63952; }
  .our-plan-diagram--orange {
    background-color: #e25334; }
  .our-plan-diagram--yellow {
    background-color: #f48d2d; }
  .our-plan-diagram--purple {
    background-color: #511c74; }
  .our-plan-diagram--carrot {
    background-color: #ea630a; }
  .our-plan-diagram--lavender {
    background-color: #79679f; }
  .our-plan-diagram--green {
    background-color: #00a864; }
  .our-plan-diagram--blue {
    background-color: #5ec6ce; }
  .our-plan-diagram .arrow--inset,
  .our-plan-diagram .arrow {
    display: none; }
    @media screen and (min-width: 870px) {
      .our-plan-diagram .arrow--inset,
      .our-plan-diagram .arrow {
        display: block; } }
  .our-plan-diagram .arrow {
    position: absolute; }
    .our-plan-diagram .arrow.our-plan-diagram--top {
      top: -21px;
      left: 70%; }
    .our-plan-diagram .arrow.our-plan-diagram--right {
      top: 70%;
      right: -32px;
      -webkit-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
              transform: rotate(90deg); }
    .our-plan-diagram .arrow.our-plan-diagram--bottom {
      bottom: -21px;
      left: 20%;
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg); }
    .our-plan-diagram .arrow.our-plan-diagram--left {
      -webkit-transform: rotate(270deg);
          -ms-transform: rotate(270deg);
              transform: rotate(270deg);
      top: 20%;
      left: -32px; }
  .our-plan-diagram--mm .arrow.our-plan-diagram--top {
    top: -32px;
    left: 70%; }
  .our-plan-diagram--mm .arrow.our-plan-diagram--right {
    top: 70%;
    right: -50px; }
  .our-plan-diagram--mm .arrow.our-plan-diagram--bottom {
    bottom: -32px;
    left: 20%; }
  .our-plan-diagram--mm .arrow.our-plan-diagram--left {
    top: 20%;
    left: -50px; }
  .our-plan-diagram .arrow--inset {
    position: absolute;
    z-index: 46; }
    .our-plan-diagram .arrow--inset.our-plan-diagram--top {
      top: -1px;
      left: 20%;
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg); }
    .our-plan-diagram .arrow--inset.our-plan-diagram--right {
      top: 20%;
      right: -14px;
      -webkit-transform: rotate(270deg);
          -ms-transform: rotate(270deg);
              transform: rotate(270deg); }
    .our-plan-diagram .arrow--inset.our-plan-diagram--bottom {
      bottom: -1px;
      left: 70%;
      -webkit-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
              transform: rotate(0deg); }
    .our-plan-diagram .arrow--inset.our-plan-diagram--left {
      -webkit-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
              transform: rotate(90deg);
      top: 70%;
      left: -14px; }
  .our-plan-diagram--fill-blue {
    fill: #5ec6ce; }
  .our-plan-diagram--fill-pink {
    fill: #e40375; }
  .our-plan-diagram--fill-red {
    fill: #e63952; }
  .our-plan-diagram--fill-orange {
    fill: #e25334; }
  .our-plan-diagram--fill-yellow {
    fill: #f48d2d; }
  .our-plan-diagram--fill-purple {
    fill: #511c74; }
  .our-plan-diagram--fill-lavender {
    fill: #79679f; }
  .our-plan-diagram--fill-green {
    fill: #00a864; }
  .our-plan-diagram--fill-carrot {
    fill: #ea630a; }
  .our-plan-diagram--mm .our-plan-diagram--goal {
    z-index: 50; }
  .our-plan-diagram--mm .arrow {
    z-index: 49; }
  .our-plan-diagram--direction {
    z-index: 45; }
  .our-plan-diagram--rm .arrow, .our-plan-diagram--bm .arrow, .our-plan-diagram--lm .arrow, .our-plan-diagram--tm .arrow {
    z-index: 44; }
  .our-plan-diagram--focus {
    z-index: 40; }
  .our-plan-diagram h3, .our-plan-diagram h4 {
    color: #FFF; }
  @media screen and (min-width: 870px) {
    .our-plan-diagram.is-not-visible .our-plan-diagram--pink {
      -webkit-transform: scale(0.5);
          -ms-transform: scale(0.5);
              transform: scale(0.5); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--pink,
    .our-plan-diagram.is-not-visible .our-plan-diagram--purple,
    .our-plan-diagram.is-not-visible .our-plan-diagram--carrot,
    .our-plan-diagram.is-not-visible .our-plan-diagram--blue,
    .our-plan-diagram.is-not-visible .our-plan-diagram--orange,
    .our-plan-diagram.is-not-visible .our-plan-diagram--lavender,
    .our-plan-diagram.is-not-visible .our-plan-diagram--green,
    .our-plan-diagram.is-not-visible .our-plan-diagram--red,
    .our-plan-diagram.is-not-visible .our-plan-diagram--yellow,
    .our-plan-diagram.is-not-visible .arrow--inset,
    .our-plan-diagram.is-not-visible .arrow {
      opacity: 0; }
    .our-plan-diagram.is-not-visible .our-plan-diagram--purple {
      -webkit-transform: translate(0, 165px);
          -ms-transform: translate(0, 165px);
              transform: translate(0, 165px); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--carrot {
      -webkit-transform: translate(-155px, 155px);
          -ms-transform: translate(-155px, 155px);
              transform: translate(-155px, 155px); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--red {
      -webkit-transform: translate(-155px, 0);
          -ms-transform: translate(-155px, 0);
              transform: translate(-155px, 0); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--lavender {
      -webkit-transform: translate(-155px, -155px);
          -ms-transform: translate(-155px, -155px);
              transform: translate(-155px, -155px); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--orange {
      -webkit-transform: translate(0, -165px);
          -ms-transform: translate(0, -165px);
              transform: translate(0, -165px); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--green {
      -webkit-transform: translate(155px, -155px);
          -ms-transform: translate(155px, -155px);
              transform: translate(155px, -155px); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--yellow {
      -webkit-transform: translate(155px, 0);
          -ms-transform: translate(155px, 0);
              transform: translate(155px, 0); }
    .our-plan-diagram.is-not-visible .our-plan-diagram--blue {
      -webkit-transform: translate(155px, 155px);
          -ms-transform: translate(155px, 155px);
              transform: translate(155px, 155px); } }
  .our-plan-diagram.is-visible .our-plan-diagram--pink {
    -webkit-transition: all 0.2s ease-out;
            transition: all 0.2s ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    -webkit-transition-delay: 0s;
            transition-delay: 0s; }
    .our-plan-diagram.is-visible .our-plan-diagram--pink:hover p {
      -webkit-transition: all 0.2s ease-out;
              transition: all 0.2s ease-out;
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05);
      -webkit-transition-delay: 0s;
              transition-delay: 0s; }
  .our-plan-diagram.is-visible .arrow,
  .our-plan-diagram.is-visible .arrow--inset {
    -webkit-transition: all 0.5s ease-out;
            transition: all 0.5s ease-out;
    opacity: 1;
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s; }
  .our-plan-diagram.is-visible .our-plan-diagram--purple,
  .our-plan-diagram.is-visible .our-plan-diagram--carrot,
  .our-plan-diagram.is-visible .our-plan-diagram--blue,
  .our-plan-diagram.is-visible .our-plan-diagram--orange,
  .our-plan-diagram.is-visible .our-plan-diagram--lavender,
  .our-plan-diagram.is-visible .our-plan-diagram--green,
  .our-plan-diagram.is-visible .our-plan-diagram--red,
  .our-plan-diagram.is-visible .our-plan-diagram--yellow {
    -webkit-transition: all 0.2s ease-out;
            transition: all 0.2s ease-out;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1; }
    .our-plan-diagram.is-visible .our-plan-diagram--purple:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--carrot:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--blue:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--orange:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--lavender:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--green:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--red:hover p,
    .our-plan-diagram.is-visible .our-plan-diagram--yellow:hover p {
      -webkit-transition: all 0.2s ease-out;
              transition: all 0.2s ease-out;
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05); }
  @media screen and (min-width: 870px) {
    .our-plan-diagram.is-visible .our-plan-diagram--purple {
      -webkit-transition-delay: 0s;
              transition-delay: 0s; }
    .our-plan-diagram.is-visible .our-plan-diagram--carrot {
      -webkit-transition-delay: 0.1s;
              transition-delay: 0.1s; }
    .our-plan-diagram.is-visible .our-plan-diagram--red {
      -webkit-transition-delay: 0.2s;
              transition-delay: 0.2s; }
    .our-plan-diagram.is-visible .our-plan-diagram--lavender {
      -webkit-transition-delay: 0.3s;
              transition-delay: 0.3s; }
    .our-plan-diagram.is-visible .our-plan-diagram--orange {
      -webkit-transition-delay: 0.4s;
              transition-delay: 0.4s; }
    .our-plan-diagram.is-visible .our-plan-diagram--green {
      -webkit-transition-delay: 0.5s;
              transition-delay: 0.5s; }
    .our-plan-diagram.is-visible .our-plan-diagram--yellow {
      -webkit-transition-delay: 0.6s;
              transition-delay: 0.6s; }
    .our-plan-diagram.is-visible .our-plan-diagram--blue {
      -webkit-transition-delay: 0.7s;
              transition-delay: 0.7s; } }

@media screen and (min-width: 870px) {
  .our-strategic-focus .image,
  .our-areas-of-focus .image {
    margin-top: 35px; } }

@media screen and (min-width: 1050px) {
  .our-strategic-focus .image,
  .our-areas-of-focus .image {
    margin-top: 0; } }

.our-strategic-focus .landscape,
.our-areas-of-focus .landscape {
  display: block; }
  @media screen and (min-width: 1050px) {
    .our-strategic-focus .landscape,
    .our-areas-of-focus .landscape {
      display: none; } }

.our-strategic-focus .portrait,
.our-areas-of-focus .portrait {
  display: none; }
  @media screen and (min-width: 1050px) {
    .our-strategic-focus .portrait,
    .our-areas-of-focus .portrait {
      display: block; } }

.our-strategic-focus .grid__6-6 .col-1,
.our-strategic-focus .grid__6-6 .col-2,
.our-areas-of-focus .grid__6-6 .col-1,
.our-areas-of-focus .grid__6-6 .col-2 {
  width: 100%; }

@media screen and (min-width: 1050px) {
  .our-strategic-focus .grid__6-6 .col-1,
  .our-areas-of-focus .grid__6-6 .col-1 {
    width: 50%;
    float: left; } }

@media screen and (min-width: 1050px) {
  .our-strategic-focus .grid__6-6 .col-2,
  .our-areas-of-focus .grid__6-6 .col-2 {
    width: 50%;
    float: right; } }

.our-strategic-focus .grid__10,
.our-areas-of-focus .grid__10 {
  margin-bottom: 60px; }

.our-strategic-goals .image,
.our-strategic-goal .image {
  margin-top: 35px; }
  @media screen and (min-width: 870px) {
    .our-strategic-goals .image,
    .our-strategic-goal .image {
      margin-top: 0; } }

.our-strategic-goals .landscape,
.our-strategic-goal .landscape {
  display: block; }
  @media screen and (min-width: 870px) {
    .our-strategic-goals .landscape,
    .our-strategic-goal .landscape {
      display: none; } }
  @media screen and (min-width: 1050px) {
    .our-strategic-goals .landscape,
    .our-strategic-goal .landscape {
      display: block; } }

.our-strategic-goals .portrait,
.our-strategic-goal .portrait {
  display: none; }
  @media screen and (min-width: 870px) {
    .our-strategic-goals .portrait,
    .our-strategic-goal .portrait {
      display: block; } }
  @media screen and (min-width: 1050px) {
    .our-strategic-goals .portrait,
    .our-strategic-goal .portrait {
      display: none; } }

.site-footer {
  text-align: center;
  background: #363636;
  padding: 10px 0; }
  .site-footer .copyright {
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px; }
  .site-footer .title {
    margin-top: 10px;
    color: #fff; }

.site-header {
  text-align: center;
  background: #e40375; }
  .site-header.-plum {
    background: #5b3a57; }
  .site-header.-black {
    background: #000; }
  .site-header.-pfc-purple {
    background: #87189D; }
  .site-header .title {
    margin-top: 10px;
    color: #fff; }

.strategy-row {
  position: relative;
  display: block;
  overflow: hidden; }
  .strategy-row:after {
    content: '';
    display: block;
    clear: both; }
  .strategy-row--carrot {
    background-color: #ea630a; }
  .strategy-row--lavender {
    background-color: #79679f; }
  .strategy-row--green {
    background-color: #00a864; }
  .strategy-row--blue {
    background-color: #5ec6ce; }
  .strategy-row--purple {
    background-color: #511c74; }
  .strategy-row--plum {
    background-color: #5b3a57; }
  .strategy-row--duck-egg-blue {
    background-color: #1abecb; }
  .strategy-row--pink {
    background-color: #e40375; }
  .strategy-row--mauve {
    background-color: #a91F77; }
  .strategy-row--gray {
    background-color: #8d8f93; }
  .strategy-row--teal {
    background-color: #4093A4; }
  .strategy-row--carrot, .strategy-row--lavender, .strategy-row--green, .strategy-row--blue, .strategy-row--plum, .strategy-row--duck-egg-blue, .strategy-row--pink, .strategy-row--mauve, .strategy-row--gray, .strategy-row--teal, .strategy-row--purple {
    color: #ffffff;
    margin: 0; }
  .strategy-row h2, .strategy-row .intro, .strategy-row .intro p {
    color: #ffffff; }
  .strategy-row .padded {
    padding: 30px; }
    @media screen and (min-width: 870px) {
      .strategy-row .padded {
        padding: 35px 100px; } }
    @media screen and (min-width: 1050px) {
      .strategy-row .padded {
        padding: 50px; } }
  @media screen and (min-width: 1050px) {
    .strategy-row .image {
      position: relative;
      padding: 0px 0;
      width: 50%; }
      .strategy-row .image.strategy-row--left {
        float: left;
        left: 0; }
      .strategy-row .image.strategy-row--right {
        float: right;
        right: 0; } }
  @media screen and (min-width: 1050px) {
    .strategy-row .image {
      position: absolute;
      float: none;
      padding: 0; } }

.w-button {
  display: block;
  background-color: #ffffff;
  height: 40px;
  border-radius: 20px;
  padding: 10px 10px;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #e40375;
  margin: 0 10px 20px;
  -webkit-transition: all 0.2s ease-out;
          transition: all 0.2s ease-out;
  box-shadow: transparent 2px 2px 5px;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }
  .w-button:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 5px 20px;
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05); }
  @media screen and (min-width: 870px) {
    .w-button {
      display: inline-block;
      margin: 0 10px;
      padding: 9px 40px;
      font-size: 15px; } }

.segment--turquoise .w-button {
  color: #20afab; }

.button-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.button {
  background-color: #e40375;
  color: #ffffff;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 8px;
  -webkit-transition: all 0.2s ease-out;
          transition: all 0.2s ease-out; }
  .button:hover {
    background-color: #b2025b;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1); }

.w-hero {
  overflow: hidden;
  width: 100%;
  height: auto;
  position: relative;
  display: block; }
  .w-hero .image {
    width: 100%;
    height: auto; }

.womens-declaration-diagram {
  width: 100%;
  position: relative; }
  @media screen and (min-width: 1280px) {
    .womens-declaration-diagram {
      height: 0;
      padding-bottom: 88%; } }
  .womens-declaration-diagram p {
    margin-bottom: 0; }
  .womens-declaration-diagram--declaration {
    position: relative;
    z-index: 50; }
    @media screen and (min-width: 1280px) {
      .womens-declaration-diagram--declaration {
        position: absolute; } }
  .womens-declaration-diagram .declaration-diagram-bg {
    display: none;
    position: absolute;
    z-index: 49;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    fill: #e40375; }
    @media screen and (min-width: 1280px) {
      .womens-declaration-diagram .declaration-diagram-bg {
        display: block; } }
  .womens-declaration-diagram .center h3 {
    color: #e40375;
    text-align: left;
    font-size: 20px;
    margin-top: 35px; }
    @media screen and (min-width: 870px) {
      .womens-declaration-diagram .center h3 {
        margin-top: 10px; } }
    @media screen and (min-width: 1280px) {
      .womens-declaration-diagram .center h3 {
        margin-top: 0;
        font-size: 18px;
        text-align: center; } }
  @media screen and (min-width: 1280px) {
    .womens-declaration-diagram .center {
      width: 175px;
      left: 50%;
      margin-left: -88px;
      top: 231px; } }
  .womens-declaration-diagram .n,
  .womens-declaration-diagram .ne,
  .womens-declaration-diagram .se,
  .womens-declaration-diagram .s,
  .womens-declaration-diagram .sw,
  .womens-declaration-diagram .nw {
    text-align: center;
    width: 100%;
    background-color: #e40375;
    color: #FFF;
    padding: 30px;
    margin-bottom: 10px; }
  @media screen and (min-width: 1280px) {
    .womens-declaration-diagram .n,
    .womens-declaration-diagram .ne,
    .womens-declaration-diagram .se,
    .womens-declaration-diagram .s,
    .womens-declaration-diagram .sw,
    .womens-declaration-diagram .nw {
      padding: 0;
      background-color: transparent;
      margin-bottom: 0;
      color: #FFF;
      width: 155px; }
    .womens-declaration-diagram .n,
    .womens-declaration-diagram .s {
      left: 50%;
      margin-left: -78px; }
    .womens-declaration-diagram .n {
      top: 40px; }
    .womens-declaration-diagram .s {
      top: 465px; }
    .womens-declaration-diagram .ne,
    .womens-declaration-diagram .se {
      left: 65%; }
    .womens-declaration-diagram .ne {
      top: 150px; }
    .womens-declaration-diagram .se {
      top: 350px; }
    .womens-declaration-diagram .nw,
    .womens-declaration-diagram .sw {
      left: 10%; }
    .womens-declaration-diagram .nw {
      top: 180px; }
    .womens-declaration-diagram .sw {
      top: 340px; } }
  .womens-declaration-diagram.is-not-visible .declaration-diagram-bg {
    opacity: 0;
    -webkit-transform: scale(0.5);
        -ms-transform: scale(0.5);
            transform: scale(0.5); }
  .womens-declaration-diagram.is-not-visible .womens-declaration-diagram--declaration {
    opacity: 0;
    -webkit-transform: scale(0.5);
        -ms-transform: scale(0.5);
            transform: scale(0.5); }
  .womens-declaration-diagram.is-visible .declaration-diagram-bg {
    -webkit-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1); }
  .womens-declaration-diagram.is-visible .womens-declaration-diagram--declaration {
    -webkit-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s; }
  .womens-declaration-diagram.is-visible .ne {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s; }
  .womens-declaration-diagram.is-visible .se {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s; }
  .womens-declaration-diagram.is-visible .s {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s; }
  .womens-declaration-diagram.is-visible .sw {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s; }
  .womens-declaration-diagram.is-visible .nw {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s; }

/* === Sections */
.campaign-public-fertility-care .segment h2 {
  font-size: 26px; }

.segment {
  padding: 50px 0;
  position: relative; }
  @media screen and (min-width: 600px) {
    .segment {
      padding: 80px 0; } }
  .segment--pfc-neutral {
    background-color: #FFF5E8; }
    .segment--pfc-neutral:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #FFF5E8; }
  .segment--pfc-purple {
    background-color: #87189D; }
    .segment--pfc-purple:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #87189D; }
  .segment--pfc-blue-70 {
    background-color: #9CD6EF; }
    .segment--pfc-blue-70:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #9CD6EF; }
  .segment--pfc-blue-25 {
    background-color: #DBF0F9; }
    .segment--pfc-blue-25:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #DBF0F9; }
  .segment--white {
    background-color: #ffffff; }
    .segment--white:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #ffffff; }
  .segment--gainsboro {
    background-color: #f5f2ec; }
    .segment--gainsboro:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #f5f2ec; }
  .segment--pink {
    background-color: #e40375; }
    .segment--pink:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #e40375; }
  .segment--turquoise {
    background-color: #20afab; }
    .segment--turquoise:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #20afab; }
  .segment--light-blue {
    background-color: #add9e1; }
    .segment--light-blue:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #add9e1; }
  .segment--light-plum {
    background-color: #998899; }
    .segment--light-plum:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #998899; }
  .segment--light-mauve {
    background-color: #E7DEE2; }
    .segment--light-mauve:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #E7DEE2; }
  .segment--extra-light-mauve {
    background-color: #f5eff3; }
    .segment--extra-light-mauve:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid #f5eff3; }
  .segment--light-blue, .segment--light-mauve, .segment--extra-light-mauve, .segment--pfc-blue-70, .segment--pfc-neutral, .segment--pfc-blue-25 {
    color: #333; }
    .segment--light-blue h1, .segment--light-blue .intro, .segment--light-mauve h1, .segment--light-mauve .intro, .segment--extra-light-mauve h1, .segment--extra-light-mauve .intro, .segment--pfc-blue-70 h1, .segment--pfc-blue-70 .intro, .segment--pfc-neutral h1, .segment--pfc-neutral .intro, .segment--pfc-blue-25 h1, .segment--pfc-blue-25 .intro {
      color: #ffffff; }
  .segment--turquoise, .segment--pink, .segment--pfc-purple, .segment--light-plum {
    color: #ffffff; }
    .segment--turquoise h1, .segment--turquoise .intro, .segment--pink h1, .segment--pink .intro, .segment--pfc-purple h1, .segment--pfc-purple .intro, .segment--light-plum h1, .segment--light-plum .intro {
      color: #ffffff; }
    .segment--turquoise.last:after, .segment--pink.last:after, .segment--pfc-purple.last:after, .segment--light-plum.last:after {
      content: '';
      position: absolute;
      bottom: -24px;
      left: 50%;
      margin-left: -12px;
      z-index: 1000;
      width: 0;
      height: 0;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      border-top: 25px solid transparent; }
  .segment--turquoise .back-top--footer {
    cursor: pointer;
    display: block;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
    color: #ffffff; }
  .segment--turquoise.last {
    padding: 20px 0;
    z-index: 1001; }
  .segment.no-arrow::after {
    display: none; }

.site-header {
  padding: 10px 0; }
  @media screen and (min-width: 600px) {
    .site-header {
      padding: 20px 0; } }
  @media screen and (min-width: 870px) {
    .site-header {
      padding: 20px 0; } }
  @media screen and (min-width: 1050px) {
    .site-header {
      padding: 35px 0; } }
  .site-header .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .site-header .inner .page-link {
      display: block;
      height: auto;
      width: 200px; }
      @media screen and (min-width: 600px) {
        .site-header .inner .page-link {
          margin: 0;
          width: 240px; } }
      @media screen and (min-width: 870px) {
        .site-header .inner .page-link {
          width: 300px; } }
      @media screen and (min-width: 1050px) {
        .site-header .inner .page-link {
          width: 300px; } }
    .site-header .inner .title,
    .site-header .inner .subheading {
      color: #ffffff; }
    .site-header .inner .title {
      font-size: 22px;
      margin: 0 !important; }
      @media screen and (min-width: 870px) {
        .site-header .inner .title {
          font-size: 28px; } }
      @media screen and (min-width: 1050px) {
        .site-header .inner .title {
          font-size: 34px; } }
    .site-header .inner .subheading {
      font-family: "Roboto", Arial, sans-serif;
      font-weight: 300;
      font-size: 14px; }
      @media screen and (min-width: 870px) {
        .site-header .inner .subheading {
          font-size: 16px; } }
      @media screen and (min-width: 1050px) {
        .site-header .inner .subheading {
          font-size: 18px; } }

.site-navigation {
  display: block;
  background-color: #ffffff;
  z-index: 9999;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
  position: absolute;
  width: 100%;
  top: 75px; }
  @media screen and (min-width: 870px) {
    .site-navigation {
      top: 145px; } }
  @media screen and (min-width: 1050px) {
    .site-navigation {
      top: 175px; } }
  .site-navigation.nav--is-scrolled {
    position: fixed;
    top: 0; }
  .site-navigation .back-top {
    display: block; }
    @media screen and (min-width: 870px) {
      .site-navigation .back-top {
        display: none; } }
  .site-navigation .nav__toggle {
    display: block;
    font-family: "Open Sans", Arial, sans-serif;
    letter-spacing: -0.01em;
    text-decoration: none;
    color: #FFF;
    background-color: #20afab;
    text-align: center;
    cursor: pointer;
    font-size: 14px;
    padding: 21px 12px;
    font-weight: 700; }
    @media screen and (min-width: 870px) {
      .site-navigation .nav__toggle {
        display: none; } }
  .site-navigation .nav {
    display: none; }
    @media screen and (min-width: 870px) {
      .site-navigation .nav {
        display: block !important; } }
    .site-navigation .nav__list {
      margin: 0;
      padding: 0;
      list-style: none;
      padding-bottom: 10px; }
      @media screen and (min-width: 870px) {
        .site-navigation .nav__list {
          padding-bottom: 0;
          height: 60px; } }
      @media screen and (min-width: 1050px) {
        .site-navigation .nav__list {
          height: 70px; } }
    .site-navigation .nav__item {
      margin: 0; }
      @media screen and (min-width: 870px) {
        .site-navigation .nav__item {
          float: left; } }
    .site-navigation .nav__link {
      font-family: "Open Sans", Arial, sans-serif;
      letter-spacing: -0.01em;
      text-decoration: none;
      color: #333;
      display: block;
      font-size: 14px;
      padding: 16px 12px;
      font-weight: 700; }
      @media screen and (min-width: 870px) {
        .site-navigation .nav__link {
          padding: 21px 12px;
          display: inline-block;
          font-weight: 600; } }
      @media screen and (min-width: 1050px) {
        .site-navigation .nav__link {
          font-weight: 700;
          font-size: 15px;
          padding: 24px 18px; } }
      @media screen and (min-width: 1280px) {
        .site-navigation .nav__link {
          font-size: 16px;
          padding: 24px 32px; } }
      .site-navigation .nav__link:hover {
        color: #e40375; }

* {
  box-sizing: border-box; }

.clear:after {
  content: '';
  display: block;
  clear: both; }

img {
  max-width: 100%;
  height: auto; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInRoZW1lL2Jhc2UvX2ZvbnRzLnNjc3MiLCJmcmFtZXdvcmsvX25vcm1hbGl6ZS5zY3NzIiwibWFpbi5jc3MiLCJmcmFtZXdvcmsvX2luY2x1ZGUtbWVkaWEuc2NzcyIsImZyYW1ld29yay9faW5jbHVkZS1tZWRpYS1leHBvcnQuc2NzcyIsIm1peGlucy9faGVscGVycy5zY3NzIiwidGhlbWUvYmFzZS9fZ3JpZC5zY3NzIiwibWl4aW5zL19zaXRlLnNjc3MiLCJ0aGVtZS9iYXNlL19zY3JlZW4uc2NzcyIsInRoZW1lL2Jhc2UvX3ZhcmlhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fZGlyZWN0aW9uLWZlYXR1cmUuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL19vdXItcGxhbi1kaWFncmFtLnNjc3MiLCJjb21wb25lbnRzL19vdXItc3RyYXRlZ2ljLWZvY3VzLnNjc3MiLCJjb21wb25lbnRzL19vdXItc3RyYXRlZ2ljLWdvYWwuc2NzcyIsImNvbXBvbmVudHMvX3NpdGUtZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19zaXRlLWhlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fc3RyYXRlZ3ktcm93LnNjc3MiLCJjb21wb25lbnRzL193LWJ1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fdy1oZXJvLnNjc3MiLCJjb21wb25lbnRzL193b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbS5zY3NzIiwic2VjdGlvbnMvX3NlZ21lbnQuc2NzcyIsInNlY3Rpb25zL19zaXRlLWhlYWRlci5zY3NzIiwic2VjdGlvbnMvX3NpdGUtbmF2aWdhdGlvbi5zY3NzIiwidGhlbWUvYmFzZS9fc2hhbWUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQkFBbUI7QUNRbkIseUdBQVk7QUFFWiwwRUFBWTtBQ1ZaO0VBQ0UsdUJBQXVCLEVBQ3hCOztBQUVEO0VBQ0Usb0JBQW9CLEVBQ3JCOztBQUVELDREQUE0RDtBQUU1RDs7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QkFBbUIsRUFXcEIsRUFBQTtNQVJBO1FBcEdIO1VBcUdJLGdCQUFnQjtVQUNoQixtQkFBbUIsRUFNcEIsRUFBQTtNQTVHSDtRQTBHSSxlZG5GVSxFY29GVjs7QUMxR0o7RUFDQyx1QkFBdUIsRUFDdkI7O0FBR0Q7RWpCZUssWUFBWTtFQUNaLGVBQWU7RUFDZixZQUFZLEVBQ2Y7O0FpQmJGO0VBQ0MsZ0JBQWdCO0VBQ2hCLGFBQWEsRUFDYiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qID09PSBGcmFtZXdvcmsgKi9cbkBpbXBvcnQgXCJmcmFtZXdvcmsvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiZnJhbWV3b3JrL2luY2x1ZGUtbWVkaWFcIjtcbkBpbXBvcnQgXCJmcmFtZXdvcmsvaW5jbHVkZS1tZWRpYS1leHBvcnRcIjtcblxuLyogPT09IFRoaXJkIHBhcnR5IGZyYW1ld29ya3MgJiBsaWJyYXJpZXMgKi9cblxuLyogPT09IE1peGlucyAmIEhlbHBlcnMgKi9cbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaGVscGVyc1wiO1xuQGltcG9ydCBcIm1peGlucy9zaXRlXCI7XG5cbi8qID09PSBUaGVtZSBWYXJpYWJsZXMgKi9cbkBpbXBvcnQgXCJ0aGVtZS9iYXNlL3ZhcmlhYmxlc1wiO1xuLy8gQGltcG9ydCBcInRoZW1lL2Jhc2UvbGF5b3V0XCI7XG4vLyBAaW1wb3J0IFwidGhlbWUvYmFzZS9jb2xvcnNcIjtcbkBpbXBvcnQgXCJ0aGVtZS9iYXNlL2ZvbnRzXCI7XG5AaW1wb3J0IFwidGhlbWUvYmFzZS9ncmlkXCI7XG4vLyBAaW1wb3J0IFwidGhlbWUvYmFzZS90eXBvZ3JhcGh5XCI7XG4vLyBAaW1wb3J0IFwidGhlbWUvYmFzZS9mb3Jtc1wiO1xuQGltcG9ydCBcInRoZW1lL2Jhc2Uvc2NyZWVuXCI7XG5cbi8qID09PSBDb21wb25lbnRzICovXG5AaW1wb3J0IFwiL0FwcGxpY2F0aW9ucy9TZXJ2QmF5L3d3dy9UaGUtV29tZW5zL3N0cmF0ZWdpY19wbGFuL3NyYy9zdHlsZXMvY29tcG9uZW50cy9fZGlyZWN0aW9uLWZlYXR1cmUuc2Nzc1wiO1xuQGltcG9ydCBcIi9BcHBsaWNhdGlvbnMvU2VydkJheS93d3cvVGhlLVdvbWVucy9zdHJhdGVnaWNfcGxhbi9zcmMvc3R5bGVzL2NvbXBvbmVudHMvX2Zvcm1zLnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9jb21wb25lbnRzL19vdXItcGxhbi1kaWFncmFtLnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9jb21wb25lbnRzL19vdXItc3RyYXRlZ2ljLWZvY3VzLnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9jb21wb25lbnRzL19vdXItc3RyYXRlZ2ljLWdvYWwuc2Nzc1wiO1xuQGltcG9ydCBcIi9BcHBsaWNhdGlvbnMvU2VydkJheS93d3cvVGhlLVdvbWVucy9zdHJhdGVnaWNfcGxhbi9zcmMvc3R5bGVzL2NvbXBvbmVudHMvX3NpdGUtZm9vdGVyLnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9jb21wb25lbnRzL19zaXRlLWhlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwiL0FwcGxpY2F0aW9ucy9TZXJ2QmF5L3d3dy9UaGUtV29tZW5zL3N0cmF0ZWdpY19wbGFuL3NyYy9zdHlsZXMvY29tcG9uZW50cy9fc3RyYXRlZ3ktcm93LnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9jb21wb25lbnRzL193LWJ1dHRvbi5zY3NzXCI7XG5AaW1wb3J0IFwiL0FwcGxpY2F0aW9ucy9TZXJ2QmF5L3d3dy9UaGUtV29tZW5zL3N0cmF0ZWdpY19wbGFuL3NyYy9zdHlsZXMvY29tcG9uZW50cy9fdy1oZXJvLnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9jb21wb25lbnRzL193b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbS5zY3NzXCI7XG47XG5cbi8qID09PSBTZWN0aW9ucyAqL1xuQGltcG9ydCBcIi9BcHBsaWNhdGlvbnMvU2VydkJheS93d3cvVGhlLVdvbWVucy9zdHJhdGVnaWNfcGxhbi9zcmMvc3R5bGVzL3NlY3Rpb25zL19zZWdtZW50LnNjc3NcIjtcbkBpbXBvcnQgXCIvQXBwbGljYXRpb25zL1NlcnZCYXkvd3d3L1RoZS1Xb21lbnMvc3RyYXRlZ2ljX3BsYW4vc3JjL3N0eWxlcy9zZWN0aW9ucy9fc2l0ZS1oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcIi9BcHBsaWNhdGlvbnMvU2VydkJheS93d3cvVGhlLVdvbWVucy9zdHJhdGVnaWNfcGxhbi9zcmMvc3R5bGVzL3NlY3Rpb25zL19zaXRlLW5hdmlnYXRpb24uc2Nzc1wiO1xuO1xuXG4vL1NIQU1FXG5AaW1wb3J0IFwidGhlbWUvYmFzZS9zaGFtZVwiO1xuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEZPTlRTIEZJTEVcdFx0XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxNCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLy9PcGVuIFNhbnNcbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDYwMCw3MDAsNzAwaXRhbGljLDYwMGl0YWxpYyw0MDBpdGFsaWMpO1xuLy9Sb2JvdG9cbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG86MzAwLDMwMGl0YWxpYyk7XG5cbi8vIEBmb250LWZhY2Uge1xuLy8gICBmb250LWZhbWlseTogXCJOZXV0cmEyRGlzcGxheS1Cb2xkXCI7XG4vLyAgIHNyYzogXHR1cmwoXCIuLi9mb250cy9OZXV0cmEyRGlzcGxheS1Cb2xkLmVvdD9cIikgZm9ybWF0KFwiZW90XCIpLFxuLy8gICBcdFx0dXJsKFwiLi4vZm9udHMvTmV1dHJhMkRpc3BsYXktQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4vLyB9XG4vLyBAZm9udC1mYWNlIHtcbi8vICAgZm9udC1mYW1pbHk6IFwiTmV1dHJhMkRpc3BsYXktTWVkaXVtXCI7XG4vLyAgIHNyYzogXHR1cmwoXCIuLi9mb250cy9OZXV0cmEyRGlzcGxheS1NZWRpdW0uZW90P1wiKSBmb3JtYXQoXCJlb3RcIiksXG4vLyAgIFx0XHR1cmwoXCIuLi9mb250cy9OZXV0cmEyRGlzcGxheS1NZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuLy8gfVxuXG5cbi8vRGVmYXVsdCBmb250IHN0eWxlXG4qIHtcblx0Zm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRmb250LXNpemU6IDE2cHg7XG5cdHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbiIsImh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDA7IC8vUmVtb3ZlZCBtYXJnaW4gKGhlbWkpXG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZXNwb25zaXZlIGltYWdlcyBieSBkZWZhdWx0XG4gKi9cblxuaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IGF1dG87XG4gIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgLy8gLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLy8gLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICAvLyBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmFkZHJlc3Mge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi8qID09PSBGcmFtZXdvcmsgKi9cbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDYwMCw3MDAsNzAwaXRhbGljLDYwMGl0YWxpYyw0MDBpdGFsaWMpO1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzozMDAsMzAwaXRhbGljKTtcbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVzcG9uc2l2ZSBpbWFnZXMgYnkgZGVmYXVsdFxuICovXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogYXV0bztcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWVcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICd7XCJtb2JpbGVcIjp7XCJ2YWx1ZVwiOiBcIjMyMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcIm1vYmlsZS13aWRlXCI6e1widmFsdWVcIjogXCI0ODBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwidGFibGV0XCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwiZGVza3RvcFwiOntcInZhbHVlXCI6IFwiMTAyNHB4XCIsIFwiYWN0aXZlXCI6IGZhbHNlfSwgXCJkZXNrdG9wLXdpZGVcIjp7XCJ2YWx1ZVwiOiBcIjEyODBweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX19JztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICBib2R5OjphZnRlciB7XG4gICAgY29udGVudDogJ3tcIm1vYmlsZVwiOntcInZhbHVlXCI6IFwiMzIwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwibW9iaWxlLXdpZGVcIjp7XCJ2YWx1ZVwiOiBcIjQ4MHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcInRhYmxldFwiOntcInZhbHVlXCI6IFwiNzY4cHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9LCBcImRlc2t0b3BcIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwiZGVza3RvcC13aWRlXCI6e1widmFsdWVcIjogXCIxMjgwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICd7XCJtb2JpbGVcIjp7XCJ2YWx1ZVwiOiBcIjMyMHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcIm1vYmlsZS13aWRlXCI6e1widmFsdWVcIjogXCI0ODBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ0YWJsZXRcIjp7XCJ2YWx1ZVwiOiBcIjc2OHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImRlc2t0b3BcIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX0sIFwiZGVza3RvcC13aWRlXCI6e1widmFsdWVcIjogXCIxMjgwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wibW9iaWxlXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJtb2JpbGUtd2lkZVwiOntcInZhbHVlXCI6IFwiNDgwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwidGFibGV0XCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJkZXNrdG9wXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwiZGVza3RvcC13aWRlXCI6e1widmFsdWVcIjogXCIxMjgwcHhcIiwgXCJhY3RpdmVcIjogZmFsc2V9fSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIGJvZHk6OmFmdGVyIHtcbiAgICBjb250ZW50OiAne1wibW9iaWxlXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJtb2JpbGUtd2lkZVwiOntcInZhbHVlXCI6IFwiNDgwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwidGFibGV0XCI6e1widmFsdWVcIjogXCI3NjhweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJkZXNrdG9wXCI6e1widmFsdWVcIjogXCIxMDI0cHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX0sIFwiZGVza3RvcC13aWRlXCI6e1widmFsdWVcIjogXCIxMjgwcHhcIiwgXCJhY3RpdmVcIjogdHJ1ZX19JztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMDsgfSB9XG5cbi8qID09PSBUaGlyZCBwYXJ0eSBmcmFtZXdvcmtzICYgbGlicmFyaWVzICovXG4vKiA9PT0gTWl4aW5zICYgSGVscGVycyAqL1xuLl9jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uX2hpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uX3NjcmVlbnJlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpICFpbXBvcnRhbnQ7IH1cblxuLyogPT09IFRoZW1lIFZhcmlhYmxlcyAqL1xuKiB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi5pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMTVweDsgfVxuXG4uZ3JpZF9fOCxcbi5ncmlkX181LTUsXG4uZ3JpZF9fMTAsXG4uZ3JpZF9fNS03LFxuLmdyaWRfXzYtNixcbi5ncmlkX18xMixcbi5pbm5lciB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLmdyaWRfXzgsXG4gICAgLmdyaWRfXzUtNSxcbiAgICAuZ3JpZF9fMTAsXG4gICAgLmdyaWRfXzUtNyxcbiAgICAuZ3JpZF9fNi02LFxuICAgIC5ncmlkX18xMixcbiAgICAuaW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiA0NjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gICAgLmdyaWRfXzgsXG4gICAgLmdyaWRfXzUtNSxcbiAgICAuZ3JpZF9fMTAsXG4gICAgLmdyaWRfXzUtNyxcbiAgICAuZ3JpZF9fNi02LFxuICAgIC5ncmlkX18xMixcbiAgICAuaW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiA1ODBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgLmdyaWRfXzgsXG4gICAgLmdyaWRfXzUtNSxcbiAgICAuZ3JpZF9fMTAsXG4gICAgLmdyaWRfXzUtNyxcbiAgICAuZ3JpZF9fNi02LFxuICAgIC5ncmlkX18xMixcbiAgICAuaW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiA4MzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAgIC5ncmlkX184LFxuICAgIC5ncmlkX181LTUsXG4gICAgLmdyaWRfXzEwLFxuICAgIC5ncmlkX181LTcsXG4gICAgLmdyaWRfXzYtNixcbiAgICAuZ3JpZF9fMTIsXG4gICAgLmlubmVyIHtcbiAgICAgIG1heC13aWR0aDogOTgwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmdyaWRfXzUtNyxcbiAgLmdyaWRfXzYtNixcbiAgLmdyaWRfXzEyLFxuICAuaW5uZXIge1xuICAgIG1heC13aWR0aDogMTIwMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5ncmlkX181LTUsXG4gIC5ncmlkX18xMCB7XG4gICAgbWF4LXdpZHRoOiA5NzBweDsgfSB9XG5cbi5ncmlkX184IHtcbiAgbWF4LXdpZHRoOiA3NzBweDsgfVxuXG4uZ3JpZF9fNS03LFxuLmdyaWRfXzYtNixcbi5ncmlkX18xMixcbi5ncmlkX181LTUsXG4uZ3JpZF9fMTAsXG4uZ3JpZF9fOCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5ncmlkX181LTc6YWZ0ZXIsXG4gIC5ncmlkX182LTY6YWZ0ZXIsXG4gIC5ncmlkX18xMjphZnRlcixcbiAgLmdyaWRfXzUtNTphZnRlcixcbiAgLmdyaWRfXzEwOmFmdGVyLFxuICAuZ3JpZF9fODphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbC0xLFxuLmNvbC0yLFxuLmdyaWRfXzEyLFxuLmdyaWRfXzEwLFxuLmdyaWRfXzgge1xuICBwYWRkaW5nOiAwIDE1cHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgLmdyaWRfXzUtNyAuY29sLTEge1xuICAgIHdpZHRoOiA0MS41JTtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gIC5ncmlkX181LTcgLmNvbC0yIHtcbiAgICB3aWR0aDogNTguNSU7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgLmdyaWRfXzYtNiAuY29sLTEsXG4gIC5ncmlkX181LTUgLmNvbC0xIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgLmdyaWRfXzYtNiAuY29sLTIsXG4gIC5ncmlkX181LTUgLmNvbC0yIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5jb2wtbGFzdDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7IH1cblxuYm9keSB7XG4gIGNvbG9yOiAjNjc2NTYzO1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwdmg7IH1cblxuYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgLyogMSwgMyAqLyB9XG5cbi5zaXRlLWhlYWRlcixcbi5zaXRlLWZvb3RlciB7XG4gIGZsZXg6IG5vbmU7XG4gIC8qIDIgKi8gfVxuXG4ucGFnZS1jb250YWluZXIge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgLyogMiAqL1xuICB3aWR0aDogMTAwJTsgfVxuICAucGFnZS1jb250YWluZXIudy1wYWRkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4OyB9XG5cbmEge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuaDEsIGgyIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS4xZW07IH1cblxuaDEge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICNlNDAzNzU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDUwcHg7IH0gfVxuXG5oMiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuXG5oMyB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzMzMzsgfVxuXG5wLCBsaSwgc3BhbiB7XG4gIG1hcmdpbjogMCAwIDFlbSAwOyB9XG5cbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSxcbi5pbnRybyBwLCAuaW50cm8tLWxhcmdlIHAsXG4uaW50cm8sIC5pbnRyby0tbGFyZ2Uge1xuICBtYXJnaW46IDAgMCAyMHB4IDA7IH1cblxuLmludHJvIHAsXG4uaW50cm8ge1xuICBjb2xvcjogIzkzMTI1OTtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgLmludHJvIHAsXG4gICAgLmludHJvIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAgIC5pbnRybyBwLFxuICAgIC5pbnRybyB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuXG4uaW50cm8tLWxhcmdlIHAsXG4uaW50cm8tLWxhcmdlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgLmludHJvLS1sYXJnZSBwLFxuICAgIC5pbnRyby0tbGFyZ2Uge1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cblxuLmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udG9wLXNwYWNlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4uZncge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnNwZWNpYWwtaW1hZ2UtcmV2ZWFsLmlzLW5vdC12aXNpYmxlIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOyB9XG5cbi5zcGVjaWFsLWltYWdlLXJldmVhbC5pcy12aXNpYmxlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLyogPT09IENvbXBvbmVudHMgKi9cbi5kaXJlY3Rpb24tZmVhdHVyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZGlyZWN0aW9uLWZlYXR1cmU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0tcHVycGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTExYzc0OyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0tbWFyb29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTYzOTUyOyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0tb3JhbmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTI1MzM0OyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0teWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ4ZDJkOyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0tcGx1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViM2E1NzsgfVxuICAuZGlyZWN0aW9uLWZlYXR1cmUtLWR1Y2stZWdnLWJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYWJlY2I7IH1cbiAgLmRpcmVjdGlvbi1mZWF0dXJlLS1waW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTQwMzc1OyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0tbWF1dmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhOTFGNzc7IH1cbiAgLmRpcmVjdGlvbi1mZWF0dXJlLS1ncmF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGQ4ZjkzOyB9XG4gIC5kaXJlY3Rpb24tZmVhdHVyZS0tdGVhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQwOTNBNDsgfVxuICAuZGlyZWN0aW9uLWZlYXR1cmUtLXB1cnBsZSwgLmRpcmVjdGlvbi1mZWF0dXJlLS1tYXJvb24sIC5kaXJlY3Rpb24tZmVhdHVyZS0tb3JhbmdlLCAuZGlyZWN0aW9uLWZlYXR1cmUtLXllbGxvdywgLmRpcmVjdGlvbi1mZWF0dXJlLS1wbHVtLCAuZGlyZWN0aW9uLWZlYXR1cmUtLWR1Y2stZWdnLWJsdWUsIC5kaXJlY3Rpb24tZmVhdHVyZS0tcGluaywgLmRpcmVjdGlvbi1mZWF0dXJlLS1tYXV2ZSwgLmRpcmVjdGlvbi1mZWF0dXJlLS1ncmF5LCAuZGlyZWN0aW9uLWZlYXR1cmUtLXRlYWwge1xuICAgIHBhZGRpbmc6IDM1cHg7XG4gICAgbWFyZ2luOiA1MHB4IDAgMzBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAuZGlyZWN0aW9uLWZlYXR1cmUtLXB1cnBsZSwgLmRpcmVjdGlvbi1mZWF0dXJlLS1tYXJvb24sIC5kaXJlY3Rpb24tZmVhdHVyZS0tb3JhbmdlLCAuZGlyZWN0aW9uLWZlYXR1cmUtLXllbGxvdywgLmRpcmVjdGlvbi1mZWF0dXJlLS1wbHVtLCAuZGlyZWN0aW9uLWZlYXR1cmUtLWR1Y2stZWdnLWJsdWUsIC5kaXJlY3Rpb24tZmVhdHVyZS0tcGluaywgLmRpcmVjdGlvbi1mZWF0dXJlLS1tYXV2ZSwgLmRpcmVjdGlvbi1mZWF0dXJlLS1ncmF5LCAuZGlyZWN0aW9uLWZlYXR1cmUtLXRlYWwge1xuICAgICAgICBwYWRkaW5nOiAzNXB4IDIwJTsgfSB9XG4gICAgLmRpcmVjdGlvbi1mZWF0dXJlLS1wdXJwbGUgcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS1tYXJvb24gcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS1vcmFuZ2UgcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS15ZWxsb3cgcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS1wbHVtIHAsIC5kaXJlY3Rpb24tZmVhdHVyZS0tZHVjay1lZ2ctYmx1ZSBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLXBpbmsgcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS1tYXV2ZSBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLWdyYXkgcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS10ZWFsIHAge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgICAgICAuZGlyZWN0aW9uLWZlYXR1cmUtLXB1cnBsZSBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLW1hcm9vbiBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLW9yYW5nZSBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLXllbGxvdyBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLXBsdW0gcCwgLmRpcmVjdGlvbi1mZWF0dXJlLS1kdWNrLWVnZy1ibHVlIHAsIC5kaXJlY3Rpb24tZmVhdHVyZS0tcGluayBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLW1hdXZlIHAsIC5kaXJlY3Rpb24tZmVhdHVyZS0tZ3JheSBwLCAuZGlyZWN0aW9uLWZlYXR1cmUtLXRlYWwgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgLmRpcmVjdGlvbi1mZWF0dXJlLmlzLW5vdC12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAwKTsgfVxuICAuZGlyZWN0aW9uLWZlYXR1cmUuaXMtdmlzaWJsZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4uY2FtcGFpZ25fZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gIC5jYW1wYWlnbl9mb3JtIC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZmNGU2O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICM3NWRhNzU7XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIC5jYW1wYWlnbl9mb3JtIC5zdWNjZXNzIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG5mb3JtIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNjUwcHg7IH1cbiAgZm9ybSAubWVzc2FnZSB7XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNlOGY1O1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgZm9ybSBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgZm9ybSBmaWVsZHNldCBsZWdlbmQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBmb3JtIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICBmb3JtIC5yZXEge1xuICAgIGNvbG9yOiByZWQ7IH1cbiAgZm9ybSAuZGZvcm1fY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuICAgIGZvcm0gLmRmb3JtX2NvbnRhaW5lciBoMyB7XG4gICAgICBtYXJnaW46IDMycHggMCAxNnB4OyB9XG4gIGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICBmb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICBmb3JtIGlucHV0W3R5cGU9XCJ0ZWxcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICAgIHBhZGRpbmc6IDhweDsgfVxuICBmb3JtIHNlbGVjdCB7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gIGZvcm0gLmZpZWxkX2NhcHRjaGEge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmNWYyZWM7IH1cbiAgZm9ybSAuc3VibWl0X2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMTZweDsgfVxuICBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UyMDA3NjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogOHB4IDI0cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgYm94LXNoYWRvdzogdHJhbnNwYXJlbnQgMnB4IDJweCA1cHg7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCA1cHggMjBweDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMTAyNWM7IH1cbiAgZm9ybSAuZGZpbnB1dF9kYXRlcyB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIGZvcm0gLmRmaW5wdXRfZGF0ZXMgLmRmX2RhdGVfZWxlbV9leHRyYSxcbiAgICBmb3JtIC5kZmlucHV0X2RhdGVzIC5kZl9kYXRlX2VsZW0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gICAgICBmb3JtIC5kZmlucHV0X2RhdGVzIC5kZl9kYXRlX2VsZW1fZXh0cmEgbGFiZWwsXG4gICAgICBmb3JtIC5kZmlucHV0X2RhdGVzIC5kZl9kYXRlX2VsZW0gbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIGZvcm0gLnJhZGlvcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAwIDhweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIGZvcm0gLnJhZGlvcyBsaSB7XG4gICAgICBtYXJnaW46IDAgMCA4cHggMDsgfVxuICAgICAgZm9ybSAucmFkaW9zIGxpOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuXG4ub3VyLXBsYW4tZGlhZ3JhbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDU1cHg7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtc2hhZG93OiB0cmFuc3BhcmVudCAycHggMnB4IDVweDtcbiAgICB0cmFuc2l0aW9uOiB0ZXh0LXNoYWRvdywgMC4zcywgZWFzZTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtIGE6aG92ZXIge1xuICAgICAgdGV4dC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4zKSAycHggMnB4IDVweDsgfVxuICAgICAgLm91ci1wbGFuLWRpYWdyYW0gYTpob3ZlciBwIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gIC5vdXItcGxhbi1kaWFncmFtIGgzLCAub3VyLXBsYW4tZGlhZ3JhbSBoNCwgLm91ci1wbGFuLWRpYWdyYW0gcCwgLm91ci1wbGFuLWRpYWdyYW0gYiB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbSBoMyB7XG4gICAgZm9udC1zaXplOiAzMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAgIC5vdXItcGxhbi1kaWFncmFtIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgIC5vdXItcGxhbi1kaWFncmFtIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0gaDQge1xuICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbSBwIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciwgMC4zcywgZWFzZTtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZ29hbCBwIHtcbiAgICBmb250LXNpemU6IDIycHg7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLWZvY3VzIHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLWZvY3VzIGIge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1nb2FsLCAub3VyLXBsYW4tZGlhZ3JhbS0tZGlyZWN0aW9uLCAub3VyLXBsYW4tZGlhZ3JhbS0tZm9jdXMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgIC5vdXItcGxhbi1kaWFncmFtLS1waW5rIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDI3cHg7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tcHVycGxlIGg0IHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tcmVkIGg0IHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tb3JhbmdlIGg0LCAub3VyLXBsYW4tZGlhZ3JhbS0teWVsbG93IGg0IHtcbiAgICAgIG1hcmdpbi10b3A6IDIzcHg7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tY2Fycm90IHA6Zmlyc3QtY2hpbGQsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLWJsdWUgcDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxOXB4OyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLWdyZWVuIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLS1sYXZlbmRlciBwOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDM0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tcGluayBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZSBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLXJlZCBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4OyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLW9yYW5nZSBoNCwgLm91ci1wbGFuLWRpYWdyYW0tLXllbGxvdyBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLWNhcnJvdCBwOmZpcnN0LWNoaWxkLFxuICAgIC5vdXItcGxhbi1kaWFncmFtLS1ibHVlIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMzNweDsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLS1ncmVlbiBwOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDUzcHg7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tbGF2ZW5kZXIgcDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiA1NnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAub3VyLXBsYW4tZGlhZ3JhbSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgIGhlaWdodDogMDsgfSB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1nb2FsLCAub3VyLXBsYW4tZGlhZ3JhbS0tZGlyZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgICAgLm91ci1wbGFuLWRpYWdyYW0tLWdvYWwsIC5vdXItcGxhbi1kaWFncmFtLS1kaXJlY3Rpb24ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZzogMTAlIDEwJTsgfSB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1mb2N1cyB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAub3VyLXBsYW4tZGlhZ3JhbS0tZm9jdXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZzogMCAyJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gICAgICAub3VyLXBsYW4tZGlhZ3JhbS0tZm9jdXMge1xuICAgICAgICBwYWRkaW5nOiAwIDMlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tbW0sIC5vdXItcGxhbi1kaWFncmFtLS1ybSwgLm91ci1wbGFuLWRpYWdyYW0tLWJtLCAub3VyLXBsYW4tZGlhZ3JhbS0tbG0sIC5vdXItcGxhbi1kaWFncmFtLS10bSwgLm91ci1wbGFuLWRpYWdyYW0tLXRyLCAub3VyLXBsYW4tZGlhZ3JhbS0tYnIsIC5vdXItcGxhbi1kaWFncmFtLS1ibCwgLm91ci1wbGFuLWRpYWdyYW0tLXRsIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMzLjMzMyU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLS1sbSB7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLXRtLCAub3VyLXBsYW4tZGlhZ3JhbS0tbW0sIC5vdXItcGxhbi1kaWFncmFtLS1ibSB7XG4gICAgICBsZWZ0OiAzMy4zJTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLS10ciwgLm91ci1wbGFuLWRpYWdyYW0tLXJtLCAub3VyLXBsYW4tZGlhZ3JhbS0tYnIge1xuICAgICAgbGVmdDogNjYuNiU7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS0tdG0ge1xuICAgICAgdG9wOiAwOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLWxtLCAub3VyLXBsYW4tZGlhZ3JhbS0tbW0sIC5vdXItcGxhbi1kaWFncmFtLS1ybSB7XG4gICAgICB0b3A6IDMzLjMlOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLWJsLCAub3VyLXBsYW4tZGlhZ3JhbS0tYm0sIC5vdXItcGxhbi1kaWFncmFtLS1iciB7XG4gICAgICB0b3A6IDY2LjYlOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLXRsLCAub3VyLXBsYW4tZGlhZ3JhbS0tdHIsIC5vdXItcGxhbi1kaWFncmFtLS1iciwgLm91ci1wbGFuLWRpYWdyYW0tLWJsIHtcbiAgICAgIHdpZHRoOiAxNi42NSU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTYuNjUlOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLXRsIHtcbiAgICAgIHRvcDogMTYuNjUlO1xuICAgICAgbGVmdDogMTYuNjUlOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLXRyIHtcbiAgICAgIHRvcDogMTYuNjUlOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0tLWJsIHtcbiAgICAgIGxlZnQ6IDE2LjY1JTsgfSB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1waW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTQwMzc1OyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNjM5NTI7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLW9yYW5nZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UyNTMzNDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0teWVsbG93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ4ZDJkOyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MTFjNzQ7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLWNhcnJvdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhNjMwYTsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tbGF2ZW5kZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTY3OWY7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhODY0OyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWVjNmNlOyB9XG4gIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy0taW5zZXQsXG4gIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAub3VyLXBsYW4tZGlhZ3JhbSAuYXJyb3ctLWluc2V0LFxuICAgICAgLm91ci1wbGFuLWRpYWdyYW0gLmFycm93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAub3VyLXBsYW4tZGlhZ3JhbSAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy5vdXItcGxhbi1kaWFncmFtLS10b3Age1xuICAgICAgdG9wOiAtMjFweDtcbiAgICAgIGxlZnQ6IDcwJTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy5vdXItcGxhbi1kaWFncmFtLS1yaWdodCB7XG4gICAgICB0b3A6IDcwJTtcbiAgICAgIHJpZ2h0OiAtMzJweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy5vdXItcGxhbi1kaWFncmFtLS1ib3R0b20ge1xuICAgICAgYm90dG9tOiAtMjFweDtcbiAgICAgIGxlZnQ6IDIwJTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbSAuYXJyb3cub3VyLXBsYW4tZGlhZ3JhbS0tbGVmdCB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgdG9wOiAyMCU7XG4gICAgICBsZWZ0OiAtMzJweDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tbW0gLmFycm93Lm91ci1wbGFuLWRpYWdyYW0tLXRvcCB7XG4gICAgdG9wOiAtMzJweDtcbiAgICBsZWZ0OiA3MCU7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLW1tIC5hcnJvdy5vdXItcGxhbi1kaWFncmFtLS1yaWdodCB7XG4gICAgdG9wOiA3MCU7XG4gICAgcmlnaHQ6IC01MHB4OyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1tbSAuYXJyb3cub3VyLXBsYW4tZGlhZ3JhbS0tYm90dG9tIHtcbiAgICBib3R0b206IC0zMnB4O1xuICAgIGxlZnQ6IDIwJTsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tbW0gLmFycm93Lm91ci1wbGFuLWRpYWdyYW0tLWxlZnQge1xuICAgIHRvcDogMjAlO1xuICAgIGxlZnQ6IC01MHB4OyB9XG4gIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy0taW5zZXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA0NjsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy0taW5zZXQub3VyLXBsYW4tZGlhZ3JhbS0tdG9wIHtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIGxlZnQ6IDIwJTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbSAuYXJyb3ctLWluc2V0Lm91ci1wbGFuLWRpYWdyYW0tLXJpZ2h0IHtcbiAgICAgIHRvcDogMjAlO1xuICAgICAgcmlnaHQ6IC0xNHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtIC5hcnJvdy0taW5zZXQub3VyLXBsYW4tZGlhZ3JhbS0tYm90dG9tIHtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIGxlZnQ6IDcwJTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0gLmFycm93LS1pbnNldC5vdXItcGxhbi1kaWFncmFtLS1sZWZ0IHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIHRvcDogNzAlO1xuICAgICAgbGVmdDogLTE0cHg7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLWZpbGwtYmx1ZSB7XG4gICAgZmlsbDogIzVlYzZjZTsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZmlsbC1waW5rIHtcbiAgICBmaWxsOiAjZTQwMzc1OyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1maWxsLXJlZCB7XG4gICAgZmlsbDogI2U2Mzk1MjsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZmlsbC1vcmFuZ2Uge1xuICAgIGZpbGw6ICNlMjUzMzQ7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLWZpbGwteWVsbG93IHtcbiAgICBmaWxsOiAjZjQ4ZDJkOyB9XG4gIC5vdXItcGxhbi1kaWFncmFtLS1maWxsLXB1cnBsZSB7XG4gICAgZmlsbDogIzUxMWM3NDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZmlsbC1sYXZlbmRlciB7XG4gICAgZmlsbDogIzc5Njc5ZjsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZmlsbC1ncmVlbiB7XG4gICAgZmlsbDogIzAwYTg2NDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZmlsbC1jYXJyb3Qge1xuICAgIGZpbGw6ICNlYTYzMGE7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0tLW1tIC5vdXItcGxhbi1kaWFncmFtLS1nb2FsIHtcbiAgICB6LWluZGV4OiA1MDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tbW0gLmFycm93IHtcbiAgICB6LWluZGV4OiA0OTsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZGlyZWN0aW9uIHtcbiAgICB6LWluZGV4OiA0NTsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tcm0gLmFycm93LCAub3VyLXBsYW4tZGlhZ3JhbS0tYm0gLmFycm93LCAub3VyLXBsYW4tZGlhZ3JhbS0tbG0gLmFycm93LCAub3VyLXBsYW4tZGlhZ3JhbS0tdG0gLmFycm93IHtcbiAgICB6LWluZGV4OiA0NDsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS0tZm9jdXMge1xuICAgIHotaW5kZXg6IDQwOyB9XG4gIC5vdXItcGxhbi1kaWFncmFtIGgzLCAub3VyLXBsYW4tZGlhZ3JhbSBoNCB7XG4gICAgY29sb3I6ICNGRkY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy1ub3QtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tcGluayB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy1ub3QtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tcGluayxcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy1ub3QtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tcHVycGxlLFxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1jYXJyb3QsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWJsdWUsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLW9yYW5nZSxcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy1ub3QtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tbGF2ZW5kZXIsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWdyZWVuLFxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1yZWQsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXllbGxvdyxcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy1ub3QtdmlzaWJsZSAuYXJyb3ctLWluc2V0LFxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5hcnJvdyB7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxNjVweCk7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy1ub3QtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tY2Fycm90IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTVweCwgMTU1cHgpOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXJlZCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTU1cHgsIDApOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWxhdmVuZGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTVweCwgLTE1NXB4KTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1vcmFuZ2Uge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE2NXB4KTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1ncmVlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTVweCwgLTE1NXB4KTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS15ZWxsb3cge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTU1cHgsIDApOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWJsdWUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTU1cHgsIDE1NXB4KTsgfSB9XG4gIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXBpbmsge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXBpbms6aG92ZXIgcCB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5hcnJvdyxcbiAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAuYXJyb3ctLWluc2V0IHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLW91dDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuN3M7IH1cbiAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tcHVycGxlLFxuICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1jYXJyb3QsXG4gIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWJsdWUsXG4gIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLW9yYW5nZSxcbiAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tbGF2ZW5kZXIsXG4gIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWdyZWVuLFxuICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1yZWQsXG4gIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXllbGxvdyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZTpob3ZlciBwLFxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWNhcnJvdDpob3ZlciBwLFxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWJsdWU6aG92ZXIgcCxcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1vcmFuZ2U6aG92ZXIgcCxcbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1sYXZlbmRlcjpob3ZlciBwLFxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWdyZWVuOmhvdmVyIHAsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tcmVkOmhvdmVyIHAsXG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0teWVsbG93OmhvdmVyIHAge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tcHVycGxlIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gICAgLm91ci1wbGFuLWRpYWdyYW0uaXMtdmlzaWJsZSAub3VyLXBsYW4tZGlhZ3JhbS0tY2Fycm90IHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1yZWQge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yczsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWxhdmVuZGVyIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS1vcmFuZ2Uge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC40czsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWdyZWVuIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7IH1cbiAgICAub3VyLXBsYW4tZGlhZ3JhbS5pcy12aXNpYmxlIC5vdXItcGxhbi1kaWFncmFtLS15ZWxsb3cge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC42czsgfVxuICAgIC5vdXItcGxhbi1kaWFncmFtLmlzLXZpc2libGUgLm91ci1wbGFuLWRpYWdyYW0tLWJsdWUge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC43czsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gIC5vdXItc3RyYXRlZ2ljLWZvY3VzIC5pbWFnZSxcbiAgLm91ci1hcmVhcy1vZi1mb2N1cyAuaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgLm91ci1zdHJhdGVnaWMtZm9jdXMgLmltYWdlLFxuICAub3VyLWFyZWFzLW9mLWZvY3VzIC5pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5vdXItc3RyYXRlZ2ljLWZvY3VzIC5sYW5kc2NhcGUsXG4ub3VyLWFyZWFzLW9mLWZvY3VzIC5sYW5kc2NhcGUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAub3VyLXN0cmF0ZWdpYy1mb2N1cyAubGFuZHNjYXBlLFxuICAgIC5vdXItYXJlYXMtb2YtZm9jdXMgLmxhbmRzY2FwZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm91ci1zdHJhdGVnaWMtZm9jdXMgLnBvcnRyYWl0LFxuLm91ci1hcmVhcy1vZi1mb2N1cyAucG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAgIC5vdXItc3RyYXRlZ2ljLWZvY3VzIC5wb3J0cmFpdCxcbiAgICAub3VyLWFyZWFzLW9mLWZvY3VzIC5wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5vdXItc3RyYXRlZ2ljLWZvY3VzIC5ncmlkX182LTYgLmNvbC0xLFxuLm91ci1zdHJhdGVnaWMtZm9jdXMgLmdyaWRfXzYtNiAuY29sLTIsXG4ub3VyLWFyZWFzLW9mLWZvY3VzIC5ncmlkX182LTYgLmNvbC0xLFxuLm91ci1hcmVhcy1vZi1mb2N1cyAuZ3JpZF9fNi02IC5jb2wtMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAub3VyLXN0cmF0ZWdpYy1mb2N1cyAuZ3JpZF9fNi02IC5jb2wtMSxcbiAgLm91ci1hcmVhcy1vZi1mb2N1cyAuZ3JpZF9fNi02IC5jb2wtMSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAub3VyLXN0cmF0ZWdpYy1mb2N1cyAuZ3JpZF9fNi02IC5jb2wtMixcbiAgLm91ci1hcmVhcy1vZi1mb2N1cyAuZ3JpZF9fNi02IC5jb2wtMiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4ub3VyLXN0cmF0ZWdpYy1mb2N1cyAuZ3JpZF9fMTAsXG4ub3VyLWFyZWFzLW9mLWZvY3VzIC5ncmlkX18xMCB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cblxuLm91ci1zdHJhdGVnaWMtZ29hbHMgLmltYWdlLFxuLm91ci1zdHJhdGVnaWMtZ29hbCAuaW1hZ2Uge1xuICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgLm91ci1zdHJhdGVnaWMtZ29hbHMgLmltYWdlLFxuICAgIC5vdXItc3RyYXRlZ2ljLWdvYWwgLmltYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4ub3VyLXN0cmF0ZWdpYy1nb2FscyAubGFuZHNjYXBlLFxuLm91ci1zdHJhdGVnaWMtZ29hbCAubGFuZHNjYXBlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAub3VyLXN0cmF0ZWdpYy1nb2FscyAubGFuZHNjYXBlLFxuICAgIC5vdXItc3RyYXRlZ2ljLWdvYWwgLmxhbmRzY2FwZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MHB4KSB7XG4gICAgLm91ci1zdHJhdGVnaWMtZ29hbHMgLmxhbmRzY2FwZSxcbiAgICAub3VyLXN0cmF0ZWdpYy1nb2FsIC5sYW5kc2NhcGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ub3VyLXN0cmF0ZWdpYy1nb2FscyAucG9ydHJhaXQsXG4ub3VyLXN0cmF0ZWdpYy1nb2FsIC5wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAub3VyLXN0cmF0ZWdpYy1nb2FscyAucG9ydHJhaXQsXG4gICAgLm91ci1zdHJhdGVnaWMtZ29hbCAucG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAub3VyLXN0cmF0ZWdpYy1nb2FscyAucG9ydHJhaXQsXG4gICAgLm91ci1zdHJhdGVnaWMtZ29hbCAucG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zaXRlLWZvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzM2MzYzNjtcbiAgcGFkZGluZzogMTBweCAwOyB9XG4gIC5zaXRlLWZvb3RlciAuY29weXJpZ2h0IHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAuc2l0ZS1mb290ZXIgLnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5zaXRlLWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2U0MDM3NTsgfVxuICAuc2l0ZS1oZWFkZXIuLXBsdW0ge1xuICAgIGJhY2tncm91bmQ6ICM1YjNhNTc7IH1cbiAgLnNpdGUtaGVhZGVyLi1ibGFjayB7XG4gICAgYmFja2dyb3VuZDogIzAwMDsgfVxuICAuc2l0ZS1oZWFkZXIuLXBmYy1wdXJwbGUge1xuICAgIGJhY2tncm91bmQ6ICM4NzE4OUQ7IH1cbiAgLnNpdGUtaGVhZGVyIC50aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uc3RyYXRlZ3ktcm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuc3RyYXRlZ3ktcm93OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc3RyYXRlZ3ktcm93LS1jYXJyb3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYTYzMGE7IH1cbiAgLnN0cmF0ZWd5LXJvdy0tbGF2ZW5kZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTY3OWY7IH1cbiAgLnN0cmF0ZWd5LXJvdy0tZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGE4NjQ7IH1cbiAgLnN0cmF0ZWd5LXJvdy0tYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVlYzZjZTsgfVxuICAuc3RyYXRlZ3ktcm93LS1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MTFjNzQ7IH1cbiAgLnN0cmF0ZWd5LXJvdy0tcGx1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViM2E1NzsgfVxuICAuc3RyYXRlZ3ktcm93LS1kdWNrLWVnZy1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiZWNiOyB9XG4gIC5zdHJhdGVneS1yb3ctLXBpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNDAzNzU7IH1cbiAgLnN0cmF0ZWd5LXJvdy0tbWF1dmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhOTFGNzc7IH1cbiAgLnN0cmF0ZWd5LXJvdy0tZ3JheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhkOGY5MzsgfVxuICAuc3RyYXRlZ3ktcm93LS10ZWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA5M0E0OyB9XG4gIC5zdHJhdGVneS1yb3ctLWNhcnJvdCwgLnN0cmF0ZWd5LXJvdy0tbGF2ZW5kZXIsIC5zdHJhdGVneS1yb3ctLWdyZWVuLCAuc3RyYXRlZ3ktcm93LS1ibHVlLCAuc3RyYXRlZ3ktcm93LS1wbHVtLCAuc3RyYXRlZ3ktcm93LS1kdWNrLWVnZy1ibHVlLCAuc3RyYXRlZ3ktcm93LS1waW5rLCAuc3RyYXRlZ3ktcm93LS1tYXV2ZSwgLnN0cmF0ZWd5LXJvdy0tZ3JheSwgLnN0cmF0ZWd5LXJvdy0tdGVhbCwgLnN0cmF0ZWd5LXJvdy0tcHVycGxlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnN0cmF0ZWd5LXJvdyBoMiwgLnN0cmF0ZWd5LXJvdyAuaW50cm8sIC5zdHJhdGVneS1yb3cgLmludHJvIHAge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zdHJhdGVneS1yb3cgLnBhZGRlZCB7XG4gICAgcGFkZGluZzogMzBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAuc3RyYXRlZ3ktcm93IC5wYWRkZWQge1xuICAgICAgICBwYWRkaW5nOiAzNXB4IDEwMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgIC5zdHJhdGVneS1yb3cgLnBhZGRlZCB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAuc3RyYXRlZ3ktcm93IC5pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwcHggMDtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIC5zdHJhdGVneS1yb3cgLmltYWdlLnN0cmF0ZWd5LXJvdy0tbGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAuc3RyYXRlZ3ktcm93IC5pbWFnZS5zdHJhdGVneS1yb3ctLXJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICByaWdodDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAgIC5zdHJhdGVneS1yb3cgLmltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi53LWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBjb2xvcjogI2U0MDM3NTtcbiAgbWFyZ2luOiAwIDEwcHggMjBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIGJveC1zaGFkb3c6IHRyYW5zcGFyZW50IDJweCAycHggNXB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIC53LWJ1dHRvbjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCA1cHggMjBweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgLnctYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgcGFkZGluZzogOXB4IDQwcHg7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4uc2VnbWVudC0tdHVycXVvaXNlIC53LWJ1dHRvbiB7XG4gIGNvbG9yOiAjMjBhZmFiOyB9XG5cbi5idXR0b24tZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDEwcHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0MDM3NTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0OyB9XG4gIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiMjAyNWI7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgNHB4IDZweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4udy1oZXJvIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAudy1oZXJvIC5pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4OCU7IH0gfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0tLWRlY2xhcmF0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNTA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbS0tZGVjbGFyYXRpb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLmRlY2xhcmF0aW9uLWRpYWdyYW0tYmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDQ5O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmlsbDogI2U0MDM3NTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5kZWNsYXJhdGlvbi1kaWFncmFtLWJnIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLmNlbnRlciBoMyB7XG4gICAgY29sb3I6ICNlNDAzNzU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMzVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLmNlbnRlciBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5jZW50ZXIgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAuY2VudGVyIHtcbiAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtODhweDtcbiAgICAgIHRvcDogMjMxcHg7IH0gfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLm4sXG4gIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAubmUsXG4gIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAuc2UsXG4gIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAucyxcbiAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5zdyxcbiAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5udyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNDAzNzU7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAubixcbiAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLm5lLFxuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAuc2UsXG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5zLFxuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAuc3csXG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5udyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICB3aWR0aDogMTU1cHg7IH1cbiAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLm4sXG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5zIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNzhweDsgfVxuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAubiB7XG4gICAgICB0b3A6IDQwcHg7IH1cbiAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLnMge1xuICAgICAgdG9wOiA0NjVweDsgfVxuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAubmUsXG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5zZSB7XG4gICAgICBsZWZ0OiA2NSU7IH1cbiAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLm5lIHtcbiAgICAgIHRvcDogMTUwcHg7IH1cbiAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLnNlIHtcbiAgICAgIHRvcDogMzUwcHg7IH1cbiAgICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0gLm53LFxuICAgIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbSAuc3cge1xuICAgICAgbGVmdDogMTAlOyB9XG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5udyB7XG4gICAgICB0b3A6IDE4MHB4OyB9XG4gICAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIC5zdyB7XG4gICAgICB0b3A6IDM0MHB4OyB9IH1cbiAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtLmlzLW5vdC12aXNpYmxlIC5kZWNsYXJhdGlvbi1kaWFncmFtLWJnIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTsgfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0uaXMtbm90LXZpc2libGUgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtLS1kZWNsYXJhdGlvbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7IH1cbiAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtLmlzLXZpc2libGUgLmRlY2xhcmF0aW9uLWRpYWdyYW0tYmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0uaXMtdmlzaWJsZSAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0tLWRlY2xhcmF0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4yczsgfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0uaXMtdmlzaWJsZSAubmUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtLmlzLXZpc2libGUgLnNlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzOyB9XG4gIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbS5pcy12aXNpYmxlIC5zIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzOyB9XG4gIC53b21lbnMtZGVjbGFyYXRpb24tZGlhZ3JhbS5pcy12aXNpYmxlIC5zdyB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC42czsgfVxuICAud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0uaXMtdmlzaWJsZSAubncge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuN3M7IH1cblxuLyogPT09IFNlY3Rpb25zICovXG4uY2FtcGFpZ24tcHVibGljLWZlcnRpbGl0eS1jYXJlIC5zZWdtZW50IGgyIHtcbiAgZm9udC1zaXplOiAyNnB4OyB9XG5cbi5zZWdtZW50IHtcbiAgcGFkZGluZzogNTBweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAuc2VnbWVudCB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDA7IH0gfVxuICAuc2VnbWVudC0tcGZjLW5ldXRyYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY1RTg7IH1cbiAgICAuc2VnbWVudC0tcGZjLW5ldXRyYWw6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yNHB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNGRkY1RTg7IH1cbiAgLnNlZ21lbnQtLXBmYy1wdXJwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NzE4OUQ7IH1cbiAgICAuc2VnbWVudC0tcGZjLXB1cnBsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTI0cHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgIzg3MTg5RDsgfVxuICAuc2VnbWVudC0tcGZjLWJsdWUtNzAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5Q0Q2RUY7IH1cbiAgICAuc2VnbWVudC0tcGZjLWJsdWUtNzA6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yNHB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICM5Q0Q2RUY7IH1cbiAgLnNlZ21lbnQtLXBmYy1ibHVlLTI1IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREJGMEY5OyB9XG4gICAgLnNlZ21lbnQtLXBmYy1ibHVlLTI1OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjRweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjREJGMEY5OyB9XG4gIC5zZWdtZW50LS13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5zZWdtZW50LS13aGl0ZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTI0cHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgI2ZmZmZmZjsgfVxuICAuc2VnbWVudC0tZ2FpbnNib3JvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmMmVjOyB9XG4gICAgLnNlZ21lbnQtLWdhaW5zYm9ybzphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTI0cHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgI2Y1ZjJlYzsgfVxuICAuc2VnbWVudC0tcGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U0MDM3NTsgfVxuICAgIC5zZWdtZW50LS1waW5rOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjRweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjZTQwMzc1OyB9XG4gIC5zZWdtZW50LS10dXJxdW9pc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMGFmYWI7IH1cbiAgICAuc2VnbWVudC0tdHVycXVvaXNlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjRweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjMjBhZmFiOyB9XG4gIC5zZWdtZW50LS1saWdodC1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRkOWUxOyB9XG4gICAgLnNlZ21lbnQtLWxpZ2h0LWJsdWU6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yNHB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNhZGQ5ZTE7IH1cbiAgLnNlZ21lbnQtLWxpZ2h0LXBsdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTg4OTk7IH1cbiAgICAuc2VnbWVudC0tbGlnaHQtcGx1bTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTI0cHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgIzk5ODg5OTsgfVxuICAuc2VnbWVudC0tbGlnaHQtbWF1dmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFN0RFRTI7IH1cbiAgICAuc2VnbWVudC0tbGlnaHQtbWF1dmU6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yNHB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAyNXB4IHNvbGlkICNFN0RFRTI7IH1cbiAgLnNlZ21lbnQtLWV4dHJhLWxpZ2h0LW1hdXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVlZmYzOyB9XG4gICAgLnNlZ21lbnQtLWV4dHJhLWxpZ2h0LW1hdXZlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjRweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCAjZjVlZmYzOyB9XG4gIC5zZWdtZW50LS1saWdodC1ibHVlLCAuc2VnbWVudC0tbGlnaHQtbWF1dmUsIC5zZWdtZW50LS1leHRyYS1saWdodC1tYXV2ZSwgLnNlZ21lbnQtLXBmYy1ibHVlLTcwLCAuc2VnbWVudC0tcGZjLW5ldXRyYWwsIC5zZWdtZW50LS1wZmMtYmx1ZS0yNSB7XG4gICAgY29sb3I6ICMzMzM7IH1cbiAgICAuc2VnbWVudC0tbGlnaHQtYmx1ZSBoMSwgLnNlZ21lbnQtLWxpZ2h0LWJsdWUgLmludHJvLCAuc2VnbWVudC0tbGlnaHQtbWF1dmUgaDEsIC5zZWdtZW50LS1saWdodC1tYXV2ZSAuaW50cm8sIC5zZWdtZW50LS1leHRyYS1saWdodC1tYXV2ZSBoMSwgLnNlZ21lbnQtLWV4dHJhLWxpZ2h0LW1hdXZlIC5pbnRybywgLnNlZ21lbnQtLXBmYy1ibHVlLTcwIGgxLCAuc2VnbWVudC0tcGZjLWJsdWUtNzAgLmludHJvLCAuc2VnbWVudC0tcGZjLW5ldXRyYWwgaDEsIC5zZWdtZW50LS1wZmMtbmV1dHJhbCAuaW50cm8sIC5zZWdtZW50LS1wZmMtYmx1ZS0yNSBoMSwgLnNlZ21lbnQtLXBmYy1ibHVlLTI1IC5pbnRybyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuc2VnbWVudC0tdHVycXVvaXNlLCAuc2VnbWVudC0tcGluaywgLnNlZ21lbnQtLXBmYy1wdXJwbGUsIC5zZWdtZW50LS1saWdodC1wbHVtIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5zZWdtZW50LS10dXJxdW9pc2UgaDEsIC5zZWdtZW50LS10dXJxdW9pc2UgLmludHJvLCAuc2VnbWVudC0tcGluayBoMSwgLnNlZ21lbnQtLXBpbmsgLmludHJvLCAuc2VnbWVudC0tcGZjLXB1cnBsZSBoMSwgLnNlZ21lbnQtLXBmYy1wdXJwbGUgLmludHJvLCAuc2VnbWVudC0tbGlnaHQtcGx1bSBoMSwgLnNlZ21lbnQtLWxpZ2h0LXBsdW0gLmludHJvIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLnNlZ21lbnQtLXR1cnF1b2lzZS5sYXN0OmFmdGVyLCAuc2VnbWVudC0tcGluay5sYXN0OmFmdGVyLCAuc2VnbWVudC0tcGZjLXB1cnBsZS5sYXN0OmFmdGVyLCAuc2VnbWVudC0tbGlnaHQtcGx1bS5sYXN0OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMjRweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuc2VnbWVudC0tdHVycXVvaXNlIC5iYWNrLXRvcC0tZm9vdGVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zZWdtZW50LS10dXJxdW9pc2UubGFzdCB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIHotaW5kZXg6IDEwMDE7IH1cbiAgLnNlZ21lbnQubm8tYXJyb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5zaXRlLWhlYWRlciB7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAgIC5zaXRlLWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgIC5zaXRlLWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAuc2l0ZS1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMzVweCAwOyB9IH1cbiAgLnNpdGUtaGVhZGVyIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5zaXRlLWhlYWRlciAuaW5uZXIgLnBhZ2UtbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAyMDBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAgICAgLnNpdGUtaGVhZGVyIC5pbm5lciAucGFnZS1saW5rIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgd2lkdGg6IDI0MHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAgIC5zaXRlLWhlYWRlciAuaW5uZXIgLnBhZ2UtbGluayB7XG4gICAgICAgICAgd2lkdGg6IDMwMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAgICAgICAuc2l0ZS1oZWFkZXIgLmlubmVyIC5wYWdlLWxpbmsge1xuICAgICAgICAgIHdpZHRoOiAzMDBweDsgfSB9XG4gICAgLnNpdGUtaGVhZGVyIC5pbm5lciAudGl0bGUsXG4gICAgLnNpdGUtaGVhZGVyIC5pbm5lciAuc3ViaGVhZGluZyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5zaXRlLWhlYWRlciAuaW5uZXIgLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgICAgICAuc2l0ZS1oZWFkZXIgLmlubmVyIC50aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTBweCkge1xuICAgICAgICAuc2l0ZS1oZWFkZXIgLmlubmVyIC50aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzNHB4OyB9IH1cbiAgICAuc2l0ZS1oZWFkZXIgLmlubmVyIC5zdWJoZWFkaW5nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAgIC5zaXRlLWhlYWRlciAuaW5uZXIgLnN1YmhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgICAgLnNpdGUtaGVhZGVyIC5pbm5lciAuc3ViaGVhZGluZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cblxuLnNpdGUtbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB6LWluZGV4OiA5OTk5O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDc1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAuc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgICAgIHRvcDogMTQ1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAuc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgICAgIHRvcDogMTc1cHg7IH0gfVxuICAuc2l0ZS1uYXZpZ2F0aW9uLm5hdi0taXMtc2Nyb2xsZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7IH1cbiAgLnNpdGUtbmF2aWdhdGlvbiAuYmFjay10b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAgIC5zaXRlLW5hdmlnYXRpb24gLmJhY2stdG9wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5zaXRlLW5hdmlnYXRpb24gLm5hdl9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMGFmYWI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogMjFweCAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgICAgLnNpdGUtbmF2aWdhdGlvbiAubmF2X190b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnNpdGUtbmF2aWdhdGlvbiAubmF2IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcwcHgpIHtcbiAgICAgIC5zaXRlLW5hdmlnYXRpb24gLm5hdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5zaXRlLW5hdmlnYXRpb24gLm5hdl9fbGlzdCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgICAgICAuc2l0ZS1uYXZpZ2F0aW9uIC5uYXZfX2xpc3Qge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIGhlaWdodDogNjBweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgICAgLnNpdGUtbmF2aWdhdGlvbiAubmF2X19saXN0IHtcbiAgICAgICAgICBoZWlnaHQ6IDcwcHg7IH0gfVxuICAgIC5zaXRlLW5hdmlnYXRpb24gLm5hdl9faXRlbSB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3MHB4KSB7XG4gICAgICAgIC5zaXRlLW5hdmlnYXRpb24gLm5hdl9faXRlbSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIC5zaXRlLW5hdmlnYXRpb24gLm5hdl9fbGluayB7XG4gICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBwYWRkaW5nOiAxNnB4IDEycHg7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NzBweCkge1xuICAgICAgICAuc2l0ZS1uYXZpZ2F0aW9uIC5uYXZfX2xpbmsge1xuICAgICAgICAgIHBhZGRpbmc6IDIxcHggMTJweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUwcHgpIHtcbiAgICAgICAgLnNpdGUtbmF2aWdhdGlvbiAubmF2X19saW5rIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAyNHB4IDE4cHg7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5zaXRlLW5hdmlnYXRpb24gLm5hdl9fbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDI0cHggMzJweDsgfSB9XG4gICAgICAuc2l0ZS1uYXZpZ2F0aW9uIC5uYXZfX2xpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2U0MDM3NTsgfVxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4uY2xlYXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4iLCJAY2hhcnNldCAnVVRGLTgnO1xuXG4vLyAgICAgXyAgICAgICAgICAgIF8gICAgICAgICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICBfIF9cbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xuLy8gICAgfCB8ICdfIFxcIC8gX198IHwgfCB8IHwvIF9gIHwvIF8gXFwgfCAnXyBgIF8gXFwgLyBfIFxcLyBfYCB8IHwvIF9gIHxcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XG4vL1xuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3Ncbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC4yXG4vL1xuLy8gICAgICAgICAgICAgICAgaHR0cDovL2luY2x1ZGUtbWVkaWEuY29tXG4vL1xuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXG4vLyAgICAgICAgICAgICAgICAgIEh1Z28gR2lyYXVkZWwgKEBodWdvZ2lyYXVkZWwpXG4vL1xuLy8gICAgICBUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgbGljZW5zZVxuXG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYHBob25lYFxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XG4vLy9cbiRicmVha3BvaW50czogKFxuICAnbW9iaWxlJzogMzIwcHgsXG4gICdtb2JpbGUtd2lkZSc6IDQ4MHB4LFxuICAndGFibGV0JzogNzY4cHgsXG4gICdkZXNrdG9wJzogMTAyNHB4LFxuICAnZGVza3RvcC13aWRlJzogMTI4MHB4XG4pICFkZWZhdWx0O1xuXG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxuICAncHJpbnQnOiAncHJpbnQnLFxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXG4gICdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJyxcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSknXG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XG4vLy9cbiR1bml0LWludGVydmFsczogKFxuICAncHgnOiAxLFxuICAnZW0nOiAwLjAxLFxuICAncmVtJzogMC4xXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XG4gICAgQGVycm9yICRtZXNzYWdlO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAkbWVzc2FnZTtcbiAgICAkXzogbm9vcCgpO1xuICB9XG5cbiAgQHJldHVybiAkbWVzc2FnZTtcbn1cblxuXG4vLy9cbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XG4vLy8gQVBJIHRoYW4gYEBpZiBsb2coJy4uJykge31gIG9yIGAkXzogbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBsb2coJG1lc3NhZ2UpIHt9XG59XG5cblxuLy8vXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXG4vLy9cbkBmdW5jdGlvbiBub29wKCkge31cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBsb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG4gIH1cblxuICBAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxuXG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG4gICAgJF86IGxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcbiAgfVxuXG4gICRyZXN1bHQ6IDA7XG4gICRkaWdpdHM6IDA7XG4gICRtaW51czogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSkgPT0gJy0nO1xuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XG5cbiAgQGZvciAkaSBmcm9tIGlmKCRtaW51cywgMiwgMSkgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpOztcbn1cblxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XG5cbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xuICAgICRfOiBsb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLy9cbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2Zcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXG4vLy8gZm9yIGluc3RhbmNlLlxuLy8vXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cbi8vL1xuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFNwYWNlQXJvdW5kT3BlcmF0b3JcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxuICAgICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcbiAgICBAY29udGVudDtcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xuICAgICAgLy8gUmVjdXJzaXZlIGNhbGxcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vL1xuLy8vIEdlbmVyYXRlcyBhIEpTT04gc3RyaW5nIHdpdGggZWFjaCBicmVha3BvaW50J3MgdmFsdWUgYW5kIGluZm9ybWF0aW9uIGFib3V0XG4vLy8gd2hpY2ggb2YgdGhlIGJyZWFrcG9pbnRzIGFyZSBjdXJyZW50bHkgYWN0aXZlIChpLmUuIHZpZXdwb3J0IHdpZHRoID49IGJyZWFrcG9pbnQpXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHRhcmdldC1uYW1lIC0gTmFtZSBvZiBicmVha3BvaW50IHRvIGV2YWx1YXRlXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gUmVzdWx0aW5nIEpTT04gc3RyaW5nXG4vLy9cbi8vLyBAZXhhbXBsZSBqc29uIC0gRm9yIGEgd2lkdGggb2YgOTAwcHhcbi8vLyAgJ3tcInBob25lXCI6e1widmFsdWVcIjogXCIzMjBweFwiLCBcImFjdGl2ZVwiOiB0cnVlfSwgXCJ0YWJsZXRcIjp7XCJ2YWx1ZVwiOiBcIjc2OHB4XCIsIFwiYWN0aXZlXCI6IHRydWV9LCBcImRlc2t0b3BcIjp7XCJ2YWx1ZVwiOiBcIjEwMjRweFwiLCBcImFjdGl2ZVwiOiBmYWxzZX19J1xuLy8vXG5AZnVuY3Rpb24gaW0tYnJlYWtwb2ludHMtdG8tanNvbigkdGFyZ2V0LW5hbWUpIHtcbiAgJGJyZWFrcG9pbnRzLWpzb246ICgpO1xuICAkdGFyZ2V0LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHRhcmdldC1uYW1lKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50cyB7XG4gICAgJGJyZWFrcG9pbnQ6ICdcIiN7JG5hbWV9XCI6e1widmFsdWVcIjogXCIjeyR2YWx1ZX1cIiwgXCJhY3RpdmVcIjogI3skdGFyZ2V0LXZhbHVlID49ICR2YWx1ZX19JztcbiAgICAkYnJlYWtwb2ludHMtanNvbjogYXBwZW5kKCRicmVha3BvaW50cy1qc29uLCAkYnJlYWtwb2ludCwgJ2NvbW1hJyk7XG4gIH1cblxuICBAcmV0dXJuICd7I3skYnJlYWtwb2ludHMtanNvbn19Jztcbn1cblxuLy8vXG4vLy8gR2VuZXJhdGVzIHRoZSBtZWRpYSBxdWVyaWVzIG5lY2Vzc2FyeSB0byBleHBvcnQgYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZWxlbWVudCAtIEVsZW1lbnQgdG8gYXBwZW5kIEpTT04gZGF0YSB0b1xuLy8vXG5AbWl4aW4gaW0tZXhwb3J0KCRlbGVtZW50KSB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj0jeyRuYW1lfScpIHtcbiAgICAgICN7JGVsZW1lbnR9IHtcbiAgICAgICAgY29udGVudDogaW0tYnJlYWtwb2ludHMtdG8tanNvbigkbmFtZSk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBpbS1leHBvcnQoaWYodmFyaWFibGUtZXhpc3RzKCdpbS1leHBvcnQtZWxlbWVudCcpLCAkaW0tZXhwb3J0LWVsZW1lbnQgKyAnOjphZnRlcicsICdib2R5OjphZnRlcicpKTtcbiIsIkBtaXhpbiBjb250YWluZXIoJHdpZHRoKSB7XG5cdG1heC13aWR0aDogJHdpZHRoO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyB3b3JrcyBsaWtlIHNlY3Rpb24gPiBpbm5lciBzZXR1cCBidXQgYWxsb3dzIGZ1bGwtd2lkdGggYmFja2dyb3VuZFxuQG1peGluIGNvbnN0cmFpbmVyKCRtYXh3aWR0aDogMTI4MHB4KSB7XG4gICRtYXh3aWR0aDogJG1heHdpZHRoIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDUwJSAtICN7JG1heHdpZHRofSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoNTAlIC0gI3skbWF4d2lkdGh9KTtcbn1cblxuQG1peGluIG5vLXNlbGVjdCB7XG5cdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5AbWl4aW4gc2VsZWN0LXRleHQge1xuXHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IHRleHQ7XG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7XG5cdC1raHRtbC11c2VyLXNlbGVjdDogdGV4dDtcblx0LW1vei11c2VyLXNlbGVjdDogdGV4dDtcblx0LW1zLXVzZXItc2VsZWN0OiB0ZXh0O1xuXHR1c2VyLXNlbGVjdDogdGV4dDtcbn1cblxuLy8gaW5jcmVhc2UgdGFwIHRhcmdldCB3aXRob3V0IGFmZmVjdGluZyBzaXplL2xheW91dFxuQG1peGluIHRhcC10YXJnZXQoJHNpemU6IDEwcHgpIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAtI3skc2l6ZX07XG5cdFx0cmlnaHQ6IC0jeyRzaXplfTtcblx0XHRib3R0b206IC0jeyRzaXplfTtcblx0XHRsZWZ0OiAtI3skc2l6ZX07XG5cdH1cbn1cblxuLy8gZm9yY2UgaW5saW5lIHRleHRicmVhayBmb3IgbG9uZyB0ZXh0IGxpa2UgJ0Nob2phZ2FoYW1hc2hpb3NhaWhhbWFuYXN1a29lbm1hZScgb3IgYSB1cmxcbkBtaXhpbiB3b3JkLXdyYXAoKSB7XG5cdG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0LW1zLXdvcmQtYnJlYWs6IG5vcm1hbDtcblx0d29yZC1icmVhazogYnJlYWstd29yZDtcblx0LW1zLWh5cGhlbnM6IGF1dG87XG5cdC1tb3otaHlwaGVuczogYXV0bztcblx0LXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuXHRoeXBoZW5zOiBhdXRvO1xufVxuXG5AbWl4aW4gbnVtYmVyLWNpcmNsZSgkcHg6IDIwKSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZy1yaWdodDogMXB4O1xuXHR3aWR0aDogI3skcHh9cHg7XG5cdGhlaWdodDogI3skcHh9cHg7XG5cdGxpbmUtaGVpZ2h0OiAjeyRweH1weDtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vLyByZXNldCBkZWZhdWx0IGJyb3dzZXIgbGlzdCBzdHlsaW5nXG4lcGxhaW5saXN0IHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8vIHJlc2V0IGRlZmF1bHQgYnJvd3NlciBbdHlwZT1cImJ1dHRvblwiXSBzdHlsaW5nXG4lcGxhaW5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZzogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIGZvciBpbnB1dCAqL1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAvKiBmb3IgYnV0dG9uICovXG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC8vIHBzZXVkb3NcbiAgJjo6LW1vei1mb2N1cy1pbm5lcixcbiAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5fY2VudGVyZWQge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5faGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uX3NjcmVlbnJlYWRlciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxcHggIWltcG9ydGFudDtcblx0aGVpZ2h0OiAxcHggIWltcG9ydGFudDtcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuXHRib3JkZXI6IDAgIWltcG9ydGFudDtcblx0Y2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpICFpbXBvcnRhbnQ7XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0R1JJRCBTVFlMRVMgXHRcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEF1dGhvcjogSGVtaSBPcm1zYnlcdFx0XHRcdFx0XHQvL1xuLy9cdERhdGU6IDE0IEFwcmlsIDIwMTZcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuXG4vL0dSSURTXG4uaW5uZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi8vR1JJRCBNQVhJV0RUSFNcbi5ncmlkX184LFxuLmdyaWRfXzUtNSxcbi5ncmlkX18xMCxcbi5ncmlkX181LTcsXG4uZ3JpZF9fNi02LFxuLmdyaWRfXzEyLFxuLmlubmVyIHtcblx0d2lkdGg6IDEwMCU7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4c21hbGwpIHtcblx0XHRtYXgtd2lkdGg6IDQ2MHB4O1xuXHR9XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbCkge1xuXHRcdG1heC13aWR0aDogNTgwcHg7XG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdG1heC13aWR0aDogODMwcHg7XG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0bWF4LXdpZHRoOiA5ODBweDtcblx0fVxufVxuXG4uZ3JpZF9fNS03LFxuLmdyaWRfXzYtNixcbi5ncmlkX18xMixcbi5pbm5lciB7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4bGFyZ2UpIHtcblx0XHRtYXgtd2lkdGg6IDEyMDBweDtcblx0fVxufVxuXG4uZ3JpZF9fNS01LFxuLmdyaWRfXzEwIHtcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsYXJnZSkge1xuXHRcdG1heC13aWR0aDogOTcwcHg7XG5cdH1cbn1cblxuLmdyaWRfXzgge1xuXHRtYXgtd2lkdGg6IDc3MHB4O1xufVxuXG4vL0dSSUQgU1RZTEVTXG4uZ3JpZF9fNS03LFxuLmdyaWRfXzYtNixcbi5ncmlkX18xMixcbi5ncmlkX181LTUsXG4uZ3JpZF9fMTAsXG4uZ3JpZF9fOCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy9HUklEIE1BUkdJTlNcbi5jb2wtMSxcbi5jb2wtMixcbi5ncmlkX18xMixcbi5ncmlkX18xMCxcbi5ncmlkX184IHtcblx0cGFkZGluZzogMCAxNXB4O1xufVxuXG4vL0dSSUQgSU5TSURFUyAoUEVSQ0VOVEFHRVMpXG4uZ3JpZF9fNS03IHtcblx0LmNvbC0xIHtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHR3aWR0aDogNDEuNSU7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cdH1cblx0LmNvbC0yIHtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHR3aWR0aDogNTguNSU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0fVxuXHR9XG59XG4uZ3JpZF9fNi02LFxuLmdyaWRfXzUtNSB7XG5cdC5jb2wtMSB7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdH1cblx0fVxuXHQuY29sLTIge1xuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0fVxuXHR9XG59XG5cbi8vQ0xFQVJGSVggVEhFIExBU1QgQ09MVU1OXG4uY29sLWxhc3Qge1xuXHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdFNJVEUgU1BFQ0lGSUMgTUlYSU5TXHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0QXV0aG9yOiBIZW1pIE9ybXNieVx0XHRcdFx0XHRcdC8vXG4vL1x0RGF0ZTogMTQgQXByaWwgMjAxNlx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG5cbi8vQXJyb3dzIGZvbGxvd2luZyBlYWNoIGNvbG9yZWQgc2VnbWVudFxuQG1peGluIGFycm93KCRjb2xvcil7XG5cdCY6YWZ0ZXIge1xuXHQgICAgY29udGVudDonJztcblx0ICAgIHBvc2l0aW9uOmFic29sdXRlO1xuXHQgICAgYm90dG9tOiAtMjRweDtcblx0ICAgIGxlZnQ6IDUwJTtcblx0ICAgIG1hcmdpbi1sZWZ0OiAtMTJweDtcblx0ICAgIHotaW5kZXg6IDEwMDA7XG5cblx0ICAgIHdpZHRoOiAwOyBcblx0XHRoZWlnaHQ6IDA7IFxuXHRcdGJvcmRlci1sZWZ0OiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci1yaWdodDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItdG9wOiAyNXB4IHNvbGlkICRjb2xvcjtcblx0fVxufVxuXG4vL0NsZWFyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdCY6YWZ0ZXIge1xuXHQgICAgY29udGVudDogJyc7XG5cdCAgICBkaXNwbGF5OiBibG9jaztcblx0ICAgIGNsZWFyOiBib3RoO1xuXHR9XG59IiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdFNDUkVFTiBGSUxFXHRcdFx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0QXV0aG9yOiBIZW1pIE9ybXNieVx0XHRcdFx0XHRcdC8vXG4vL1x0RGF0ZTogMTQgQXByaWwgMjAxNlx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG5cbi8vREVGQVVMVFMgKFNvbWUgdGFrZW4gZnJvbSBsYXlvdXQuc2NzcylcbmJvZHkge1xuXHRjb2xvcjogJGJvZHk7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuaHRtbCB7XG5cdGhlaWdodDogMTAwdmg7XG59XG5cbmJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7IC8qIDEsIDMgKi9cbn1cblxuLnNpdGUtaGVhZGVyLFxuLnNpdGUtZm9vdGVyIHtcbiAgZmxleDogbm9uZTsgLyogMiAqL1xufVxuXG4ucGFnZS1jb250YWluZXIge1xuXHRmbGV4OiAxIDAgYXV0bzsgLyogMiAqL1xuXHR3aWR0aDogMTAwJTtcblxuICAmLnctcGFkZGluZyB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHQvLyBtYXJnaW4tdG9wOiAwO1xuXHR9XG5cblxufVxuXG4vL1RZUE9HUkFQSFknXG5hIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuaDEsIGgyIHtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRsaW5lLWhlaWdodDogMS4xZW07XG59XG5cbmgxIHtcblx0Zm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHRmb250LXNpemU6IDQwcHg7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdGNvbG9yOiAkcGluaztcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogNTBweDtcblx0fVxufVxuXG5oMiB7XG5cdGxpbmUtaGVpZ2h0OiAxLjNlbTtcblx0Zm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHRmb250LXNpemU6IDI2cHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRmb250LXNpemU6IDMwcHg7XG5cdH1cbn1cbmgzIHtcblx0Zm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGNvbG9yOiAjMzMzO1xufVxuXG5wLCBsaSwgc3BhbiB7XG5cdG1hcmdpbjogMCAwIDFlbSAwO1xufVxuXG51bCB7XG5cdHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LFxuLmludHJvIHAsIC5pbnRyby0tbGFyZ2UgcCxcbi5pbnRybywgLmludHJvLS1sYXJnZSB7XG5cdG1hcmdpbjogMCAwIDIwcHggMDtcbn1cblxuLmludHJvIHAsXG4uaW50cm8ge1xuXHRjb2xvcjogJGludHJvO1xuXHRmb250LXNpemU6IDE4cHg7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRmb250LXNpemU6IDIwcHg7XG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiAyMnB4O1xuXHR9XG59XG5cbi5pbnRyby0tbGFyZ2UgcCxcbi5pbnRyby0tbGFyZ2Uge1xuXHRmb250LXNpemU6IDE4cHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRmb250LXNpemU6IDIycHg7XG5cdH1cbn1cblxuLy9MQVlPVVRcbi5jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50b3Atc3BhY2VyIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tdG9wOiAzNXB4O1xufVxuXG4uZncge1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vQURESVRJT05BTCBBTklNQVRJT05cbi5zcGVjaWFsLWltYWdlLXJldmVhbCB7XG5cdCYuaXMtbm90LXZpc2libGUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuXG5cdH1cblx0Ji5pcy12aXNpYmxlIHtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cblxufVxuXG5cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRWQVJJQUJMRVMgRklMRVx0XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxNCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLy9TaXRlIGNvbG9yc1xuJHBpbms6ICNlMjAwNzY7XG4kcHVycGxlOiAjODAyYzZiO1xuJHR1cnF1b2lzZTogIzIwYWZhYjtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRnYWluc2Jvcm86ICNmNWYyZWM7XG4kZ3JleTogIzM2MzYzNjtcbiRtYXJvb246ICM5ZjFhMmU7XG4kb3JhbmdlOiAjZTI1MzM0O1xuJGNhcnJvdDogI2VhNjMwYTtcbiR5ZWxsb3c6ICNmNDhkMmQ7XG4kYmx1ZTogIzVlYzZjZTtcbiRncmVlbjogIzAwYTg2NDtcbiRsYXZlbmRlcjogIzc5Njc5ZjtcblxuJGxpZ2h0LWJsdWU6ICNhZGQ5ZTE7XG4kbGlnaHQtcGx1bTogIzk5ODg5OTtcbiRsaWdodC1tYXV2ZTogI0U3REVFMjtcbiRleHRyYS1saWdodC1tYXV2ZTogI2Y1ZWZmMztcblxuJHBsdW06ICM1YjNhNTc7XG4kZHVjay1lZ2ctYmx1ZTogIzFhYmVjYjtcbiRwdXJwbGU6ICM1MTFjNzQ7XG4kcGluazogI2U0MDM3NTtcbiRtYXV2ZTogI2E5MUY3NztcbiRncmF5OiAjOGQ4ZjkzO1xuJHRlYWw6ICM0MDkzQTQ7XG5cbiRwZmMtcHVycGxlOiAjODcxODlEO1xuJHBmYy1ibHVlLTcwOiAjOUNENkVGO1xuJHBmYy1ibHVlLTI1OiAjREJGMEY5O1xuJHBmYy1uZXV0cmFsOiAjRkZGNUU4O1xuXG4kcmVkOiAjZTYzOTUyO1xuXG4vL1RleHQgY29sb3IgdmFyaWFibGVzXG4kaGVhZGVyOiAkcGluaztcbiRzdWItaGVhZGluZzogIzAwMDtcbiRpbnRybzogIzkzMTI1OTtcbiRib2R5OiAjNjc2NTYzO1xuXG5cbi8vTWVkaWEgYnJlYWtwb2ludCB2YXJpYWJsZXNcbiR4c21hbGw6IDQ4MHB4O1x0XG4kc21hbGw6IDYwMHB4O1xuJG1lZGl1bTogODcwcHg7XG4kbGFyZ2U6IDEwNTBweDtcbiR4bGFyZ2U6IDEyODBweDtcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRESVJFQ1RJT04gRkVBVFVSRSBDT01QT05FTlQgVEhFTUVcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxOCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLmRpcmVjdGlvbi1mZWF0dXJlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG5cdCYtLXB1cnBsZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcblx0fVxuXHQmLS1tYXJvb24ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG5cdH1cblx0Ji0tb3JhbmdlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuXHR9XG5cdCYtLXllbGxvdyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcblx0fVxuXG5cbiAgJi0tcGx1bSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBsdW07XG5cdH1cbiAgJi0tZHVjay1lZ2ctYmx1ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGR1Y2stZWdnLWJsdWU7XG5cdH1cbiAgJi0tcGluayB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBpbms7XG5cdH1cbiAgJi0tbWF1dmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRtYXV2ZTtcblx0fVxuICAmLS1ncmF5IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcblx0fVxuICAmLS10ZWFsIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcblx0fVxuXG5cdCYtLXB1cnBsZSxcblx0Ji0tbWFyb29uLFxuXHQmLS1vcmFuZ2UsXG5cdCYtLXllbGxvdyxcbiAgJi0tcGx1bSxcbiAgJi0tZHVjay1lZ2ctYmx1ZSxcbiAgJi0tcGluayxcbiAgJi0tbWF1dmUsXG4gICYtLWdyYXksXG4gICYtLXRlYWwge1xuXHRcdHBhZGRpbmc6IDM1cHg7XG5cdFx0bWFyZ2luOiA1MHB4IDAgMzBweDtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHRwYWRkaW5nOiAzNXB4IDIwJTtcblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRmb250LWZhbWlseTogXCJSb2JvdG9cIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0XHRmb250LXNpemU6IDI2cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vQU5JTUFUSU9OXG5cdCYuaXMtbm90LXZpc2libGUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIDApO1xuXG5cdH1cblx0Ji5pcy12aXNpYmxlIHtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuXHR9XG59IiwiXG4uY2FtcGFpZ25fZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAvLyBib3JkZXItdG9wOiAxcHggc29saWQgI2Y1ZjJlYztcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmNWYyZWM7XG4gIC8vIHBhZGRpbmc6IDAgMTZweDtcblxuICAuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZjRlNjtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjNzVkYTc1O1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgfVxuICB9XG59XG5cbmZvcm0ge1xuXG4gIC5tZXNzYWdlIHtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2U4ZjU7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgfVxuXG4gIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGVnZW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gcGFkZGluZzogMzBweCAwO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA2NTBweDtcblxuICBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICAucmVxIHtcbiAgICBjb2xvcjogcmVkO1xuICB9XG5cbiAgLmRmb3JtX2NvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDo0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbjogMzJweCAwIDE2cHg7XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NDQztcbiAgICBwYWRkaW5nOiA4cHg7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgfVxuXG4gIC5maWVsZF9jYXB0Y2hhIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjVmMmVjO1xuICB9XG5cbiAgLnN1Ym1pdF9idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIFxuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTIwMDc2O1xuXG4gICAgYm9yZGVyOm5vbmU7XG4gICAgcGFkZGluZzogOHB4IDI0cHg7XG5cbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBib3gtc2hhZG93OiB0cmFuc3BhcmVudCAycHggMnB4IDVweDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpIDBweCA1cHggMjBweDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IxMDI1YztcbiAgICB9XG4gIH1cblxuICAuZGZpbnB1dF9kYXRlcyB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5kZl9kYXRlX2VsZW1fZXh0cmEsXG4gICAgLmRmX2RhdGVfZWxlbSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yYWRpb3Mge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMCA4cHg7XG4gICAgcGFkZGluZzowO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbn0iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0T1VSIFNUUkFURUdJQyBHT0FMIFBBR0VcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxOSBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLm91ci1wbGFuLWRpYWdyYW0ge1xuXG5cdC8vRk9OVCBTVFlMRVNcblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRleHQtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDJweCAycHggNXB4O1xuICAgIFx0dHJhbnNpdGlvbjogdGV4dC1zaGFkb3csIDAuM3MsIGVhc2U7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRleHQtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMykgMnB4IDJweCA1cHg7XG5cdFx0XHRwIHtcblx0XHRcdFx0Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0aDMsIGg0LCBwLCBiIHtcblx0XHRmb250LWZhbWlseTogXCJSb2JvdG9cIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cdGgzIHtcblx0XHRmb250LXNpemU6IDMwcHg7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiAyNnB4O1xuXHRcdH1cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogMzBweDtcblx0XHR9XG5cdH1cblx0aDQge1xuXHRcdGZvbnQtc2l6ZTogMjRweDtcblx0fVxuXHRwIHtcblx0XHR0cmFuc2l0aW9uOiBjb2xvciwgMC4zcywgZWFzZTtcblx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcblx0fVxuXHQmLS1nb2FsIHAge1xuXHRcdGZvbnQtc2l6ZTogMjJweDtcblx0fVxuXHQmLS1mb2N1cyB7XG5cdFx0cCB7XG5cdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzcHg7XG5cdFx0fVxuXHRcdGIge1xuXHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcblx0XHR9XG5cdH1cblx0Ji0tZ29hbCxcblx0Ji0tZGlyZWN0aW9uLFxuXHQmLS1mb2N1cyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0Ly9TcGVjaWZpYyB2ZXJ0aWNhbCB0ZXh0IHNwYWNpbmdcblx0Ly90YWlsb3JlZCBmb3IgZWFjaCBibG9jayBvZiB0ZXh0LCBtaWdodCBuZWVkIHVwZGF0aW5nIGlmIGNvcHkgY2hhbmdlcy5cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdCYtLXBpbmsgaDMge1xuXHRcdFx0bWFyZ2luLXRvcDogMjdweDtcblx0XHR9XG5cdFx0Ji0tcHVycGxlIGg0IHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXHRcdCYtLXJlZCBoNCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdH1cblx0XHQmLS1vcmFuZ2UgaDQsICYtLXllbGxvdyBoNCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyM3B4O1xuXHRcdH1cblx0XHQmLS1jYXJyb3QgcDpmaXJzdC1jaGlsZCxcblx0XHQmLS1ibHVlIHA6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXRvcDogMTlweDtcblx0XHR9XG5cdFx0Ji0tZ3JlZW4gcDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdH1cblx0XHQmLS1sYXZlbmRlciBwOmZpcnN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi10b3A6IDM0cHg7XG5cdFx0fVxuXHR9XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZSkge1xuXHRcdCYtLXBpbmsgaDMge1xuXHRcdFx0bWFyZ2luLXRvcDogNTBweDtcblx0XHR9XG5cdFx0Ji0tcHVycGxlIGg0IHtcblx0XHRcdG1hcmdpbi10b3A6IDM1cHg7XG5cdFx0fVxuXHRcdCYtLXJlZCBoNCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHRcdH1cblx0XHQmLS1vcmFuZ2UgaDQsICYtLXllbGxvdyBoNCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1MHB4O1xuXHRcdH1cblx0XHQmLS1jYXJyb3QgcDpmaXJzdC1jaGlsZCxcblx0XHQmLS1ibHVlIHA6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXRvcDogMzNweDtcblx0XHR9XG5cdFx0Ji0tZ3JlZW4gcDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1M3B4O1xuXHRcdH1cblx0XHQmLS1sYXZlbmRlciBwOmZpcnN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi10b3A6IDU2cHg7XG5cdFx0fVxuXG5cdH1cblxuXHQvL0FTUEVDVCBSQVRJTyBTSVpJTkdcblx0Ly9Db250YWluZXJcblx0d2lkdGg6IDEwMCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLXRvcDogNTVweDtcblx0bWFyZ2luLWJvdHRvbTogMzVweDtcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXHRcdGhlaWdodDogMDtcblx0fVxuXHQvL0Jsb2Nrc1xuXHQmLS1nb2FsLFxuXHQmLS1kaXJlY3Rpb24ge1xuXHRcdHBhZGRpbmc6IDMwcHggMjBweDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cGFkZGluZzogMTAlIDEwJTtcblx0XHR9XG5cdH1cblx0Ji0tZm9jdXMge1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cGFkZGluZzogMCAyJTtcblx0XHR9XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nOiAwIDMlO1xuXHRcdH1cblx0fVxuXHQvL0dyaWRcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdC8vREVGQVVMVCBERVNLVE9QIFNJWklOR1xuXHRcdCYtLW1tLFxuXHRcdCYtLXJtLFxuXHRcdCYtLWJtLFxuXHRcdCYtLWxtLFxuXHRcdCYtLXRtLFxuXHRcdCYtLXRyLFxuXHRcdCYtLWJyLFxuXHRcdCYtLWJsLFxuXHRcdCYtLXRsIHtcblx0XHRcdHdpZHRoOiAzMy4zMzMlO1xuXHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDMzLjMzMyU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR9XG5cblxuXHRcdC8vREVGQVVMVCBQT1NJVElPTklOR1xuXHRcdC8vbGVmdFxuXHRcdCYtLWxtIHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0fVxuXHRcdC8vbWlkZGxlXG5cdFx0Ji0tdG0sXG5cdFx0Ji0tbW0sXG5cdFx0Ji0tYm0ge1xuXHRcdFx0bGVmdDogMzMuMyU7XG5cdFx0fVxuXHRcdC8vcmlnaHRcblx0XHQmLS10cixcblx0XHQmLS1ybSxcblx0XHQmLS1iciB7XG5cdFx0XHRsZWZ0OiA2Ni42JTtcblx0XHR9XG5cdFx0Ly90b3Bcblx0XHQmLS10bSB7XG5cdFx0XHR0b3A6IDA7XG5cdFx0fVxuXHRcdC8vbWlkZGxlXG5cdFx0Ji0tbG0sXG5cdFx0Ji0tbW0sXG5cdFx0Ji0tcm0ge1xuXHRcdFx0dG9wOiAzMy4zJTtcblx0XHR9XG5cdFx0Ly9ib3R0b21cblx0XHQmLS1ibCxcblx0XHQmLS1ibSxcblx0XHQmLS1iciB7XG5cdFx0XHR0b3A6IDY2LjYlO1xuXHRcdH1cblxuXHRcdC8vQ09STkVSU1xuXHRcdC8vc2l6aW5nIChvdmVycml0ZXMpXG5cdFx0Ji0tdGwsXG5cdFx0Ji0tdHIsXG5cdFx0Ji0tYnIsXG5cdFx0Ji0tYmwge1xuXHRcdFx0d2lkdGg6IDE2LjY1JTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxNi42NSU7XG5cdFx0fVxuXHRcdC8vcG9zaXRpb25pbmdcblx0XHQmLS10bCB7XG5cdFx0XHR0b3A6IDE2LjY1JTtcblx0XHRcdGxlZnQ6IDE2LjY1JTtcblx0XHR9XG5cdFx0Ji0tdHIge1xuXHRcdFx0dG9wOiAxNi42NSU7XG5cdFx0fVxuXHRcdCYtLWJsIHtcblx0XHRcdGxlZnQ6IDE2LjY1JTtcblx0XHR9XG5cdH1cblxuXHQvLyBDT0xPUklORy9USEVNRVxuXG5cdC8vIFNUUkFURUdJQyBHT0FMXG5cdCYtLXBpbmsge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwaW5rO1xuXHR9XG5cblx0Ly9TVFJBVEVHSUMgRElSRUNUSU9OXG5cdCYtLXJlZCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuXHR9XG5cdCYtLW9yYW5nZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcblxuXHR9XG5cdCYtLXllbGxvdyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcblxuXHR9XG5cdCYtLXB1cnBsZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcblxuXHR9XG5cblx0Ly8gQVJFQSBPRiBGT0NVU1xuXHQmLS1jYXJyb3Qge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjYXJyb3Q7XG5cblx0fVxuXHQmLS1sYXZlbmRlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxhdmVuZGVyO1xuXG5cdH1cblx0Ji0tZ3JlZW4ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcblxuXHR9XG5cdCYtLWJsdWUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuXHR9XG5cblx0Ly8gQVJST1dTXG5cdC5hcnJvdy0taW5zZXQsXG5cdC5hcnJvdyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cblxuXHQuYXJyb3cge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuXHRcdCYub3VyLXBsYW4tZGlhZ3JhbS0tdG9wIHtcblx0XHRcdHRvcDogLTIxcHg7XG5cdFx0XHRsZWZ0OiA3MCU7XG5cdFx0fVxuXHRcdCYub3VyLXBsYW4tZGlhZ3JhbS0tcmlnaHQge1xuXHRcdFx0dG9wOiA3MCU7XG5cdFx0XHRyaWdodDogLTMycHg7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0fVxuXHRcdCYub3VyLXBsYW4tZGlhZ3JhbS0tYm90dG9tIHtcblx0XHRcdGJvdHRvbTogLTIxcHg7XG5cdFx0XHRsZWZ0OiAyMCU7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuXHRcdH1cblx0XHQmLm91ci1wbGFuLWRpYWdyYW0tLWxlZnQge1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcblx0XHRcdHRvcDogMjAlO1xuXHRcdFx0bGVmdDogLTMycHg7XG5cdFx0fVxuXHR9XG5cdC8vbGFyZ2UgYXJyb3cgb3ZlcnJpdGVzXG5cdCYtLW1tIC5hcnJvdyB7XG5cdFx0Ji5vdXItcGxhbi1kaWFncmFtLS10b3Age1xuXHRcdFx0dG9wOiAtMzJweDtcblx0XHRcdGxlZnQ6IDcwJTtcblx0XHR9XG5cdFx0Ji5vdXItcGxhbi1kaWFncmFtLS1yaWdodCB7XG5cdFx0XHR0b3A6IDcwJTtcblx0XHRcdHJpZ2h0OiAtNTBweDtcblx0XHR9XG5cdFx0Ji5vdXItcGxhbi1kaWFncmFtLS1ib3R0b20ge1xuXHRcdFx0Ym90dG9tOiAtMzJweDtcblx0XHRcdGxlZnQ6IDIwJTtcblx0XHR9XG5cdFx0Ji5vdXItcGxhbi1kaWFncmFtLS1sZWZ0IHtcblx0XHRcdHRvcDogMjAlO1xuXHRcdFx0bGVmdDogLTUwcHg7XG5cdFx0fVxuXHR9XG5cdC5hcnJvdy0taW5zZXQge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiA0Njtcblx0XHQmLm91ci1wbGFuLWRpYWdyYW0tLXRvcCB7XG5cdFx0XHR0b3A6IC0xcHg7XG5cdFx0XHRsZWZ0OiAyMCU7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuXHRcdH1cblx0XHQmLm91ci1wbGFuLWRpYWdyYW0tLXJpZ2h0IHtcblx0XHRcdHRvcDogMjAlO1xuXHRcdFx0cmlnaHQ6IC0xNHB4O1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcblx0XHR9XG5cdFx0Ji5vdXItcGxhbi1kaWFncmFtLS1ib3R0b20ge1xuXHRcdFx0Ym90dG9tOiAtMXB4O1xuXHRcdFx0bGVmdDogNzAlO1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG5cdFx0fVxuXHRcdCYub3VyLXBsYW4tZGlhZ3JhbS0tbGVmdCB7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0XHR0b3A6IDcwJTtcblx0XHRcdGxlZnQ6IC0xNHB4O1xuXHRcdH1cblx0fVxuXG5cdC8vQXJyb3cgY29sb3JzXG5cdCYtLWZpbGwtYmx1ZSB7XG5cdFx0ZmlsbDogJGJsdWU7XG5cdH1cblx0Ji0tZmlsbC1waW5rIHtcblx0XHRmaWxsOiAkcGluaztcblx0fVxuXHQmLS1maWxsLXJlZCB7XG5cdFx0ZmlsbDogJHJlZDtcblx0fVxuXHQmLS1maWxsLW9yYW5nZSB7XG5cdFx0ZmlsbDogJG9yYW5nZTtcblx0fVxuXHQmLS1maWxsLXllbGxvdyB7XG5cdFx0ZmlsbDogJHllbGxvdztcblx0fVxuXHQmLS1maWxsLXB1cnBsZSB7XG5cdFx0ZmlsbDogJHB1cnBsZTtcblx0fVxuXHQmLS1maWxsLWxhdmVuZGVyIHtcblx0XHRmaWxsOiAkbGF2ZW5kZXI7XG5cdH1cblx0Ji0tZmlsbC1ncmVlbiB7XG5cdFx0ZmlsbDogJGdyZWVuO1xuXHR9XG5cdCYtLWZpbGwtY2Fycm90IHtcblx0XHRmaWxsOiAkY2Fycm90O1xuXHR9XG5cblx0Ly9MQVlFUklORyBCTE9DS1MgWi1JTkRFWCBcblx0Ji0tbW0ge1xuXHRcdC5vdXItcGxhbi1kaWFncmFtLS1nb2FsIHtcblx0XHRcdHotaW5kZXg6IDUwO1xuXHRcdH1cblx0XHQuYXJyb3cge1xuXHRcdFx0ei1pbmRleDogNDk7XG5cdFx0fVxuXHR9XG5cdCYtLWRpcmVjdGlvbiB7XG5cdFx0ei1pbmRleDogNDU7XG5cdH1cblx0Ji0tcm0sXG5cdCYtLWJtLFxuXHQmLS1sbSxcblx0Ji0tdG0ge1xuXHRcdC5hcnJvdyB7XG5cdFx0XHR6LWluZGV4OiA0NDtcblx0XHR9XG5cdH1cblx0Ji0tZm9jdXMge1xuXHRcdHotaW5kZXg6IDQwO1xuXHR9XG5cblx0Ly9DT0xPUiBPVkVSUklURVNcblx0aDMsIGg0IHtcblx0XHRjb2xvcjogI0ZGRjtcblx0fVxuXG5cdC8vQU5JTUFUSU9OU1xuXHQmLmlzLW5vdC12aXNpYmxlIHtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKSB7XG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tcGluayB7XG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMC41KTtcblx0XHRcdH1cblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1waW5rLFxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZSxcblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1jYXJyb3QsXG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tYmx1ZSxcblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1vcmFuZ2UsXG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tbGF2ZW5kZXIsXG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tZ3JlZW4sXG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tcmVkLFxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLXllbGxvdyxcblx0XHRcdC5hcnJvdy0taW5zZXQsXG5cdFx0XHQuYXJyb3cge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0fVxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMTY1cHgpO1xuXHRcdFx0fVxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLWNhcnJvdCB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTVweCwxNTVweCk7XG5cdFx0XHR9XG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tcmVkIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE1NXB4LCAwKTtcblx0XHRcdH1cblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1sYXZlbmRlciB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTVweCwtMTU1cHgpO1xuXHRcdFx0fVxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLW9yYW5nZSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTE2NXB4KTtcblx0XHRcdH1cblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1ncmVlbiB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDE1NXB4LC0xNTVweCk7XG5cdFx0XHR9XG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0teWVsbG93IHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMTU1cHgsIDApO1xuXHRcdFx0fVxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLWJsdWUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTVweCwxNTVweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gcmVzZXQgdG8gZGVmYXVsdHMgaGVyZVxuXHQmLmlzLXZpc2libGUge1xuXHRcdC5vdXItcGxhbi1kaWFncmFtLS1waW5rIHtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHRcdCY6aG92ZXJ7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmFycm93LFxuXHRcdC5hcnJvdy0taW5zZXQge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1vdXQ7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC43cztcblx0XHR9XG5cdFx0Lm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZSxcblx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tY2Fycm90LFxuXHRcdC5vdXItcGxhbi1kaWFncmFtLS1ibHVlLFxuXHRcdC5vdXItcGxhbi1kaWFncmFtLS1vcmFuZ2UsXG5cdFx0Lm91ci1wbGFuLWRpYWdyYW0tLWxhdmVuZGVyLFxuXHRcdC5vdXItcGxhbi1kaWFncmFtLS1ncmVlbixcblx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tcmVkLFxuXHRcdC5vdXItcGxhbi1kaWFncmFtLS15ZWxsb3cge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdC8vICY6aG92ZXIge1xuXHRcdFx0Ly8gXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuXHRcdFx0Ly8gfVxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLXB1cnBsZSB7XG5cdFx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0XHQvLyAmOmhvdmVyIHtcblx0XHRcdFx0Ly8gXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDEwcHgpO1xuXHRcdFx0XHQvLyBcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0XHQvLyB9XG5cdFx0XHR9XG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tY2Fycm90IHtcblx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4xcztcblx0XHRcdFx0Ly8gJjpob3Zlcntcblx0XHRcdFx0Ly8gXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNXB4LDVweCk7XG5cdFx0XHRcdC8vIFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdFx0XHRcdC8vIH1cblx0XHRcdH1cblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1yZWQge1xuXHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuXHRcdFx0XHQvLyAmOmhvdmVye1xuXHRcdFx0XHQvLyBcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMHB4LDApO1xuXHRcdFx0XHQvLyBcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0XHQvLyB9XG5cdFx0XHR9XG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tbGF2ZW5kZXIge1xuXHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuXHRcdFx0XHQvLyAmOmhvdmVye1xuXHRcdFx0XHQvLyBcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01cHgsLTVweCk7XG5cdFx0XHRcdC8vIFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdFx0XHRcdC8vIH1cblx0XHRcdH1cblx0XHRcdC5vdXItcGxhbi1kaWFncmFtLS1vcmFuZ2Uge1xuXHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xuXHRcdFx0XHQvLyAmOmhvdmVye1xuXHRcdFx0XHQvLyBcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTEwcHgpO1xuXHRcdFx0XHQvLyBcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0XHQvLyB9XG5cdFx0XHR9XG5cdFx0XHQub3VyLXBsYW4tZGlhZ3JhbS0tZ3JlZW4ge1xuXHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuXHRcdFx0XHQvLyAmOmhvdmVye1xuXHRcdFx0XHQvLyBcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCwtNXB4KTtcblx0XHRcdFx0Ly8gXHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHRcdFx0Ly8gfVxuXHRcdFx0fVxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLXllbGxvdyB7XG5cdFx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDAuNnM7XG5cdFx0XHRcdC8vICY6aG92ZXJ7XG5cdFx0XHRcdC8vIFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwwKTtcblx0XHRcdFx0Ly8gXHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHRcdFx0Ly8gfVxuXHRcdFx0fVxuXHRcdFx0Lm91ci1wbGFuLWRpYWdyYW0tLWJsdWUge1xuXHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xuXHRcdFx0XHQvLyAmOmhvdmVye1xuXHRcdFx0XHQvLyBcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDVweCw1cHgpO1xuXHRcdFx0XHQvLyBcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0XHQvLyB9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRPVVIgU1RSQVRFR0lDIEZPQ1VTXHRQQUdFXHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEF1dGhvcjogSGVtaSBPcm1zYnlcdFx0XHRcdFx0XHQvL1xuLy9cdERhdGU6IDE4IEFwcmlsIDIwMTZcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuXG4ub3VyLXN0cmF0ZWdpYy1mb2N1cyxcbi5vdXItYXJlYXMtb2YtZm9jdXMge1xuXG5cdC8vU3BlY2lmaWMgaW1hZ2Ugc3R5bGVzXG5cdC5pbWFnZSB7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLXRvcDogMzVweDtcblx0XHR9XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuXHQubGFuZHNjYXBlIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdC5wb3J0cmFpdCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC8vR3JpZCBvdmVycml0ZXNcblx0LmdyaWRfXzYtNiB7XG5cdFx0LmNvbC0xLFxuXHRcdC5jb2wtMiB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0LmNvbC0xIHtcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZSkge1xuXHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmNvbC0yIHtcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZSkge1xuXHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XHRcblx0LmdyaWRfXzEwIHtcblx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuXHR9XG59IiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdE9VUiBTVFJBVEVHSUMgR09BTCBQQUdFXHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0QXV0aG9yOiBIZW1pIE9ybXNieVx0XHRcdFx0XHRcdC8vXG4vL1x0RGF0ZTogMTggQXByaWwgMjAxNlx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG5cbi5vdXItc3RyYXRlZ2ljLWdvYWxzLFxuLm91ci1zdHJhdGVnaWMtZ29hbCB7XG5cdC8vIEltYWdlIHN0eWxlc1xuXHQuaW1hZ2Uge1xuXHRcdG1hcmdpbi10b3A6IDM1cHg7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHR9XG5cdH1cblx0LmxhbmRzY2FwZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cblx0LnBvcnRyYWl0IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XHRcbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRTSVRFIEZPT1RFUiBcdFx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0QXV0aG9yOiBIZW1pIE9ybXNieVx0XHRcdFx0XHRcdC8vXG4vL1x0RGF0ZTogMTggQXByaWwgMjAxNlx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG5cbi5zaXRlLWZvb3RlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0YmFja2dyb3VuZDogJGdyZXk7XG5cdHBhZGRpbmc6IDEwcHggMDtcblxuXHQuY29weXJpZ2h0IHtcblx0XHRjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0fVxuXG5cblx0LnRpdGxlIHtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0U0lURSBIRUFERVIgXHRcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEF1dGhvcjogSGVtaSBPcm1zYnlcdFx0XHRcdFx0XHQvL1xuLy9cdERhdGU6IDE4IEFwcmlsIDIwMTZcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuXG4uc2l0ZS1oZWFkZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGJhY2tncm91bmQ6ICRwaW5rO1xuXG4gICYuLXBsdW0ge1xuICAgIGJhY2tncm91bmQ6ICM1YjNhNTc7XG4gIH1cblxuICAmLi1ibGFjayB7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgfVxuXG4gICYuLXBmYy1wdXJwbGUge1xuICAgIGJhY2tncm91bmQ6ICM4NzE4OUQ7XG4gIH1cblxuXHRcblx0LnRpdGxlIHtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0U1RSQVRFR1kgUk9XOlx0XHRcdFx0XHRcdFx0Ly9cbi8vICBVc2VkIG9uIHN0cmF0ZWdpYyBmb2N1cyBzZWN0aW9uXHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxOCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLnN0cmF0ZWd5LXJvdyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogYmxvY2s7IC8vSGlkZSAxcHggc3BhY2UgYXBwZWFyaW5nIHVuZGVyIGltYWdlXG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cblxuXHQmLS1jYXJyb3Qge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjYXJyb3Q7XG5cdH1cblx0Ji0tbGF2ZW5kZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsYXZlbmRlcjtcblx0fVxuXHQmLS1ncmVlbiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuXHR9XG5cdCYtLWJsdWUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuXHR9XG5cblxuICAmLS1wdXJwbGUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG5cdH1cbiAgJi0tcGx1bSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBsdW07XG5cdH1cbiAgJi0tZHVjay1lZ2ctYmx1ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGR1Y2stZWdnLWJsdWU7XG5cdH1cbiAgJi0tcGluayB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBpbms7XG5cdH1cbiAgJi0tbWF1dmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRtYXV2ZTtcblx0fVxuICAmLS1ncmF5IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcblx0fVxuICAmLS10ZWFsIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcblx0fVxuXG5cbiAgJi0tY2Fycm90LFxuXHQmLS1sYXZlbmRlcixcblx0Ji0tZ3JlZW4sXG5cdCYtLWJsdWUsXG4gICYtLXBsdW0sXG4gICYtLWR1Y2stZWdnLWJsdWUsXG4gICYtLXBpbmssXG4gICYtLW1hdXZlLFxuICAmLS1ncmF5LFxuICAmLS10ZWFsLFxuICAmLS1wdXJwbGUge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblxuXHRoMiwgLmludHJvLCAuaW50cm8gcCB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxuXG5cdC5wYWRkZWQge1xuXHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzogMzVweCAxMDBweDtcblxuXHRcdH1cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6IDUwcHg7XG5cdFx0fVxuXHR9XG5cblx0LmltYWdlICB7XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmc6IDBweCAwO1xuXHRcdFx0d2lkdGg6IDUwJTtcblxuXHRcdFx0Ji5zdHJhdGVneS1yb3ctLWxlZnQgeyBcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHQmLnN0cmF0ZWd5LXJvdy0tcmlnaHQge1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cbn0iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0QlVUVE9OIFx0IFx0XHRcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEF1dGhvcjogSGVtaSBPcm1zYnlcdFx0XHRcdFx0XHQvL1xuLy9cdERhdGU6IDE4IEFwcmlsIDIwMTZcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuXG4udy1idXR0b24ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRoZWlnaHQ6IDQwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDIwcHg7XG5cdHBhZGRpbmc6IDEwcHggMTBweDtcblxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGZvbnQtc2l6ZTogMTRweDtcblxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuXHQvL01vcmUgc3BlY2lmaWMgc3lsZXNcblx0Y29sb3I6ICRwaW5rO1xuXHRtYXJnaW46IDAgMTBweCAyMHB4O1xuXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuXHRib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDJweCAycHggNXB4O1xuXHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwcHggNXB4IDIwcHg7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcblxuXHR9XG5cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW46IDAgMTBweDtcblx0XHRwYWRkaW5nOiA5cHggNDBweDtcblx0XHRmb250LXNpemU6IDE1cHg7XG5cdH1cbn1cblxuLy9TcGVjaWZpYyBzZWN0aW9uIGNvbG9yIG92ZXJyaXRlcyAocGluayBub3QgcmVxdWlyZWQgYXMgaXQgaXMgdGhlIGRlZmF1bHQpXG4vL0FwcGVuZCBtb3JlIGV4Y2VwdGlvbnMgaGVyZSBpZiBidXR0b25zIGFwcGVhciBpbiBvdGhlciBjb2xvcmVkIHNlZ21lbnRzIChvdGhlciB0aGFuIHR1cnF1b2lzZSkuXG4uc2VnbWVudC0tdHVycXVvaXNlIHtcblx0LnctYnV0dG9uIHtcblx0XHRjb2xvcjogJHR1cnF1b2lzZTtcblx0fVxufVxuXG5cbi5idXR0b24tZ3JvdXAge1xuICBkaXNwbGF5OmZsZXg7XG4gIGdhcDogMTBweDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG59XG5cbi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGluaztcbiAgY29sb3I6ICR3aGl0ZTtcblxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcblxuICBib3JkZXItcmFkaXVzOiA4cHg7XG5cbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRwaW5rLCAxMCUpO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAxNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDRweCA2cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIH1cbn0iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0SEVSTyBJTUFHRSBcdFx0XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxOCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLnctaGVybyB7XG5cdC8vIG1heC1oZWlnaHQ6IDY3NXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXG5cdC5pbWFnZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG59IiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdFdPTUVOUyBERUNMQVJBVElPTiBESUFHUkFNXHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEF1dGhvcjogSGVtaSBPcm1zYnlcdFx0XHRcdFx0XHQvL1xuLy9cdERhdGU6IDIwIEFwcmlsIDIwMTZcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtIHtcblxuXHQvL0NvbnRhaW5lciBzdHlsZXNcblx0d2lkdGg6IDEwMCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsYXJnZSkge1xuXHRcdC8vbWFpbnRhaW4gYXNwZWN0IHJhdGlvc1xuXHRcdGhlaWdodDogMDtcblx0XHRwYWRkaW5nLWJvdHRvbTogODglO1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdC8vQWxsIGRlY2xhcmF0aW9uIGJsb2Nrc1xuXHQmLS1kZWNsYXJhdGlvbiB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDUwO1xuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4bGFyZ2UpIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR9XG5cdH1cblxuXHQuZGVjbGFyYXRpb24tZGlhZ3JhbS1iZyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogNDk7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHJpZ2h0OjA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGZpbGw6ICRwaW5rO1xuXHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4bGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC8vTWlkZGxlIGJsb2NrXG5cdC5jZW50ZXIge1xuXHRcdGgzIHtcblx0XHRcdGNvbG9yOiAkcGluaztcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAzNXB4O1xuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdFx0fVxuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblx0XHR9XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDE3NXB4O1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC04OHB4O1xuXHRcdFx0dG9wOiAyMzFweDtcblx0XHR9XG5cdH1cblxuXHQvLyBPdXRlciBwaW5rIGJsb2NrcyAodGV4dCBhbmQgcG9zaXRpb25pbmcpXG5cdC5uLFxuXHQubmUsXG5cdC5zZSxcblx0LnMsXG5cdC5zdyxcblx0Lm53IHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBpbms7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0cGFkZGluZzogMzBweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsYXJnZSkge1xuXHRcdC5uLFxuXHRcdC5uZSxcblx0XHQuc2UsXG5cdFx0LnMsXG5cdFx0LnN3LFxuXHRcdC5udyB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHR3aWR0aDogMTU1cHg7XG5cdFx0fVxuXHRcdC5uLFxuXHRcdC5zIHtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAtNzhweDtcblx0XHR9XG5cdFx0Lm4ge1xuXHRcdFx0dG9wOiA0MHB4O1xuXHRcdH1cblx0XHQucyB7XG5cdFx0XHR0b3A6IDQ2NXB4O1xuXHRcdH1cblx0XHQubmUsIFxuXHRcdC5zZSB7XG5cdFx0XHRsZWZ0OiA2NSU7XG5cdFx0fVxuXHRcdC5uZSB7XG5cdFx0XHR0b3A6IDE1MHB4O1xuXHRcdH1cblx0XHQuc2Uge1xuXHRcdFx0dG9wOiAzNTBweDtcblx0XHR9XG5cdFx0Lm53LFxuXHRcdC5zdyB7XG5cdFx0XHRsZWZ0OiAxMCU7XG5cdFx0fVxuXHRcdC5udyB7XG5cdFx0XHR0b3A6IDE4MHB4O1xuXHRcdH1cblx0XHQuc3cge1xuXHRcdFx0dG9wOiAzNDBweDtcblx0XHR9XG5cdH1cblxuXHQvL0FOSU1BVElPTlxuXHQmLmlzLW5vdC12aXNpYmxlIHtcblx0XHQuZGVjbGFyYXRpb24tZGlhZ3JhbS1iZyB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuXHRcdH1cblx0XHQud29tZW5zLWRlY2xhcmF0aW9uLWRpYWdyYW0tLWRlY2xhcmF0aW9uIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG5cdFx0fVxuXHR9XG5cdCYuaXMtdmlzaWJsZSB7XG5cdFx0LmRlY2xhcmF0aW9uLWRpYWdyYW0tYmcge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR9XG5cdFx0LndvbWVucy1kZWNsYXJhdGlvbi1kaWFncmFtLS1kZWNsYXJhdGlvbiB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4ycztcblx0XHR9XG5cdFx0Lm5lIHtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG5cdFx0fVxuXHRcdC5zZSB7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xuXHRcdH1cblx0XHQucyB7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuXHRcdH1cblx0XHQuc3cge1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC42cztcblx0XHR9XG5cdFx0Lm53IHtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDAuN3M7XG5cdFx0fVxuXHR9XG5cbn1cblxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdFNFR01FTlRTXHRcdFx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0QXV0aG9yOiBIZW1pIE9ybXNieVx0XHRcdFx0XHRcdC8vXG4vL1x0RGF0ZTogMTQgQXByaWwgMjAxNlx0XHRcdFx0XHRcdC8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG5cbi5jYW1wYWlnbi1wdWJsaWMtZmVydGlsaXR5LWNhcmUge1xuICAuc2VnbWVudCB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2VnbWVudCB7XG5cdHBhZGRpbmc6IDUwcHggMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwpIHtcblx0XHRwYWRkaW5nOiA4MHB4IDA7XG5cdH1cblxuICAmLS1wZmMtbmV1dHJhbCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBmYy1uZXV0cmFsO1xuXHRcdEBpbmNsdWRlIGFycm93KCRwZmMtbmV1dHJhbCk7XG5cdH1cblx0Ji0tcGZjLXB1cnBsZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBmYy1wdXJwbGU7XG5cdFx0QGluY2x1ZGUgYXJyb3coJHBmYy1wdXJwbGUpO1xuXHR9XG5cdCYtLXBmYy1ibHVlLTcwIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGZjLWJsdWUtNzA7XG5cdFx0QGluY2x1ZGUgYXJyb3coJHBmYy1ibHVlLTcwKTtcblx0fVxuXHQmLS1wZmMtYmx1ZS0yNSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBmYy1ibHVlLTI1O1xuXHRcdEBpbmNsdWRlIGFycm93KCRwZmMtYmx1ZS0yNSk7XG5cdH1cblxuXHQmLS13aGl0ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdEBpbmNsdWRlIGFycm93KCR3aGl0ZSk7XG5cdH1cblxuXHQmLS1nYWluc2Jvcm8ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRnYWluc2Jvcm87XG5cdFx0QGluY2x1ZGUgYXJyb3coJGdhaW5zYm9ybyk7XG5cdH1cblxuXHQmLS1waW5rIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGluaztcblx0XHRAaW5jbHVkZSBhcnJvdygkcGluayk7XG5cdH1cblxuXHQmLS10dXJxdW9pc2Uge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR0dXJxdW9pc2U7XG5cdFx0QGluY2x1ZGUgYXJyb3coJHR1cnF1b2lzZSk7XG5cdH1cblxuICAmLS1saWdodC1ibHVlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcblx0XHRAaW5jbHVkZSBhcnJvdygkbGlnaHQtYmx1ZSk7XG5cdH1cblxuICAmLS1saWdodC1wbHVtIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcGx1bTtcblx0XHRAaW5jbHVkZSBhcnJvdygkbGlnaHQtcGx1bSk7XG5cdH1cblxuICAmLS1saWdodC1tYXV2ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LW1hdXZlO1xuXHRcdEBpbmNsdWRlIGFycm93KCRsaWdodC1tYXV2ZSk7XG5cdH1cblxuICAmLS1leHRyYS1saWdodC1tYXV2ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGV4dHJhLWxpZ2h0LW1hdXZlO1xuXHRcdEBpbmNsdWRlIGFycm93KCRleHRyYS1saWdodC1tYXV2ZSk7XG5cdH1cblxuICAmLS1saWdodC1ibHVlLFxuICAmLS1saWdodC1tYXV2ZSxcbiAgJi0tZXh0cmEtbGlnaHQtbWF1dmUsXG4gICYtLXBmYy1ibHVlLTcwLFxuICAmLS1wZmMtbmV1dHJhbCxcbiAgJi0tcGZjLWJsdWUtMjUge1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGgxLCAuaW50cm8ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuXHQmLS10dXJxdW9pc2UsIFxuICAmLS1waW5rLFxuICAmLS1wZmMtcHVycGxlLFxuICAmLS1saWdodC1wbHVtICB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRoMSwgLmludHJvIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHRcdCYubGFzdCB7XG5cdFx0XHRAaW5jbHVkZSBhcnJvdyh0cmFuc3BhcmVudCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gU3R5bGVzIGZvciBiYWNrIHRvcFxuXHQmLS10dXJxdW9pc2Uge1xuXHRcdC5iYWNrLXRvcC0tZm9vdGVyIHtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHRcdCYubGFzdCB7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDA7XG5cdFx0XHR6LWluZGV4OiAxMDAxO1xuXHRcdH1cblx0fVxuXG4gICYubm8tYXJyb3cge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0SEVBREVSXHRcdFx0XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxNCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLnNpdGUtaGVhZGVyIHtcblxuICBwYWRkaW5nOiAxMHB4IDA7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbCkge1xuXHRcdHBhZGRpbmc6IDIwcHggMDsgXG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdHBhZGRpbmc6IDIwcHggMDsgXG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0cGFkZGluZzogMzVweCAwOyBcblx0fVxuXG5cbiAgLmlubmVyIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZSxcbiAgICAuc3ViaGVhZGluZyB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgfVxuXG4gICAgICBtYXJnaW46MCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc3ViaGVhZGluZyB7XG4gICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn0iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS8vXG4vL1x0TkFWSUdBVElPTlx0XHRcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdEF1dGhvcjogSGVtaSBPcm1zYnlcdFx0XHRcdFx0XHQvL1xuLy9cdERhdGU6IDE0IEFwcmlsIDIwMTZcdFx0XHRcdFx0XHQvL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuXG4uc2l0ZS1uYXZpZ2F0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuXHR6LWluZGV4OiA5OTk5O1xuXHRib3gtc2hhZG93OiAwcHggMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXHQvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogMTAwJTtcblxuICB0b3A6IDc1cHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdHRvcDogMTQ1cHg7XG5cdH1cblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlKSB7XG5cdFx0dG9wOiAxNzVweDtcblx0fVxuXG5cdCYubmF2LS1pcy1zY3JvbGxlZCB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0fVxuXG5cdC5iYWNrLXRvcCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQubmF2X190b2dnbGUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZjtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHR1cnF1b2lzZTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdHBhZGRpbmc6IDIxcHggMTJweDtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQubmF2IHtcblxuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQmX19saXN0IHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRcdGhlaWdodDogNjBweDtcblx0XHRcdH1cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZSkge1xuXHRcdFx0XHRoZWlnaHQ6IDcwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCZfX2l0ZW0ge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bSkge1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cdFx0Jl9fbGluayB7XG5cdFx0XHRmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGNvbG9yOiAjMzMzO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdHBhZGRpbmc6IDE2cHggMTJweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0pIHtcblx0XHRcdFx0cGFkZGluZzogMjFweCAxMnB4O1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHR9XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UpIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdFx0XHRwYWRkaW5nOiAyNHB4IDE4cHg7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4bGFyZ2UpIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRwYWRkaW5nOiAyNHB4IDMycHg7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogJHBpbms7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vL1xuLy9cdFNIQU1FIEZJTEVcdFx0XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cbi8vXHRBdXRob3I6IEhlbWkgT3Jtc2J5XHRcdFx0XHRcdFx0Ly9cbi8vXHREYXRlOiAxNCBBcHJpbCAyMDE2XHRcdFx0XHRcdFx0Ly9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cblxuLy9Cb3JkZXIgYm94IGFsbCB0aGUgdGhpbmdzXG4qIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLy9Bbm90aGVyIHNoYW1lZnVsIGNsZWFyZml4IGNsYXNzXG4uY2xlYXIge1xuXHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4vL2NoYW5nZSBpbWFnZSBkZWZhdWx0XG5pbWcge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcbn1cblxuLy8gLy9vdmVycml0ZSBleGlzdGluZyBzdHlsZVxuLy8gYm9keSxcbi8vIGh0bWwge1xuLy8gXHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbi8vIH1cbiJdfQ== */
