/* susy */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@font-face {
  font-family: 'montserratregular';
  src: url(/sites/all/themes/royalmail/public/build/fonts/montserrat-regular-webfont.672563b7.eot);
  src: url(/sites/all/themes/royalmail/public/build/fonts/montserrat-regular-webfont.672563b7.eot) format("embedded-opentype"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-regular-webfont.e4047d2b.woff2) format("woff2"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-regular-webfont.0804ec53.woff) format("woff"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-regular-webfont.4215b17e.ttf) format("truetype"), url(/sites/all/themes/royalmail/public/build/images/montserrat-regular-webfont.e0f432ac.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'montserratbold';
  src: url(/sites/all/themes/royalmail/public/build/fonts/montserrat-bold-webfont.251b58b5.eot);
  src: url(/sites/all/themes/royalmail/public/build/fonts/montserrat-bold-webfont.251b58b5.eot) format("embedded-opentype"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-bold-webfont.b8bde12e.woff2) format("woff2"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-bold-webfont.fc2bc0df.woff) format("woff"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-bold-webfont.99fd240f.ttf) format("truetype"), url(/sites/all/themes/royalmail/public/build/images/montserrat-bold-webfont.eac0023c.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'montserratlight';
  src: url(/sites/all/themes/royalmail/public/build/fonts/montserrat-light-webfont.415154d1.eot);
  src: url(/sites/all/themes/royalmail/public/build/fonts/montserrat-light-webfont.415154d1.eot) format("embedded-opentype"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-light-webfont.b86c103e.woff2) format("woff2"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-light-webfont.3d1bc688.woff) format("woff"), url(/sites/all/themes/royalmail/public/build/fonts/montserrat-light-webfont.d91cdb18.ttf) format("truetype"), url(/sites/all/themes/royalmail/public/build/images/montserrat-light-webfont.8e5b2a37.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "royal-mail";
  src: url(/sites/all/themes/royalmail/public/build/fonts/royal-mail.dab1f9fd.eot);
  src: url(/sites/all/themes/royalmail/public/build/fonts/royal-mail.dab1f9fd.eot) format("embedded-opentype"), url(/sites/all/themes/royalmail/public/build/fonts/royal-mail.6deddf71.woff) format("woff"), url(/sites/all/themes/royalmail/public/build/fonts/royal-mail.a90ddd84.ttf) format("truetype"), url(/sites/all/themes/royalmail/public/build/images/royal-mail.615bf6a9.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

/* variables */
/* section colours */
/* See http://mrdanadams.com/2012/pixel-ems-css-conversion-sass-mixin/ */
/* Default font size in pixels if not overridden. */
/* Convert PX units to EMs.
Ex: margin-right: pem(16);
*/
/* Used to convert PX to EMs for multiple properties or values or both.
$base is an optional measurement that allows making measurements relative to the parent font size rather than the current. Also accepts a list of lists (instead a list of values) for properties that accept multiple lists of values. Only numbers of converted; everything else is passed through.

Examples:

@include scale(line-height, 30)
@include scale(line-height, 30, 16)
@include scale(width height, 125);
@include scale(padding, 0 25, 16);
@include scale(text-shadow, (#0d6e28 1 1) (#777 0 0 2), 16);
@include scale(box-shadow, (inset 0 0 0 1 #2a9022) (inset 0 0 3 #459966), 16);
*/
/*! 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.67em 0;
}

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

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

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

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

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

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  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 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

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

/* --------------------------------------------------------------

Resets default browser CSS.

-------------------------------------------------------------- */
/* remove bullet points */
.cke.cke_panel ul, .cke.cke_panel li {
  list-style: outside none none;
}

ul.cke_panel_list, ul.menu, ul.cycle-slideshow {
  list-style: outside none none;
}

ul.cke_panel_list li, ul.menu li, ul.cycle-slideshow li {
  list-style: outside none none;
}

#admin-menu a {
  font-family: Arial;
  font-size: 11px;
}

.element-invisible {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  display: none;
}

/* tabs */
#content #ptabs, #content #stabs {
  border-bottom: 1px solid #fff;
  border-left: medium none;
  float: none;
  height: 28px;
  list-style: none outside none;
  margin: 0 0 1.5em;
  padding: 0;
  width: 100%;
}

#content #stabs {
  padding: 12px 0 0 0;
}

#content #ptabs li.active, #content #stabs li.active {
  background: none repeat scroll 0 0 #fff;
  border-bottom: 1px solid #fff;
  border-top: 1px solid #24495a;
  height: 27px;
  line-height: 27px;
  margin-top: 0;
}

#content #ptabs li:first-child {
  margin-left: 1em;
}

#content #ptabs li, #content #stabs li {
  /*background: url("../../images/tab-bg.png") repeat-x scroll 0 0 #EFF0F1;*/
  border: 1px solid #efefef;
  float: left;
  height: 25px;
  line-height: 25px;
  margin: 2px 0 -1px;
  overflow: hidden;
  padding: 0;
  font-size: 12px;
  position: relative;
  background: transparent none;
  list-style: none outside none;
}

#content #ptabs li.active a, #content #stabs li.active a {
  color: #383838;
  background: transparent none;
}

#content #ptabs li a, #content #stabs li a {
  border: 1px solid #FFFFFF;
  background: #F8F8F8 none;
  color: #383838;
  display: block;
  font-size: 1em;
  outline: medium none;
  padding: 0 10px;
  text-decoration: none;
  margin: 0;
}

#content #ptabs li a:hover, #content #stabs li a:hover {
  background: #f1f2f2 none;
  color: #24495a;
}

#content #ptabs li a.active:hover, #content #stabs li a.active:hover {
  background: #fff none;
  color: #383838;
}

/* contextual links */
ul.contextual-links {
  list-style: outside none none;
}

ul.contextual-links li {
  list-style: outside none none;
}

ul.contextual-links li a {
  font-size: 13px;
}

a.contextual-links-trigger {
  height: 19px;
  margin: 0px;
  padding: 0px 2px;
  width: 32px;
}

/* messages */
/* ---------------------------------------------------------------------- */
/*  Alert Boxes
/* ---------------------------------------------------------------------- */
.messages.error, .success, .info, .notice {
  display: block;
  padding: 13px 20px 10px 44px;
}

.messages.error {
  background: #f9e5e6 url(/sites/all/themes/royalmail/public/build/images/icon-box-error.978cc800.png) no-repeat 10px 9px;
  border: 1px solid #f7c7c9;
  border-left-width: 4px;
  color: #b3696c;
}

.messages.status {
  background: #e3ebc6 url(/sites/all/themes/royalmail/public/build/images/icon-box-success.92964427.png) no-repeat 12px 8px;
  border: 1px solid #c2d288;
  border-left-width: 4px;
  color: #8fa442;
}

.messages.info {
  background: #d8ecf5 url(/sites/all/themes/royalmail/public/build/images/icon-box-info.65af3de6.png) no-repeat 10px 8px;
  border: 1px solid #9ac9df;
  border-left-width: 4px;
  color: #528da9;
}

.messages.warning {
  background: #fcf7d9 url(/sites/all/themes/royalmail/public/build/images/icon-box-notice.c668d07d.png) no-repeat 10px 9px;
  border: 1px solid #f5dc7d;
  border-left-width: 4px;
  color: #c4a21b;
}

div.error, tr.error {
  display: block;
}

div.messages ul {
  margin-top: 0;
  margin-bottom: 0;
  list-style: none;
  padding: 0;
}

div.messages ul {
  text-align: left;
}

div.messages ul li label {
  display: inline;
  background: transparent none;
  border: 0 none;
  margin: 0;
  padding: 0;
}

.btn {
  background: #574186;
  border: 1px solid #574186;
  color: #fff;
  font-size: 18px;
  line-height: 32px;
  letter-spacing: -0.5px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  padding: 10px 20px;
  min-width: 213px;
  display: inline-block;
  transition: 0.5s;
}

.btn:hover {
  color: #574186;
  background-color: #fff;
}

.btn.btn--black {
  color: #fff;
  background-color: #3C3C3B;
  border: 1px solid #3C3C3B;
}

.btn.btn--black:hover {
  color: #3C3C3B;
  background-color: #fff;
}

#title-wrapper {
  padding: 40px 0 10px 0;
}

a {
  text-decoration: none;
  color: inherit;
}

p a {
  text-decoration: underline;
}

ol {
  font-family: "montserratlight", sans-serif;
}

/** headers **/
h1, h2, h3, h4, h5 {
  font-weight: normal;
  margin: 0 0 1em 0;
}

h3.strong {
  font-weight: normal;
  font-family: "montserratbold", sans-serif;
  font-size: 16px;
  line-height: 25px;
}

strong, em {
  font-weight: normal;
  font-family: "montserratbold", sans-serif;
}

img {
  display: block;
  border: none;
}

p {
  margin: 0 0 1em 0;
  font-size: 16px;
  line-height: 25px;
  font-family: "montserratlight", sans-serif;
}

p.large-paragraph {
  font-size: 26px;
  line-height: 29px;
}

p.medium-paragraph {
  font-size: 18px;
  line-height: 21px;
}

p.medium-paragraph-22 {
  font-size: 22px;
  line-height: 33px;
}

p.border-paragraph {
  border: 2px solid #574186;
  padding: 50px;
  width: 100%;
  font-family: "montserratbold", sans-serif;
}

h2.h2-small {
  font-size: 25px;
  line-height: 28px;
  font-family: "montserratlight", sans-serif;
}

h2.h2-subtitle {
  font-size: 34px;
  line-height: 37px;
}

h2.h2-subtitle-no-margin {
  font-size: 34px;
  line-height: 37px;
  margin-bottom: 0;
}

h2.h2-large {
  font-family: "montserratregular", sans-serif;
  font-size: 48px;
  margin: 0 0 5px 0;
  line-height: 1em;
}

.left-col {
  width: 50%;
  padding-right: 36px;
  float: none;
  display: inline-block;
  vertical-align: top;
}

.left-col h2 {
  margin: 0 0 10px 0;
}

@media (max-width: 660px) {
  .left-col {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    padding-right: 0;
  }
}

.right-col {
  width: 49%;
  padding-left: 36px;
  float: none;
  display: inline-block;
  vertical-align: top;
}

.right-col h2 {
  margin: 0 0 10px 0;
}

@media (max-width: 660px) {
  .right-col {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
  }
}

.field-name-body h3, .field-description h3 {
  font-family: "montserratbold", sans-serif;
  font-size: 16px;
  line-height: 25px;
}

.field-name-body img, .field-description img {
  max-width: 100%;
  height: auto !important;
  width: 100% !important;
}

.field-name-body img.small-image, .field-description img.small-image {
  width: initial !important;
  height: initial !important;
}

@media (max-width: 460px) {
  .field-name-body .default-button, .field-description .default-button {
    margin-bottom: 15px;
  }
}

.field-name-body iframe, .field-description iframe {
  max-width: 100%;
}

.field-name-body a, .field-description a {
  color: #3c3c3b;
  text-decoration: underline;
}

.field-name-body a:hover, .field-description a:hover {
  text-decoration: none;
}

.field-name-body ul, .field-description ul {
  padding: 0;
  margin: 0;
  margin: 25px 0 25px 15px;
}

.field-name-body ul li, .field-description ul li {
  margin: 0;
  padding: 0;
  list-style-image: none;
  list-style-type: none;
}

.field-name-body ul li, .field-description ul li {
  margin-bottom: 30px;
  position: relative;
  padding-left: 20px;
}

.field-name-body ul li:before, .field-description ul li:before {
  content: "";
  font-size: inherit;
  color: #000;
  margin-right: 8px;
  float: left;
  position: absolute;
  top: 7px;
  left: 0;
  display: block;
  width: 7px;
  height: 7px;
  background-color: #000;
  border-radius: 20px;
}

.field-name-body ul li ul, .field-description ul li ul {
  margin-left: 20px;
  margin-top: 10px;
}

.field-name-body ul li ul li:before, .field-description ul li ul li:before {
  background-color: transparent;
  border: 1px solid #000;
}

.field-name-body ol, .field-description ol {
  padding: 0;
  margin: 25px 0 25px 15px;
}

.field-name-body ol li, .field-description ol li {
  margin-bottom: 30px;
  position: relative;
  padding-left: 5px;
}

@media (max-width: 1305px) {
  .field-description {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.news-loader {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: 99999;
  opacity: 0.5;
  background: #fff;
}

.news-loader span {
  width: 128px;
  height: 128px;
  position: absolute;
  bottom: 200px;
  left: 46%;
  display: block;
  background: url(/sites/all/themes/royalmail/public/build/images/loader.ef15344b.gif) no-repeat center;
}

ul.contact-listing {
  padding: 0;
  margin: 0;
}

ul.contact-listing li {
  margin: 0;
  padding: 0;
  list-style-image: none;
  list-style-type: none;
}

ul.contact-listing li {
  padding: 0 0 0 118px;
  margin: 0 0 40px 0;
  position: relative;
  min-height: 50px;
  word-break: break-word;
}

@media (max-width: 1024px) {
  ul.contact-listing li {
    padding: 0 0 0 60px;
  }
}

@media (max-width: 700px) {
  ul.contact-listing li {
    padding: 0;
  }
}

ul.contact-listing li:last-child {
  margin-bottom: 0;
}

ul.contact-listing li:before {
  content: "";
  width: 100px;
  display: block;
  background-repeat: no-repeat;
  background-position: top left;
  position: absolute;
  top: 0;
  left: 0;
}

@media (max-width: 700px) {
  ul.contact-listing li:before {
    position: static;
    margin-bottom: 5px;
    height: auto;
  }
}

ul.contact-listing li.mail-icon:before {
  background-image: url(/sites/all/themes/royalmail/public/build/images/mail_icon.92d6ed42.svg);
  background-size: 43px 33px;
  height: 40px;
}

ul.contact-listing li.phone-icon:before {
  background-image: url(/sites/all/themes/royalmail/public/build/images/phone_icon.d6a9b667.svg);
  background-size: 38px 38px;
  height: 40px;
}

ul.contact-listing li.pin-icon:before {
  background-image: url(/sites/all/themes/royalmail/public/build/images/pin_icon.3a0e0beb.svg);
  background-size: 28px 38px;
  height: 40px;
}

/**
 * @file
 * Layout Styling
 */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.2em;
  scroll-behavior: smooth;
}

body.html {
  font-family: "montserratregular", sans-serif;
  margin: 0;
  height: 100%;
  color: #3C3C3B;
  padding: 94px 0 0 0;
}

@media (max-width: 768px) {
  body.html {
    padding: 70px 0 0 0;
  }
}

html body.html.admin-menu {
  margin-top: 0 !important;
}

.container {
  max-width: 1286px;
  margin-left: auto;
  margin-right: auto;
}

.container:after {
  content: " ";
  display: block;
  clear: both;
}

@media (max-width: 700px) {
  .container {
    overflow: hidden;
  }
}

ul li {
  font-family: "montserratlight", sans-serif;
}

#main-wrapper {
  overflow: hidden;
}

#node-content {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.front #page-wrapper {
  background: #fff;
}

.front #block-block-13 {
  float: left;
  width: 100%;
  display: none;
}

.front .quick-links-container {
  position: relative;
  background-color: #f9f7f2;
}

.front .quick-links-container:before {
  content: "";
  background-color: #f9f7f2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
}

.front .quick-links-container:after {
  content: "";
  background-color: #f9f7f2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: -100%;
}

@media (max-width: 765px) {
  .front #node-content {
    display: block;
  }
  .front #edgeone {
    display: none;
  }
  .front #block-block-13 {
    display: block;
    margin-left: -20px;
  }
}

#content-after {
  background-color: #fff;
  padding-bottom: 80px;
  overflow: hidden;
}

@media (max-width: 700px) {
  #content-after {
    padding-bottom: 0;
  }
}

.page-node-1 #menu-wrapper-sticky #block-menu-block-4--2 {
  display: none;
}

@media (max-width: 768px) {
  .page-node-1 #menu-wrapper-sticky #block-menu-block-4--2 {
    display: block;
  }
}

.not-front #block-menu-block-4--2 {
  display: none;
}

@media (max-width: 768px) {
  .not-front #block-menu-block-4--2 {
    display: block;
  }
}

#footer {
  background-color: #fff;
  font-size: 14px;
  padding-top: 30px;
  padding-bottom: 30px;
}

@media (max-width: 1310px) {
  #footer .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

#footer .block {
  float: left;
}

@media (max-width: 700px) {
  #footer .block {
    text-align: center;
    float: none;
  }
}

#footer .block p {
  margin: 0;
  font-size: 14px;
  line-height: 19px;
}

#footer #block-block-14 {
  float: right;
}

@media (max-width: 700px) {
  #footer #block-block-14 {
    float: none;
    display: inline-block;
    margin: 0 auto;
    width: 100%;
  }
  #footer #block-block-14 p {
    text-align: center;
  }
}

#footer #block-block-14 a {
  color: #3c3c3b;
  text-decoration: none;
}

#footer .block-menu .block-content ul {
  padding: 0;
  margin: 0;
}

#footer .block-menu .block-content ul li {
  margin: 0;
  padding: 0;
  list-style-image: none;
  list-style-type: none;
}

@media (max-width: 700px) {
  #footer .block-menu .block-content ul {
    width: 100%;
    text-align: center;
  }
}

#footer .block-menu .block-content ul li {
  float: left;
}

@media (max-width: 700px) {
  #footer .block-menu .block-content ul li {
    float: none;
    display: inline-block;
  }
}

#footer .block-menu .block-content ul li:before {
  content: "|";
  margin: 0 5px;
}

@media (max-width: 700px) {
  #footer .block-menu .block-content ul li:before {
    display: none;
  }
}

#footer .block-menu .block-content ul li a {
  color: inherit;
  text-decoration: none;
}

#footer .block-menu .block-content ul li a:hover {
  text-decoration: underline;
}

.page-search #main {
  padding: 62px 0;
}

@media (max-width: 960px) {
  .page-search .hamburger {
    display: none;
  }
}

#content-after .container {
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 700px) {
  #content-after .container {
    padding-left: 0;
    padding-right: 0;
  }
}

body.page-node-93 .field-name-body {
  padding: 0;
}

body.front #edgeone {
  background-color: #F3EFE9;
}

.tipsy {
  font-size: 10px;
  position: absolute;
  padding: 5px;
  z-index: 100000;
}

.tipsy-inner {
  background-color: #000;
  color: #FFF;
  max-width: 200px;
  padding: 5px 8px 4px 8px;
  text-align: center;
}

/* Rounded corners */
.tipsy-inner {
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

/* Uncomment for shadow */
/*.tipsy-inner { box-shadow: 0 0 5px #000000; -webkit-box-shadow: 0 0 5px #000000; -moz-box-shadow: 0 0 5px #000000; }*/
.tipsy-arrow {
  position: absolute;
  width: 0;
  height: 0;
  line-height: 0;
  border: 5px dashed #000;
}

/* Rules to colour arrows */
.tipsy-arrow-n {
  border-bottom-color: #000;
}

.tipsy-arrow-s {
  border-top-color: #000;
}

.tipsy-arrow-e {
  border-left-color: #000;
}

.tipsy-arrow-w {
  border-right-color: #000;
}

.tipsy-n .tipsy-arrow {
  top: 0px;
  left: 50%;
  margin-left: -5px;
  border-bottom-style: solid;
  border-top: none;
  border-left-color: transparent;
  border-right-color: transparent;
}

.tipsy-nw .tipsy-arrow {
  top: 0;
  left: 10px;
  border-bottom-style: solid;
  border-top: none;
  border-left-color: transparent;
  border-right-color: transparent;
}

.tipsy-ne .tipsy-arrow {
  top: 0;
  right: 10px;
  border-bottom-style: solid;
  border-top: none;
  border-left-color: transparent;
  border-right-color: transparent;
}

.tipsy-s .tipsy-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-top-style: solid;
  border-bottom: none;
  border-left-color: transparent;
  border-right-color: transparent;
}

.tipsy-sw .tipsy-arrow {
  bottom: 0;
  left: 10px;
  border-top-style: solid;
  border-bottom: none;
  border-left-color: transparent;
  border-right-color: transparent;
}

.tipsy-se .tipsy-arrow {
  bottom: 0;
  right: 10px;
  border-top-style: solid;
  border-bottom: none;
  border-left-color: transparent;
  border-right-color: transparent;
}

.tipsy-e .tipsy-arrow {
  right: 0;
  top: 50%;
  margin-top: -5px;
  border-left-style: solid;
  border-right: none;
  border-top-color: transparent;
  border-bottom-color: transparent;
}

.tipsy-w .tipsy-arrow {
  left: 0;
  top: 50%;
  margin-top: -5px;
  border-right-style: solid;
  border-left: none;
  border-top-color: transparent;
  border-bottom-color: transparent;
}

.select-wrapper {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.25);
}

.select-wrapper .select2-container {
  height: 100%;
  display: block;
  flex: 1;
  overflow: hidden;
}

.select-wrapper .select2-container :focus {
  outline: none;
}

.select-wrapper .select2-container.select2-container--open .select2-selection--single {
  background: #E8E8E8;
}

.select-wrapper .select2-container.select2-container--open .select2-selection--single .select2-selection__placeholder {
  color: #444443;
}

.select-wrapper .select2-container.select2-container--open .select2-selection--single .select2-selection__arrow {
  transform: rotate(180deg);
}

.select-wrapper .select2-container span {
  display: block;
}

.select-wrapper .select2-container > .selection {
  height: 100%;
}

.select-wrapper .select2-container .select2-selection {
  border: none;
  border-radius: 0;
  height: 100%;
}

.select-wrapper .select2-container .select2-selection--single {
  display: flex;
  align-items: center;
  padding: 0 17px 0 30px;
}

.select-wrapper .select2-container .select2-selection--single .select2-selection__rendered {
  flex: 1;
  padding: 0 20px 0 0;
}

.select-wrapper .select2-container .select2-selection--single .select2-selection__placeholder {
  font-size: 18px;
  line-height: 22px;
  font-family: "montserratregular", sans-serif;
  color: rgba(68, 68, 67, 0.5);
}

.select-wrapper .select2-container .select2-selection--single .select2-selection__arrow {
  position: static;
  width: 36px;
  height: 36px;
  border-radius: 30px;
  background: #574186 url(/sites/all/themes/royalmail/public/build/images/arrow_down.a4c90c39.svg) no-repeat center center;
  background-size: 15px 16px;
  transition: transform .5s;
}

.select-wrapper .select2-container .select2-selection--single .select2-selection__arrow b {
  position: static;
  margin: 0;
  border: none;
  top: initial;
  left: initial;
}

.select-wrapper .select2-container .select2-search__field {
  display: none;
}

.select2-container .select2-dropdown {
  border: 1px solid #979797;
  border-top: 1px solid #979797 !important;
  padding: 0 0;
  border-radius: 0;
}

.select2-container .select2-dropdown .select2-search--dropdown {
  display: none;
}

.select2-container .select2-dropdown .select2-results ul {
  min-height: 0;
  max-height: initial;
}

.select2-container .select2-dropdown .select2-results ul li {
  padding: 10px 10px 10px 20px;
  font-size: 18px;
  line-height: 22px;
  font-family: "montserratregular", sans-serif;
  color: #3C3C3B;
}

.select2-container .select2-dropdown .select2-results ul li.select2-results__option--highlighted {
  background: transparent;
  text-decoration: underline;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-slide:focus {
  outline: none;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-arrow {
  position: static;
  width: 36px;
  height: 36px;
  border-radius: 30px;
  background: #574186 url(/sites/all/themes/royalmail/public/build/images/arrow_down.a4c90c39.svg) no-repeat center center;
  background-size: 15px 16px;
  border: none;
  font-size: 0;
  display: block;
}

.slick-arrow.slick-prev {
  transform: rotate(90deg);
}

.slick-arrow.slick-next {
  transform: rotate(-90deg);
}

body.fancybox-active {
  overflow: hidden;
}

body.fancybox-iosfix {
  position: fixed;
  left: 0;
  right: 0;
}

.fancybox-is-hidden {
  position: absolute;
  top: -9999px;
  left: -9999px;
  visibility: hidden;
}

.fancybox-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99992;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.fancybox-outer {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.87;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption-wrap {
  position: absolute;
  direction: ltr;
  z-index: 99997;
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s, visibility 0s linear .25s;
  box-sizing: border-box;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption-wrap {
  opacity: 1;
  visibility: visible;
  transition: opacity .25s, visibility 0s;
}

.fancybox-infobar {
  top: 0;
  left: 0;
  font-size: 13px;
  padding: 0 10px;
  height: 44px;
  min-width: 44px;
  line-height: 44px;
  color: #ccc;
  text-align: center;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: subpixel-antialiased;
  mix-blend-mode: exclusion;
}

.fancybox-toolbar {
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
}

.fancybox-stage {
  overflow: hidden;
  direction: ltr;
  z-index: 99994;
  -webkit-transform: translate3d(0, 0, 0);
}

.fancybox-is-closing .fancybox-stage {
  overflow: visible;
}

.fancybox-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: auto;
  outline: none;
  white-space: normal;
  box-sizing: border-box;
  text-align: center;
  z-index: 99994;
  -webkit-overflow-scrolling: touch;
  display: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.fancybox-slide::before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: visible;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--video iframe {
  background: #000;
}

.fancybox-slide--map .fancybox-content,
.fancybox-slide--map iframe {
  background: #E5E3DF;
}

.fancybox-slide--next {
  z-index: 99995;
}

.fancybox-slide > * {
  display: inline-block;
  position: relative;
  padding: 24px;
  margin: 44px 0 44px;
  border-width: 0;
  vertical-align: middle;
  text-align: left;
  background-color: #fff;
  overflow: auto;
  box-sizing: border-box;
}

.fancybox-slide > title,
.fancybox-slide > style,
.fancybox-slide > meta,
.fancybox-slide > link,
.fancybox-slide > script,
.fancybox-slide > base {
  display: none;
}

.fancybox-slide .fancybox-image-wrap {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  border: 0;
  z-index: 99995;
  background: transparent;
  cursor: default;
  overflow: visible;
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  border: 2px solid #fff;
  border-radius: 10px;
}

@media (max-width: 768px) {
  .fancybox-slide .fancybox-image-wrap {
    border-radius: 0;
  }
}

.fancybox-can-zoomOut .fancybox-image-wrap {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-image-wrap {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.fancybox-can-drag .fancybox-image-wrap {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-dragging .fancybox-image-wrap {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-image,
.fancybox-spaceball {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  max-width: none;
  max-height: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--iframe .fancybox-content, .fancybox-slide--html .fancybox-content {
  padding: 0;
  width: 80%;
  height: 80%;
  max-width: calc(100% - 100px);
  max-height: calc(100% - 88px);
  overflow: visible;
  background: transparent;
}

.fancybox-iframe {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
  background: transparent;
}

.fancybox-error {
  margin: 0;
  padding: 40px;
  width: 100%;
  max-width: 380px;
  background: #fff;
  cursor: default;
}

.fancybox-error p {
  margin: 0;
  padding: 0;
  color: #444;
  font-size: 16px;
  line-height: 20px;
}

/* Buttons */
.fancybox-button {
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 10px;
  border: 0;
  border-radius: 0;
  background: rgba(30, 30, 30, 0.6);
  transition: color .3s ease;
  cursor: pointer;
  outline: none;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:focus,
.fancybox-button:hover {
  color: #fff;
}

.fancybox-button[disabled] {
  color: #ccc;
  cursor: default;
  opacity: 0.6;
}

.fancybox-button svg {
  display: block;
  position: relative;
  overflow: visible;
  shape-rendering: geometricPrecision;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke: currentColor;
  stroke-linejoin: round;
  stroke-width: 3;
}

.fancybox-button--share svg path {
  stroke-width: 1;
}

.fancybox-button--play svg path:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg path:nth-child(1) {
  display: none;
}

.fancybox-button--zoom svg path {
  fill: transparent;
}

/* Navigation arrows */
.fancybox-navigation {
  display: none;
}

.fancybox-show-nav .fancybox-navigation {
  display: block;
}

.fancybox-navigation button {
  position: absolute;
  top: 50%;
  margin: -50px 0 0 0;
  z-index: 99997;
  background: transparent;
  width: 60px;
  height: 100px;
  padding: 17px;
}

.fancybox-navigation button:before {
  content: "";
  position: absolute;
  top: 30px;
  right: 10px;
  width: 40px;
  height: 40px;
  background: rgba(30, 30, 30, 0.6);
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
}

.fancybox-navigation .fancybox-button--arrow_right {
  right: 0;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0;
  margin: 0;
  border: 0;
  z-index: 10;
  cursor: pointer;
  width: 54px;
  height: 54px;
  background: #fff url(/sites/all/themes/royalmail/public/build/images/close_icon.f924a1b5.svg) center no-repeat;
  border-radius: 50px;
}

@media (max-width: 768px) {
  .fancybox-close-small {
    width: 27px;
    height: 27px;
    padding: 10px;
    background-size: 10px 10px;
  }
}

.fancybox-close-small:focus {
  outline: none;
}

.fancybox-close-small:focus:after {
  outline: 1px dotted #888;
}

.fancybox-close-small:hover:after {
  color: #555;
  background: #eee;
}

.fancybox-slide--image .fancybox-close-small,
.fancybox-slide--iframe .fancybox-close-small {
  top: -27px;
  right: -27px;
}

@media (max-width: 768px) {
  .fancybox-slide--image .fancybox-close-small,
  .fancybox-slide--iframe .fancybox-close-small {
    right: -2px;
    top: -13px;
  }
}

.fancybox-slide--image .fancybox-close-small:after,
.fancybox-slide--iframe .fancybox-close-small:after {
  font-size: 35px;
  color: #aaa;
}

.fancybox-slide--image .fancybox-close-small:hover:after,
.fancybox-slide--iframe .fancybox-close-small:hover:after {
  color: #fff;
  background: transparent;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-drag .fancybox-close-small {
  display: none;
}

/* Caption */
.fancybox-caption-wrap {
  bottom: 0;
  left: 0;
  right: 0;
  padding: 60px 2vw 0 2vw;
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.6) 80%, rgba(0, 0, 0, 0.8) 100%);
  pointer-events: none;
}

.fancybox-caption {
  padding: 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 14px;
  color: #fff;
  line-height: 20px;
  -webkit-text-size-adjust: none;
}

.fancybox-caption a,
.fancybox-caption button,
.fancybox-caption select {
  pointer-events: all;
  position: relative;
  /* Fix IE11 */
}

.fancybox-caption a {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-slide > .fancybox-loading {
  border: 6px solid rgba(100, 100, 100, 0.4);
  border-top: 6px solid rgba(255, 255, 255, 0.6);
  border-radius: 100%;
  height: 50px;
  width: 50px;
  -webkit-animation: fancybox-rotate .8s infinite linear;
  animation: fancybox-rotate .8s infinite linear;
  background: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -30px;
  margin-left: -30px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-slide.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-slide.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  -webkit-transform: scale3d(1.5, 1.5, 1.5);
  transform: scale3d(1.5, 1.5, 1.5);
  opacity: 0;
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  opacity: 1;
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  -webkit-transform: rotate(-360deg);
  -ms-transform: rotate(-360deg);
  transform: rotate(-360deg);
  opacity: 0;
}

.fancybox-fx-rotate.fancybox-slide--next {
  -webkit-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
  opacity: 0;
}

.fancybox-fx-rotate.fancybox-slide--current {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  opacity: 1;
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-circular.fancybox-slide--next {
  -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  opacity: 0;
}

.fancybox-fx-circular.fancybox-slide--current {
  -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
  opacity: 1;
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
}

/* Share */
.fancybox-share {
  padding: 30px;
  border-radius: 3px;
  background: #f4f4f4;
  max-width: 90%;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  margin: 0 0 20px 0;
  font-size: 35px;
  font-weight: 700;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

p.fancybox-share__links {
  margin-right: -10px;
}

.fancybox-share__button {
  display: inline-block;
  text-decoration: none;
  margin: 0 10px 10px 0;
  padding: 0 15px;
  min-width: 130px;
  border: 0;
  border-radius: 3px;
  background: #fff;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #fff;
  transition: all .2s;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  position: relative;
  top: -1px;
  width: 25px;
  height: 25px;
  margin-right: 7px;
  vertical-align: middle;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  box-sizing: border-box;
  width: 100%;
  margin: 10px 0 0 0;
  padding: 10px 15px;
  background: transparent;
  color: #5d5b5b;
  font-size: 14px;
  outline: none;
  border: 0;
  border-bottom: 2px solid #d7d7d7;
}

/* Thumbs */
.fancybox-thumbs {
  display: none;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 212px;
  margin: 0;
  padding: 2px 2px 4px 2px;
  background: #fff;
  -webkit-tap-highlight-color: transparent;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  box-sizing: border-box;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-y: hidden;
  overflow-x: auto;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs > ul {
  list-style: none;
  position: absolute;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  font-size: 0;
  white-space: nowrap;
}

.fancybox-thumbs-x > ul {
  overflow: hidden;
}

.fancybox-thumbs-y > ul::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y > ul::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y > ul::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs > ul > li {
  float: left;
  overflow: hidden;
  padding: 0;
  margin: 2px;
  width: 100px;
  height: 75px;
  max-width: calc(50% - 4px);
  max-height: calc(100% - 8px);
  position: relative;
  cursor: pointer;
  outline: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
}

li.fancybox-thumbs-loading {
  background: rgba(0, 0, 0, 0.1);
}

.fancybox-thumbs > ul > li > img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: none;
  max-height: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-thumbs > ul > li:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 4px solid #4ea7f9;
  z-index: 99991;
  opacity: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fancybox-thumbs > ul > li.fancybox-thumbs-active:before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 800px) {
  .fancybox-thumbs {
    width: 110px;
  }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }
  .fancybox-thumbs > ul > li {
    max-width: calc(100% - 10px);
  }
}

#front-page-header {
  height: 559px;
  width: 100%;
  position: relative;
  background: #CDDDEC;
}

@media (max-width: 700px) {
  #front-page-header {
    height: auto;
    padding-bottom: 40px;
  }
  #front-page-header picture.contained-picture {
    display: none;
  }
}

#front-page-header .front-page-header-container {
  max-width: 1286px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  height: 100%;
}

#front-page-header .front-page-header-container:after {
  content: " ";
  display: block;
  clear: both;
}

@media (max-width: 700px) {
  #front-page-header .front-page-header-container {
    flex-direction: column;
  }
}

#block-block-18 {
  width: 40.66874%;
  float: left;
  margin-right: 1.71073%;
  padding-left: 8.47589%;
}

@media (max-width: 700px) {
  #block-block-18 {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    padding-left: 20px;
    padding-right: 20px;
  }
}

#block-block-18 .block-title {
  font-size: 42px;
  line-height: 52px;
  font-family: "montserratbold", sans-serif;
  margin: 70px 0 20px 0;
}

@media (max-width: 1000px) {
  #block-block-18 .block-title {
    margin: 30px 0 20px 0;
    font-size: 30px;
    line-height: 42px;
  }
}

@media (max-width: 700px) {
  #block-block-18 .block-title {
    margin: 30px 0 30px 0;
    font-size: 34px;
    line-height: 44px;
  }
}

#block-block-18 .block-content {
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
}

#block-block-18 .block-content a {
  color: inherit;
  text-decoration: underline;
}

#section-select-block {
  width: 57.62053%;
  float: right;
  margin-right: 0;
  padding-right: 8.47589%;
  height: 100%;
  padding-top: 187px;
}

@media (max-width: 700px) {
  #section-select-block {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10px;
  }
}

picture.contained-picture {
  display: flex;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
  vertical-align: middle;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

picture.contained-picture.picture--absolute {
  position: absolute;
  top: 0;
}

picture.contained-picture img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 1465px) {
  picture.contained-picture img {
    object-fit: cover;
    object-position: center right;
  }
}

@media (max-width: 700px) {
  #select-joined-date-wrapper {
    margin-top: 30px;
  }
}

.select-wrapper {
  display: flex;
  margin: 10px 0;
  position: relative;
}

@media (max-width: 700px) {
  .select-wrapper {
    flex-direction: column;
    box-shadow: none;
  }
}

.select-wrapper.select-wrapper-hidden {
  display: none;
}

.select-wrapper > h3 {
  width: 141px;
  font-size: 18px;
  line-height: 21px;
  letter-spacing: -0.64px;
  font-family: "montserratregular", sans-serif;
  color: #fff;
  background: #574186;
  margin: 0;
  padding: 11px 16px;
  text-align: center;
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 700px) {
  .select-wrapper > h3 {
    width: 100%;
    font-size: 26px;
    line-height: 26px;
    letter-spacing: initial;
    font-family: "montserratbold", sans-serif;
    background: transparent;
    padding: 0 0 20px 0;
    text-align: left;
    color: #3C3C3B;
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 0;
  }
}

.select-wrapper .select-wrapper-inner {
  display: flex;
  flex: 1;
  min-height: 64px;
  max-width: 100%;
}

@media (max-width: 800px) {
  .select-wrapper .select-wrapper-inner {
    max-width: 240px;
  }
}

@media (max-width: 700px) {
  .select-wrapper .select-wrapper-inner {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.25);
    max-width: 100%;
  }
}

.select-wrapper .select-wrapper-inner .select2-container .select2-selection {
  min-height: 64px;
}

#block-views-latest-promoted-news-block {
  position: relative;
}

#block-views-latest-promoted-news-block:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 190px;
  background-color: #CDDDEC;
}

#block-views-latest-promoted-news-block:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 190px;
  background-color: #CDDDEC;
}

#block-views-latest-promoted-news-block .block-title {
  margin: 0;
}

.red-promoted-block {
  min-height: 380px;
  display: flex;
  background: #D72B41;
}

@media (max-width: 700px) {
  .red-promoted-block {
    flex-direction: column;
  }
}

.red-promoted-block .red-promoted-block__banner {
  width: 40.66874%;
  float: left;
  background: #C31D32;
  padding: 48px 20px 44px 41px;
  position: relative;
  background-image: url(/sites/all/themes/royalmail/public/build/images/promoted-news-pattern.6cf3df9b.png);
  background-repeat: repeat-y;
  background-position: center right;
}

@media (max-width: 700px) {
  .red-promoted-block .red-promoted-block__banner {
    width: 100%;
    background-image: none;
    padding: 34px 20px;
  }
}

.red-promoted-block .red-promoted-block__banner > h2 {
  color: #fff;
  font-size: 42px;
  line-height: 52px;
  font-family: "montserratregular", sans-serif;
}

@media (max-width: 700px) {
  .red-promoted-block .red-promoted-block__banner > h2 {
    font-size: 34px;
    line-height: 44px;
    margin-bottom: 0;
  }
}

.red-promoted-block .red-promoted-block__banner .news-promoted-banner__number {
  font-size: 218px;
  line-height: 218px;
  color: #D72B41;
  position: absolute;
  right: 44px;
  bottom: 25px;
}

@media (max-width: 700px) {
  .red-promoted-block .red-promoted-block__banner .news-promoted-banner__number {
    display: none;
  }
}

.red-promoted-block .red-promoted-block__banner .crown-icon {
  display: block;
  width: 67px;
  height: 61px;
  background: url(/sites/all/themes/royalmail/public/build/images/crown.0666af85.svg) center no-repeat;
  background-size: 67px 61px;
  position: absolute;
  left: 41px;
  bottom: 44px;
}

@media (max-width: 700px) {
  .red-promoted-block .red-promoted-block__banner .crown-icon {
    left: initial;
    right: 20px;
    bottom: initial;
    top: 23px;
  }
}

.red-promoted-block .red-promoted-block__content {
  width: 59.33126%;
  background: #D72B41;
  padding: 62px 81px 66px 77px;
  color: #fff;
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
}

@media (max-width: 700px) {
  .red-promoted-block .red-promoted-block__content {
    width: 100%;
    padding: 34px 20px;
  }
}

.red-promoted-block .red-promoted-block__content a {
  color: inherit;
  text-decoration: none;
}

#block-block-19 {
  padding-left: 6.76516%;
  padding-right: 6.76516%;
  background: none;
}

@media (max-width: 768px) {
  #block-block-19 {
    padding-left: 0;
    padding-right: 0;
  }
}

#block-block-20 {
  padding: 70px 20px;
  background: transparent url(/sites/all/themes/royalmail/public/build/images/clouds-bg.0522414c.png) no-repeat top center;
  position: relative;
  background-color: #f9f7f2;
}

#block-block-20:before {
  content: "";
  background-color: #f9f7f2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
}

#block-block-20:after {
  content: "";
  background-color: #f9f7f2;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: -100%;
}

@media (max-width: 700px) {
  #block-block-20 {
    padding: 20px 40px 40px 20px;
  }
}

#block-block-20 .block-title {
  text-align: center;
  font-size: 34px;
  line-height: 42px;
  letter-spacing: -0.47px;
  font-family: "montserratregular", sans-serif;
  margin: 0 0 65px 0;
}

@media (max-width: 700px) {
  #block-block-20 .block-title {
    text-align: left;
    margin: 0 0 50px 0;
  }
}

@media (max-width: 700px) {
  #block-block-20 .block-content p.responsive-center {
    text-align: center;
  }
}

@media (max-width: 700px) {
  #block-block-20 .block-content p {
    text-align: left;
  }
}

#block-block-20 img.rtecenter {
  margin: 0 auto;
}

#block-block-20 img {
  max-width: 100%;
  height: auto !important;
}

.quick-links-container {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  padding: 55px 0 30px 0;
}

@media (max-width: 700px) {
  .quick-links-container {
    padding: 50px 0 34px 0;
  }
}

.quick-links-container .quick-links-title {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  text-align: center;
  font-size: 34px;
  line-height: 42px;
  font-family: "montserratregular", sans-serif;
  margin: 0 0 84px 0;
}

@media (max-width: 700px) {
  .quick-links-container .quick-links-title {
    margin: 0 0 40px 0;
    text-align: left;
    padding: 0 20px;
  }
}

.quick-links-container .quick-links {
  width: 66.09642%;
  float: right;
  margin-right: 0;
  float: none;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (max-width: 768px) {
  .quick-links-container .quick-links {
    width: 74.57232%;
  }
}

@media (max-width: 700px) {
  .quick-links-container .quick-links {
    width: 100%;
    padding: 0 20px;
    flex-direction: column;
  }
}

.quick-links-container .quick-links .quick-links__link {
  width: 35.88235%;
  float: right;
  margin-right: 0;
  float: none;
  border-bottom: 1px solid #979797;
  padding: 0 0 45px 0;
  margin: 0 0 45px 0;
}

.quick-links-container .quick-links .quick-links__link:nth-last-child(2) {
  border-bottom: none;
}

@media (max-width: 700px) {
  .quick-links-container .quick-links .quick-links__link:nth-last-child(2) {
    border-bottom: 1px solid #979797;
  }
}

.quick-links-container .quick-links .quick-links__link:last-child {
  border-bottom: none;
}

@media (max-width: 700px) {
  .quick-links-container .quick-links .quick-links__link:last-child {
    margin-bottom: 0;
  }
}

@media (max-width: 700px) {
  .quick-links-container .quick-links .quick-links__link {
    width: 100%;
    padding: 0 0 40px 0;
    margin: 0 0 40px 0;
  }
}

.quick-links-container .quick-links__link-title {
  font-size: 26px;
  line-height: 33px;
  font-family: "montserratbold", sans-serif;
  margin: 0 0 40px 0;
}

@media (max-width: 700px) {
  .quick-links-container .quick-links__link-title {
    margin: 0 0 10px 0;
  }
}

.quick-links-container .quick-links__link-description {
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
  margin: 0 0 35px 0;
}

@media (max-width: 700px) {
  .quick-links-container .quick-links__link-description {
    margin: 0 0 17px 0;
  }
}

.quick-links-container .quick-links__link-link {
  font-size: 18px;
  line-height: 24px;
  font-family: "montserratbold", sans-serif;
  text-decoration: underline;
  color: #3C3C3B;
}

#block-block-21 {
  padding: 80px 0 40px 0;
}

@media (max-width: 700px) {
  #block-block-21 {
    padding: 50px 0 45px 0;
  }
}

#block-block-21 .block-title {
  width: 100%;
  text-align: center;
  font-size: 34px;
  line-height: 42px;
  font-family: "montserratregular", sans-serif;
  margin: 0 0 84px 0;
}

@media (max-width: 700px) {
  #block-block-21 .block-title {
    margin: 0 0 52px 0;
  }
}

#block-block-21 .block-content {
  display: flex;
}

@media (max-width: 700px) {
  #block-block-21 .block-content {
    flex-direction: column;
  }
}

#block-block-21 .did-you-know {
  width: 32.19285%;
  float: left;
  margin-right: 1.71073%;
  text-align: center;
}

#block-block-21 .did-you-know:nth-child(3n) {
  width: 32.19285%;
  float: right;
  margin-right: 0;
}

@media (max-width: 700px) {
  #block-block-21 .did-you-know:nth-child(3n) {
    width: 100%;
  }
}

@media (max-width: 700px) {
  #block-block-21 .did-you-know {
    width: 100%;
    margin: 0 0 50px 0;
  }
  #block-block-21 .did-you-know:last-child {
    margin-bottom: 0;
  }
}

#block-block-21 .did-you-know h3 {
  margin: 0 0 15px 0;
  min-height: 107px;
}

@media (max-width: 700px) {
  #block-block-21 .did-you-know h3 {
    min-height: auto;
    margin: 0 0 15px 0;
  }
}

#block-block-21 .did-you-know h3.did-you-know_title__trustee {
  display: flex;
  justify-content: center;
  align-items: center;
}

#block-block-21 .did-you-know h3.did-you-know_title__trustee span {
  font-family: "montserratbold", sans-serif;
}

#block-block-21 .did-you-know h3.did-you-know_title__trustee span:nth-child(1) {
  font-size: 88px;
  line-height: 107px;
  margin-right: 5px;
}

#block-block-21 .did-you-know h3.did-you-know_title__trustee span:nth-child(2) {
  font-size: 32px;
  line-height: 36px;
  text-align: left;
}

#block-block-21 .did-you-know h3.did-you-know_title--members span {
  font-size: 36px;
  line-height: 42px;
  font-family: "montserratbold", sans-serif;
}

#block-block-21 .did-you-know h3.did-you-know_title--members span:nth-child(1) {
  font-size: 44px;
}

#block-block-21 .did-you-know h3.did-you-know_title--10k {
  font-size: 80px;
  line-height: 97px;
  font-family: "montserratbold", sans-serif;
}

#block-views-videos-block-1 {
  margin: 40px 0 80px 0;
  padding-left: 8.47589%;
  padding-right: 8.47589%;
}

#block-views-videos-block-1 h2.block-title {
  margin: 0;
}

@media (max-width: 700px) {
  #block-views-videos-block-1 {
    padding-left: 0;
    padding-right: 0;
    margin: 0 0 15px 0;
  }
}

#block-views-videos-block {
  padding-left: 6.76516%;
  padding-right: 6.76516%;
  position: relative;
  padding-bottom: 80px;
}

@media (max-width: 700px) {
  #block-views-videos-block {
    padding-left: 20px;
    padding-right: 20px;
  }
}

#block-views-videos-block h2.block-title {
  margin: 0;
}

#block-views-videos-block .view-content {
  display: flex;
  align-items: center;
  position: relative;
  max-width: 930px;
  margin: 0 auto;
}

@media (max-width: 700px) {
  #block-views-videos-block .view-content {
    flex-direction: column;
  }
}

#block-views-videos-block .view-content .views-row {
  display: flex;
  justify-content: center;
}

#block-views-videos-block .view-content .slick-arrow {
  position: absolute;
  top: 70px;
}

#block-views-videos-block .view-content .slick-arrow.slick-prev {
  left: -100px;
}

@media (max-width: 1024px) {
  #block-views-videos-block .view-content .slick-arrow.slick-prev {
    left: -50px;
  }
}

@media (max-width: 700px) {
  #block-views-videos-block .view-content .slick-arrow.slick-prev {
    left: initial;
    top: -50px;
    display: none !important;
  }
}

#block-views-videos-block .view-content .slick-arrow.slick-next {
  right: -100px;
}

@media (max-width: 1024px) {
  #block-views-videos-block .view-content .slick-arrow.slick-next {
    right: -50px;
  }
}

@media (max-width: 700px) {
  #block-views-videos-block .view-content .slick-arrow.slick-next {
    right: initial;
    top: initial;
    bottom: -60px;
    transform: rotate(0deg);
  }
}

.facts-group-container {
  width: 100%;
}

.facts-group-container .facts-group {
  width: 100%;
  padding: 60px 0 70px 0;
  position: relative;
}

@media (max-width: 768px) {
  .facts-group-container .facts-group {
    padding: 50px 0;
  }
}

.facts-group-container .facts-group .facts-group__title {
  width: 100%;
  font-size: 34px;
  line-height: 36px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  margin: 0 0 80px 0;
}

@media (max-width: 768px) {
  .facts-group-container .facts-group .facts-group__title {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.facts-group-container .facts-group .facts-group__facts-container {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-left: 8.47589%;
  padding-right: 8.47589%;
}

@media (max-width: 768px) {
  .facts-group-container .facts-group .facts-group__facts-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .facts-group-container .facts-group .facts-group__facts-container {
    flex-direction: column;
  }
}

.facts-group-container .facts-group.i-want-to {
  background: #F7A293;
}

.facts-group-container .facts-group.i-want-to .fact .fact__title {
  font-size: 18px;
  line-height: 26px;
}

.facts-group-container .facts-group.i-want-to-blue {
  background: #B7C9E5;
}

.facts-group-container .facts-group.i-want-to-blue .fact__description {
  margin-bottom: 40px;
  text-align: center;
}

.facts-group-container .fact {
  width: 23.71695%;
  display: flex;
  flex-direction: column;
}

@media (max-width: 700px) {
  .facts-group-container .fact {
    width: 100%;
    margin: 0 0 40px 0;
  }
  .facts-group-container .fact:last-child {
    margin-bottom: 0;
  }
}

.facts-group-container .fact .fact-header {
  flex-grow: 1;
}

.facts-group-container .fact .fact__image {
  min-height: 152px;
  margin-bottom: 37px;
}

@media (max-width: 700px) {
  .facts-group-container .fact .fact__image {
    min-height: 0;
  }
}

.facts-group-container .fact .fact__image img {
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}

.facts-group-container .fact .fact__title {
  font-size: 20px;
  line-height: 29px;
  font-family: "montserratbold", sans-serif;
  text-align: center;
  margin: 0 0 40px 0;
}

.facts-group-container .fact .fact__description {
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
  flex-grow: 2;
}

.facts-group-container .fact .fact__link {
  text-align: center;
}

@media (max-width: 768px) {
  .facts-group-container .fact .fact__link a {
    min-width: auto;
  }
}

.library-block {
  margin-bottom: 65px;
}

.library-block:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.library-tab {
  background: #ECECEC;
  padding: 28px 105px 28px 86px;
  margin: 0 0 15px 0;
  position: relative;
}

@media (max-width: 768px) {
  .library-tab {
    padding: 28px 50px 28px 50px;
  }
}

@media (max-width: 700px) {
  .library-tab {
    padding: 28px 0 28px 0;
  }
}

.library-tab.active {
  border-bottom: 6px solid #DCDCDA;
}

.library-tab.active h3.library-tab_title:after {
  -ms-transform: rotate(180deg);
  /* IE 9 */
  -webkit-transform: rotate(180deg);
  /* Chrome, Safari, Opera */
  transform: rotate(180deg);
}

.library-tab h3.library-tab_title {
  font-size: 28px;
  line-height: 46px;
  font-family: "montserratregular", sans-serif;
  margin: 0;
  cursor: pointer;
}

.library-tab h3.library-tab_title:after {
  content: "";
  display: block;
  width: 36px;
  height: 36px;
  border-radius: 30px;
  background: #574186 url(/sites/all/themes/royalmail/public/build/images/arrow_down.c146e567.png) no-repeat center center;
  transition: transform .5s;
  position: absolute;
  top: 36px;
  right: 36px;
}

@media (max-width: 700px) {
  .library-tab h3.library-tab_title:after {
    top: 21px;
    right: 16px;
  }
}

@media (max-width: 700px) {
  .library-tab h3.library-tab_title {
    font-size: 18px;
    line-height: 25px;
    padding-left: 20px;
    padding-right: 35px;
  }
}

.library-tab .library-content {
  width: 100%;
  display: none;
}

.library-tab .library-content:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.library-tab .library-tab_description {
  width: 100%;
  margin: 40px 0 40px 0;
}

@media (max-width: 700px) {
  .library-tab .library-tab_description {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.library-tab .library-tab_children {
  margin: 40px 0 0 0;
}

.library-tab .library-tab_children .library-tab_children__child {
  margin: 40px 0 0 0;
}

.library-tab .library-tab_children .library-tab_children__child h4 {
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratbold", sans-serif;
  margin: 0 0 46px 0;
}

@media (max-width: 700px) {
  .library-tab .library-tab_children .library-tab_children__child h4 {
    font-size: 18px;
    line-height: 25px;
    margin: 0 0 16px 0;
    padding-left: 20px;
    padding-right: 20px;
  }
}

.library-tab .library-links {
  width: 100%;
}

.library-tab .library-links .library-links__link {
  width: 100%;
  display: flex;
  padding: 20px 0;
  border-bottom: 1px solid #DCDCDA;
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
  opacity: 1;
  max-height: 999em;
  transition: .25s ease;
}

@media (max-width: 700px) {
  .library-tab .library-links .library-links__link {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.library-tab .library-links .library-links__link .link-date {
  width: 235px;
  padding-right: 10px;
}

@media (max-width: 600px) {
  .library-tab .library-links .library-links__link .link-date {
    display: none;
  }
}

.library-tab .library-links .library-links__link .link-title {
  padding: 0 15px 0 0;
  flex: 2;
}

.library-tab .library-links .library-links__link .link-file {
  margin-left: auto;
}

.library-tab .library-links .library-links__link .link-file a {
  color: #2B2B2B;
  text-decoration: underline;
}

.library-tab .library-links .library-links__link .link-file a.vimeo-url-link {
  margin-left: 22px;
}

.library-tab .library-links .library-links__link .link-file a:hover {
  text-decoration: none;
}

@media (max-width: 500px) {
  .library-tab .library-links .library-links__link .link-file a span {
    display: none;
  }
}

.library-tab .library-links .library-links__link.library-links__link--hidden {
  opacity: 0;
  max-height: 0;
  font-size: 0;
  padding: 0;
}

.library-tab .library-links .load-more-documents {
  text-decoration: underline;
  font-family: "montserratbold", sans-serif;
  display: block;
  margin: 20px 0 0 0;
  cursor: pointer;
}

@media (max-width: 700px) {
  .library-tab .library-links .load-more-documents {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.page-accordion {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  position: relative;
  margin: 40px 0;
}

.page-accordion.hide-squirrel {
  margin-top: 0;
}

.page-accordion.hide-squirrel:before {
  display: none;
}

.page-accordion .accordion-row {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  background: #ECECEC;
  padding: 28px 86px;
  margin: 0 0 15px 0;
  position: relative;
}

@media (max-width: 768px) {
  .page-accordion .accordion-row {
    padding: 28px 50px 28px 50px;
  }
}

@media (max-width: 700px) {
  .page-accordion .accordion-row {
    padding: 28px 20px 28px 20px;
  }
}

.page-accordion .accordion-row.active, .page-accordion .accordion-row.initial-active {
  border-bottom: 6px solid #DCDCDA;
}

.page-accordion .accordion-row:last-child {
  margin-bottom: 0;
}

.page-accordion .accordion-row .accordion-section-title {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  font-size: 28px;
  line-height: 46px;
  font-family: "montserratregular", sans-serif;
  margin: 0;
  cursor: pointer;
  background: #ECECEC;
}

.page-accordion .accordion-row .accordion-section-title:after {
  content: "";
  display: block;
  width: 36px;
  height: 36px;
  border-radius: 30px;
  background: #574186 url(/sites/all/themes/royalmail/public/build/images/arrow_down.c146e567.png) no-repeat center center;
  background-size: 36px 36px;
  transition: transform .5s;
  position: absolute;
  top: 36px;
  right: 36px;
}

@media (max-width: 700px) {
  .page-accordion .accordion-row .accordion-section-title:after {
    top: 21px;
    right: 16px;
  }
}

.page-accordion .accordion-row .accordion-section-title.active:after, .page-accordion .accordion-row .accordion-section-title.initial-active:after {
  -ms-transform: rotate(180deg);
  /* IE 9 */
  -webkit-transform: rotate(180deg);
  /* Chrome, Safari, Opera */
  transform: rotate(180deg);
}

@media (max-width: 700px) {
  .page-accordion .accordion-row .accordion-section-title {
    font-size: 18px;
    line-height: 25px;
    padding-left: 0;
    padding-right: 35px;
  }
}

.page-accordion .accordion-row .accordion-content {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  display: none;
  padding: 80px 95px 60px 95px;
}

@media (max-width: 768px) {
  .page-accordion .accordion-row .accordion-content {
    padding: 24px 0 0 0;
  }
}

.page-accordion .accordion-row .accordion-content .field-description {
  padding: 0;
}

.page-accordion .accordion-row hr {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  border: none;
  border-top: 6px solid #b69531;
  margin: 0;
}

.page-accordion .accordion-row ul.accordion-documents-list li {
  float: left;
  margin-right: 30px;
  clear: none;
}

.page-accordion .accordion-row ul.accordion-documents-list li a {
  color: #b69531;
}

.page-accordion .accordion-row h3.documents-header {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  font-size: 22px;
  line-height: 25px;
  font-family: "montserratbold", sans-serif;
  margin: 0 0 40px 0;
}

.page-accordion .accordion-row h3.documents-header:before {
  content: "";
  background-color: #3c3c3b;
  height: 1px;
  width: 125px;
  display: block;
  margin-top: 12px;
  margin-bottom: 21px;
  clear: both;
}

.page-documents {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  background: #fff;
  border: 2px solid #574186;
  padding: 50px;
  position: relative;
  margin-bottom: 30px;
  margin-top: 20px;
}

@media (max-width: 767px) {
  .page-documents {
    background-image: none;
  }
}

.page-documents > h2 {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  font-size: 22px;
  line-height: 25px;
  font-family: "montserratbold", sans-serif;
  margin: 0 0 21px 0;
  color: #2B2B2B;
}

.page-documents > h2:after {
  content: "";
  background-color: #fff;
  height: 1px;
  width: 125px;
  display: block;
  margin-top: 21px;
  clear: both;
}

.page-documents .documents-container {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.page-documents .documents-container .documents-row {
  float: left;
  width: 55%;
  padding-right: 36px;
  margin-bottom: 24px;
}

.page-documents .documents-container .documents-row:after {
  content: "";
  background-color: #fff;
  height: 1px;
  width: 125px;
  display: block;
  margin-top: 19px;
  clear: both;
  float: left;
}

@media (max-width: 600px) {
  .page-documents .documents-container .documents-row {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 36px !important;
  }
  .page-documents .documents-container .documents-row:last-child {
    margin-bottom: 0 !important;
  }
}

.page-documents .documents-container .documents-row:nth-child(2n) {
  padding-right: 0;
  width: 45%;
}

@media (max-width: 767px) {
  .page-documents .documents-container .documents-row:nth-child(2n) {
    width: 100%;
  }
}

.page-documents .documents-container .documents-row:nth-child(3), .page-documents .documents-container .documents-row:nth-child(5), .page-documents .documents-container .documents-row:nth-child(7) {
  clear: both;
}

.page-documents .documents-container .documents-row:last-child {
  margin-bottom: 0;
}

.page-documents .documents-container .documents-row:nth-last-child(2) {
  margin-bottom: 0;
}

.page-documents .documents-container h3 {
  font-size: 22px;
  line-height: 25px;
  margin: 0 0 27px 0;
  position: relative;
  color: #2B2B2B;
}

ul.documents-list {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  padding: 0;
  margin: 0;
}

ul.documents-list li {
  margin: 0;
  padding: 0;
  list-style-image: none;
  list-style-type: none;
}

ul.documents-list li {
  float: left;
  clear: both;
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 19px;
}

ul.documents-list li:last-child {
  margin-bottom: 0;
}

ul.documents-list li a {
  display: block;
  color: #2B2B2B;
  position: relative;
  font-family: "montserratbold", sans-serif;
  text-decoration: underline;
}

ul.documents-list li a:hover {
  text-decoration: none;
}

ul.documents-list li .additional-info {
  font-size: 12px;
  line-height: inherit;
  padding-left: 0;
  padding-top: 5px;
  color: #2B2B2B;
}

.view-search .view-content .view-grouping {
  border: 1px solid #ccc;
  padding: 20px;
  margin: 0 0 20px 0;
}

.view-search .view-content .view-grouping .view-grouping-header {
  font-size: 30px;
  margin-bottom: 25px;
}

.view-search .view-content .view-grouping .view-grouping-content > h3 {
  font-size: 18px;
  margin: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
}

.view-search .view-content .view-grouping .view-grouping-content .views-row {
  margin: 4px 0 4px 25px;
}

.royal-search-block {
  float: right;
  width: 217px;
  position: relative;
}

@media (max-width: 700px) {
  .royal-search-block {
    float: left;
    width: 200px;
  }
}

.royal-search-block .block-title {
  display: none;
}

.royal-search-block form {
  width: 100%;
  display: flex;
  align-content: center;
  border-bottom: 2px solid #5F5F5F;
}

.royal-search-block .view-search .view-filters {
  display: none;
}

.royal-search-block .liveSearchInputNew {
  width: 180px;
  border: none;
  margin: 0;
  padding: 10px 5px;
  float: left;
  border-radius: 0;
  font-size: 17px;
  line-height: 20px;
  color: #574186;
  font-family: "montserratbold", sans-serif;
}

@media (max-width: 700px) {
  .royal-search-block .liveSearchInputNew {
    width: 159px;
  }
}

.royal-search-block input::placeholder {
  color: #574186;
}

.royal-search-block .liveSearchSubmitNew {
  width: 41px;
  height: 41px;
  border: none;
  margin: 0;
  padding: 0;
  float: left;
  border-radius: 0;
  background: url(/sites/all/themes/royalmail/public/build/images/search_icon.fb9df60a.svg) center no-repeat;
  background-size: 20px 19px;
  text-indent: -999999px;
}

.royal-search-block .liveSearchResultsNew {
  top: 43px;
  right: 0;
  background: #f2f4f5;
  position: absolute;
  width: 358px;
  z-index: 1001;
  padding: 2px 3px;
  border: #D6D6D6 1px solid;
}

.royal-search-block .liveSearchResultsNew ul {
  width: auto;
}

.royal-search-block .liveSearchResultsNew a {
  color: #b69531;
  font-weight: normal;
  font-family: "montserratlight", sans-serif;
}

.royal-search-block .liveSearchResultsNew a.viewAll {
  color: #000;
}

.royal-search-block .liveSearchResultsNew .views-field-title {
  padding: 2px;
}

.royal-search-block .liveSearchResultsNew .views-field-title:hover {
  background: #E7E7E7;
}

.royal-search-block .liveSearchResultsNew .view-content > h3 {
  color: #000;
  font-family: "montserratlight", sans-serif;
  font-weight: normal;
  background-color: #E7E7E7;
  font-size: 12px;
  margin: 5px 0 5px 0;
  padding: 2px;
}

.royal-search-block .liveSearchResultsNew .view-content > h3 a {
  width: 100%;
  color: #000;
  display: block;
}

.royal-search-block .liveSearchResultsNew .view-content > h3 span {
  float: right;
}

.search-results-v2 {
  margin-top: 20px;
}

.search-results-v2 > h3 {
  clear: both;
  width: 100%;
  margin: 0 0 10px 0;
  display: block;
  position: relative;
  background-color: #002B54;
  padding: 6px 8px;
  color: #FFFFFF;
  font-weight: bold;
  font-size: 13px;
  border-bottom: #E6E9EB 1px solid;
  cursor: pointer;
}

.search-results-v2 .views-row {
  width: 100%;
  margin-bottom: 5px;
  display: flex;
}

.search-results-v2 .views-row .views-field-title {
  margin-right: 3px;
}

.views-search-v2 {
  margin: 50px 0 50px 0;
}

.views-search-v2 .view-empty {
  margin-top: 20px;
}

.live-search-page-filter {
  width: 100%;
  display: flex;
  align-content: center;
  border-bottom: 2px solid #5F5F5F;
  max-width: 320px;
}

.live-search-page-filter .views-exposed-form .views-exposed-widgets {
  margin: 0;
  padding: 0;
  display: flex;
}

.live-search-page-filter .views-exposed-form .views-exposed-widgets .views-exposed-widget {
  margin: 0;
  padding: 0;
  float: none;
}

.live-search-page-filter label {
  display: none;
}

.live-search-page-filter .form-text {
  width: 280px;
  border: none;
  margin: 0;
  padding: 10px 5px;
  float: left;
  border-radius: 0;
  font-size: 17px;
  line-height: 20px;
  color: #574186;
  font-family: "montserratbold", sans-serif;
}

@media (max-width: 700px) {
  .live-search-page-filter .form-text {
    width: 159px;
  }
}

.live-search-page-filter input::placeholder {
  color: #574186;
}

.live-search-page-filter .form-submit {
  width: 41px;
  height: 41px;
  border: none;
  padding: 0;
  float: left;
  border-radius: 0;
  background: url(/sites/all/themes/royalmail/public/build/images/search_icon.fb9df60a.svg) center no-repeat;
  background-size: 20px 19px;
  text-indent: -999999px;
  margin: 0 !important;
}

.dont-know-message {
  max-width: 640px;
}

.dont-know-message a {
  color: inherit;
  text-decoration: underline;
}

#block-block-12, #block-block-11, #block-block-15 {
  min-width: 200px;
  font-size: 17px;
  line-height: 20px;
  float: left;
}

@media (max-width: 1110px) {
  #block-block-12, #block-block-11, #block-block-15 {
    min-width: 200px;
  }
}

@media (max-width: 1010px) {
  #block-block-12, #block-block-11, #block-block-15 {
    margin-top: 0;
    float: none;
  }
}

@media (max-width: 700px) {
  #block-block-12, #block-block-11, #block-block-15 {
    display: none;
  }
}

#block-block-12 .block-content p, #block-block-11 .block-content p, #block-block-15 .block-content p {
  margin-bottom: 0;
}

#block-block-12 .block-content a, #block-block-11 .block-content a, #block-block-15 .block-content a {
  color: #3c3c3b;
  display: block;
  padding: 8px 10px 8px 20px;
  background-color: #e2ab6e;
  font-family: "montserratregular", sans-serif;
}

#block-block-12 .block-content a:after, #block-block-11 .block-content a:after, #block-block-15 .block-content a:after {
  content: "e";
  font-family: "royal-mail";
  color: #000;
  display: block;
  background-color: #fff;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  width: 22px;
  height: 22px;
  float: right;
  margin-top: 0;
  font-size: 22px;
  line-height: 22px;
  padding-left: 1px;
}

#block-block-12 .block-content a:hover, #block-block-11 .block-content a:hover, #block-block-15 .block-content a:hover {
  color: #fff;
}

#block-block-11 .block-content a {
  background-color: #98c992;
}

#block-block-15 .block-content a {
  background-color: #beafcf;
}

#searchResults {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

#searchResults .search {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin: 0 0 10px 0;
}

#searchResults .groupDiv {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 5px;
}

#searchResults .search-item {
  margin-bottom: 5px;
}

#searchResults .search-item a {
  color: #000;
  text-decoration: none;
}

.block-small {
  padding: 0;
  background-color: #55b463;
}

.block-small a.block-small-link {
  display: block;
  overflow: hidden;
}

.block-small a.block-small-link * {
  color: #3C3C3B;
}

.block-small a.block-small-link:hover * .read-more-btn .default-button {
  text-decoration: underline;
}

.block-small a.block-small-link:hover * .read-more-btn .default-button:after {
  content: "";
  background: transparent url(/sites/all/themes/royalmail/public/build/images/arrow_black32x32.97d754f7.png) no-repeat scroll 0 0;
}

.block-small h2.block-title {
  font-family: "montserratbold", sans-serif;
  font-size: 30px;
  line-height: 33px;
  margin: 0 0 5px 0;
}

.block-small .block-content {
  margin-bottom: 20px;
}

.block-small .read-more-btn span, .block-small .read-more-btn a {
  color: inherit;
  font-size: 17px;
  display: block;
}

.block-small .read-more-btn span:after, .block-small .read-more-btn a:after {
  content: "e";
  font-family: "royal-mail";
  color: #000;
  display: block;
  background-color: #fff;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  width: 36px;
  height: 36px;
  float: right;
  margin-top: -10px;
  font-size: 30px;
  line-height: 36px;
  padding-left: 3px;
}

.interactive-accordion .accordion-row .accordion-section-title {
  background-color: #55b463;
}

.interactive-accordion .accordion-row .accordion-content {
  padding: 0;
  position: relative;
  overflow: hidden;
}

.interactive-accordion .accordion-row .accordion-content .scoll-content {
  position: relative;
  overflow: scroll;
  float: left;
  width: 100%;
}

.interactive-accordion .accordion-row .accordion-content .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.6);
  display: none;
  text-align: left;
  color: #fff;
  font-size: 25px;
  text-align: center;
  padding-top: 50px;
}

.interactive-accordion .accordion-row .accordion-content .overlay:after {
  content: "f";
  font-weight: normal;
  font-family: "royal-mail";
  color: #fff;
  font-size: 60px;
  line-height: 60px;
  clear: both;
  display: block;
  margin-top: 25px;
}

@media (max-width: 1024px) {
  .interactive-accordion .accordion-row .accordion-content .overlay {
    display: block;
  }
}

.interactive-accordion .accordion-row .accordion-content .field-description {
  padding: 24px 34px;
}

.interactive-accordion .accordion-row hr {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  border: none;
  border-top: 6px solid #44904f;
  margin: 0;
}

.interactive-accordion .tooltip-explanation {
  font-family: "montserratbold", sans-serif;
  margin-top: 30px;
}

.interactive-accordion .tooltip-explanation:before {
  content: "";
  background: transparent url(/sites/all/themes/royalmail/public/build/images/marker.7bfd4b61.png) no-repeat;
  width: 30px;
  height: 38px;
  display: block;
  float: left;
  margin: -6px 15px 0 0;
}

.interactive-accordion .interactive-image {
  position: relative;
  float: left;
}

.interactive-accordion .interactive-image .marker {
  background: transparent url(/sites/all/themes/royalmail/public/build/images/marker.7bfd4b61.png) no-repeat;
  width: 30px;
  height: 38px;
  display: block;
  top: 0;
  left: 0;
  cursor: pointer;
}

.interactive-accordion .interactive-image .marker .marker-description {
  display: none;
  background-color: #f0553b;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  padding: 25px;
  width: 375px;
  color: #fff;
  font-size: 14px;
  line-height: 25px;
  position: absolute;
}

.interactive-accordion .interactive-image .marker .marker-description:after {
  content: "";
  width: 65px;
  width: 100%;
  height: 40px;
  display: block;
  background: transparent url(/sites/all/themes/royalmail/public/build/images/merker-popup-arrow.ebe347c6.png) no-repeat right 70px bottom 14px;
  position: absolute;
  bottom: -40px;
}

.interactive-accordion .interactive-image .marker .marker-description.pos-right:after {
  background: transparent url(/sites/all/themes/royalmail/public/build/images/merker-popup-arrow.ebe347c6.png) no-repeat left 20px bottom 14px;
}

.page-blocks {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin-top: 15px;
}

.page-blocks .kolab-blocks-container {
  display: flex;
  flex-wrap: wrap;
}

.page-blocks .kolab-blocks-container .page-block {
  width: 49.14463%;
  float: left;
  margin-right: 1.71073%;
  min-height: 120px;
  overflow: hidden;
}

.page-blocks .kolab-blocks-container .page-block:nth-child(2n) {
  float: right;
  margin-right: 0;
}

@media (max-width: 700px) {
  .page-blocks .kolab-blocks-container .page-block {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
}

.page-blocks .kolab-blocks-container .page-block a {
  color: inherit;
  text-decoration: underline;
}

.page-blocks .kolab-blocks-container .page-block a:hover {
  text-decoration: none;
}

.page-blocks .kolab-blocks-container .page-block .absolute-content {
  padding: 25px 25px 25px 25px;
  bottom: initial;
  top: 0;
}

.page-blocks .kolab-blocks-container .page-block .block-content {
  margin-bottom: 0;
  position: relative;
  word-break: break-word;
}

@media (max-width: 700px) {
  .page-blocks .kolab-blocks-container .page-block .block-content p br {
    content: " ";
    display: none;
  }
}

.page-blocks .kolab-blocks-container .page-block .block-content p:last-child {
  margin-bottom: 0;
}

.page-blocks .kolab-blocks-container .page-block .content-block-image {
  position: absolute;
  bottom: 0;
  right: 0;
}

@media (max-width: 480px) {
  .page-blocks .kolab-blocks-container .page-block {
    min-height: 0;
  }
  .page-blocks .kolab-blocks-container .page-block .content-block-image {
    display: none;
  }
  .page-blocks .kolab-blocks-container .page-block .absolute-content {
    position: static;
  }
}

.block-revslider > .block-title {
  display: none;
}

#block-kolab-royal-kolab-royal-static-hero {
  position: relative;
}

#block-kolab-royal-kolab-royal-static-hero .description p {
  font-size: 25px;
  max-width: 400px;
}

@media (max-width: 480px) {
  #block-kolab-royal-kolab-royal-static-hero .description h2.h2-large {
    font-size: 25px;
  }
  #block-kolab-royal-kolab-royal-static-hero .description p {
    font-size: 17px;
  }
}

#block-kolab-royal-kolab-royal-static-hero .slider-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
}

#block-kolab-royal-kolab-royal-static-hero .bg-pattern {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

@media (max-width: 1600px) {
  #block-kolab-royal-kolab-royal-static-hero .bg-pattern {
    display: none;
  }
}

#block-kolab-royal-kolab-royal-static-hero .display-table {
  display: table;
  height: 100%;
  width: 100%;
}

#block-kolab-royal-kolab-royal-static-hero .display-cell {
  display: table-cell;
  vertical-align: middle;
  padding-bottom: 20px;
  padding-left: 20px;
  padding-right: 20px;
}

#block-kolab-royal-kolab-royal-static-hero .hero-static-image {
  margin: 0 auto;
  z-index: 2;
  position: relative;
}

@media (max-width: 1600px) {
  #block-kolab-royal-kolab-royal-static-hero .hero-static-image {
    width: 100%;
    height: auto;
  }
}

@media (max-width: 960px) {
  #block-kolab-royal-kolab-royal-static-hero .block-content {
    overflow: hidden;
  }
  #block-kolab-royal-kolab-royal-static-hero .hero-static-image {
    position: relative;
    left: -50%;
    top: 0px;
    height: 100%;
    width: auto;
  }
}

@media (max-width: 800px) {
  #block-kolab-royal-kolab-royal-static-hero .hero-static-image {
    left: -70%;
  }
}

@media (max-width: 600px) {
  #block-kolab-royal-kolab-royal-static-hero .hero-static-image {
    height: 200px;
    left: -30%;
  }
}

@media (max-width: 480px) {
  #block-kolab-royal-kolab-royal-static-hero .hero-static-image {
    left: -65%;
  }
  #block-kolab-royal-kolab-royal-static-hero:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    z-index: 1;
  }
  #block-kolab-royal-kolab-royal-static-hero .display-cell {
    padding-bottom: 0;
    background-color: rgba(255, 255, 255, 0.7);
  }
}

@media (max-width: 330px) {
  #block-kolab-royal-kolab-royal-static-hero .hero-static-image {
    left: -100%;
  }
}

#block-kolab-royal-kolab-royal-hero-slider {
  position: relative;
  overflow: hidden;
}

@media (max-width: 950px) {
  #block-kolab-royal-kolab-royal-hero-slider {
    height: 820px;
  }
}

@media (max-width: 900px) {
  #block-kolab-royal-kolab-royal-hero-slider {
    height: auto;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .image {
  position: relative;
  z-index: 1;
}

#block-kolab-royal-kolab-royal-hero-slider .slider-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@media (max-width: 900px) {
  #block-kolab-royal-kolab-royal-hero-slider .slider-wrapper.info-blocks {
    position: relative;
    z-index: 2;
  }
  #block-kolab-royal-kolab-royal-hero-slider .slider-wrapper.info-blocks .block-small {
    position: relative;
    margin: 20px auto;
  }
}

@media (max-width: 480px) {
  #block-kolab-royal-kolab-royal-hero-slider .slider-wrapper.info-blocks .inside {
    width: 100%;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .bg-pattern {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

@media (max-width: 1600px) {
  #block-kolab-royal-kolab-royal-hero-slider .bg-pattern {
    display: none;
  }
}

@media (max-width: 1600px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    position: relative;
    max-width: none;
    height: auto;
  }
}

@media (max-width: 1520px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    margin-left: -3em;
    margin-right: -3em;
  }
}

@media (max-width: 1420px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    margin-left: -6em;
    margin-right: -6em;
  }
}

@media (max-width: 1320px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    margin-left: -9em;
    margin-right: -9em;
  }
}

@media (max-width: 1200px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    margin-left: -12em;
    margin-right: -12em;
  }
}

@media (max-width: 1100px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    margin-left: -16em;
    margin-right: -16em;
  }
}

@media (max-width: 950px) {
  #block-kolab-royal-kolab-royal-hero-slider .image {
    margin-left: -18em;
    margin-right: -18em;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .image .hero-slider-image {
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}

#block-kolab-royal-kolab-royal-hero-slider .container {
  max-width: 1286px;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
}

#block-kolab-royal-kolab-royal-hero-slider .container:after {
  content: " ";
  display: block;
  clear: both;
}

#block-kolab-royal-kolab-royal-hero-slider .inside {
  margin: 0 auto;
  position: relative;
  width: 83.04821%;
  height: 100%;
}

@media (max-width: 950px) {
  #block-kolab-royal-kolab-royal-hero-slider .inside {
    height: 820px;
  }
}

@media (max-width: 900px) {
  #block-kolab-royal-kolab-royal-hero-slider .inside {
    height: auto;
  }
}

@media (max-width: 460px) {
  #block-kolab-royal-kolab-royal-hero-slider .inside {
    width: 100%;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .speach-buble {
  position: absolute;
  height: auto;
  width: 377px;
  background: #a796c7 none;
  left: 0;
  top: 35px;
  padding: 33px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
}

#block-kolab-royal-kolab-royal-hero-slider .speach-buble h2 {
  font-size: 44px;
  line-height: 1em;
  margin-bottom: 0.5em;
}

#block-kolab-royal-kolab-royal-hero-slider .speach-buble > div {
  font-size: 23px;
  line-height: 1.1em;
}

@media (max-width: 550px) {
  #block-kolab-royal-kolab-royal-hero-slider .speach-buble {
    width: 100%;
  }
  #block-kolab-royal-kolab-royal-hero-slider .speach-buble h2 {
    font-size: 30px;
  }
  #block-kolab-royal-kolab-royal-hero-slider .speach-buble > div {
    font-size: 16px;
    line-height: 1.1em;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .speach-buble:after {
  content: "";
  border-style: solid;
  border-width: 0 52px 52px 0;
  border-color: transparent #a796c7 transparent;
  height: 52px;
  width: 52px;
  position: absolute;
  bottom: -52px;
  left: 132px;
}

#block-kolab-royal-kolab-royal-hero-slider .slide-item {
  width: 100%;
}

#block-kolab-royal-kolab-royal-hero-slider .block-small {
  width: 350px;
  height: 242px;
  position: absolute;
  top: 20px;
  right: 0;
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  -moz-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  -webkit-box-shadow: 0 8px 6px -6px black;
  -moz-box-shadow: 0 8px 6px -6px black;
  box-shadow: 0 8px 6px -6px black;
}

@media (max-width: 950px) {
  #block-kolab-royal-kolab-royal-hero-slider .block-small {
    top: auto;
    bottom: 0;
  }
  #block-kolab-royal-kolab-royal-hero-slider .block-small.block-slider-1 {
    left: 0;
    right: 0;
  }
}

@media (max-width: 390px) {
  #block-kolab-royal-kolab-royal-hero-slider .block-small {
    width: 100%;
    height: 250px;
    background-size: cover;
  }
  #block-kolab-royal-kolab-royal-hero-slider .block-small h2 {
    font-size: 20px;
    line-height: 25px;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .block-small.block-slider-2 {
  top: 290px;
}

@media (max-width: 950px) {
  #block-kolab-royal-kolab-royal-hero-slider .block-small.block-slider-2 {
    top: auto;
    bottom: 0;
  }
}

#block-kolab-royal-kolab-royal-hero-slider .block-small > a {
  text-decoration: none;
  height: 150px;
  width: 100%;
  overflow: hidden;
  float: left;
}

#block-kolab-royal-kolab-royal-hero-slider .block-small .absolute-content {
  position: absolute;
  padding: 30px;
  bottom: 0px;
  width: 100%;
  color: #fff;
}

#block-kolab-royal-kolab-royal-hero-slider .block-small h2 {
  padding-right: 30%;
  color: #fff;
}

#block-kolab-royal-kolab-royal-hero-slider .block-small .block-content {
  font-size: 14px;
  padding-right: 30%;
  color: #fff;
}

#block-kolab-royal-kolab-royal-hero-slider .block-small .read-more-btn {
  color: #fff;
  font-family: "montserratbold", sans-serif;
}

#block-kolab-royal-kolab-royal-hero-slider .slider-nav {
  position: absolute;
  width: 100%;
  top: 235px;
  left: 0px;
  z-index: 101;
}

#block-kolab-royal-kolab-royal-hero-slider .slider-nav span {
  height: 55px;
  width: 30px;
  display: block;
  background: url(/sites/all/themes/royalmail/public/build/images/arrow-right.5b1d9fd0.png) no-repeat 0 0;
  float: right;
  cursor: pointer;
  text-indent: -9999px;
}

#block-kolab-royal-kolab-royal-hero-slider .slider-nav span.prev {
  background-image: url(/sites/all/themes/royalmail/public/build/images/arrow-left.8b4e421e.png);
  float: left;
}

.news-list-one {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 15px;
}

.news-list-one .node-teaser_2 {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  border-bottom: 6px solid #377d42;
}

.news-list-one .node-teaser_2 .time {
  width: 32.19285%;
  float: left;
  margin-right: 1.71073%;
  background-color: #98c992;
  font-size: 22px;
  line-height: 25px;
  font-family: "montserratbold", sans-serif;
  padding: 16px 20px 14px 20px;
  color: #3c3c3b;
  text-transform: uppercase;
}

@media (max-width: 700px) {
  .news-list-one .node-teaser_2 .time {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    display: inline-block;
    text-align: center;
  }
}

@media (max-width: 950px) {
  .news-list-one .node-teaser_2 .time time {
    display: block;
    clear: both;
    margin-top: 0px;
  }
}

@media (max-width: 700px) {
  .news-list-one .node-teaser_2 .time time {
    clear: none;
    display: inline;
  }
}

.news-list-one .node-teaser_2 .time span {
  color: #3c3c3b;
  margin-right: 0;
  text-transform: uppercase;
}

.news-list-one .node-teaser_2 .content {
  width: 66.09642%;
  float: right;
  margin-right: 0;
  background-color: #ececec;
  padding: 0;
  position: relative;
}

@media (max-width: 700px) {
  .news-list-one .node-teaser_2 .content {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
    text-align: center;
    padding-right: 0;
  }
}

.news-list-one .node-teaser_2 .content:before {
  content: "";
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ececec;
  left: -50px;
  z-index: -1;
}

.news-list-one .node-teaser_2 .content h2 {
  margin-bottom: 0;
  font-size: 22px;
  line-height: 25px;
  font-family: "montserratlight", sans-serif;
}

.news-list-one .node-teaser_2 .content h2 a {
  color: #3c3c3b;
  padding: 15px 15px 15px 0px;
  position: relative;
  display: block;
}

@media (max-width: 700px) {
  .news-list-one .node-teaser_2 .content h2 a {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.news-list-one .node-teaser_2 .content h2 a:after {
  content: "e";
  font-family: "royal-mail";
  color: #000;
  display: block;
  background-color: #fff;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  width: 36px;
  height: 36px;
  float: right;
  margin-top: -4px;
  font-size: 30px;
  line-height: 36px;
  padding-left: 3px;
}

@media (max-width: 700px) {
  .news-list-one .node-teaser_2 .content h2 a:after {
    display: none;
  }
}

.news-list-one .node-teaser_2 .content h2 a:hover {
  text-decoration: underline;
}

.news-list-one .node-teaser_2 .content h2 a:hover:after {
  content: "";
  background: transparent url(/sites/all/themes/royalmail/public/build/images/arrow_black32x32.97d754f7.png) no-repeat scroll 0 0;
}

.block-revslider p {
  font-size: 25px;
  line-height: 28px;
}

#sliding-popup {
  height: 130px !important;
}

#sliding-popup #popup-text a {
  color: #fff;
  text-decoration: underline;
}

#sliding-popup .popup-content {
  padding: 0 20px;
}

#sliding-popup .popup-content #popup-text {
  margin: 10px 0;
}

@media (max-width: 1360px) {
  #sliding-popup {
    height: 150px !important;
  }
}

@media (max-width: 1060px) {
  #sliding-popup {
    height: auto !important;
  }
  #sliding-popup .popup-content {
    width: 100%;
  }
  #sliding-popup .popup-content #popup-text, #sliding-popup .popup-content #popup-buttons {
    float: none;
    max-width: 100%;
  }
}

#kolab-modeller-ab-form, #kolab-modeller-c-form {
  position: relative;
}

#kolab-modeller-ab-form fieldset.form-wrapper, #kolab-modeller-c-form fieldset.form-wrapper {
  position: relative;
}

.popup-marker {
  width: 15px;
  height: 19px;
  display: inline-block;
  background: url(/sites/all/themes/royalmail/public/build/images/marker-small.b12bab70.png) no-repeat;
  margin: 0 0px 0 5px;
  top: 4px;
  cursor: pointer;
  z-index: 1;
}

.popup-marker.active {
  z-index: 3;
}

.popup-marker.active .popup-marker-image {
  display: block;
}

.popup-marker .popup-marker-image {
  position: absolute;
  max-width: 650px;
  display: none;
  z-index: 2;
  top: 59px;
}

.page-node-112 .page-documents, .page-node-132 .page-documents, .page-node-192 .page-documents {
  margin-top: 30px;
}

#overlay-survey {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000;
  opacity: 0.3;
  z-index: 100;
}

#sidebar-box-survey {
  z-index: 101;
  position: fixed;
  cursor: pointer;
  top: 50%;
  right: 0;
  margin-top: -81px;
  background: url(/sites/all/themes/royalmail/public/build/images/small-cta.10cec2e2.png) no-repeat;
  width: 95px;
  height: 162px;
}

#popup_survey {
  position: fixed;
  top: 50%;
  margin-top: -215px;
  left: 50%;
  margin-left: -365px;
  z-index: 101;
  width: 730px;
  height: 430px;
  background: url(/sites/all/themes/royalmail/public/build/images/survey-bg.f765972c.png);
  padding: 30px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
}

@media (max-width: 990px) {
  #popup_survey {
    width: 600px;
    margin-left: -300px;
  }
}

@media (max-width: 767px) {
  #popup_survey {
    width: 300px;
    margin-left: -150px;
    padding: 20px;
    background: #e0f1f4;
    height: auto;
    position: absolute;
  }
}

#popup_survey #popup_survey-inner {
  position: relative;
  height: 100%;
}

#popup_survey #popup_survey-inner:before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 120px;
  background: url(/sites/all/themes/royalmail/public/build/images/squireel.82b5d725.png) no-repeat;
  width: 307px;
  height: 219px;
}

@media (max-width: 767px) {
  #popup_survey #popup_survey-inner:before {
    display: none;
  }
}

#popup_survey .box {
  width: 315px;
  padding: 20px;
  overflow: hidden;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  background: #532580;
}

@media (max-width: 767px) {
  #popup_survey .box {
    width: 260px;
  }
}

#popup_survey .box h2 {
  font-size: 26px;
  color: #fff;
  line-height: 1em;
  margin: 0;
}

#popup_survey .box p {
  font-size: 16px;
  color: #fff;
}

#popup_survey .box a {
  color: #fff;
  font-size: 17px;
  float: left;
  display: block;
}

#popup_survey .box a:before {
  content: "e";
  font-family: "royal-mail";
  color: #000;
  display: block;
  background-color: #fff;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  width: 36px;
  height: 36px;
  float: right;
  margin-top: -10px;
  font-size: 30px;
  line-height: 36px;
  padding-left: 3px;
  margin-left: 10px;
}

#popup_survey .star {
  position: absolute;
  top: -140px;
  right: -155px;
  background: url(/sites/all/themes/royalmail/public/build/images/star.63559044.png) no-repeat;
  width: 408px;
  height: 387px;
}

@media (max-width: 990px) {
  #popup_survey .star {
    right: -195px;
  }
}

@media (max-width: 850px) {
  #popup_survey .star {
    background-size: contain;
    right: -114px;
    top: -80px;
    width: 308px;
    height: 287px;
  }
}

@media (max-width: 767px) {
  #popup_survey .star {
    position: static;
    width: 260px;
    margin-top: 10px;
  }
}

#popup_survey .star .star-inner {
  padding: 40px 80px;
}

@media (max-width: 850px) {
  #popup_survey .star .star-inner {
    padding: 10px 60px;
  }
}

#popup_survey .star .star-inner p {
  margin: 0;
  line-height: 1em;
  text-align: center;
  color: #010101;
}

#popup_survey .star .star-inner p.first {
  font-size: 14px;
  border-bottom: 1px solid #010101;
  margin-top: 20px;
  padding: 20px;
}

#popup_survey .star .star-inner p.second {
  font-size: 22px;
  border-bottom: 1px solid #010101;
  padding: 20px 0;
}

#popup_survey .star .star-inner p.third {
  padding-top: 18px;
  font-size: 24px;
}

@media (max-width: 850px) {
  #popup_survey .star .star-inner p.first {
    font-size: 12px;
  }
  #popup_survey .star .star-inner p.second, #popup_survey .star .star-inner p.third {
    font-size: 15px;
  }
}

@media (max-width: 767px) {
  #popup_survey .star .star-inner p.first {
    margin-top: 20px;
    padding: 10px;
  }
  #popup_survey .star .star-inner p.second {
    padding: 10px 0;
  }
  #popup_survey .star .star-inner p.third {
    padding-top: 10px;
  }
}

#popup_survey .close {
  position: absolute;
  bottom: 0;
  right: 0;
}

#popup_survey .close a {
  color: #010101;
}

#popup_survey .close a:before {
  content: "g";
  font-family: "royal-mail";
  color: #000;
  display: block;
  background-color: #fff;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  width: 36px;
  height: 36px;
  float: right;
  margin-top: -10px;
  font-size: 30px;
  line-height: 36px;
  padding-left: 3px;
  margin-left: 10px;
}

/**
 * Exceptions
 */
.page-node-65 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-title, .page-node-65 #block-kolab-royal-kolab-royal-hero-slider .block-slider-2 .block-title, .page-node-66 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-title, .page-node-66 #block-kolab-royal-kolab-royal-hero-slider .block-slider-2 .block-title, .page-node-172 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-title, .page-node-172 #block-kolab-royal-kolab-royal-hero-slider .block-slider-2 .block-title {
  font-size: 19px;
  line-height: 21px;
}

.page-node-65 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-content, .page-node-65 #block-kolab-royal-kolab-royal-hero-slider .block-slider-2 .block-content, .page-node-66 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-content, .page-node-66 #block-kolab-royal-kolab-royal-hero-slider .block-slider-2 .block-content, .page-node-172 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-content, .page-node-172 #block-kolab-royal-kolab-royal-hero-slider .block-slider-2 .block-content {
  margin-bottom: 20px;
}

.page-node-65 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-content, .page-node-66 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-content, .page-node-172 #block-kolab-royal-kolab-royal-hero-slider .block-slider-1 .block-content {
  padding-right: 35%;
}

body.has-second-level-menu {
  padding: 142px 0 0 0;
}

@media (max-width: 930px) {
  body.has-second-level-menu {
    padding: 68px 0 0 0;
  }
}

body.has-second-level-menu #header-wrapper {
  box-shadow: none;
  border-bottom: none;
}

#header-wrapper {
  background-color: #fff;
  padding-top: 24px;
  padding-bottom: 22px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
  border-bottom: 2px solid #574186;
  position: fixed;
  z-index: 11;
  top: 0;
  width: 100%;
}

@media (max-width: 930px) {
  #header-wrapper {
    padding: 10px 20px 13px 20px;
    height: 70px;
  }
}

#header-wrapper .container {
  display: flex;
  align-items: center;
}

@media (max-width: 1310px) {
  #header-wrapper .container {
    padding-left: 20px;
    padding-right: 20px;
    height: 100%;
  }
}

@media (max-width: 930px) {
  #header-wrapper .container {
    padding-left: 0;
    padding-right: 0;
  }
}

#header-wrapper a.logo {
  float: left;
  width: 23.71695%;
  float: left;
  margin-right: 1.71073%;
}

#header-wrapper a.logo img {
  max-width: 210px;
  height: auto;
}

@media (max-width: 700px) {
  #header-wrapper a.logo img {
    max-width: 165px;
  }
}

#header-wrapper .region-header {
  width: 74.57232%;
  float: right;
  margin-right: 0;
  display: flex;
}

#header-wrapper .region-header #block-menu-block-4 {
  flex: 1;
}

@media (max-width: 930px) {
  #header-wrapper .region-header {
    display: none;
  }
}

body.front #menu-wrapper-sticky #menu-wrapper {
  height: 100%;
}

body.front #menu-wrapper-sticky #menu-wrapper > .container {
  height: 100%;
}

@media (max-width: 700px) {
  body.front #menu-wrapper-sticky .block-fp-livesearch .liveSearchResults {
    bottom: initial;
    top: 40px;
  }
}

#menu-wrapper-sticky {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
  border-bottom: 2px solid #574186;
  z-index: 10;
  position: fixed;
  width: 100%;
  top: 92px;
}

#menu-wrapper-sticky .block-fp-livesearch {
  display: none;
}

@media (max-width: 930px) {
  #menu-wrapper-sticky .block-fp-livesearch {
    display: block;
    margin: 20px auto 0 auto;
    float: none;
  }
}

@media (max-width: 700px) {
  #menu-wrapper-sticky .block-fp-livesearch .liveSearchResults {
    bottom: 41px;
    right: 0;
    top: initial;
    left: -79px;
  }
}

@media (max-width: 360px) {
  #menu-wrapper-sticky .block-fp-livesearch .liveSearchResults {
    max-width: 320px;
    left: -60px;
  }
}

#menu-wrapper-sticky {
  background: #fff;
}

@media (max-width: 930px) {
  #menu-wrapper-sticky {
    display: block;
    position: fixed;
    top: 69px;
    z-index: 10;
    width: 100%;
    height: calc(100% - 70px);
    transition: transform 0.4s;
    transform: translate3d(-102%, 0, 0);
    padding: 0;
    overflow: scroll;
  }
  #menu-wrapper-sticky.sticky {
    transform: translate3d(0, 0, 0);
    transition: transform 0.8s;
  }
}

#menu-wrapper #block-menu-block-5 .menu-block-wrapper > ul {
  justify-content: flex-start;
}

#menu-wrapper #block-menu-block-5 .menu-block-wrapper > ul > li {
  margin: 0;
}

#menu-wrapper .menu-block-wrapper ul {
  padding: 0;
  margin: 0;
}

#menu-wrapper .menu-block-wrapper ul li {
  margin: 0;
  padding: 0;
  list-style-image: none;
  list-style-type: none;
}

#menu-wrapper .menu-block-wrapper ul li {
  font-size: 18px;
  line-height: 22px;
  letter-spacing: -0.45px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  padding: 0 10px;
}

#menu-wrapper .menu-block-wrapper span.mobile-arrow {
  display: none;
}

#menu-wrapper .menu-block-wrapper > ul {
  position: relative;
  display: flex;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul {
    flex-direction: column;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li {
  padding: 0 30px;
  margin: 0 auto;
  position: relative;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li {
    width: 100%;
    background-color: #574186;
    border-bottom: 1px solid #fff;
    text-align: left;
    z-index: 0;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li.expanded {
  position: relative;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li.expanded > a {
    width: 100%;
    display: block;
  }
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li.expanded > span.mobile-arrow {
    display: block;
    width: 40px;
    height: 48px;
    background-image: url(/sites/all/themes/royalmail/public/build/images/arrow_menu_down.ec253597.svg);
    background-size: 12px 20px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 3;
    float: left;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li.active-trail, #menu-wrapper .menu-block-wrapper > ul > li:hover {
  background-color: #574186;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li.active-trail, #menu-wrapper .menu-block-wrapper > ul > li:hover {
    background-color: #7259A8;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li.active-trail > a, #menu-wrapper .menu-block-wrapper > ul > li:hover > a {
  color: #fff;
}

#menu-wrapper .menu-block-wrapper > ul > li.active-trail > a.active-trail, #menu-wrapper .menu-block-wrapper > ul > li:hover > a.active-trail {
  text-decoration: none;
  font-family: "montserratbold", sans-serif;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li.active-trail > ul, #menu-wrapper .menu-block-wrapper > ul > li:hover > ul {
    background-color: #7259A8;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li:hover > ul {
  display: block;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li:hover > ul {
    display: none;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li > a {
  color: #000;
  display: block;
  padding: 13px 0;
  text-align: center;
  position: relative;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li > a {
    color: #fff;
    text-align: left;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li > a.active-trail {
  text-decoration: underline;
}

#menu-wrapper .menu-block-wrapper > ul > li > a:hover {
  text-decoration: underline;
}

#menu-wrapper .menu-block-wrapper > ul > li > ul {
  display: none;
  position: absolute;
  z-index: 100;
  width: auto;
  min-width: 394px;
  background-color: #574186;
  padding: 25px 25px 0 30px;
  border-top: 2px solid #574186;
  left: 0;
}

@media (max-width: 930px) {
  #menu-wrapper .menu-block-wrapper > ul > li > ul {
    position: static;
    border-top: none;
    min-width: 0;
    float: left;
    padding: 10px 5px 0 10px;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li > ul:after {
  content: "";
  height: 25px;
  width: 100%;
  background-color: #574186;
  position: absolute;
  display: block;
  left: 0;
  bottom: 0;
}

@media (max-width: 960px) {
  #menu-wrapper .menu-block-wrapper > ul > li > ul:after {
    display: none;
  }
}

#menu-wrapper .menu-block-wrapper > ul > li > ul > li {
  margin-bottom: 25px;
  padding: 0;
  position: relative;
  text-align: left;
}

#menu-wrapper .menu-block-wrapper > ul > li > ul > li > a {
  color: #fff;
}

#menu-wrapper .menu-block-wrapper > ul > li > ul > li > a:hover, #menu-wrapper .menu-block-wrapper > ul > li > ul > li > a.active-trail {
  text-decoration: underline;
}

body.admin-menu #menu-wrapper.sticky {
  top: 29px;
}

#block-menu-block-4 {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

#block-menu-block-4 ul {
  padding: 0;
  margin: 0;
  height: 100%;
}

#block-menu-block-4 ul li {
  margin: 0;
  padding: 0;
  list-style-image: none;
  list-style-type: none;
}

#block-menu-block-4 ul li {
  float: left;
  margin-right: 35px;
}

#block-menu-block-4 ul li a {
  font-family: "montserratregular", sans-serif;
  color: #5F5F5F;
  font-size: 16px;
  line-height: 21px;
  text-decoration: underline;
}

#block-menu-block-4 ul li a:hover {
  text-decoration: none;
}

.liveSearch > label {
  display: none;
}

#block-fp-livesearch-fp-livesearch-searchbox, .fullSearchBox, .block-fp-livesearch {
  float: right;
  width: 217px;
  position: relative;
}

@media (max-width: 700px) {
  #block-fp-livesearch-fp-livesearch-searchbox, .fullSearchBox, .block-fp-livesearch {
    float: left;
    width: 200px;
  }
}

#block-fp-livesearch-fp-livesearch-searchbox .block-title, .fullSearchBox .block-title, .block-fp-livesearch .block-title {
  display: none;
}

#block-fp-livesearch-fp-livesearch-searchbox form, .fullSearchBox form, .block-fp-livesearch form {
  width: 100%;
  display: flex;
  align-content: center;
  border-bottom: 2px solid #5F5F5F;
}

#block-fp-livesearch-fp-livesearch-searchbox .liveSearchInput, #block-fp-livesearch-fp-livesearch-searchbox .search-input, .fullSearchBox .liveSearchInput, .fullSearchBox .search-input, .block-fp-livesearch .liveSearchInput, .block-fp-livesearch .search-input {
  width: 180px;
  border: none;
  margin: 0;
  padding: 10px 5px;
  float: left;
  border-radius: 0;
  font-size: 17px;
  line-height: 20px;
  color: #574186;
  font-family: "montserratbold", sans-serif;
}

@media (max-width: 700px) {
  #block-fp-livesearch-fp-livesearch-searchbox .liveSearchInput, #block-fp-livesearch-fp-livesearch-searchbox .search-input, .fullSearchBox .liveSearchInput, .fullSearchBox .search-input, .block-fp-livesearch .liveSearchInput, .block-fp-livesearch .search-input {
    width: 159px;
  }
}

#block-fp-livesearch-fp-livesearch-searchbox input::placeholder, .fullSearchBox input::placeholder, .block-fp-livesearch input::placeholder {
  color: #574186;
}

#block-fp-livesearch-fp-livesearch-searchbox .liveSearchSubmit, #block-fp-livesearch-fp-livesearch-searchbox .search-submit, .fullSearchBox .liveSearchSubmit, .fullSearchBox .search-submit, .block-fp-livesearch .liveSearchSubmit, .block-fp-livesearch .search-submit {
  width: 41px;
  height: 41px;
  border: none;
  margin: 0;
  padding: 0;
  float: left;
  border-radius: 0;
  background: url(/sites/all/themes/royalmail/public/build/images/search_icon.fb9df60a.svg) center no-repeat;
  background-size: 20px 19px;
  text-indent: -999999px;
}

#block-fp-livesearch-fp-livesearch-searchbox .liveSearchResults, .fullSearchBox .liveSearchResults, .block-fp-livesearch .liveSearchResults {
  top: 41px;
  right: 0;
}

#block-fp-livesearch-fp-livesearch-searchbox .liveSearchResults ul, .fullSearchBox .liveSearchResults ul, .block-fp-livesearch .liveSearchResults ul {
  width: auto;
}

#block-fp-livesearch-fp-livesearch-searchbox .liveSearchResults a, .fullSearchBox .liveSearchResults a, .block-fp-livesearch .liveSearchResults a {
  color: #b69531;
  font-weight: normal;
}

#block-fp-livesearch-fp-livesearch-searchbox .liveSearchResults a.viewAll, .fullSearchBox .liveSearchResults a.viewAll, .block-fp-livesearch .liveSearchResults a.viewAll {
  color: #000;
}

.fullSearchBox {
  float: left;
  width: 400px;
  margin-bottom: 20px;
}

.fullSearchBox .search-input {
  width: 359px;
}

.hamburger {
  display: none;
  top: 0;
  left: 0;
  float: right;
  margin: 0 0 0 auto;
  padding: 0;
  cursor: pointer;
  z-index: 99999;
  align-items: center;
}

@media (max-width: 930px) {
  .hamburger {
    display: flex;
  }
}

.hamburger .resp-title {
  font-size: 12px;
  line-height: 15px;
  color: #522580;
  margin-right: 5px;
  display: block;
}

.hamburger .hamburger-inner {
  position: relative;
  height: 24px;
  width: 38px;
  display: block;
  margin: 0;
  padding: 0;
}

@media (max-width: 924px) {
  .hamburger .hamburger-inner {
    display: inline-block;
    vertical-align: middle;
  }
}

.hamburger .bar {
  width: 38px;
  height: 4px;
  background: #522580;
  position: absolute;
  top: 0;
  opacity: 1;
  border-radius: 10px;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

.hamburger .bar.bar2,
.hamburger .bar.bar3 {
  top: 9px;
}

.hamburger .bar.bar4 {
  top: 18px;
}

.field-title-section, .title-section-wrapper {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  padding: 0 0 23px 0;
  position: relative;
  float: none;
  margin: 0 auto 0 auto;
}

@media (max-width: 767px) {
  .field-title-section, .title-section-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.field-title-section a, .title-section-wrapper a {
  color: inherit;
  text-decoration: underline;
}

.field-title-section a:hover, .title-section-wrapper a:hover {
  text-decoration: none;
}

.field-title-section p:last-child, .title-section-wrapper p:last-child {
  margin-bottom: 0;
}

.node-type-section {
  background-color: #fff;
}

.node-type-section .page-title-subtitle-wrapper {
  background-color: #ececec;
}

.node-type-section #title-wrapper {
  padding: 76px 0 15px 0;
  position: relative;
}

@media (max-width: 768px) {
  .node-type-section #title-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .node-type-section #title-wrapper {
    padding: 46px 20px 25px 20px;
  }
}

.node-type-section #title-wrapper:before {
  left: -100%;
}

.node-type-section #title-wrapper:after {
  right: -100%;
}

.node-type-section #title-wrapper h1#page-title {
  font-size: 34px;
  line-height: 56px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  margin: 0 auto;
  text-transform: none;
}

@media (max-width: 700px) {
  .node-type-section #title-wrapper h1#page-title {
    font-size: 34px;
    line-height: 44px;
  }
}

.node-type-section .title-section-wrapper {
  padding-bottom: 76px;
  max-width: 845px;
  margin: 0 auto;
}

@media (max-width: 1310px) {
  .node-type-section .title-section-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .node-type-section .title-section-wrapper {
    padding-bottom: 46px;
  }
}

.node-type-section .title-section-wrapper:after {
  left: initial;
  right: -100%;
}

.node-type-section #node-content {
  padding: 0;
  position: relative;
}

.node-type-section #node-content > .region-content {
  display: flex;
  width: 100%;
  flex-direction: column;
}

body.html.node-type-section {
  background-color: #fff;
}

body.html.page-node-236 {
  background-color: #fff;
}

body.html.page-node-236 #content-after {
  margin-top: 80px;
}

.node-type-section-page #title-wrapper {
  padding: 70px 0 15px 0;
  position: relative;
  max-width: 845px;
  margin: 0 auto;
}

@media (max-width: 1310px) {
  .node-type-section-page #title-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .node-type-section-page #title-wrapper {
    padding: 50px 20px 15px 20px;
  }
}

.node-type-section-page #title-wrapper h1#page-title {
  font-size: 34px;
  line-height: 56px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  margin: 0 auto;
  text-transform: none;
  color: #000000;
}

@media (max-width: 700px) {
  .node-type-section-page #title-wrapper h1#page-title {
    font-size: 34px;
    line-height: 44px;
  }
}

.node-type-section-page .title-section-wrapper {
  padding: 0 0 70px 0;
  font-size: 18px;
  line-height: 25px;
  max-width: 845px;
  margin: 0 auto;
}

@media (max-width: 1310px) {
  .node-type-section-page .title-section-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .node-type-section-page .title-section-wrapper {
    padding: 0 20px 30px 20px;
  }
}

.node-type-section-page .title-section-wrapper p {
  font-size: 18px;
  line-height: 25px;
}

@media (max-width: 767px) {
  .node-type-section-page #main-wrapper .container {
    padding-left: 0;
    padding-right: 0;
  }
}

.node-type-section-page #node-content {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.node-type-section-page .content-video-reference {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}

.node-type-section-page .content-video-reference:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 330px;
  background-color: inherit;
}

.node-type-section-page .content-video-reference:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 330px;
  background-color: inherit;
}

.node-type-section-page .content-main-image {
  max-width: 1065px;
  margin: 0 auto;
  position: relative;
}

.node-type-section-page .content-main-image:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 330px;
  background-color: inherit;
}

.node-type-section-page .content-main-image:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 330px;
  background-color: inherit;
}

.node-type-section-page .content-main-image img {
  max-width: 100%;
  height: auto;
  display: block;
}

.node-type-section-page .field-name-body, .node-type-section-page .content > .field-description {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  padding: 55px 0 55px 0;
  position: relative;
  max-width: 845px;
  float: none;
  margin: 0 auto;
  background: #fff;
}

.node-type-section-page .field-name-body:before, .node-type-section-page .content > .field-description:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

.node-type-section-page .field-name-body:after, .node-type-section-page .content > .field-description:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

@media (max-width: 767px) {
  .node-type-section-page .field-name-body, .node-type-section-page .content > .field-description {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.node-type-section-page .field-name-body p:last-child, .node-type-section-page .content > .field-description p:last-child {
  margin-bottom: 0;
}

.page-title-subtitle-wrapper {
  position: relative;
}

.page-title-subtitle-wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

.page-title-subtitle-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

.node-news.node-teaser .red-promoted-block__banner {
  background-repeat: no-repeat;
}

.node-news.node-teaser .content .news-title {
  color: #fff;
  font-size: 34px;
  line-height: 42px;
  font-family: "montserratregular", sans-serif;
  margin: 0 0 10px 0;
  max-width: 355px;
}

@media (max-width: 700px) {
  .node-news.node-teaser .content .news-title {
    margin: 0 0 30px 0;
  }
}

.node-news.node-teaser .content .news-title a {
  color: #fff;
  text-decoration: none;
}

.node-news.node-teaser .content .news-date {
  margin: 0 0 40px 0;
  display: block;
}

.node-news.node-teaser .content .news-description {
  color: #fff;
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
  margin: 0 0 30px 0;
}

.node-news.node-teaser .content .news-description p:last-child {
  margin-bottom: 0;
}

.node-news.node-teaser .content a.view-article {
  color: #fff;
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratbold", sans-serif;
  text-decoration: underline;
}

.node-news.node-short {
  width: 100%;
  padding: 0 0 55px 0;
  margin: 0 0 55px 0;
  border-bottom: 1px solid #979797;
}

.node-news.node-short:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.node-news.node-short .content > h2 {
  text-align: center;
  font-size: 34px;
  line-height: 46px;
  font-family: "montserratbold", sans-serif;
  color: #000000;
  margin: 0 0 22px 0;
}

@media (max-width: 700px) {
  .node-news.node-short .content > h2 {
    font-size: 22px;
    line-height: 36px;
  }
}

.node-news.node-short time {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 22px;
  line-height: 22px;
  font-family: "montserratregular", sans-serif;
  color: #000000;
  margin: 0 0 50px 0;
}

.node-news.node-short .field-description {
  font-size: 18px;
  line-height: 25px;
  font-family: "montserratregular", sans-serif;
}

.node-video.node-short {
  width: 100%;
  max-width: 300px;
  margin: 0 5px;
  cursor: pointer;
}

@media (max-width: 700px) {
  .node-video.node-short {
    margin: 15px 0 15px 0;
    max-width: 100%;
    display: flex;
  }
}

.node-video.node-short .field-name-field-viemo-url {
  height: 167px;
  position: relative;
}

@media (max-width: 700px) {
  .node-video.node-short .field-name-field-viemo-url {
    width: 40%;
    height: 83px;
  }
}

.node-video.node-short .field-name-field-viemo-url .field-item {
  display: flex;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
  vertical-align: middle;
  overflow: hidden;
  z-index: 1;
  position: absolute;
  top: 0;
}

.node-video.node-short .field-name-field-viemo-url img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 700px) {
  .node-video.node-short .video-info {
    width: 60%;
    padding-left: 30px;
  }
}

.node-video.node-short .video-title {
  font-size: 16px;
  line-height: 24px;
  font-family: "montserratbold", sans-serif;
  margin: 15px 0 0 0;
}

@media (max-width: 700px) {
  .node-video.node-short .video-title {
    margin: 0;
    line-height: 22px;
  }
}

.node-video.node-short .video-duration {
  font-size: 16px;
  line-height: 24px;
  color: #B5B6B5;
  font-family: "montserratregular", sans-serif;
}

.node-video.node-teaser {
  width: 100%;
}

.node-video.node-teaser .field-name-field-viemo-url {
  width: 100%;
  position: relative;
}

.node-video.node-teaser .player {
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
  height: 0;
}

.node-video.node-teaser .player iframe {
  left: 0;
  top: 0;
  height: 100% !important;
  width: 100% !important;
  position: absolute;
}

.node-video.node-teaser .video-info {
  width: 100%;
  background: #BEAFCF;
  border-bottom: 6px solid #574186;
  padding: 15px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media (max-width: 700px) {
  .node-video.node-teaser .video-info {
    padding: 15px 20px;
  }
}

.node-video.node-teaser .video-title {
  font-size: 18px;
  line-height: 24px;
  font-family: "montserratbold", sans-serif;
  margin: 0;
}

.node-video.node-teaser .video-duration {
  font-size: 18px;
  line-height: 22px;
  color: #3C3C3B;
  font-family: "montserratregular", sans-serif;
}

.fancybox-content .video-info {
  width: 100%;
  background: #BEAFCF;
  border-bottom: 6px solid #574186;
  padding: 15px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media (max-width: 700px) {
  .fancybox-content .video-info {
    padding: 15px 20px;
  }
}

.fancybox-content .video-title {
  font-size: 18px;
  line-height: 24px;
  font-family: "montserratbold", sans-serif;
  margin: 0;
}

.fancybox-content .video-duration {
  font-size: 18px;
  line-height: 22px;
  color: #3C3C3B;
  font-family: "montserratregular", sans-serif;
}

.node-type-page #title-wrapper {
  padding: 70px 0 15px 0;
  position: relative;
  max-width: 845px;
  margin: 0 auto;
}

@media (max-width: 1310px) {
  .node-type-page #title-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .node-type-page #title-wrapper {
    padding: 50px 20px 15px 20px;
  }
}

.node-type-page #title-wrapper h1#page-title {
  font-size: 34px;
  line-height: 56px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  margin: 0 auto;
  text-transform: none;
  color: #000000;
}

@media (max-width: 700px) {
  .node-type-page #title-wrapper h1#page-title {
    font-size: 34px;
    line-height: 44px;
  }
}

.node-type-page .title-section-wrapper {
  padding: 0 0 70px 0;
  font-size: 18px;
  line-height: 25px;
  max-width: 845px;
  margin: 0 auto;
}

@media (max-width: 1310px) {
  .node-type-page .title-section-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 700px) {
  .node-type-page .title-section-wrapper {
    padding: 0 20px 30px 20px;
  }
}

.node-type-page .title-section-wrapper p {
  font-size: 18px;
  line-height: 25px;
}

.node-type-page.page-node-218 {
  background-color: #fff;
}

.node-type-page.page-node-218 .page-title-subtitle-wrapper {
  position: relative;
  background-color: #C31D32;
}

.node-type-page.page-node-218 .page-title-subtitle-wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

.node-type-page.page-node-218 .page-title-subtitle-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

.node-type-page.page-node-218 .page-title-subtitle-wrapper #title-wrapper #page-title, .node-type-page.page-node-218 .page-title-subtitle-wrapper .title-section-wrapper {
  color: #fff;
}

.node-type-page.page-node-218 #block-block-19 .red-promoted-block__banner:before {
  display: none;
}

.node-type-page.page-node-218 #block-block-19 .red-promoted-block__content:after {
  display: none;
}

#block-kolab-news-kolab-news {
  width: 100%;
  background-color: #fff;
  max-width: 1060px;
  padding: 80px 108px;
  position: relative;
  margin: 0 auto;
}

#block-kolab-news-kolab-news:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 320px;
  background-color: #C31D32;
}

#block-kolab-news-kolab-news:after {
  content: "";
  position: absolute;
  top: 0;
  right: -100%;
  width: 100%;
  height: 320px;
  background-color: #C31D32;
}

@media (max-width: 700px) {
  #block-kolab-news-kolab-news {
    padding: 50px 20px;
  }
}

#block-kolab-news-kolab-news #load-more {
  margin: 0 auto;
  float: none;
  display: block;
  width: 206px;
}

.page-node-220 .region-content .red-promoted-block {
  margin: 40px 0 50px 0;
}

.page-node-220 #content-after .red-promoted-block {
  display: none;
}

#block-kolab-royal-kolab-royal-subsaction-subpages {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  padding-top: 15px;
}

#block-kolab-royal-kolab-royal-subsaction-subpages > .block-content {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

#block-kolab-royal-kolab-royal-section-subpages > .block-content {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media (max-width: 900px) {
  #block-kolab-royal-kolab-royal-section-subpages > .block-content {
    justify-content: space-between;
  }
}

.block-subpage {
  width: 32.19285%;
  float: left;
  margin-right: 1.71073%;
  min-height: 120px;
  margin-bottom: 15px;
  position: relative;
  padding: 0;
}

.block-subpage:nth-child(3n) {
  float: right;
  margin-right: 0;
}

@media (max-width: 900px) {
  .block-subpage {
    width: 49.14463%;
    float: left;
    margin-right: 1.71073%;
  }
  .block-subpage:nth-child(3n) {
    float: left;
  }
  .block-subpage:nth-child(2n) {
    float: right;
    margin-right: 0;
    float: right;
  }
}

@media (max-width: 700px) {
  .block-subpage {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
}

.block-subpage .absolute-content {
  position: static;
  padding: 20px 20px 15px 20px;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.block-subpage .absolute-content > .block-content {
  flex-grow: 1;
}

.block-subpage h2.block-title {
  margin-bottom: 12px;
  font-size: 22px;
  line-height: 25px;
}

.block-subpage .block-content {
  font-size: 16px;
  line-height: 19px;
  font-family: "montserratlight", sans-serif;
}

.block-subpage .read-more-btn span, .block-subpage .read-more-btn a {
  font-size: 16px;
  font-family: "montserratbold", sans-serif;
  position: relative;
}

.block-subpage a.block-small-link {
  text-decoration: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  float: left;
}

.block-subpage a.block-small-link * {
  color: #3c3c3b;
}

.block-subpage.node-squirrel {
  float: right;
  margin-right: 0;
  background: transparent none;
  position: relative;
}

.block-subpage.node-squirrel:before {
  content: "";
  width: 156px;
  height: 166px;
  background: transparent url(/sites/all/themes/royalmail/public/build/images/squirrel.6e4cf974.png) no-repeat scroll 0% 0%;
  background-size: 156px 166px;
  display: block;
  position: absolute;
  bottom: 5px;
  right: 5px;
  z-index: 1;
}

@media (max-width: 900px) {
  .block-subpage.node-squirrel {
    display: none;
  }
}

body.block-scroll {
  overflow: hidden;
}

.mg-popup {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  background: rgba(33, 33, 33, 0.4);
  transform: translateY(60%) scale(0);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mg-popup.visible {
  transform: translateY(0) scale(1);
  z-index: 999999;
}

.mg-popup .mg-popup-inner {
  width: 100%;
  max-width: 630px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 30px;
  max-height: 95%;
  overflow: auto;
}

.mg-popup .mg-popup-inner * > :last-child {
  margin-bottom: 0;
}

.mg-popup .close {
  display: block;
  position: absolute;
  right: 30px;
  top: 20px;
  background-color: #fff;
  border: 1px solid #ccc;
  width: 40px;
  height: 40px;
  text-align: center;
  cursor: pointer;
  border-radius: 30px;
  padding: 3px;
  background: #fff url(/sites/all/themes/royalmail/public/build/images/close.51669f06.svg) no-repeat center;
}

#feedback-modal .block-title {
  font-size: 22px;
  line-height: 26px;
  font-weight: normal;
  font-family: "montserratlight", sans-serif;
  border-bottom: 1px solid #CDCDCD;
  padding: 0 0 20px 0;
}

#feedback-modal .block-webform .links {
  display: none;
}

#feedback-modal .messages {
  margin: 0 0 20px 0;
}

#feedback-modal .messages li {
  margin: 0 0 5px 0;
}

form.webform-client-form {
  font-family: "montserratlight", sans-serif;
  font-size: 21px;
  line-height: 26px;
  color: #434343;
  /* For IE <= 11 */
}

form.webform-client-form > div > .form-item {
  margin: 0 0 25px 0;
  display: flex;
  flex-direction: column;
}

form.webform-client-form .form-checkboxes > .form-item {
  margin: 10px 0;
}

form.webform-client-form .form-checkboxes > .form-item label {
  position: relative;
  padding-left: 30px;
}

form.webform-client-form .form-item.radio-column .form-radios {
  flex-direction: column;
}

form.webform-client-form .form-item.radio-column .form-radios .form-item {
  margin: 10px 0;
}

form.webform-client-form .form-item.radio-column .form-radios .form-item label {
  position: relative;
  padding-left: 35px;
}

form.webform-client-form .form-item.form-type-radio label {
  position: relative;
  padding-left: 30px;
}

form.webform-client-form .webform-component > label {
  margin: 0 0 17px 0;
  font-weight: normal;
}

form.webform-client-form .webform-component > label .form-required {
  color: #434343;
}

form.webform-client-form label.option {
  display: block;
}

form.webform-client-form textarea {
  max-width: 100%;
  border: 2px solid #BEAFCF;
  padding: 10px;
}

form.webform-client-form .webform-component-select .form-select {
  width: 100%;
}

form.webform-client-form .webform-component-radios .form-radios {
  display: flex;
}

form.webform-client-form .webform-component-radios .form-radios .form-item {
  margin: 0 25px 0 0;
}

form.webform-client-form .form-actions {
  text-align: center;
  margin: 20px 0 0 0;
}

form.webform-client-form .form-actions input {
  background: #574186;
  border: 1px solid #574186;
  color: #fff;
  font-size: 18px;
  line-height: 32px;
  letter-spacing: -0.5px;
  font-family: "montserratregular", sans-serif;
  text-align: center;
  padding: 10px 20px;
  min-width: 213px;
  display: inline-block;
  transition: 0.5s;
  color: #fff;
  background-color: #574186;
  border: 1px solid #574186;
}

form.webform-client-form .select-multiple-wrapper select {
  height: auto;
  overflow: auto;
  padding: 0;
}

form.webform-client-form select {
  width: 100%;
  height: 50px;
  font-size: 100%;
  font-weight: normal;
  cursor: pointer;
  border-radius: 0;
  background-color: #fff;
  border: none;
  border: 2px solid #BEAFCF;
  color: #434343;
  appearance: none;
  padding: 10px 15px;
  padding-right: 38px;
  -webkit-appearance: none;
  -moz-appearance: none;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}

form.webform-client-form select option {
  padding: 10px 15px;
}

form.webform-client-form select option:hover {
  background: #EFE8FD;
  color: #434343;
}

form.webform-client-form select option:checked {
  background: #EFE8FD linear-gradient(0deg, #EFE8FD 0%, #EFE8FD 100%);
  color: #434343;
}

form.webform-client-form select::-ms-expand {
  display: none;
}

form.webform-client-form select:hover,
form.webform-client-form select:focus {
  background-color: white;
  border-color: #BEAFCF;
}

form.webform-client-form input[type="checkbox"] {
  display: none;
}

form.webform-client-form input[type="checkbox"] + label:before {
  content: '';
  display: block;
  position: static;
  border-radius: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border: 2px solid #434343;
  transition: background-color 0.3s linear;
  margin: 0 10px -2px 0;
  cursor: pointer;
  position: absolute;
  left: 0;
  top: 3px;
}

form.webform-client-form input[type="checkbox"]:checked + label:before {
  background-image: url(/sites/all/themes/royalmail/public/build/images/check.5487e206.svg);
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-position: center;
}

form.webform-client-form input[type="radio"] {
  display: none;
}

form.webform-client-form input[type="radio"] + label:after {
  content: '';
  display: block;
  position: static;
  border-radius: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border: 2px solid #434343;
  transition: background-color 0.3s linear;
  margin: 2px 10px 0 0;
  cursor: pointer;
  border-radius: 100px;
  position: absolute;
  left: 0;
  top: 2px;
}

form.webform-client-form input[type="radio"]:checked + label:after {
  background-image: url(/sites/all/themes/royalmail/public/build/images/check.5487e206.svg);
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-position: center;
}

#feedback-icon {
  position: fixed;
  z-index: 999;
  right: 0;
  bottom: 0;
  width: 400px;
  height: 400px;
  cursor: pointer;
  background: transparent;
  transform: translateY(440px);
}

@media (max-width: 1024px) {
  #feedback-icon {
    width: 300px;
    height: 300px;
    transform: translateY(340px);
  }
}

@media (max-width: 767px) {
  #feedback-icon {
    width: 200px;
    height: 200px;
    transform: translateY(240px);
  }
}

#feedback-icon img {
  max-width: 100%;
  height: auto;
  display: block;
}

#feedback-icon .feedback-s-icon.feedback-s-icon-animation {
  display: none;
}

#feedback-icon.cbutton--click {
  animation-name: anim-move;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

#feedback-icon .feedback-icon-close {
  display: block;
  position: absolute;
  right: 10px;
  top: -10px;
  background-color: #fff;
  border: 1px solid #ccc;
  width: 30px;
  height: 30px;
  text-align: center;
  cursor: pointer;
  border-radius: 30px;
  padding: 3px;
  background: #fff url(/sites/all/themes/royalmail/public/build/images/close.51669f06.svg) no-repeat center;
}

.cbutton::after {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -35px 0 0 -35px;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  content: '';
  opacity: 0;
  pointer-events: none;
}

.cbutton--effect-jagoda::before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  content: '';
  opacity: 0;
  pointer-events: none;
}

.cbutton--effect-jagoda::after {
  margin: -25px 0 0 -25px;
  width: 50px;
  height: 50px;
}

.cbutton--effect-jagoda::before,
.cbutton--effect-jagoda::after {
  box-shadow: 0 0 0 2px rgba(111, 148, 182, 0.5);
}

.cbutton--effect-jagoda.cbutton--click::before,
.cbutton--effect-jagoda.cbutton--click::after {
  animation-name: anim-effect-jagoda-2, anim-effect-jagoda-1;
  animation-duration: 1.2s;
  animation-iteration-count: 5;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

.cbutton--effect-jagoda.cbutton--click::after {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@keyframes anim-move {
  0% {
    transform: translateY(100px);
  }
  100% {
    transform: translateY(0px);
  }
}

@keyframes anim-effect-jagoda-1 {
  0%, 100% {
    opacity: 0;
  }
  40%, 60% {
    opacity: 1;
  }
}

@keyframes anim-effect-jagoda-2 {
  0% {
    -webkit-transform: scale3d(0.5, 0.5, 1);
    transform: scale3d(0.5, 0.5, 1);
  }
  100% {
    -webkit-transform: scale3d(1.4, 1.4, 1);
    transform: scale3d(1.4, 1.4, 1);
  }
}

.sbHolder {
  background-color: #ffffff;
  border: 0;
  font-family: "montserratbold", sans-serif;
  font-size: 16px;
  font-weight: normal;
  height: 40px;
  position: relative;
  width: 100%;
  color: #000000;
  display: block;
  float: left;
}

.sbSelector {
  display: block;
  height: 40px;
  left: 0;
  line-height: 40px;
  outline: none;
  overflow: hidden;
  position: absolute;
  text-indent: 10px;
  top: 0;
  width: 100%;
}

.sbSelector:link, .sbSelector:visited, .sbSelector:hover {
  color: #000000;
  outline: none;
  text-decoration: none;
}

.sbToggle {
  background: #e3ba3d url(/sites/all/themes/royalmail/public/build/images/select-icons.74cbe8bd.png) center 0 no-repeat;
  display: block;
  height: 40px;
  outline: none;
  position: absolute;
  right: 0;
  z-index: 1;
  top: 0;
  width: 40px;
}

.sbToggle:hover {
  background: #e3ba3d url(/sites/all/themes/royalmail/public/build/images/select-icons.74cbe8bd.png) center -40px no-repeat;
}

.sbToggleOpen {
  background: #e3ba3d url(/sites/all/themes/royalmail/public/build/images/select-icons.74cbe8bd.png) center -40px no-repeat;
}

.sbHolderDisabled {
  background-color: #cfcfcf;
}

.sbHolderDisabled .sbToggle:hover {
  background: #e3ba3d url(/sites/all/themes/royalmail/public/build/images/select-icons.74cbe8bd.png) center 0 no-repeat;
}

.sbOptions {
  background-color: #ffffff;
  border: 0;
  list-style: none;
  left: -1px;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 30px;
  width: 200px;
  z-index: 2;
  overflow-y: auto;
}

.sbOptions li {
  padding: 0 7px;
}

.sbOptions a {
  border-bottom: dotted 1px #515151;
  display: block;
  outline: none;
  padding: 7px 0 7px 3px;
}

.sbOptions a:link, .sbOptions a:visited {
  color: #000000;
  text-decoration: none;
}

.sbOptions a:hover,
.sbOptions a:focus,
.sbOptions a.sbFocus {
  color: #e3ba3d;
}

.sbOptions li.last a {
  border-bottom: none;
}

.sbOptions .sbDisabled {
  border-bottom: dotted 1px #515151;
  color: #999;
  display: block;
  padding: 7px 0 7px 3px;
}

.sbOptions .sbGroup {
  border-bottom: dotted 1px #515151;
  color: #EBB52D;
  display: block;
  font-weight: bold;
  padding: 7px 0 7px 3px;
}

.sbOptions .sbSub {
  padding-left: 17px;
}

.page-node-116 .section-type-title, .page-node-100 .section-type-title {
  font-family: "montserratbold", sans-serif;
  text-align: center;
  margin: 20px 0;
}

.page-node-116 ::-webkit-input-placeholder, .page-node-100 ::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #000;
}

.page-node-116 :-moz-placeholder, .page-node-100 :-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #000;
  opacity: 1;
}

.page-node-116 ::-moz-placeholder, .page-node-100 ::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #000;
  opacity: 1;
}

.page-node-116 :-ms-input-placeholder, .page-node-100 :-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #000;
}

.page-node-116 *, .page-node-100 * {
  outline: none;
}

.page-node-116 #block-kolab-modeller-kolab-modeller-c, .page-node-116 #block-kolab-modeller-kolab-modeller-ab, .page-node-100 #block-kolab-modeller-kolab-modeller-c, .page-node-100 #block-kolab-modeller-kolab-modeller-ab {
  margin-bottom: 120px;
}

.page-node-116 #result-modeller, .page-node-100 #result-modeller {
  background: #e3ba3d;
  float: left;
  width: 100%;
  border-bottom: 5px solid #b69531;
  position: relative;
}

.page-node-116 #result-modeller:before, .page-node-100 #result-modeller:before {
  content: "";
  position: absolute;
  bottom: 50px;
  right: 20px;
  width: 178px;
  height: 170px;
  background: url(/sites/all/themes/royalmail/public/build/images/squirrel-result.d57c3e88.png) no-repeat 0 0;
}

.page-node-116 #result-modeller #result-modeller-inner, .page-node-100 #result-modeller #result-modeller-inner {
  padding: 40px 0;
  max-width: 640px;
  min-height: 240px;
  margin: 0 auto;
  overflow: hidden;
}

.page-node-116 #result-modeller #result-modeller-inner h2, .page-node-100 #result-modeller #result-modeller-inner h2 {
  font-family: "montserratregular", sans-serif;
  font-size: 30px;
  color: #fff;
  margin: 0 0 20px 0;
  line-height: 1em;
}

.page-node-116 #result-modeller #result-modeller-inner h3, .page-node-100 #result-modeller #result-modeller-inner h3 {
  font-family: "montserratregular", sans-serif;
  font-size: 20px;
  color: #fff;
  margin: 0 0 5px 0;
  line-height: 1em;
}

.page-node-116 #result-modeller #result-modeller-inner .result-box, .page-node-100 #result-modeller #result-modeller-inner .result-box {
  background: #fff;
  float: left;
  width: 100%;
  padding: 20px;
  margin-bottom: 10px;
  line-height: 1em;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  font-size: 24px;
  color: #b69531;
}

.page-node-116 #result-modeller #result-modeller-inner .result-box strong, .page-node-100 #result-modeller #result-modeller-inner .result-box strong {
  font-weight: normal;
  font-family: "montserratbold", sans-serif;
}

.page-node-116 fieldset, .page-node-100 fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  background-color: #ececec;
}

.page-node-116 fieldset > legend, .page-node-100 fieldset > legend {
  background: #e3ba3d;
  padding: 20px 20px;
  width: 100%;
  font-size: 22px;
  font-family: "montserratbold", sans-serif;
  font-weight: normal;
}

.page-node-116 fieldset fieldset > legend, .page-node-100 fieldset fieldset > legend {
  background: none;
  padding: 0;
  display: block;
  float: left;
  font-size: 16px;
  font-weight: normal;
  font-family: "montserratlight", sans-serif;
  line-height: 40px;
  padding-right: 20px;
}

.page-node-116 fieldset fieldset .fieldset-wrapper, .page-node-100 fieldset fieldset .fieldset-wrapper {
  padding: 0;
}

.page-node-116 fieldset > .fieldset-wrapper, .page-node-100 fieldset > .fieldset-wrapper {
  float: left;
  width: 100%;
  padding: 30px 20px;
}

.page-node-116 fieldset #edit-submit-button, .page-node-100 fieldset #edit-submit-button {
  clear: both;
  display: block;
  font-size: 24px;
  text-transform: uppercase;
  font-family: "montserratregular", sans-serif;
  width: 260px;
  margin: 0 auto;
  padding: 10px 56px 10px 20px;
  background: #e3ba3d url(/sites/all/themes/royalmail/public/build/images/button-icon.d99fb354.png) no-repeat center right;
  border: 0;
}

.page-node-116 fieldset #edit-submit-button.error-custom, .page-node-100 fieldset #edit-submit-button.error-custom {
  background-color: #ff0000;
}

.page-node-116 #edit-potential-service, .page-node-100 #edit-potential-service {
  float: left;
}

.page-node-116 #edit-about-your-pension .fieldset-wrapper > .form-item, .page-node-100 #edit-about-your-pension .fieldset-wrapper > .form-item {
  width: 49.14463%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #edit-about-your-pension .fieldset-wrapper > .form-item:nth-child(2n), .page-node-100 #edit-about-your-pension .fieldset-wrapper > .form-item:nth-child(2n) {
  width: 49.14463%;
  float: right;
  margin-right: 0;
}

.page-node-116 #edit-calculate-pension, .page-node-100 #edit-calculate-pension {
  background: #ececec url(/sites/all/themes/royalmail/public/build/images/squirrel.f6de4d36.png) no-repeat bottom left;
  padding: 0 0 150px 0;
  border-bottom: 5px solid #b69531;
}

.page-node-116 .form-item, .page-node-100 .form-item {
  margin: 0 0 50px 0;
  float: left;
  min-width: 115px;
  display: block;
}

.page-node-116 .form-item .form-item, .page-node-100 .form-item .form-item {
  margin: 0;
}

.page-node-116 .form-item label, .page-node-100 .form-item label {
  display: block;
  float: left;
  font-size: 16px;
  font-weight: normal;
  font-family: "montserratlight", sans-serif;
  line-height: normal;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-right: 20px;
  padding-top: 11px;
  width: 70%;
}

.page-node-116 .form-item input, .page-node-100 .form-item input {
  background: #e3ba3d;
  color: #000;
  font-family: "montserratbold", sans-serif;
  font-size: 16px;
  border: 0;
  padding: 10px;
  float: left;
  width: auto;
  text-align: right;
  width: 30%;
  border-radius: 0;
}

.page-node-116 .form-item.form-type-date-select label, .page-node-116 .form-item.form-type-select label, .page-node-100 .form-item.form-type-date-select label, .page-node-100 .form-item.form-type-select label {
  width: 100%;
  line-height: 1em;
  padding-top: 0;
}

.page-node-116 .form-item.form-type-date-select .form-item.form-type-select label, .page-node-116 .form-item.form-type-select .form-item.form-type-select label, .page-node-100 .form-item.form-type-date-select .form-item.form-type-select label, .page-node-100 .form-item.form-type-select .form-item.form-type-select label {
  display: none;
}

.page-node-116 .container-inline-date, .page-node-100 .container-inline-date {
  clear: none;
}

.page-node-116 .container-inline-date > .form-item, .page-node-100 .container-inline-date > .form-item {
  display: block;
  margin-bottom: 30px;
}

.page-node-116 .container-inline-date .date-padding, .page-node-100 .container-inline-date .date-padding {
  width: 100%;
  padding: 0;
}

.page-node-116 .container-inline-date .date-month, .page-node-100 .container-inline-date .date-month {
  width: 100%;
  float: left;
}

.page-node-116 .container-inline-date .date-day, .page-node-100 .container-inline-date .date-day {
  width: 100%;
  float: left;
}

.page-node-116 .container-inline-date .date-year, .page-node-100 .container-inline-date .date-year {
  width: 100%;
  float: left;
}

.page-node-116 .container-inline-date .form-item.form-type-select, .page-node-100 .container-inline-date .form-item.form-type-select {
  margin-right: 20px;
  padding-bottom: 20px;
}

.page-node-116 .error-custom, .page-node-100 .error-custom {
  position: relative;
}

.page-node-116 .error-custom span.error, .page-node-100 .error-custom span.error {
  position: absolute;
  bottom: -20px;
  right: 0;
  width: auto;
  font-size: 11px;
  min-width: 140px;
  text-align: right;
  color: #ff0000;
}

.page-node-116 .error-custom .sbSelector, .page-node-116 .error-custom input, .page-node-100 .error-custom .sbSelector, .page-node-100 .error-custom input {
  background: #ff0000;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-birth, .page-node-100 #kolab-modeller-c-form .form-item.form-item-birth {
  width: 49.14463%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-gender, .page-node-100 #kolab-modeller-c-form .form-item.form-item-gender {
  width: 49.14463%;
  float: right;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-gender span.error, .page-node-100 #kolab-modeller-c-form .form-item.form-item-gender span.error {
  right: auto;
  left: 0;
  min-width: 200px;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-gender .sbHolder, .page-node-100 #kolab-modeller-c-form .form-item.form-item-gender .sbHolder {
  max-width: 200px;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-state-pension-age, .page-node-100 #kolab-modeller-c-form .form-item.form-item-state-pension-age {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-state-pension-age .about-link, .page-node-100 #kolab-modeller-c-form .form-item.form-item-state-pension-age .about-link {
  color: #b69531;
  text-decoration: underline;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-state-pension-age span.error, .page-node-100 #kolab-modeller-c-form .form-item.form-item-state-pension-age span.error {
  right: auto;
  left: 0;
  min-width: 200px;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-state-pension-age .sbHolder, .page-node-100 #kolab-modeller-c-form .form-item.form-item-state-pension-age .sbHolder {
  max-width: 200px;
}

.page-node-116 #kolab-modeller-c-form .form-item-csdb-pension-at, .page-node-100 #kolab-modeller-c-form .form-item-csdb-pension-at {
  width: 32.19285%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-csdb-supplement-at, .page-node-100 #kolab-modeller-c-form .form-item.form-item-csdb-supplement-at {
  width: 40.66874%;
  float: right;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-joined-scheme, .page-node-100 #kolab-modeller-c-form .form-item.form-item-joined-scheme {
  width: 49.14463%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-nrd-65, .page-node-100 #kolab-modeller-c-form .form-item.form-item-nrd-65 {
  width: 49.14463%;
  float: right;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-yy, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-yy {
  margin-right: 20px;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-yy input, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-yy input {
  width: 50px;
  float: left;
}

.page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-dd input, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-dd input {
  width: 60px;
}

.page-node-116 #kolab-modeller-c-form .form-item-start-pension span.error, .page-node-100 #kolab-modeller-c-form .form-item-start-pension span.error {
  right: auto;
  left: 0;
  min-width: 200px;
}

.page-node-116 #kolab-modeller-c-form .form-item-start-pension .sbHolder, .page-node-100 #kolab-modeller-c-form .form-item-start-pension .sbHolder {
  max-width: 200px;
}

.page-node-116 #kolab-modeller-c-form .messages.error, .page-node-116 #kolab-modeller-c-form .success, .page-node-116 #kolab-modeller-c-form .info, .page-node-116 #kolab-modeller-c-form .notice, .page-node-100 #kolab-modeller-c-form .messages.error, .page-node-100 #kolab-modeller-c-form .success, .page-node-100 #kolab-modeller-c-form .info, .page-node-100 #kolab-modeller-c-form .notice {
  padding: 0;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-birth, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-birth {
  width: 49.14463%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-gender, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-gender {
  width: 49.14463%;
  float: right;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-gender span.error, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-gender span.error {
  right: auto;
  left: 0;
  min-width: 200px;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-gender .sbHolder, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-gender .sbHolder {
  max-width: 200px;
}

.page-node-116 #kolab-modeller-ab-form .form-item-csdb-pension-at, .page-node-100 #kolab-modeller-ab-form .form-item-csdb-pension-at {
  width: 32.19285%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-csdb-ls, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-csdb-ls {
  width: 40.66874%;
  float: right;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-joined-scheme, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-joined-scheme {
  width: 49.14463%;
  float: left;
  margin-right: 1.71073%;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-nrd-65, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-nrd-65 {
  width: 49.14463%;
  float: right;
  margin-right: 0;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy {
  margin-right: 20px;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy input, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy input {
  width: 50px;
  float: left;
}

.page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-dd input, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-dd input {
  width: 60px;
}

.page-node-116 #kolab-modeller-ab-form .form-item-start-pension span.error, .page-node-100 #kolab-modeller-ab-form .form-item-start-pension span.error {
  right: auto;
  left: 0;
  min-width: 200px;
}

.page-node-116 #kolab-modeller-ab-form .form-item-start-pension .sbHolder, .page-node-100 #kolab-modeller-ab-form .form-item-start-pension .sbHolder {
  max-width: 200px;
}

.page-node-116 #kolab-modeller-ab-form .messages.error, .page-node-116 #kolab-modeller-ab-form .success, .page-node-116 #kolab-modeller-ab-form .info, .page-node-116 #kolab-modeller-ab-form .notice, .page-node-100 #kolab-modeller-ab-form .messages.error, .page-node-100 #kolab-modeller-ab-form .success, .page-node-100 #kolab-modeller-ab-form .info, .page-node-100 #kolab-modeller-ab-form .notice {
  padding: 0;
}

@media (max-width: 1150px) {
  #result-modeller {
    padding-right: 20px;
    padding-left: 20px;
  }
  #result-modeller:before {
    display: none;
  }
}

@media (max-width: 1150px) {
  .page-node-116 #kolab-modeller-ab-form .form-item-csdb-pension-at, .page-node-100 #kolab-modeller-ab-form .form-item-csdb-pension-at {
    width: 49.14463%;
    float: left;
    margin-right: 1.71073%;
  }
  .page-node-116 #kolab-modeller-ab-form .form-item-csdb-ls, .page-node-100 #kolab-modeller-ab-form .form-item-csdb-ls {
    width: 49.14463%;
    float: right;
    margin-right: 0;
  }
}

@media (max-width: 915px) {
  .page-node-116 #kolab-modeller-c-form .form-type-select.form-item-gender, .page-node-100 #kolab-modeller-c-form .form-type-select.form-item-gender {
    margin-bottom: 110px;
  }
}

@media (max-width: 860px) {
  .page-node-116 #kolab-modeller-c-form .form-item-csdb-pension-at, .page-node-100 #kolab-modeller-c-form .form-item-csdb-pension-at {
    margin-bottom: 70px;
  }
}

@media (max-width: 650px) {
  .page-node-100 #kolab-modeller-ab-form .form-type-select.form-item-gender, .page-node-100 #kolab-modeller-ab-form .form-item-csdb-pension-at, .page-node-100 #kolab-modeller-c-form .form-type-select.form-item-gender, .page-node-100 #kolab-modeller-c-form .form-item-csdb-pension-at, .page-node-116 #kolab-modeller-ab-form .form-type-select.form-item-gender, .page-node-116 #kolab-modeller-ab-form .form-item-csdb-pension-at, .page-node-116 #kolab-modeller-c-form .form-type-select.form-item-gender, .page-node-116 #kolab-modeller-c-form .form-item-csdb-pension-at {
    margin-bottom: 50px;
  }
  .page-node-100 #kolab-modeller-ab-form .form-item, .page-node-100 #kolab-modeller-c-form .form-item, .page-node-116 #kolab-modeller-ab-form .form-item, .page-node-116 #kolab-modeller-c-form .form-item {
    width: 100% !important;
  }
  .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-dd, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-yy, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-dd, .page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy, .page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-dd, .page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-yy, .page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-dd {
    width: 50% !important;
    margin-right: 0;
  }
  .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy input, .page-node-100 #kolab-modeller-ab-form .form-item.form-item-potential-service-dd input, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-yy input, .page-node-100 #kolab-modeller-c-form .form-item.form-item-potential-service-dd input, .page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-yy input, .page-node-116 #kolab-modeller-ab-form .form-item.form-item-potential-service-dd input, .page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-yy input, .page-node-116 #kolab-modeller-c-form .form-item.form-item-potential-service-dd input {
    float: right;
  }
}

#kolab-modeller-ab-form .popup-marker, #kolab-modeller-c-form .popup-marker {
  display: none;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vcGFydGlhbHMvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2JveC1zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zdXBwb3J0L19yZW0uc2NzcyIsIndlYnBhY2s6Ly8vc3R5bGVzLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX25vcm1hbGl6ZS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fcmVzZXQtZHJ1cGFsLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2VsZW1lbnRzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19lbGVtZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fcm93cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fc3Bhbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3NoYXJlZC9fZGlyZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19sYXlvdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2xpYnJhcmllcy9fc2VsZWN0Mi5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9saWJyYXJpZXMvX3NsaWNrLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2xpYnJhcmllcy9fZmFuY3lib3guc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvYmxvY2tzL19mcm9udC1wYWdlLWhlYWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fZ3V0dGVycy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ibG9ja3MvX2xhdGVzdC1uZXdzLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2Jsb2Nrcy9fcmVkLXByb21vdGVkLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2Jsb2Nrcy9fd2hvLWxvb2tzLWFmdGVyLXBlbnNpb24uc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvYmxvY2tzL19xdWljay1saW5rcy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ibG9ja3MvX2RpZC15b3Uta25vdy5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ibG9ja3MvX3ZpZGVvcy1ibG9jay5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ibG9ja3MvX2ZhY3RzLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2Jsb2Nrcy9fbGlicmFyeS1ibG9jay5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ibG9ja3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ibG9ja3MvX3BhZ2UtZG9jdW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL2Jsb2Nrcy9fc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL19ibG9ja3Muc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ub2RlL19ub2RlLXRpdGxlLnNjc3MiLCJ3ZWJwYWNrOi8vL3BhcnRpYWxzL25vZGUvX25vZGUtc2VjdGlvbi5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ub2RlL19ub2RlLXNlY3Rpb24tcGFnZS5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ub2RlL19ub2RlLW5ld3Muc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvbm9kZS9fbm9kZS12aWRlby5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9ub2RlL19ub2RlLXBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvYmxvY2tzL19zZWN0aW9uLXN1YnBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX21vZGFsLWZvcm0uc2NzcyIsIndlYnBhY2s6Ly8vcGFydGlhbHMvX3NlbGVjdGJveC5zY3NzIiwid2VicGFjazovLy9wYXJ0aWFscy9fbW9kZWxsZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQ29CSTtFQ0RBLDJCRGVtQztFQ2ZuQyw4QkRlbUM7RUNmbkMsc0JEZW1DO0FFN0J2Qzs7QUg4Q0E7RUFDRSxnQ0FBZ0M7RUFDaEMsNENBQXNEO0VBQ3RELDRTQUlzRjtFQUN0RixtQkFBbUI7RUFDbkIsa0JBQWtCO0FHL0NwQjs7QUhrREE7RUFDRSw2QkFBNkI7RUFDN0IsNENBQW1EO0VBQ25ELDRTQUlnRjtFQUNoRixtQkFBbUI7RUFDbkIsa0JBQWtCO0FHbkRwQjs7QUhzREE7RUFDRSw4QkFBOEI7RUFDOUIsNkNBQW9EO0VBQ3BELGlUQUlrRjtFQUNsRixtQkFBbUI7RUFDbkIsa0JBQWtCO0FHdkRwQjs7QUgyREE7RUFDRSx5QkFBeUI7RUFDekIsNkNBQWlEO0VBQ2pELHVQQUd3RTtFQUN4RSxtQkFBbUI7RUFDbkIsa0JBQWtCO0FHM0RwQjs7QUg4REE7QUFPQTtBSWlKQTtBQUVBO0FBR0E7O0NEbk5DO0FDME5EOzs7Ozs7Ozs7OztDRDlNQztBRXpERDtBQUVBOzs7O0VGNkRFO0FFdkRGO0VBQ0UsdUJBQXVCO0VBQUU7RUFDekIsMEJBQTBCO0VBQUU7RUFDNUIsOEJBQThCO0VBQUU7QUY0RGxDOztBRXpEQTs7RUY2REU7QUV6REY7RUFDRSxTQUFTO0FGMkRYOztBRXhEQTsrRUYyRCtFO0FFeEQvRTs7Ozs7RUY4REU7QUV2REY7Ozs7Ozs7Ozs7Ozs7RUFhRSxjQUFjO0FGeURoQjs7QUV0REE7OztFRjJERTtBRXRERjs7OztFQUlFLHFCQUFxQjtFQUFFO0VBQ3ZCLHdCQUF3QjtFQUFFO0FGMEQ1Qjs7QUV2REE7OztFRjRERTtBRXZERjtFQUNFLGFBQWE7RUFDYixTQUFTO0FGeURYOztBRXREQTs7O0VGMkRFO0FBQ0Y7O0VFckRFLGFBQWE7QUZ3RGY7O0FFckRBOytFRndEK0U7QUVyRC9FOztFRndERTtBRXBERjtFQUNFLDZCQUE2QjtBRnNEL0I7O0FFbkRBOztFRnVERTtBRW5ERjs7RUFFRSxVQUFVO0FGcURaOztBRWxEQTsrRUZxRCtFO0FFbEQvRTs7RUZxREU7QUVqREY7RUFDRSx5QkFBeUI7QUZtRDNCOztBRWhEQTs7RUZvREU7QUVoREY7O0VBRUUsaUJBQWlCO0FGa0RuQjs7QUUvQ0E7O0VGbURFO0FFL0NGO0VBQ0Usa0JBQWtCO0FGaURwQjs7QUU5Q0E7OztFRm1ERTtBRTlDRjtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7QUZnRGxCOztBRTdDQTs7RUZpREU7QUU3Q0Y7RUFDRSxnQkFBZ0I7RUFDaEIsV0FBVztBRitDYjs7QUU1Q0E7O0VGZ0RFO0FFNUNGO0VBQ0UsY0FBYztBRjhDaEI7O0FFM0NBOztFRitDRTtBRTNDRjs7RUFFRSxjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUFrQjtFQUNsQix3QkFBd0I7QUY2QzFCOztBRTFDQTtFQUNFLFdBQVc7QUY2Q2I7O0FFMUNBO0VBQ0UsZUFBZTtBRjZDakI7O0FFMUNBOytFRjZDK0U7QUUxQy9FOztFRjZDRTtBRXpDRjtFQUNFLFNBQVM7QUYyQ1g7O0FFeENBOztFRjRDRTtBRXhDRjtFQUNFLGdCQUFnQjtBRjBDbEI7O0FFdkNBOytFRjBDK0U7QUV2Qy9FOztFRjBDRTtBRXRDRjtFQUNFLGdCQUFnQjtBRndDbEI7O0FFckNBOztFRnlDRTtBRXJDRjtFQUNFLDRCQUE0QjtFQUM1Qix1QkFBdUI7RUFDdkIsU0FBUztBRnVDWDs7QUVwQ0E7O0VGd0NFO0FFcENGO0VBQ0UsY0FBYztBRnNDaEI7O0FFbkNBOztFRnVDRTtBRW5DRjs7OztFQUlFLGlDQUFpQztFQUNqQyxjQUFjO0FGcUNoQjs7QUVsQ0E7K0VGcUMrRTtBRWxDL0U7OztFRnNDRTtBRWpDRjs7Ozs7RUZ1Q0U7QUVoQ0Y7Ozs7O0VBS0UsY0FBYztFQUFFO0VBQ2hCLGFBQWE7RUFBRTtFQUNmLFNBQVM7RUFBRTtBRnFDYjs7QUVsQ0E7O0VGc0NFO0FFbENGO0VBQ0UsaUJBQWlCO0FGb0NuQjs7QUVqQ0E7Ozs7O0VGd0NFO0FFakNGOztFQUVFLG9CQUFvQjtBRm1DdEI7O0FFaENBOzs7Ozs7RUZ3Q0U7QUVoQ0Y7Ozs7RUFJRSwwQkFBMEI7RUFBRTtFQUM1QixlQUFlO0VBQUU7QUZvQ25COztBRWpDQTs7RUZxQ0U7QUVqQ0Y7O0VBRUUsZUFBZTtBRm1DakI7O0FFaENBOztFRm9DRTtBRWhDRjs7RUFFRSxTQUFTO0VBQ1QsVUFBVTtBRmtDWjs7QUUvQkE7OztFRm9DRTtBRS9CRjtFQUNFLG1CQUFtQjtBRmlDckI7O0FFOUJBOzs7Ozs7RUZzQ0U7QUU5QkY7O0VBRUUsc0JBQXNCO0VBQUU7RUFDeEIsVUFBVTtFQUFFO0FGa0NkOztBRS9CQTs7OztFRnFDRTtBRS9CRjs7RUFFRSxZQUFZO0FGaUNkOztBRTlCQTs7OztFRm9DRTtBRTlCRjtFQUNFLDZCQUE2QjtFQUFFO0VBQy9CLDRCQUE0QjtFQUM1QiwrQkFBK0I7RUFBRTtFQUNqQyx1QkFBdUI7QUZrQ3pCOztBRS9CQTs7OztFRnFDRTtBRS9CRjs7RUFFRSx3QkFBd0I7QUZpQzFCOztBRTlCQTs7RUZrQ0U7QUU5QkY7RUFDRSx5QkFBeUI7RUFDekIsYUFBYTtFQUNiLDhCQUE4QjtBRmdDaEM7O0FFN0JBOzs7RUZrQ0U7QUU3QkY7RUFDRSxTQUFTO0VBQUU7RUFDWCxVQUFVO0VBQUU7QUZpQ2Q7O0FFOUJBOztFRmtDRTtBRTlCRjtFQUNFLGNBQWM7QUZnQ2hCOztBRTdCQTs7O0VGa0NFO0FFN0JGO0VBQ0UsaUJB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SXZCOztBNEJ0d0lBO0VBbUdZLGdHQUFrRztBNUJ1cUk5Rzs7QTRCL3BJQTtFN0JsUUksV09aMEI7RVBZMUIsV1F5SGtFO0VSekhsRSxXU0E0RDtFVEE1RCxjUStFcUI7RVIvRXJCLGVRa0ZvQjtFcUJrTHRCLGdCQUFnQjtBNUJzcUlsQjs7QTRCeHFJQTtFQUlJLGFBQWE7RUFDYixlQUFlO0E1QndxSW5COztBNEI3cUlBO0U3QmxRSSxnQlF3STBDO0VSeEkxQyxXU0E0RDtFVEE1RCxzQmlCNEQ4RTtFWThNNUUsaUJBQWlCO0VBQ2pCLGdCQUFnQjtBNUI0cUl0Qjs7QTRCcnJJQTtFN0JsUUksWVNBdUU7RVRBdkUsZU9pRHNDO0FOMjRJMUM7O0E0QjdxSU07RUFiTjtJN0JsUUksV09aMEI7SVBZMUIsV1F5SGtFO0lSekhsRSxXU0E0RDtJVEE1RCxjUStFcUI7SVIvRXJCLGVRa0ZvQjtFUG0zSXRCO0FBQ0Y7O0E0QnBzSUE7RUFpQlEsY0FBYztFQUNkLDBCQUEwQjtBNUJ1cklsQzs7QTRCenNJQTtFQW9CVSxxQkFBcUI7QTVCeXJJL0I7O0E0QjdzSUE7RUEwQlEsNEJBQTRCO0VBQzVCLGVBQWU7RUFDZixNQUFNO0E1QnVySWQ7O0E0Qm50SUE7RUErQlEsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixzQkFBc0I7QTVCd3JJOUI7O0E0QnRySVU7RUFuQ1Y7SUFxQ2MsWUFBWTtJQUNaLGFBQWE7RTVCeXJJekI7QUFDRjs7QTRCaHVJQTtFQTBDWSxnQkFBZ0I7QTVCMHJJNUI7O0E0QnB1SUE7RUFrRFEsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxRQUFRO0E1QnNySWhCOztBNEJwcklNO0VBdEROO0lBdURRLGFBQWE7RTVCd3JJbkI7RTRCL3VJRjtJQXlEVSxhQUFhO0U1QnlySXJCO0U0Qmx2SUY7SUE0RFUsZ0JBQWdCO0U1QnlySXhCO0FBQ0Y7O0E0Qm5ySUE7RUFFSSxhQUFhO0E1QnFySWpCOztBNEJocklBO0VBQ0Usa0JBQWtCO0E1Qm1ySXBCOztBNEJwcklBO0VBSU0sZUFBZTtFQUNmLGdCQUFnQjtBNUJv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QjB3STFCOztBNEJqL0lBO0VBb09RLDBEQUFvRDtFQUNwRCxXQUFXO0E1Qml4SW5COztBNEJ2d0lBO0U3QjdxQkksV09aMEI7RVBZMUIsV1F5SGtFO0VSekhsRSxXU0E0RDtFVEE1RCxjUStFcUI7RVIvRXJCLGVRa0ZvQjtFcUI2bEJ0QixtQkFBbUI7QTVCOHdJckI7O0E0Qmh4SUE7RTdCN3FCSSxXT1owQjtFUFkxQixXUXlIa0U7RVJ6SGxFLFdTQTREO0VUQTVELGNRK0VxQjtFUi9FckIsZVFrRm9CO0VxQmdtQnBCLGdDQUFnQztBNUJveElwQzs7QTRCenhJQTtFN0I3cUJJLGdCUXdJMEM7RVJ4STFDLFdTQTREO0VUQTVELHNCaUI0RDhFO0VZeW5CNUUseUJBQXlCO0VBQ3pCLGVBQWU7RUFDZixpQkFBaUI7RUFDakIseUMvQm5tQjRDO0UrQm9tQjVDLDRCQUE0QjtFQUM1QixjQUFjO0VBQ2QseUJBQXlCO0E1Qnd4SS9COztBNEJ2eElNO0VBZk47STdCN3FCSSxXT1owQjtJUFkxQixXUXlIa0U7SVJ6SGxFLFdTQTREO0lUQTVELGNRK0VxQjtJUi9FckIsZVFrRm9CO0lxQjRtQmhCLHFCQUFxQjtJQUNyQixrQkFBa0I7RTVCK3hJeEI7QUFDRjs7QTRCN3hJUTtFQXJCUjtJQXNCVSxjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RTVCaXlJdkI7QUFDRjs7QTRCaHlJUTtFQTFCUjtJQTJCVSxXQUFXO0lBQ1gsZUFBZTtFNUJveUl2QjtBQUNGOztBNEJqMElBO0VBZ0NRLGNBQWM7RUFDZCxlQUFlO0VBQ2YseUJBQXlCO0E1QnF5SWpDOztBNEJ2MElBO0U3QjdxQkksZ0JRd0kwQztFUnhJMUMsWVNBdUU7RVRBdkUsZVFrRm9CO0VxQmtvQmxCLHlCQUF5QjtFQUV6QixVQUFVO0VBQ1Ysa0JBQWtCO0E1QnN5SXhCOztBNEJyeUlNO0VBM0NOO0k3QjdxQkksV09aMEI7SVBZMUIsV1F5SGtFO0lSekhsRSxXU0E0RDtJVEE1RCxjUStFcUI7SVIvRXJCLGVRa0ZvQjtJcUJ3b0JoQixrQkFBa0I7SUFDbEIsZ0JBQWdC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QTJOTSxrQkFBa0I7RUFDbEIsb0JBQW9CO0F2QzQ1TzFCOztBdUN4blBBO0VBZ09JLGtCQUFrQjtBdkM0NU90Qjs7QXVDNW5QQTtFQWtPTSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLFFBQVE7RUFDUixXQUFXO0VBQ1gsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsY0FBYztBdkM4NU9wQjs7QXVDdm9QQTtFQTRPTSxtQkFBbUI7QXZDKzVPekI7O0F1QzNvUEE7RXhDa0JJLGdCUXdJMEM7RVJ4STFDLFdTQTREO0VUQTVELHNCaUI0RDhFO0FoQm1rUGxGOztBdUNqcFBBO0V4Q2tCSSxnQlF3STBDO0VSeEkxQyxZU0F1RTtFVEF2RSxlUWtGb0I7QVBtalB4Qjs7QXVDdnBQQTtFQXNQUSxXQUFXO0VBQ1gsT0FBTztFQUNQLGdCQUFnQjtBdkNxNk94Qjs7QXVDN3BQQTtFQTJQUSxnQkFBZ0I7QXZDczZPeEI7O0F1Q2pxUEE7RXhDa0JJLFdRd0kwQztFUnhJMUMsV1NBNEQ7RVRBNUQsY1ErRXFCO0VSL0VyQixlUWtGb0I7QVBva1B4Qjs7QXVDeHFQQTtFQWlRUSxjQUFjO0VBQ2QsMEJBQTBCO0F2QzI2T2xDOztBdUM3cVBBO0VBcVFRLFdBQVc7RUFDWCxPQUFPO0VBQ1AsZ0JBQWdCO0F2QzQ2T3hCOztBdUNuclBBO0VBMFFRLGdCQUFnQjtBdkM2Nk94Qjs7QXVDdnJQQTtFeENrQkksZ0JRd0kwQztFUnhJMUMsV1NBNEQ7RVRBNUQsc0JpQjREOEU7QWhCK21QbEY7O0F1QzdyUEE7RXhDa0JJLGdCUXdJMEM7RVJ4STFDLFlTQXVFO0VUQXZFLGVRa0ZvQjtBUCtsUHhCOztBdUNuc1BBO0V4Q2tCSSxnQlF3STBDO0VSeEkxQyxXU0E0RDtFVEE1RCxzQmlCNEQ4RTtBaEIyblBsRjs7QXVDenNQQTtFeENrQkksZ0JRd0kwQztFUnhJMUMsWVNBdUU7RVRBdkUsZVFrRm9CO0FQMm1QeEI7O0F1Qy9zUEE7RUE0Uk0sa0JBQWtCO0F2Q3U3T3hCOztBdUNudFBBO0VBOFJRLFdBQVc7RUFDWCxXQUFXO0F2Q3k3T25COztBdUN4dFBBO0VBb1NRLFdBQVc7QXZDdzdPbkI7O0F1QzV0UEE7RUF5U1EsV0FBVztFQUNYLE9BQU87RUFDUCxnQkFBZ0I7QXZDdTdPeEI7O0F1Q2x1UEE7RUE4U1EsZ0JBQWdCO0F2Q3c3T3hCOztBdUN0dVBBO0VBa1RNLFVBQVU7QXZDdzdPaEI7O0F1QzF1UEE7RXhDa0JJLGdCUXdJMEM7RVJ4STFDLFdTQTREO0VUQTVELHNCaUI0RDhFO0FoQmtxUGxGOztBdUNodlBBO0V4Q2tCSSxnQlF3STBDO0VSeEkxQyxZU0F1RTtFVEF2RSxlUWtGb0I7QVBrcFB4Qjs7QXVDdHZQQTtFQTRUUSxXQUFXO0VBQ1gsT0FBTztFQUNQLGdCQUFnQjtBdkM4N094Qjs7QXVDNXZQQTtFQWlVUSxnQkFBZ0I7QXZDKzdPeEI7O0F1Q2h3UEE7RXhDa0JJLGdCUXdJMEM7RVJ4STFDLFdTQTREO0VUQTVELHNCaUI0RDhFO0FoQndyUGxGOztBdUN0d1BBO0V4Q2tCSSxnQlF3STBDO0VSeEkxQyxZU0F1RTtFVEF2RSxlUWtGb0I7QVB3cVB4Qjs7QXVDNXdQQTtFeENrQkksZ0JRd0kwQztFUnhJMUMsV1NBNEQ7RVRBNUQsc0JpQjREOEU7QWhCb3NQbEY7O0F1Q2x4UEE7RXhDa0JJLGdCUXdJMEM7RVJ4STFDLFlTQXVFO0VUQXZFLGVRa0ZvQjtBUG9yUHhCOztBdUN4eFBBO0VBaVZNLGtCQUFrQjtBdkMyOE94Qjs7QXVDNXhQQTtFQW1WUSxXQUFXO0VBQ1gsV0FBVztBdkM2OE9uQjs7QXVDanlQQTtFQXlWUSxXQUFXO0F2QzQ4T25COztBdUNyeVBBO0VBOFZRLFdBQVc7RUFDWCxPQUFPO0VBQ1AsZ0JBQWdCO0F2QzI4T3hCOztBdUMzeVBBO0VBbVdRLGdCQUFnQjtBdkM0OE94Qjs7QXVDL3lQQTtFQXVXTSxVQUFVO0F2QzQ4T2hCOztBdUN4OE9BO0VBQ0U7SUFDRSxtQkFBbUI7SUFDbkIsa0JBQWtCO0V2QzI4T3BCO0V1Qzc4T0E7SUFJSSxhQUFhO0V2QzQ4T2pCO0FBQ0Y7O0F1Q3o4T0E7RUFDRTtJeENuV0UsZ0JRd0kwQztJUnhJMUMsV1NBNEQ7SVRBNUQsc0JpQjREOEU7RWhCc3ZQaEY7RXVDLzhPQTtJeENuV0UsZ0JRd0kwQztJUnhJMUMsWVNBdUU7SVRBdkUsZVFrRm9CO0VQcXVQdEI7QUFDRjs7QXVDdjhPQTtFQUNFO0lBR00sb0JBQW9CO0V2Q3c4TzFCO0FBQ0Y7O0F1Q3A4T0E7RUFDRTtJQUdNLG1CQUNGO0V2Q284T0o7QUFDRjs7QXVDajhPQTtFQUNFO0lBR00sbUJBQW1CO0V2Q2s4T3pCO0V1Q3I4T0E7SUFNTSxzQkFBc0I7RXZDazhPNUI7RXVDeDhPQTtJQVFRLHFCQUFxQjtJQUNyQixlQUFlO0V2Q204T3ZCO0V1QzU4T0E7SUFXVSxZQUFZO0V2Q284T3RCO0FBQ0Y7O0F1Qzc3T0E7RUFFRyxhQUFhO0F2Qys3T2hCIiwiZmlsZSI6ImNzcy9zdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogc3VzeSAqL1xuQGltcG9ydCBcInN1c3lcIjtcblxuLy9zdW1tYXJ5IHdpZHRoIDk2MHB4ICgyMCBjb2x1bW5zLCBndXR0ZXJzIDIwcHgsIGNvbHVtbiB3aWR0aDogMjlweClcbiRzdXN5OiAoXG4gIGZsb3c6IGx0cixcbiAgbWF0aDogZmx1aWQsIC8vc3RhdGljXG4gIG91dHB1dDogZmxvYXQsIC8vaXNvbGF0ZVxuICBndXR0ZXItcG9zaXRpb246IGFmdGVyLFxuICAvLyBjb250YWluZXI6IDExMTBweCxcbiAgY29udGFpbmVyLXBvc2l0aW9uOiBjZW50ZXIsXG4gIGNvbHVtbnM6IDEyLFxuICAvL2d1dHRlcnM6IDMwcHgvNjVweCxcbiAgLy9jb2x1bW4td2lkdGg6IDY1cHgsXG4gIGd1dHRlcnM6IDIycHgvODdweCxcbiAgY29sdW1uLXdpZHRoOiA4N3B4LFxuICBnbG9iYWwtYm94LXNpemluZzogYm9yZGVyLWJveCxcbiAgbGFzdC1mbG93OiB0byxcbiAgZGVidWc6IChcbiAgICBpbWFnZTogZmFsc2UsIC8vIHNob3csIGZhbHNlXG4gICAgY29sb3I6IHJnYmEoIzY2ZiwgLjI1KSxcbiAgICBvdXRwdXQ6IGJhY2tncm91bmQsXG4gICAgdG9nZ2xlOiB0b3AgcmlnaHQsXG4gICksXG4gIHVzZS1jdXN0b206IChcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB0cnVlLFxuICAgIGJhY2tncm91bmQtb3B0aW9uczogZmFsc2UsXG4gICAgYm94LXNpemluZzogdHJ1ZSxcbiAgICBjbGVhcmZpeDogZmFsc2UsXG4gICAgcmVtOiB0cnVlLFxuICApXG4pO1xuXG4kbGF5b3V0LTEzNzg6IChcbiAgY29udGFpbmVyOiBhdXRvLFxuICBjb2x1bW5zOiAyNlxuKTtcblxuJGxheW91dC03MzA6IChcbiAgY29sdW1uczogMTIsXG4gIGd1dHRlcnM6IDE0cHgvNDhweCxcbiAgY29sdW1uLXdpZHRoOiA0OHB4LFxuKTtcblxuLy8gQGluY2x1ZGUgd2l0aC1sYXlvdXQoJGxheW91dC1uYXYpIHsgfVxuLy8gQGluY2x1ZGUgcHJlZml4KDI1JSk7XG4vLyBAaW5jbHVkZSBzdWZmaXgoMjUlKTtcbi8vIEBpbmNsdWRlIHBhZCgyNSUpO1xuXG5AaW5jbHVkZSBib3JkZXItYm94LXNpemluZztcblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnbW9udHNlcnJhdHJlZ3VsYXInO1xuICBzcmM6IHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1yZWd1bGFyLXdlYmZvbnQuZW90Jyk7XG4gIHNyYzogdXJsKCcuLi8uLi9Gb250cy9tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgIHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1yZWd1bGFyLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi8uLi9Gb250cy9tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgdXJsKCcuLi8uLi9Gb250cy9tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgdXJsKCcuLi8uLi9Gb250cy9tb250c2VycmF0LXJlZ3VsYXItd2ViZm9udC5zdmcjbW9udHNlcnJhdHJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ21vbnRzZXJyYXRib2xkJztcbiAgc3JjOiB1cmwoJy4uLy4uL0ZvbnRzL21vbnRzZXJyYXQtYm9sZC13ZWJmb250LmVvdCcpO1xuICBzcmM6IHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1ib2xkLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICB1cmwoJy4uLy4uL0ZvbnRzL21vbnRzZXJyYXQtYm9sZC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgIHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1ib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1ib2xkLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgIHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1ib2xkLXdlYmZvbnQuc3ZnI21vbnRzZXJyYXRib2xkJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdtb250c2VycmF0bGlnaHQnO1xuICBzcmM6IHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1saWdodC13ZWJmb250LmVvdCcpO1xuICBzcmM6IHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1saWdodC13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgdXJsKCcuLi8uLi9Gb250cy9tb250c2VycmF0LWxpZ2h0LXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi8uLi9Gb250cy9tb250c2VycmF0LWxpZ2h0LXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnLi4vLi4vRm9udHMvbW9udHNlcnJhdC1saWdodC13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICB1cmwoJy4uLy4uL0ZvbnRzL21vbnRzZXJyYXQtbGlnaHQtd2ViZm9udC5zdmcjbW9udHNlcnJhdGxpZ2h0JykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJyb3lhbC1tYWlsXCI7XG4gIHNyYzp1cmwoXCIuLi8uLi9Gb250c0N1c3RvbS9mb250cy9yb3lhbC1tYWlsLmVvdFwiKTtcbiAgc3JjOnVybChcIi4uLy4uL0ZvbnRzQ3VzdG9tL2ZvbnRzL3JveWFsLW1haWwuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICB1cmwoXCIuLi8uLi9Gb250c0N1c3RvbS9mb250cy9yb3lhbC1tYWlsLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICB1cmwoXCIuLi8uLi9Gb250c0N1c3RvbS9mb250cy9yb3lhbC1tYWlsLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICB1cmwoXCIuLi8uLi9Gb250c0N1c3RvbS9mb250cy9yb3lhbC1tYWlsLnN2ZyNyb3lhbC1tYWlsXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKiB2YXJpYWJsZXMgKi9cbiRmb250Um95YWxNYWlsOiBcInJveWFsLW1haWxcIjtcblxuJGZvbnRNb250c2VycmF0bGlnaHQ6ICdtb250c2VycmF0bGlnaHQnLCBzYW5zLXNlcmlmO1xuJGZvbnRNb250c2VycmF0cmVndWxhcjogJ21vbnRzZXJyYXRyZWd1bGFyJywgc2Fucy1zZXJpZjtcbiRmb250TW9udHNlcnJhdGJvbGQ6ICAnbW9udHNlcnJhdGJvbGQnLCBzYW5zLXNlcmlmO1xuXG4vKiBzZWN0aW9uIGNvbG91cnMgKi9cbiRjb2xvckRlZmF1bHQ6ICMwMDAwMDA7XG4kY29sb3JQdXJwbGU6ICM1NzQxODY7XG4kY29sb3JSZWQ6ICNDMzFEMzI7XG4kY29sb3JSZWQyOiAjRDcyQjQxO1xuIiwiLy8gU3VzeSBCb3ggU2l6aW5nXG4vLyA9PT09PT09PT09PT09PT09PVxuXG4vLyBHbG9iYWwgQm94IFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNldCBhIGJveCBtb2RlbCBnbG9iYWxseSBvbiBhbGwgZWxlbWVudHMuXG4vLyAtIFskYm94XTogYm9yZGVyLWJveCB8IGNvbnRlbnQtYm94XG4vLyAtIFskaW5oZXJpdF06IHRydWUgfCBmYWxzZVxuQG1peGluIGdsb2JhbC1ib3gtc2l6aW5nKFxuICAkYm94OiBzdXN5LWdldChnbG9iYWwtYm94LXNpemluZyksXG4gICRpbmhlcml0OiBmYWxzZVxuKSB7XG4gICRpbnNwZWN0OiAkYm94O1xuXG4gIEBpZiAkaW5oZXJpdCB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgIGh0bWwgeyBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRib3gpKTsgfVxuICAgICAgICosICo6YmVmb3JlLCAqOmFmdGVyIHsgYm94LXNpemluZzogaW5oZXJpdDsgfVxuICAgICB9XG4gIH0gQGVsc2Uge1xuICAgICosICo6YmVmb3JlLCAqOmFmdGVyIHsgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7IH1cbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChnbG9iYWwtYm94LXNpemluZywgJGluc3BlY3QpO1xuICBAaW5jbHVkZSB1cGRhdGUtYm94LW1vZGVsKCRib3gpO1xufVxuXG4vLyBCb3JkZXIgQm94IFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEEgbGVnYWN5IHNob3J0Y3V0Li4uXG4vLyAtIFskaW5oZXJpdF06IHRydWUgfCBmYWxzZVxuQG1peGluIGJvcmRlci1ib3gtc2l6aW5nKFxuICAkaW5oZXJpdDogZmFsc2Vcbikge1xuICBAaW5jbHVkZSBnbG9iYWwtYm94LXNpemluZyhib3JkZXItYm94LCAkaW5oZXJpdCk7XG59XG5cbi8vIFVwZGF0ZSBCb3ggTW9kZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbi8vIFBSSVZBVEU6IFVwZGF0ZXMgZ2xvYmFsIGJveCBtb2RlbCBzZXR0aW5nXG5AbWl4aW4gdXBkYXRlLWJveC1tb2RlbChcbiAgJGJveFxuKSB7XG4gIEBpZiAkYm94ICE9IHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSB7XG4gIEBpbmNsdWRlIHN1c3ktc2V0KGdsb2JhbC1ib3gtc2l6aW5nLCAkYm94KTtcbiAgfVxufVxuIiwiLy8gcmVtIFN1cHBvcnRcbi8vID09PT09PT09PT09XG5cbi8vIHJlbVxuLy8gLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3Igb3V0cHV0IGRpcmVjdGx5LlxuLy8gLSAkcHJvcCAgOiA8Y3NzIHByb3BlcnR5PlxuLy8gLSAkdmFsICAgOiA8Y3NzIHZhbHVlPlxuQG1peGluIHN1c3ktcmVtKFxuICAkcHJvcCxcbiAgJHZhbFxuKSB7XG4gICRfcmVxczogKFxuICAgIHZhcmlhYmxlOiByaHl0aG0tdW5pdCByZW0td2l0aC1weC1mYWxsYmFjayxcbiAgICBtaXhpbjogcmVtLFxuICApO1xuICBAaWYgc3VzeS1zdXBwb3J0KHJlbSwgJF9yZXFzLCAkd2FybjogZmFsc2UpIGFuZCAkcmh5dGhtLXVuaXQgPT0gcmVtIHtcbiAgICBAaW5jbHVkZSByZW0oJHByb3AsICR2YWwpO1xuICB9IEBlbHNlIHtcbiAgICAjeyRwcm9wfTogJHZhbDtcbiAgfVxufVxuIiwiLy8gSW1wb3J0c1xuQGltcG9ydCBcInBhcnRpYWxzL2Jhc2VcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9taXhpbnNcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9ub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9yZXNldC1kcnVwYWxcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9lbGVtZW50c1wiO1xuQGltcG9ydCBcInBhcnRpYWxzL2xheW91dFwiO1xuQGltcG9ydCBcInBhcnRpYWxzL2Zvcm1zXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvYmxvY2tzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvaGVhZGVyXCI7XG5cbi8vIE5vZGVzXG5AaW1wb3J0IFwicGFydGlhbHMvbm9kZS9ub2RlLXRpdGxlXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbm9kZS9ub2RlLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9ub2RlL25vZGUtc2VjdGlvbi1wYWdlXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbm9kZS9ub2RlLW5ld3NcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9ub2RlL25vZGUtdmlkZW9cIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9ub2RlL25vZGUtcGFnZVwiO1xuLy8gQmxvY2tzXG5AaW1wb3J0IFwicGFydGlhbHMvYmxvY2tzL3NlY3Rpb24tc3VicGFnZVwiO1xuXG5AaW1wb3J0IFwicGFydGlhbHMvbW9kYWwtZm9ybVwiO1xuXG5AaW1wb3J0IFwicGFydGlhbHMvc2VsZWN0Ym94XCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbW9kZWxsZXJcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9yZXNwb25zaXZlXCI7XG5cblxuIiwiQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogMTBweCkge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cy1jdXN0b20oJHRsLCAkdHIsICRibCwgJGJyKSB7XG4gIEBpZiAkdGwgIT0gMCB7XG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkdGw7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6ICR0bDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkdGw7XG4gIH1cblxuICBAaWYgJHRyICE9IDAge1xuICAgIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICR0cjtcbiAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6ICR0cjtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHRyO1xuICB9XG5cbiAgQGlmICRiciAhPSAwIHtcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYnI7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiAkYnI7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRicjtcbiAgfVxuXG4gIEBpZiAkYmwgIT0gMCB7XG4gICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYmw7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6ICRibDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYmw7XG4gIH1cbn1cblxuQG1peGluIHRyYW5zaXRpb24oJHByb3BlcnR5OiBhbGwsICRkdXJhdGlvbjogLjJzLCAkZnVuY3Rpb246IGVhc2UpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbjtcbiAgICAgIC1tcy10cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uICRmdW5jdGlvbjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMtcmVzZXQoKSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAgICAgIC1vLWJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xufVxuXG5AbWl4aW4gYm94LXNoYWRvdy1yZXNldCgpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuQG1peGluIGJveC1zaGFkb3coJGJsdXJfc2l6ZTogMjBweCwgJHhfb2Zmc2V0OiAwcHgsICR5X29mZnNldDogMnB4LCAkY29sb3I6ICM2NjYpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkY29sb3IgJHhfb2Zmc2V0ICR5X29mZnNldCAkYmx1cl9zaXplO1xuICAgICAtbW96LWJveC1zaGFkb3c6ICRjb2xvciAkeF9vZmZzZXQgJHlfb2Zmc2V0ICRibHVyX3NpemU7XG4gICAgICAgICAgYm94LXNoYWRvdzogJGNvbG9yICR4X29mZnNldCAkeV9vZmZzZXQgJGJsdXJfc2l6ZTtcbn1cblxuQG1peGluIHdvcmQtd3JhcC1hbGwoKSB7XG4gIC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgIC8vIE5vbiBzdGFuZGFyZCBmb3Igd2Via2l0XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgICAtbW96LWh5cGhlbnM6IGF1dG87XG4gICAgICAgICBoeXBoZW5zOiBhdXRvO1xufVxuXG5AbWl4aW4gbGluZWFyLWdyYWRpZW50KCRmcm9tQ29sb3IsICR0b0NvbG9yKSB7XG5cbiAgYmFja2dyb3VuZDogJGZyb21Db2xvcjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgICRmcm9tQ29sb3IgMCUsICR0b0NvbG9yIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwkZnJvbUNvbG9yKSwgY29sb3Itc3RvcCgxMDAlLCR0b0NvbG9yKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICAkZnJvbUNvbG9yIDAlLCR0b0NvbG9yIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgICRmcm9tQ29sb3IgMCUsJHRvQ29sb3IgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgICRmcm9tQ29sb3IgMCUsJHRvQ29sb3IgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgICRmcm9tQ29sb3IgMCUsJHRvQ29sb3IgMTAwJSk7XG4gIC8vZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9J3skZnJvbUNvbG9yfScsIGVuZENvbG9yc3RyPSd7JHRvQ29sb3J9JyxHcmFkaWVudFR5cGU9MSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0wLFN0YXJ0Q29sb3JTdHI9JyN7JGZyb21Db2xvcn0nLCBFbmRDb2xvclN0cj0nI3skdG9Db2xvcn0nKTtcbiAgLy9maWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzFlNTc5OScsIGVuZENvbG9yc3RyPScjN2RiOWU4JyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqL1xufVxuXG5AbWl4aW4gYXQyeCgkcGF0aCwgJGV4dDogXCJqcGdcIiwgJHc6IGF1dG8sICRoOiBhdXRvKSB7XG4gICRhdDF4X3BhdGg6IFwiI3skcGF0aH0uI3skZXh0fVwiO1xuICAkYXQyeF9wYXRoOiBcIiN7JHBhdGh9QDJ4LiN7JGV4dH1cIjtcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhdDF4X3BhdGh9XCIpO1xuXG4gIEBtZWRpYSBhbGwgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gOiAxLjUpLFxuICAgICAgICAgYWxsIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMy8yKSxcbiAgICAgICAgIGFsbCBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbiAgICAgICAgIGFsbCBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSkge1xuICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhdDJ4X3BhdGh9XCIpO1xuICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICR3ICRoO1xuICB9XG59XG5cbkBmdW5jdGlvbiBlbSgkdGFyZ2V0LCAkY29udGV4dDogJGJhc2ljX2ZvbnRfc2l6ZSkge1xuICBAcmV0dXJuICgkdGFyZ2V0IC8gJGNvbnRleHQpICogMWVtO1xufVxuXG5AbWl4aW4gY2VudGVyKCRjb2x1bW5zLCAkY29udGV4dDogJHRvdGFsLWNvbHVtbnMpIHtcbiAgd2lkdGg6IGNvbHVtbnMoJGNvbHVtbnMsICRjb250ZXh0KTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbkBtaXhpbiBib3JkZXItYm94KCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7ICAgIC8qIEZpcmVmb3gsIG90aGVyIEdlY2tvICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7ICAgICAgICAgLyogT3BlcmEvSUUgOCsgKi9cbn1cblxuQG1peGluIHBhZGRpbmctYm94KCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6IHBhZGRpbmctYm94OyAvKiBTYWZhcmkvQ2hyb21lLCBvdGhlciBXZWJLaXQgKi9cbiAgLW1vei1ib3gtc2l6aW5nOiBwYWRkaW5nLWJveDsgICAgLyogRmlyZWZveCwgb3RoZXIgR2Vja28gKi9cbiAgYm94LXNpemluZzogcGFkZGluZy1ib3g7ICAgICAgICAvKiBPcGVyYS9JRSA4KyAqL1xufVxuXG5AbWl4aW4gY29udGVudC1ib3goKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAgICAvKiBGaXJlZm94LCBvdGhlciBHZWNrbyAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgICAgICAgICAvKiBPcGVyYS9JRSA4KyAqL1xufVxuXG5AbWl4aW4gYm9yZGVyLWJveC1zaXppbmcge1xuICAqLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbWcoKSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuQG1peGluIHJlc2V0LWxpc3QoKSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBsYXJnLWltYWdlLXNoYWRvd3MoKSB7XG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMjAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICB0b3A6MDtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDIwLDIwLDIwLDEpIDAlLCByZ2JhKDIwLDIwLDIwLDApIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSxyZ2JhKDIwLDIwLDIwLDEpKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjAsMjAsMjAsMCkpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMjAsMjAsMjAsMSkgMCUscmdiYSgyMCwyMCwyMCwwKSAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMjAsMjAsMjAsMSkgMCUscmdiYSgyMCwyMCwyMCwwKSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgyMCwyMCwyMCwxKSAwJSxyZ2JhKDIwLDIwLDIwLDApIDEwMCUpOyAvKiBJRTEwKyAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIHJnYmEoMjAsMjAsMjAsMSkgMCUscmdiYSgyMCwyMCwyMCwwKSAxMDAlKTsgLyogVzNDICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMxNDE0MTQnLCBlbmRDb2xvcnN0cj0nIzAwMTQxNDE0JyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDIwLDIwLDIwLDApIDAlLCByZ2JhKDIwLDIwLDIwLDEpIDEwMCUpOyAvKiBGRjMuNisgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSxyZ2JhKDIwLDIwLDIwLDApKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjAsMjAsMjAsMSkpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMjAsMjAsMjAsMCkgMCUscmdiYSgyMCwyMCwyMCwxKSAxMDAlKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgIHJnYmEoMjAsMjAsMjAsMCkgMCUscmdiYSgyMCwyMCwyMCwxKSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovXG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgyMCwyMCwyMCwwKSAwJSxyZ2JhKDIwLDIwLDIwLDEpIDEwMCUpOyAvKiBJRTEwKyAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIHJnYmEoMjAsMjAsMjAsMCkgMCUscmdiYSgyMCwyMCwyMCwxKSAxMDAlKTsgLyogVzNDICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDE0MTQxNCcsIGVuZENvbG9yc3RyPScjMTQxNDE0JyxHcmFkaWVudFR5cGU9MSApOyAvKiBJRTYtOSAqL1xuICB9XG59XG5cbi8vLyBNaXhpbiBoZWxwZXIgdG8gb3V0cHV0IHZlbmRvciBwcmVmaXhlc1xuLy8vIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0sIHJvdGF0ZSg5MGRlZyksICgnd2Via2l0JywgJ21zJykpO1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGF1dGhvciBIdWdvR2lyYXVkZWxcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5IC0gVW5wcmVmaXhlZCBDU1MgcHJvcGVydHlcbi8vLyBAcGFyYW0geyp9ICR2YWx1ZSAtIFJhdyBDU1MgdmFsdWVcbi8vLyBAcGFyYW0ge0xpc3R9ICRwcmVmaXhlcyAtIExpc3Qgb2YgcHJlZml4ZXMgdG8gb3V0cHV0XG5AbWl4aW4gdmVuZG9yLXByZWZpeCgkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzOiAoKSkge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgLSN7JHByZWZpeH0tI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gIH1cblxuICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbn1cblxuQG1peGluIGRpdi1vdmVybGF5LWNvbG9yKCRjb2xvcjogaW5oZXJpdCkge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0xMDAlO1xuICB9XG59XG5cblxuQG1peGluIGNvdmVyLWJhY2tncm91bmQoJGltZy11cmkpIHtcbiAgYmFja2dyb3VuZDogdXJsKCRpbWctdXJpKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cblxuLyogU2VlIGh0dHA6Ly9tcmRhbmFkYW1zLmNvbS8yMDEyL3BpeGVsLWVtcy1jc3MtY29udmVyc2lvbi1zYXNzLW1peGluLyAqL1xuXG4vKiBEZWZhdWx0IGZvbnQgc2l6ZSBpbiBwaXhlbHMgaWYgbm90IG92ZXJyaWRkZW4uICovXG4kYmFzZUZvbnRTaXplOiAxNjtcblxuLyogQ29udmVydCBQWCB1bml0cyB0byBFTXMuXG5FeDogbWFyZ2luLXJpZ2h0OiBwZW0oMTYpO1xuKi9cbkBmdW5jdGlvbiBwZW0oJHB4dmFsLCAkYmFzZTogJGJhc2VGb250U2l6ZSkge1xuICBAcmV0dXJuICN7JHB4dmFsIC8gJGJhc2V9ZW07XG59XG5cbi8qIFVzZWQgdG8gY29udmVydCBQWCB0byBFTXMgZm9yIG11bHRpcGxlIHByb3BlcnRpZXMgb3IgdmFsdWVzIG9yIGJvdGguXG4kYmFzZSBpcyBhbiBvcHRpb25hbCBtZWFzdXJlbWVudCB0aGF0IGFsbG93cyBtYWtpbmcgbWVhc3VyZW1lbnRzIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnQgZm9udCBzaXplIHJhdGhlciB0aGFuIHRoZSBjdXJyZW50LiBBbHNvIGFjY2VwdHMgYSBsaXN0IG9mIGxpc3RzIChpbnN0ZWFkIGEgbGlzdCBvZiB2YWx1ZXMpIGZvciBwcm9wZXJ0aWVzIHRoYXQgYWNjZXB0IG11bHRpcGxlIGxpc3RzIG9mIHZhbHVlcy4gT25seSBudW1iZXJzIG9mIGNvbnZlcnRlZDsgZXZlcnl0aGluZyBlbHNlIGlzIHBhc3NlZCB0aHJvdWdoLlxuXG5FeGFtcGxlczpcblxuQGluY2x1ZGUgc2NhbGUobGluZS1oZWlnaHQsIDMwKVxuQGluY2x1ZGUgc2NhbGUobGluZS1oZWlnaHQsIDMwLCAxNilcbkBpbmNsdWRlIHNjYWxlKHdpZHRoIGhlaWdodCwgMTI1KTtcbkBpbmNsdWRlIHNjYWxlKHBhZGRpbmcsIDAgMjUsIDE2KTtcbkBpbmNsdWRlIHNjYWxlKHRleHQtc2hhZG93LCAoIzBkNmUyOCAxIDEpICgjNzc3IDAgMCAyKSwgMTYpO1xuQGluY2x1ZGUgc2NhbGUoYm94LXNoYWRvdywgKGluc2V0IDAgMCAwIDEgIzJhOTAyMikgKGluc2V0IDAgMCAzICM0NTk5NjYpLCAxNik7XG4qL1xuQG1peGluIHNjYWxlKCRwcm9wcywgJHNpemVzLCAkYmFzZTogJGJhc2VGb250U2l6ZSkge1xuICAgICR2YWx1ZXM6ICgpO1xuICAgICRzdWJsaXN0czogZmFsc2U7XG4gICAgQGVhY2ggJHMgaW4gJHNpemVzIHtcbiAgICAgICAgLyogdW53cmFwIGxpc3RzIGZvciB2YWx1ZXMgdGhhdCBoYXZlIG11bHRpcGxlIGxpc3Qgb2YgdmFsdWVzIHN1Y2ggYXMgdGV4dC1zaGFkb3cgKi9cbiAgICAgICAgQGlmIHR5cGUtb2YoJHMpID09IGxpc3Qge1xuICAgICAgICAgICAgJHN1Ymxpc3RzOiB0cnVlO1xuICAgICAgICAgICAgJHZ2OiAoKTtcbiAgICAgICAgICAgIEBlYWNoICRzcyBpbiAkcyB7XG4gICAgICAgICAgICAgICAgJHZ2OiBhcHBlbmQoJHZ2LCBpZih0eXBlLW9mKCRzcykgPT0gbnVtYmVyLCAjeyRzcyAvICRiYXNlfWVtLCAkc3MpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCBqb2luKCgpLCAkdnYpKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgaWYodHlwZS1vZigkcykgPT0gbnVtYmVyLCAjeyRzIC8gJGJhc2V9ZW0sICRzKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJHZhbHVlOiBqb2luKCgpLCAkdmFsdWVzLCBpZigkc3VibGlzdHMsIGNvbW1hLCBzcGFjZSkpO1xuICAgIEBlYWNoICRwcm9wIGluICRwcm9wcyB7ICN7JHByb3B9OiAkdmFsdWUgfVxufVxuXG5cbkBtaXhpbiBiZWZvcmUtY29sb3IoKXtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0xMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbkBtaXhpbiBiZWZvcmVDb2xvckhlaWdodCgkaGVpZ2h0LCAkYmdDb2xvcil7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBiZWZvcmVDb2xvckhlaWdodEJvdHRvbSgkaGVpZ2h0LCAkYmdDb2xvcil7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogLTEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogLTEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xuICB9XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gIG1hcmdpbjogMDsgLyogMyAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZVxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuUmVzZXRzIGRlZmF1bHQgYnJvd3NlciBDU1MuXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHJlbW92ZSBidWxsZXQgcG9pbnRzICovXG4uY2tlLmNrZV9wYW5lbCB7XG4gIHVsLCBsaSB7XG4gICAgbGlzdC1zdHlsZTogb3V0c2lkZSBub25lIG5vbmU7XG4gIH1cbn1cblxudWwuY2tlX3BhbmVsX2xpc3QsIHVsLm1lbnUsIHVsLmN5Y2xlLXNsaWRlc2hvdyB7XG4gIGxpc3Qtc3R5bGU6IG91dHNpZGUgbm9uZSBub25lO1xuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogb3V0c2lkZSBub25lIG5vbmU7XG4gIH1cbn1cblxuI2FkbWluLW1lbnUge1xuICBhIHtcbiAgICBmb250LWZhbWlseTogQXJpYWw7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG59XG5cblxuLmVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcbiAgLyogSUU2LCBJRTcgKi9cbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogdGFicyAqL1xuI2NvbnRlbnQge1xuXG4gICNwdGFicywgI3N0YWJzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItbGVmdDogbWVkaXVtIG5vbmU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZSBub25lO1xuICAgIG1hcmdpbjogMCAwIDEuNWVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAjc3RhYnMge1xuICAgIHBhZGRpbmc6IDEycHggMCAwIDA7XG4gIH1cblxuICAjcHRhYnMgbGkuYWN0aXZlLCAjc3RhYnMgbGkuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lIHJlcGVhdCBzY3JvbGwgMCAwICNmZmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyNDQ5NWE7XG4gICAgaGVpZ2h0OiAyN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAjcHRhYnMgbGk6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gIH1cblxuICAjcHRhYnMgbGksICNzdGFicyBsaSB7XG4gICAgLypiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvdGFiLWJnLnBuZ1wiKSByZXBlYXQteCBzY3JvbGwgMCAwICNFRkYwRjE7Ki9cbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBtYXJnaW46IDJweCAwIC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGUgbm9uZTtcbiAgfVxuXG4gICNwdGFicyBsaS5hY3RpdmUgYSwgI3N0YWJzIGxpLmFjdGl2ZSBhIHtcbiAgICBjb2xvcjogIzM4MzgzODtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBub25lO1xuICB9XG5cbiAgI3B0YWJzIGxpIGEsICNzdGFicyBsaSBhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZGRkZGO1xuICAgIGJhY2tncm91bmQ6ICNGOEY4Rjggbm9uZTtcbiAgICBjb2xvcjogIzM4MzgzODtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICNwdGFicyBsaSBhOmhvdmVyLCAjc3RhYnMgbGkgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2YxZjJmMiBub25lO1xuICAgIGNvbG9yOiAjMjQ0OTVhO1xuICB9XG5cbiAgI3B0YWJzIGxpIGEuYWN0aXZlOmhvdmVyLCAjc3RhYnMgbGkgYS5hY3RpdmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmYgbm9uZTtcbiAgICBjb2xvcjogIzM4MzgzODtcbiAgfVxufVxuXG4vKiBjb250ZXh0dWFsIGxpbmtzICovXG5cbnVsLmNvbnRleHR1YWwtbGlua3Mge1xuICBsaXN0LXN0eWxlOiBvdXRzaWRlIG5vbmUgbm9uZTtcbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG91dHNpZGUgbm9uZSBub25lO1xuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cbiAgfVxufVxuXG5hLmNvbnRleHR1YWwtbGlua3MtdHJpZ2dlciB7XG4gIGhlaWdodDogMTlweDtcbiAgbWFyZ2luOiAwcHg7XG4gIHBhZGRpbmc6IDBweCAycHg7XG4gIHdpZHRoOiAzMnB4O1xufVxuXG4vKiBtZXNzYWdlcyAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAgQWxlcnQgQm94ZXNcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLm1lc3NhZ2VzLmVycm9yLCAuc3VjY2VzcywgLmluZm8sIC5ub3RpY2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTNweCAyMHB4IDEwcHggNDRweDtcbn1cblxuLm1lc3NhZ2VzLmVycm9yIHtcbiAgYmFja2dyb3VuZDogI2Y5ZTVlNiB1cmwoXCIuLi8uLi9pbWFnZXMvbWVzc2FnZXMvaWNvbi1ib3gtZXJyb3IucG5nXCIpIG5vLXJlcGVhdCAxMHB4IDlweDtcbiAgLy9AaW5jbHVkZSBhdDJ4KCcuLi8uLi9pbWFnZXMvc3ByaXRlcy9pbnN0YWdyYW0nLCBwbmcsIDQxcHgsIDQwcHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjdjN2M5O1xuICBib3JkZXItbGVmdC13aWR0aDogNHB4O1xuICBjb2xvcjogI2IzNjk2Yztcbn1cblxuLm1lc3NhZ2VzLnN0YXR1cyB7XG4gIGJhY2tncm91bmQ6ICNlM2ViYzYgdXJsKFwiLi4vLi4vaW1hZ2VzL21lc3NhZ2VzL2ljb24tYm94LXN1Y2Nlc3MucG5nXCIpIG5vLXJlcGVhdCAxMnB4IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MyZDI4ODtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDRweDtcbiAgY29sb3I6ICM4ZmE0NDI7XG59XG5cbi5tZXNzYWdlcy5pbmZvIHtcbiAgYmFja2dyb3VuZDogI2Q4ZWNmNSB1cmwoXCIuLi8uLi9pbWFnZXMvbWVzc2FnZXMvaWNvbi1ib3gtaW5mby5wbmdcIikgbm8tcmVwZWF0IDEwcHggOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWFjOWRmO1xuICBib3JkZXItbGVmdC13aWR0aDogNHB4O1xuICBjb2xvcjogIzUyOGRhOTtcbn1cblxuLm1lc3NhZ2VzLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmNmN2Q5IHVybChcIi4uLy4uL2ltYWdlcy9tZXNzYWdlcy9pY29uLWJveC1ub3RpY2UucG5nXCIpIG5vLXJlcGVhdCAxMHB4IDlweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y1ZGM3ZDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDRweDtcbiAgY29sb3I6ICNjNGEyMWI7XG59XG5cbmRpdi5lcnJvciwgdHIuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuXG5kaXYubWVzc2FnZXMgdWwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG5kaXYubWVzc2FnZXMge1xuICB1bCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsaSB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5idG4ge1xuICBiYWNrZ3JvdW5kOiAjNTc0MTg2O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTc0MTg2O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtaW4td2lkdGg6IDIxM3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjNTc0MTg2O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cbiAgJi5idG4tLWJsYWNrIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0MzQzNCO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzQzNDM0I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogIzNDM0MzQjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiZWxlbWVudHMvYnV0dG9uc1wiO1xuXG4jdGl0bGUtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDQwcHggMCAxMHB4IDA7XG59XG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxucCB7XG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbm9sIHtcbiAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGxpZ2h0O1xufVxuXG4vKiogaGVhZGVycyAqKi9cbmgxLCBoMiwgaDMsIGg0LCBoNSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDFlbSAwO1xufVxuXG5oMy5zdHJvbmcge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbn1cblxuc3Ryb25nLCBlbSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiBub25lO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgMWVtIDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRsaWdodDtcbiAgJi5sYXJnZS1wYXJhZ3JhcGgge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgfVxuICAmLm1lZGl1bS1wYXJhZ3JhcGgge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgfVxuICAmLm1lZGl1bS1wYXJhZ3JhcGgtMjIge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgfVxuICAmLmJvcmRlci1wYXJhZ3JhcGgge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICM1NzQxODY7XG4gICAgcGFkZGluZzogNTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgfVxufVxuXG5oMi5oMi1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRsaWdodDtcbn1cblxuaDIuaDItc3VidGl0bGUge1xuICBmb250LXNpemU6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzN3B4O1xufVxuXG5oMi5oMi1zdWJ0aXRsZS1uby1tYXJnaW4ge1xuICBmb250LXNpemU6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5oMi5oMi1sYXJnZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNDhweDtcbiAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLSBUd28gY29sdW1ucyBja2VkaXRvclxuLmxlZnQtY29sIHtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZy1yaWdodDogMzZweDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgaDIge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiA2NjBweCkge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuLnJpZ2h0LWNvbCB7XG4gIHdpZHRoOiA0OSU7XG4gIHBhZGRpbmctbGVmdDogMzZweDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgaDIge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiA2NjBweCkge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tIEJvZHkgZmllbGQgYW5kIGRlc2NyaXB0aW9uXG4uZmllbGQtbmFtZS1ib2R5LCAuZmllbGQtZGVzY3JpcHRpb24ge1xuICBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgJi5zbWFsbC1pbWFnZSB7XG4gICAgICB3aWR0aDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5kZWZhdWx0LWJ1dHRvbiB7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNDYwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICB9XG4gIGlmcmFtZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiAjM2MzYzNiO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xuICAgIG1hcmdpbjogMjVweCAwIDI1cHggMTVweDtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogN3B4O1xuICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIG9sIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMjVweCAwIDI1cHggMTVweDtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgfVxuICB9XG59XG5cbi5maWVsZC1kZXNjcmlwdGlvbiB7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDEzMDVweCkge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLSBOZXdzIGxvYWRlclxuLm5ld3MtbG9hZGVyIHtcbiAgd2lkdGg6MTAwJTtcbiAgaGVpZ2h0OjEwMCU7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB0b3A6MDtcbiAgei1pbmRleDogOTk5OTk7XG4gIG9wYWNpdHk6IDAuNTtcbiAgYmFja2dyb3VuZDojZmZmIDtcbiAgc3BhbntcbiAgICB3aWR0aDogMTI4cHg7XG4gICAgaGVpZ2h0OiAxMjhweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAyMDBweDtcbiAgICBsZWZ0OiA0NiU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9hamF4LWxvYWRlcnMvbG9hZGVyLmdpZikgbm8tcmVwZWF0IGNlbnRlcjtcbiAgfVxufVxuXG51bC5jb250YWN0LWxpc3Rpbmcge1xuICBAaW5jbHVkZSByZXNldC1saXN0KCk7XG4gIGxpIHtcbiAgICBwYWRkaW5nOiAwIDAgMCAxMThweDtcbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICAmLm1haWwtaWNvbiB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9yZWZyZXNoL3N2Zy9tYWlsX2ljb24uc3ZnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQzcHggMzNweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLnBob25lLWljb24ge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvcmVmcmVzaC9zdmcvcGhvbmVfaWNvbi5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzhweCAzOHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICYucGluLWljb24ge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvcmVmcmVzaC9zdmcvcGluX2ljb24uc3ZnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI4cHggMzhweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93IFN0YXJ0ICYgRW5kXG4vLyA9PT09PT09PT09PT09PT1cblxuLy8gQnJlYWtcbi8vIC0tLS0tXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB0aGF0IHNob3VsZCBmb3JjZSBhIGxpbmUgYnJlYWsuXG5AbWl4aW4gYnJlYWsge1xuICBAaW5jbHVkZSBvdXRwdXQoKGNsZWFyOiBib3RoKSk7XG59XG5cblxuLy8gTm9CcmVha1xuLy8gLS0tLS0tLVxuLy8gQ2FuY2VsIHRoZSBicmVhaygpIGVmZmVjdCwgZS5nLiB3aGVuIHVzaW5nIG1lZGlhIHF1ZXJpZXMuXG5AbWl4aW4gbm9icmVhayB7XG4gIEBpbmNsdWRlIG91dHB1dCgoY2xlYXI6IG5vbmUpKTtcbn1cblxuXG4vLyBGdWxsXG4vLyAtLS0tXG4vLyAtIFskY29udGV4dF06IDxsYXlvdXQgc2hvcnRoYW5kPlxuQG1peGluIGZ1bGwoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0IDogJGNvbnRleHQ7XG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChmdWxsLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHNwYW4oZnVsbCBvZiBwYXJzZS1ncmlkKCRjb250ZXh0KSBicmVhayk7XG59XG5cblxuLy8gRmlyc3Rcbi8vIC0tLS0tXG4vLyAtIFskY29udGV4dF06IDxzZXR0aW5ncz5cbkBtaXhpbiBmaXJzdChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGNvbnRleHQ7XG4gICRjb250ZXh0ICA6IHBhcnNlLWdyaWQoJGNvbnRleHQpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkY29udGV4dCk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGZpcnN0LCAkaW5zcGVjdCk7XG4gIEBpZiBub3QoaXMtc3BsaXQoJGNvbnRleHQpKSB7XG4gICAgQGluY2x1ZGUgZmxvYXQtZmlyc3QoJGZsb3cpO1xuICB9XG59XG5cbkBtaXhpbiBhbHBoYShcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZmlyc3QoJGNvbnRleHQpO1xufVxuXG5cbi8vIExhc3Rcbi8vIC0tLS1cbi8vIC0gWyRjb250ZXh0XTogPHNldHRpbmdzPlxuQG1peGluIGxhc3QoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRjb250ZXh0O1xuICAkY29udGV4dCAgOiBwYXJzZS1ncmlkKCRjb250ZXh0KTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobGFzdCwgJGluc3BlY3QpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkY29udGV4dCksXG4gICAgbGFzdC1mbG93OiBzdXN5LWdldChsYXN0LWZsb3csICRjb250ZXh0KSxcbiAgICBtYXJnaW46IGlmKGlzLXNwbGl0KCRjb250ZXh0KSwgbnVsbCwgMCksXG4gICk7XG5cbiAgQGluY2x1ZGUgZmxvYXQtbGFzdCgkb3V0cHV0Li4uKTtcbn1cblxuQG1peGluIG9tZWdhKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICBAaW5jbHVkZSBsYXN0KCRjb250ZXh0KTtcbn1cblxuXG4vLyBHZXQgRWRnZVxuLy8gLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBlZGdlIHZhbHVlIGJhc2VkIG9uIGxvY2F0aW9uLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1lZGdlKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRlZGdlICAgICAgIDogc3VzeS1nZXQoZWRnZSwgJHNwYW4pO1xuXG4gIEBpZiBub3QoJGVkZ2UpIHtcbiAgICAkY291bnQ6IHN1c3ktY291bnQoc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pKTtcbiAgICAkbG9jYXRpb246IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICAgJG46IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICAgICRudW1iZXI6IGlmKHR5cGUtb2YoJGxvY2F0aW9uKSA9PSBudW1iZXIsIHRydWUsIGZhbHNlKTtcbiAgICAkaW5kZXg6IGlmKCRudW1iZXIgYW5kIHVuaXRsZXNzKCRsb2NhdGlvbiksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkbiA9PSAkY291bnQge1xuICAgICAgJGVkZ2U6IGZ1bGw7XG4gICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gYW5kICRuIGFuZCAkaW5kZXgge1xuICAgICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICAgJGVkZ2U6IGlmKCRuID09ICRjb3VudCwgZnVsbCwgZmlyc3QpO1xuICAgICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gKyAkbiAtIDEgPT0gJGNvdW50IHtcbiAgICAgICAgJGVkZ2U6IGxhc3Q7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlZGdlID09IGFscGhhIG9yICRlZGdlID09IG9tZWdhIHtcbiAgICAkZWRnZTogaWYoJGVkZ2UgPT0gYWxwaGEsIGZpcnN0LCBsYXN0KTtcbiAgfVxuXG4gIEByZXR1cm4gJGVkZ2U7XG59XG5cblxuLy8gR2V0IExvY2F0aW9uXG4vLyAtLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBsb2NhdGlvbiB2YWx1ZSBiYXNlZCBvbiBlZGdlLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1sb2NhdGlvbihcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkbG9jYXRpb24gICA6IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICRlZGdlICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbiAgICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICBAaWYgJGVkZ2UgYW5kIG5vdCgkbG9jYXRpb24pIGFuZCB0eXBlLW9mKCRuKSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRuKSB7XG4gICAgQGlmICRlZGdlID09IGZpcnN0IHtcbiAgICAgICRsb2NhdGlvbjogMTtcbiAgICB9IEBlbHNlIGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGxvY2F0aW9uOiBzdXN5LWNvdW50KHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKSkgLSAkbiArIDE7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbG9jYXRpb25cbn1cbiIsIi8vIFNwYW4gU3ludGF4XG4vLyA9PT09PT09PT09PVxuXG4vLyBTcGFuIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgc3Bhbm5pbmcgZWxlbWVudCB1c2luZyBzaG9ydGhhbmQgc3ludGF4LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0OiAkc3BhbjtcbiAgJHNwYW46IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkb3V0cHV0OiBzcGFuLW1hdGgoJHNwYW4pO1xuICAkbmVzdGluZzogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY2xlYXI6IHN1c3ktZ2V0KGNsZWFyLCAkc3Bhbik7XG5cbiAgJGJveDogc3VzeS1nZXQoYm94LXNpemluZywgJHNwYW4pO1xuICAkY29udGVudC1ib3g6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSAhPSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcbiAgJGJveDogJGJveCBvciBpZihpcy1pbnNpZGUoJHNwYW4pIGFuZCAkY29udGVudC1ib3gsIGJvcmRlci1ib3gsIG51bGwpO1xuXG4gIEBpZiAkY2xlYXIgPT0gYnJlYWsge1xuICAgIEBpbmNsdWRlIGJyZWFrO1xuICB9IEBlbHNlIGlmICRjbGVhciA9PSBub2JyZWFrIHtcbiAgICBAaW5jbHVkZSBub2JyZWFrO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNwYW4sICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7XG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIEBpZiB2YWxpZC1jb2x1bW5zKCRuZXN0aW5nLCBzaWxlbnQpIHtcbiAgICBAaW5jbHVkZSBuZXN0ZWQoJHNwYW4pIHsgQGNvbnRlbnQ7IH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gU3BhbiBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBzcGFuLlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBmdW5jdGlvbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gIEByZXR1cm4gZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xufVxuXG4vLyBTcGFuIE1hdGhcbi8vIC0tLS0tLS0tLVxuLy8gR2V0IGFsbCB0aGUgc3BhbiByZXN1bHRzLlxuLy8gLSAkc3BhbjogPG1hcD5cbkBmdW5jdGlvbiBzcGFuLW1hdGgoXG4gICRzcGFuXG4pIHtcbiAgJG5lc3QgICAgICAgICAgICAgOiBpZihzdXN5LWdldChyb2xlLCAkc3BhbikgPT0gbmVzdCwgdHJ1ZSwgZmFsc2UpO1xuICAkc3BsaXQtbmVzdCAgICAgICA6IGlmKGlzLXNwbGl0KCRzcGFuKSBhbmQgJG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJGVkZ2UgICAgICAgICAgICAgOiBnZXQtZWRnZSgkc3Bhbik7XG4gICRsb2NhdGlvbiAgICAgICAgIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcblxuICAkZmxvYXQgICAgICAgICAgICA6IGZyb207XG4gICRwYWRkaW5nLWJlZm9yZSAgIDogbnVsbDtcbiAgJHBhZGRpbmctYWZ0ZXIgICAgOiBudWxsO1xuICAkbWFyZ2luLWJlZm9yZSAgICA6IG51bGw7XG4gICRtYXJnaW4tYWZ0ZXIgICAgIDogbnVsbDtcblxuICAvLyBjYWxjdWxhdGUgd2lkdGhzXG4gICRzcHJlYWQ6IGluZGV4KG1hcC12YWx1ZXMoJHNwYW4pLCBzcHJlYWQpO1xuICAkc3BhbjogaWYoJHNwbGl0LW5lc3QgYW5kIG5vdCgkc3ByZWFkKSwgbWFwLW1lcmdlKCRzcGFuLCAoc3ByZWFkOiB3aWRlKSksICRzcGFuKTtcbiAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkc3Bhbik7XG4gICRndXR0ZXJzOiBnZXQtZ3V0dGVycygkc3Bhbik7XG5cbiAgLy8gYXBwbHkgZ3V0dGVyc1xuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGlmIG5vdChzdXN5LWdldChyb2xlLCAkc3BhbikpIHtcbiAgICAgICRwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRwYWRkaW5nLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAaWYgbm90KCRzcGxpdC1uZXN0KSB7XG4gICAgICAkbWFyZ2luLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRtYXJnaW4tYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBzcGVjaWFsIG1hcmdpbiBoYW5kbGluZ1xuICBAaWYgc3VzeS1nZXQob3V0cHV0LCAkc3BhbikgPT0gaXNvbGF0ZSBhbmQgJGxvY2F0aW9uIHtcbiAgICAkbWFyZ2luLWJlZm9yZTogZ2V0LWlzb2xhdGlvbigkc3Bhbik7XG4gICAgJG1hcmdpbi1hZnRlcjogLTEwMCU7XG4gIH0gQGVsc2UgaWYgJGVkZ2Uge1xuICAgICRpcy1zcGxpdDogaXMtc3BsaXQoJHNwYW4pO1xuICAgICRwb3M6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pO1xuXG4gICAgQGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGZsb2F0OiBzdXN5LWdldChsYXN0LWZsb3csICRzcGFuKTtcbiAgICB9XG5cbiAgICBAaWYgbm90KCRpcy1zcGxpdCkge1xuICAgICAgQGlmICRlZGdlID09IGZ1bGwgb3IgKCRlZGdlID09IGZpcnN0IGFuZCAkcG9zID09IGJlZm9yZSkge1xuICAgICAgICAkbWFyZ2luLWJlZm9yZTogMDtcbiAgICAgIH1cbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBsYXN0IGFuZCAkcG9zID09IGFmdGVyKSB7XG4gICAgICAgICRtYXJnaW4tYWZ0ZXI6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAcmV0dXJuIChcbiAgICB3aWR0aCAgICAgICAgICAgOiAkd2lkdGgsXG4gICAgZmxvYXQgICAgICAgICAgIDogJGZsb2F0LFxuICAgIG1hcmdpbi1iZWZvcmUgICA6ICRtYXJnaW4tYmVmb3JlLFxuICAgIG1hcmdpbi1hZnRlciAgICA6ICRtYXJnaW4tYWZ0ZXIsXG4gICAgcGFkZGluZy1iZWZvcmUgIDogJHBhZGRpbmctYmVmb3JlLFxuICAgIHBhZGRpbmctYWZ0ZXIgICA6ICRwYWRkaW5nLWFmdGVyLFxuICAgIGZsb3cgICAgICAgICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKSxcbiAgKTtcbn1cblxuLy8gR2V0IFNwYW4gV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gc3BhbiB3aWR0aC5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gZ2V0LXNwYW4td2lkdGgoXG4gICRzcGFuXG4pIHtcbiAgJHNwYW4gICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG5cbiAgJG4gICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkbG9jYXRpb24gOiBnZXQtbG9jYXRpb24oJHNwYW4pO1xuICAkY29sdW1ucyAgOiBzdXN5LWdldChjb2x1bW5zLCAkc3Bhbik7XG4gICRndXR0ZXJzICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRzcGFuKTtcbiAgJHNwcmVhZCAgIDogc3VzeS1nZXQoc3ByZWFkLCAkc3Bhbik7XG5cbiAgJGNvbnRleHQgIDogbnVsbDtcbiAgJHNwYW4tc3VtIDogbnVsbDtcbiAgJHdpZHRoICAgIDogbnVsbDtcblxuICBAaWYgJG4gPT0gJ2Z1bGwnIHtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcbiAgICAkcm9sZTogc3VzeS1nZXQocm9sZSwgJHNwYW4pO1xuICAgICRuOiBpZigkcG9zID09IHNwbGl0IGFuZCAkcm9sZSAhPSBuZXN0LCBzdXN5LWNvdW50KCRjb2x1bW5zKSwgMTAwJSk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkbikgIT0gbnVtYmVyIHtcbiAgICBAd2FybiBcIigje3R5cGUtb2YoJG4pfSkgI3skbn0gaXMgbm90IGEgdmFsaWQgc3Bhbi5cIjtcbiAgfSBAZWxzZSBpZiB1bml0bGVzcygkbikge1xuICAgICRjb250ZXh0OiBzdXN5LXN1bSgkY29sdW1ucywgJGd1dHRlcnMsIGlmKGlzLXNwbGl0KCRzcGFuKSwgd2lkZSwgbmFycm93KSk7XG4gICAgJHNwcmVhZDogaWYoaXMtaW5zaWRlKCRzcGFuKSwgJHNwcmVhZCBvciB3aWRlLCAkc3ByZWFkKTtcbiAgICAkc3Bhbi1zdW06IHN1c3koJG4sICRsb2NhdGlvbiwgJGNvbHVtbnMsICRndXR0ZXJzLCAkc3ByZWFkKTtcblxuICAgICRfbWF0aDogc3VzeS1nZXQobWF0aCwgJHNwYW4pO1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRzcGFuKTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkd2lkdGg6ICRzcGFuLXN1bSAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRzcGFuLXN1bSAvICRjb250ZXh0KTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICR3aWR0aDogJG47XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cbiIsIi8vIERpcmVjdGlvbiBIZWxwZXJzXG4vLyA9PT09PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEZsb3cgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgZmxvdzogbHRyLFxuKSk7XG5cbi8vIEdldCBEaXJlY3Rpb25cbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIG9yICd0bycgZGlyZWN0aW9uIG9mIGEgbHRyIG9yIHJ0bCBmbG93LlxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuLy8gLSBbJGtleV0gICA6IGZyb20gfCB0b1xuQGZ1bmN0aW9uIGdldC1kaXJlY3Rpb24oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KSxcbiAgJGtleTogZnJvbVxuKSB7XG4gICRyZXR1cm46IGlmKCRmbG93ID09IHJ0bCwgKGZyb206IHJpZ2h0LCB0bzogbGVmdCksIChmcm9tOiBsZWZ0LCB0bzogcmlnaHQpKTtcbiAgQHJldHVybiBtYXAtZ2V0KCRyZXR1cm4sICRrZXkpO1xufVxuXG4vLyBUb1xuLy8gLS1cbi8vIFJldHVybiB0aGUgJ3RvJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gdG8oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gIEByZXR1cm4gZ2V0LWRpcmVjdGlvbigkZmxvdywgdG8pO1xufVxuXG4vLyBGcm9tXG4vLyAtLS0tXG4vLyBSZXR1cm4gdGhlICdmcm9tJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gZnJvbShcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCBmcm9tKTtcbn1cbiIsIi8qKlxuICogQGZpbGVcbiAqIExheW91dCBTdHlsaW5nXG4gKi9cblxuaHRtbCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbmJvZHkuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgLy9iYWNrZ3JvdW5kOiAjZjlmN2YyIG5vbmU7XG4gIGNvbG9yOiAjM0MzQzNCO1xuICBwYWRkaW5nOiA5NHB4IDAgMCAwO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmc6IDcwcHggMCAwIDA7XG4gIH1cbn1cblxuaHRtbCBib2R5Lmh0bWwge1xuICAmLmFkbWluLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuICBAbWVkaWEobWF4LXdpZHRoOiAxMTUwcHgpIHtcbiAgICAvL3BhZGRpbmctbGVmdDogMjBweDtcbiAgICAvL3BhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbnVsIHtcbiAgbGkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRsaWdodDtcbiAgfVxufVxuXG4jbWFpbi13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI25vZGUtY29udGVudCB7XG4gIEBpbmNsdWRlIGZ1bGw7XG59XG4uZnJvbnQge1xuICAjcGFnZS13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG4gICNibG9jay1ibG9jay0xMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAucXVpY2stbGlua3MtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgZGl2LW92ZXJsYXktY29sb3IoI2Y5ZjdmMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjdmMjtcbiAgfVxufVxuQG1lZGlhKG1heC13aWR0aDogNzY1cHgpIHtcbiAgLmZyb250IHtcbiAgICAjbm9kZS1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAjZWRnZW9uZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjYmxvY2stYmxvY2stMTMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgfVxuICB9XG59XG5cblxuXG4jY29udGVudC1hZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tIEZyb250IHBhZ2Vcbi5wYWdlLW5vZGUtMSB7XG4gICNtZW51LXdyYXBwZXItc3RpY2t5IHtcbiAgICAjYmxvY2stbWVudS1ibG9jay00LS0yIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tIE5vdCBmcm9udCBwYWdlXG4ubm90LWZyb250IHtcbiAgI2Jsb2NrLW1lbnUtYmxvY2stNC0tMiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gICNmb290ZXIge1xuICAgIC8vLnJlZ2lvbi1mb290ZXIge1xuICAgIC8vICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gICY6YmVmb3JlIHtcbiAgICAvLyAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vICAgIHdpZHRoOiA2MnB4O1xuICAgIC8vICAgIGhlaWdodDogMTE4cHg7XG4gICAgLy8gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uLy4uL2ltYWdlcy9pbGx1c3RyYXRpb25zL3RyZWUxLnBuZykgbm8tcmVwZWF0O1xuICAgIC8vICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgICB0b3A6IC0xNDBweDtcbiAgICAvLyAgICBsZWZ0OiAtMTIwcHg7XG4gICAgLy8gICAgei1pbmRleDogMTtcbiAgICAvLyAgfVxuICAgIC8vICAmOmFmdGVyIHtcbiAgICAvLyAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vICAgIHdpZHRoOiAxMDFweDtcbiAgICAvLyAgICBoZWlnaHQ6IDE5MnB4O1xuICAgIC8vICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi8uLi9pbWFnZXMvaWxsdXN0cmF0aW9ucy90cmVlMi5wbmcpIG5vLXJlcGVhdDtcbiAgICAvLyAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gICAgdG9wOiAtMjExcHg7XG4gICAgLy8gICAgcmlnaHQ6IC0yMDBweDtcbiAgICAvLyAgICB6LWluZGV4OiAxO1xuICAgIC8vICAgIEBtZWRpYShtYXgtd2lkdGg6IDE1MjBweCkge1xuICAgIC8vICAgICAgcmlnaHQ6IC0xMzBweDtcbiAgICAvLyAgICB9XG4gICAgLy8gICAgQG1lZGlhKG1heC13aWR0aDogMTQwMHB4KSB7XG4gICAgLy8gICAgICBkaXNwbGF5OiBub25lO1xuICAgIC8vICAgIH1cbiAgICAvLyAgfVxuICAgIC8vfVxuICB9XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tIEZvb3RlclxuI2Zvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAuY29udGFpbmVyIHtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAxMzEwcHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5ibG9jayB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgIH1cbiAgfVxuICAvLyBLb2xhYiBjcmVkXG4gICNibG9jay1ibG9jay0xNCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjM2MzYzNiO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICAuYmxvY2stbWVudSB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgdWwge1xuICAgICAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNlYXJjaCBwYWdlXG4ucGFnZS1zZWFyY2gge1xuICAjbWFpbiB7XG4gICAgcGFkZGluZzogNjJweCAwO1xuICB9XG4gIC5oYW1idXJnZXIge1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4jY29udGVudC1hZnRlciB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBOZXdzIHBhZ2VcbmJvZHkucGFnZS1ub2RlLTkzIHtcbiAgLmZpZWxkLW5hbWUtYm9keSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5cbmJvZHkuZnJvbnQge1xuICAjZWRnZW9uZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YzRUZFOTtcbiAgfVxufVxuXG4udGlwc3kgeyBmb250LXNpemU6IDEwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcGFkZGluZzogNXB4OyB6LWluZGV4OiAxMDAwMDA7IH1cbiAgLnRpcHN5LWlubmVyIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgY29sb3I6ICNGRkY7IG1heC13aWR0aDogMjAwcHg7IHBhZGRpbmc6IDVweCA4cHggNHB4IDhweDsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgLyogUm91bmRlZCBjb3JuZXJzICovXG4gIC50aXBzeS1pbm5lciB7IGJvcmRlci1yYWRpdXM6IDNweDsgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbiAgLyogVW5jb21tZW50IGZvciBzaGFkb3cgKi9cbiAgLyoudGlwc3ktaW5uZXIgeyBib3gtc2hhZG93OiAwIDAgNXB4ICMwMDAwMDA7IC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDVweCAjMDAwMDAwOyAtbW96LWJveC1zaGFkb3c6IDAgMCA1cHggIzAwMDAwMDsgfSovXG5cbiAgLnRpcHN5LWFycm93IHsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBsaW5lLWhlaWdodDogMDsgYm9yZGVyOiA1cHggZGFzaGVkICMwMDA7IH1cblxuICAvKiBSdWxlcyB0byBjb2xvdXIgYXJyb3dzICovXG4gIC50aXBzeS1hcnJvdy1uIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDsgfVxuICAudGlwc3ktYXJyb3ctcyB7IGJvcmRlci10b3AtY29sb3I6ICMwMDA7IH1cbiAgLnRpcHN5LWFycm93LWUgeyBib3JkZXItbGVmdC1jb2xvcjogIzAwMDsgfVxuICAudGlwc3ktYXJyb3ctdyB7IGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDsgfVxuXG4gIC50aXBzeS1uIC50aXBzeS1hcnJvdyB7IHRvcDogMHB4OyBsZWZ0OiA1MCU7IG1hcmdpbi1sZWZ0OiAtNXB4OyBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDsgYm9yZGVyLXRvcDogbm9uZTsgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnRpcHN5LW53IC50aXBzeS1hcnJvdyB7IHRvcDogMDsgbGVmdDogMTBweDsgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7IGJvcmRlci10b3A6IG5vbmU7IGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDt9XG4gICAgLnRpcHN5LW5lIC50aXBzeS1hcnJvdyB7IHRvcDogMDsgcmlnaHQ6IDEwcHg7IGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkOyBib3JkZXItdG9wOiBub25lOyAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O31cbiAgLnRpcHN5LXMgLnRpcHN5LWFycm93IHsgYm90dG9tOiAwOyBsZWZ0OiA1MCU7IG1hcmdpbi1sZWZ0OiAtNXB4OyBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWJvdHRvbTogbm9uZTsgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC50aXBzeS1zdyAudGlwc3ktYXJyb3cgeyBib3R0b206IDA7IGxlZnQ6IDEwcHg7IGJvcmRlci10b3Atc3R5bGU6IHNvbGlkOyBib3JkZXItYm90dG9tOiBub25lOyAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnRpcHN5LXNlIC50aXBzeS1hcnJvdyB7IGJvdHRvbTogMDsgcmlnaHQ6IDEwcHg7IGJvcmRlci10b3Atc3R5bGU6IHNvbGlkOyBib3JkZXItYm90dG9tOiBub25lOyBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnRpcHN5LWUgLnRpcHN5LWFycm93IHsgcmlnaHQ6IDA7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtNXB4OyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IGJvcmRlci1yaWdodDogbm9uZTsgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC50aXBzeS13IC50aXBzeS1hcnJvdyB7IGxlZnQ6IDA7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtNXB4OyBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkOyBib3JkZXItbGVmdDogbm9uZTsgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbiIsIi8vIENvbnRhaW5lciBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBjb250YWluZXIgZWxlbWVudFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQG1peGluIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgICA6ICRsYXlvdXQ7XG4gICRsYXlvdXQgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcblxuICAkX3dpZHRoICAgICA6IGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG4gICRfanVzdGlmeSAgIDogcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKHN1c3ktZ2V0KGNvbnRhaW5lci1wb3NpdGlvbiwgJGxheW91dCkpO1xuICAkX3Byb3BlcnR5ICA6IGlmKHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpID09IHN0YXRpYywgd2lkdGgsIG1heC13aWR0aCk7XG5cbiAgJF9ib3ggICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkbGF5b3V0KTtcblxuICBAaWYgJF9ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJF9ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChjb250YWluZXIsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgZmxvYXQtY29udGFpbmVyKCRfd2lkdGgsICRfanVzdGlmeSwgJF9wcm9wZXJ0eSk7XG4gIEBpbmNsdWRlIHNob3ctZ3JpZCgkbGF5b3V0KTtcbn1cblxuLy8gQ29udGFpbmVyIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQ6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gIEByZXR1cm4gZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbn1cblxuLy8gR2V0IENvbnRhaW5lciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIHRoZSBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWNvbnRhaW5lci13aWR0aChcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0ICAgICAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICAkX3dpZHRoICAgICAgICAgOiBzdXN5LWdldChjb250YWluZXIsICRsYXlvdXQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRsYXlvdXQpO1xuICAkX21hdGggICAgICAgICAgOiBzdXN5LWdldChtYXRoLCAkbGF5b3V0KTtcblxuICBAaWYgbm90KCRfd2lkdGgpIG9yICRfd2lkdGggPT0gYXV0byB7XG4gICAgQGlmIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpIHtcbiAgICAgICRfY29sdW1ucyAgIDogc3VzeS1nZXQoY29sdW1ucywgJGxheW91dCk7XG4gICAgICAkX2d1dHRlcnMgICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRsYXlvdXQpO1xuICAgICAgJF9zcHJlYWQgICAgOiBpZihpcy1zcGxpdCgkbGF5b3V0KSwgd2lkZSwgbmFycm93KTtcbiAgICAgICRfd2lkdGggICAgIDogc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSAqICRfY29sdW1uLXdpZHRoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF93aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfd2lkdGg7XG59XG5cbi8vIFBhcnNlIENvbnRhaW5lciBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJzZSB0aGUgJGNvbnRhaW5lci1wb3NpdGlvbiBpbnRvIG1hcmdpbiB2YWx1ZXMuXG4vLyAtIFskanVzdGlmeV0gICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodCB8IDxsZW5ndGg+IFs8bGVuZ3RoPl1cbkBmdW5jdGlvbiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oXG4gICRqdXN0aWZ5OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBjb250YWluZXItcG9zaXRpb24pXG4pIHtcbiAgJF9yZXR1cm46IGlmKCRqdXN0aWZ5ID09IGxlZnQsIDAsIGF1dG8pIGlmKCRqdXN0aWZ5ID09IHJpZ2h0LCAwLCBhdXRvKTtcblxuICBAaWYgbm90KGluZGV4KGxlZnQgcmlnaHQgY2VudGVyLCAkanVzdGlmeSkpIHtcbiAgICAkX3JldHVybjogbnRoKCRqdXN0aWZ5LCAxKTtcbiAgICAkX3JldHVybjogJF9yZXR1cm4gaWYobGVuZ3RoKCRqdXN0aWZ5KSA+IDEsIG50aCgkanVzdGlmeSwgMiksICRfcmV0dXJuKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTdXN5IEZhbGxiYWNrIENsZWFyZml4XG4vLyA9PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ2xlYXJmaXhcbi8vIC0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbkBtaXhpbiBzdXN5LWNsZWFyZml4IHtcbiAgQGlmIHN1c3ktc3VwcG9ydChjbGVhcmZpeCwgKG1peGluOiBjbGVhcmZpeCkpIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfSBAZWxzZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG4iLCIuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG5cbn1cbi5zZWxlY3Qtd3JhcHBlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4yNSk7XG4gIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICA6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFOEU4RTg7XG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGNvbG9yOiAjNDQ0NDQzO1xuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICA+LnNlbGVjdGlvbiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAgMTdweCAwIDMwcHg7XG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgICAgY29sb3I6IHJnYmEoIzQ0NDQ0MywgMC41KTtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdXJwbGUgdXJsKC4uLy4uLy4uL2ltYWdlcy9yZWZyZXNoL3N2Zy9hcnJvd19kb3duLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTVweCAxNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzO1xuICAgICAgICBiIHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciB7XG4gIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTc5Nzk3O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTc5Nzk3ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc2VsZWN0Mi1yZXN1bHRzIHtcbiAgICAgIHVsIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgbWF4LWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDIwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgICAgICAgIGNvbG9yOiAjM0MzQzNCO1xuICAgICAgICAgICYuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kO1xuICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpY2stYXJyb3cge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBiYWNrZ3JvdW5kOiAkY29sb3JQdXJwbGUgdXJsKC4uLy4uLy4uL2ltYWdlcy9yZWZyZXNoL3N2Zy9hcnJvd19kb3duLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTVweCAxNnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gICYuc2xpY2stcHJldiB7XG4gICAgdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7XG4gIH1cbiAgJi5zbGljay1uZXh0IHtcbiAgICB0cmFuc2Zvcm06cm90YXRlKC05MGRlZyk7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbmJvZHkuZmFuY3lib3gtYWN0aXZlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5ib2R5LmZhbmN5Ym94LWlvc2ZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLmZhbmN5Ym94LWlzLWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICBsZWZ0OiAtOTk5OXB4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmZhbmN5Ym94LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiA5OTk5MjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiOyB9XG5cbi5mYW5jeWJveC1vdXRlcixcbi5mYW5jeWJveC1pbm5lcixcbi5mYW5jeWJveC1iZyxcbi5mYW5jeWJveC1zdGFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi5mYW5jeWJveC1vdXRlciB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4uZmFuY3lib3gtYmcge1xuICBiYWNrZ3JvdW5kOiAjMWUxZTFlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDAsIDAuNzQsIDAuNzEpOyB9XG5cbi5mYW5jeWJveC1pcy1vcGVuIC5mYW5jeWJveC1iZyB7XG4gIG9wYWNpdHk6IDAuODc7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7IH1cblxuLmZhbmN5Ym94LWluZm9iYXIsXG4uZmFuY3lib3gtdG9vbGJhcixcbi5mYW5jeWJveC1jYXB0aW9uLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpcmVjdGlvbjogbHRyO1xuICB6LWluZGV4OiA5OTk5NztcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMsIHZpc2liaWxpdHkgMHMgbGluZWFyIC4yNXM7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLmZhbmN5Ym94LXNob3ctaW5mb2JhciAuZmFuY3lib3gtaW5mb2Jhcixcbi5mYW5jeWJveC1zaG93LXRvb2xiYXIgLmZhbmN5Ym94LXRvb2xiYXIsXG4uZmFuY3lib3gtc2hvdy1jYXB0aW9uIC5mYW5jeWJveC1jYXB0aW9uLXdyYXAge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMsIHZpc2liaWxpdHkgMHM7IH1cblxuLmZhbmN5Ym94LWluZm9iYXIge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIGNvbG9yOiAjY2NjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xuICBtaXgtYmxlbmQtbW9kZTogZXhjbHVzaW9uOyB9XG5cbi5mYW5jeWJveC10b29sYmFyIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5mYW5jeWJveC1zdGFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpcmVjdGlvbjogbHRyO1xuICB6LWluZGV4OiA5OTk5NDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5mYW5jeWJveC1pcy1jbG9zaW5nIC5mYW5jeWJveC1zdGFnZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5mYW5jeWJveC1zbGlkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDk5OTk0O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eSwgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLmZhbmN5Ym94LXNsaWRlOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAwOyB9XG5cbi5mYW5jeWJveC1pcy1zbGlkaW5nIC5mYW5jeWJveC1zbGlkZSxcbi5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMsXG4uZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQsXG4uZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZmFuY3lib3gtc2xpZGUtLXZpZGVvIC5mYW5jeWJveC1jb250ZW50LFxuLmZhbmN5Ym94LXNsaWRlLS12aWRlbyBpZnJhbWUge1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5mYW5jeWJveC1zbGlkZS0tbWFwIC5mYW5jeWJveC1jb250ZW50LFxuLmZhbmN5Ym94LXNsaWRlLS1tYXAgaWZyYW1lIHtcbiAgYmFja2dyb3VuZDogI0U1RTNERjsgfVxuXG4uZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICB6LWluZGV4OiA5OTk5NTsgfVxuXG4uZmFuY3lib3gtc2xpZGUgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIG1hcmdpbjogNDRweCAwIDQ0cHg7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLmZhbmN5Ym94LXNsaWRlID4gdGl0bGUsXG4uZmFuY3lib3gtc2xpZGUgPiBzdHlsZSxcbi5mYW5jeWJveC1zbGlkZSA+IG1ldGEsXG4uZmFuY3lib3gtc2xpZGUgPiBsaW5rLFxuLmZhbmN5Ym94LXNsaWRlID4gc2NyaXB0LFxuLmZhbmN5Ym94LXNsaWRlID4gYmFzZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZhbmN5Ym94LXNsaWRlIC5mYW5jeWJveC1pbWFnZS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICB6LWluZGV4OiA5OTk5NTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHksIC13ZWJraXQtdHJhbnNmb3JtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLmZhbmN5Ym94LWNhbi16b29tT3V0IC5mYW5jeWJveC1pbWFnZS13cmFwIHtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICBjdXJzb3I6IHpvb20tb3V0OyB9XG5cbi5mYW5jeWJveC1jYW4tem9vbUluIC5mYW5jeWJveC1pbWFnZS13cmFwIHtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjsgfVxuXG4uZmFuY3lib3gtY2FuLWRyYWcgLmZhbmN5Ym94LWltYWdlLXdyYXAge1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5mYW5jeWJveC1pcy1kcmFnZ2luZyAuZmFuY3lib3gtaW1hZ2Utd3JhcCB7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZzsgfVxuXG4uZmFuY3lib3gtaW1hZ2UsXG4uZmFuY3lib3gtc3BhY2ViYWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmZhbmN5Ym94LXNwYWNlYmFsbCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLmZhbmN5Ym94LXNsaWRlLS1pZnJhbWUgLmZhbmN5Ym94LWNvbnRlbnQsIC5mYW5jeWJveC1zbGlkZS0taHRtbCAuZmFuY3lib3gtY29udGVudCB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA4MCU7XG4gIGhlaWdodDogODAlO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gODhweCk7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZmFuY3lib3gtaWZyYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZmFuY3lib3gtZXJyb3Ige1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDM4MHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLmZhbmN5Ym94LWVycm9yIHAge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjNDQ0O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG5cbi8qIEJ1dHRvbnMgKi9cbi5mYW5jeWJveC1idXR0b24ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDMwLCAzMCwgMzAsIDAuNik7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbixcbi5mYW5jeWJveC1idXR0b246dmlzaXRlZCxcbi5mYW5jeWJveC1idXR0b246bGluayB7XG4gIGNvbG9yOiAjY2NjOyB9XG5cbi5mYW5jeWJveC1idXR0b246Zm9jdXMsXG4uZmFuY3lib3gtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbltkaXNhYmxlZF0ge1xuICBjb2xvcjogI2NjYztcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjY7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbiBzdmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgc2hhcGUtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247IH1cblxuLmZhbmN5Ym94LWJ1dHRvbiBzdmcgcGF0aCB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG4gIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gIHN0cm9rZS13aWR0aDogMzsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1zaGFyZSBzdmcgcGF0aCB7XG4gIHN0cm9rZS13aWR0aDogMTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1wbGF5IHN2ZyBwYXRoOm50aC1jaGlsZCgyKSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbi0tcGF1c2Ugc3ZnIHBhdGg6bnRoLWNoaWxkKDEpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS16b29tIHN2ZyBwYXRoIHtcbiAgZmlsbDogdHJhbnNwYXJlbnQ7IH1cblxuLyogTmF2aWdhdGlvbiBhcnJvd3MgKi9cbi5mYW5jeWJveC1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZmFuY3lib3gtc2hvdy1uYXYgLmZhbmN5Ym94LW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmFuY3lib3gtbmF2aWdhdGlvbiBidXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW46IC01MHB4IDAgMCAwO1xuICB6LWluZGV4OiA5OTk5NztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBwYWRkaW5nOiAxN3B4OyB9XG5cbi5mYW5jeWJveC1uYXZpZ2F0aW9uIGJ1dHRvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMzBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMzAsIDMwLCAzMCwgMC42KTsgfVxuXG4uZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19sZWZ0IHtcbiAgbGVmdDogMDsgfVxuXG4uZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19yaWdodCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIENsb3NlIGJ1dHRvbiBvbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiBodG1sIGNvbnRlbnQgKi9cbi5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiA1NHB4O1xuICBoZWlnaHQ6IDU0cHg7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKC4uLy4uLy4uL2ltYWdlcy9yZWZyZXNoL3N2Zy9jbG9zZV9pY29uLnN2ZykgY2VudGVyIG5vLXJlcGVhdDtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICB3aWR0aDogMjdweDtcbiAgICBoZWlnaHQ6IDI3cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgfVxufVxuXG4vLy5mYW5jeWJveC1jbG9zZS1zbWFsbDphZnRlciB7XG4vLyAgY29udGVudDogJ8OXJztcbi8vICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgdG9wOiA1cHg7XG4vLyAgcmlnaHQ6IDVweDtcbi8vICB3aWR0aDogMzBweDtcbi8vICBoZWlnaHQ6IDMwcHg7XG4vLyAgZm9udDogMjJweC8zMHB4IEFyaWFsLFwiSGVsdmV0aWNhIE5ldWVcIixIZWx2ZXRpY2Esc2Fucy1zZXJpZjtcbi8vICBjb2xvcjogIzg4ODtcbi8vICBmb250LXdlaWdodDogMzAwO1xuLy8gIHRleHQtYWxpZ246IGNlbnRlcjtcbi8vICBib3JkZXItcmFkaXVzOiA1MCU7XG4vLyAgYm9yZGVyLXdpZHRoOiAwO1xuLy8gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuLy8gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cztcbi8vICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuLy8gIHotaW5kZXg6IDI7IH1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uZmFuY3lib3gtY2xvc2Utc21hbGw6Zm9jdXM6YWZ0ZXIge1xuICBvdXRsaW5lOiAxcHggZG90dGVkICM4ODg7IH1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmhvdmVyOmFmdGVyIHtcbiAgY29sb3I6ICM1NTU7XG4gIGJhY2tncm91bmQ6ICNlZWU7IH1cblxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZSAuZmFuY3lib3gtY2xvc2Utc21hbGwsXG4uZmFuY3lib3gtc2xpZGUtLWlmcmFtZSAuZmFuY3lib3gtY2xvc2Utc21hbGwge1xuICB0b3A6IC0yN3B4O1xuICByaWdodDogLTI3cHg7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgcmlnaHQ6IC0ycHg7XG4gICAgdG9wOiAtMTNweDtcbiAgfVxufVxuXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlIC5mYW5jeWJveC1jbG9zZS1zbWFsbDphZnRlcixcbi5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jbG9zZS1zbWFsbDphZnRlciB7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgY29sb3I6ICNhYWE7IH1cblxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZSAuZmFuY3lib3gtY2xvc2Utc21hbGw6aG92ZXI6YWZ0ZXIsXG4uZmFuY3lib3gtc2xpZGUtLWlmcmFtZSAuZmFuY3lib3gtY2xvc2Utc21hbGw6aG92ZXI6YWZ0ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLmZhbmN5Ym94LWlzLXNjYWxpbmcgLmZhbmN5Ym94LWNsb3NlLXNtYWxsLFxuLmZhbmN5Ym94LWlzLXpvb21hYmxlLmZhbmN5Ym94LWNhbi1kcmFnIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogQ2FwdGlvbiAqL1xuLmZhbmN5Ym94LWNhcHRpb24td3JhcCB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDYwcHggMnZ3IDAgMnZ3O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCAwJSwgcmdiYSgwLCAwLCAwLCAwLjEpIDIwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDQwJSwgcmdiYSgwLCAwLCAwLCAwLjYpIDgwJSwgcmdiYSgwLCAwLCAwLCAwLjgpIDEwMCUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uZmFuY3lib3gtY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTsgfVxuXG4uZmFuY3lib3gtY2FwdGlvbiBhLFxuLmZhbmN5Ym94LWNhcHRpb24gYnV0dG9uLFxuLmZhbmN5Ym94LWNhcHRpb24gc2VsZWN0IHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBGaXggSUUxMSAqLyB9XG5cbi5mYW5jeWJveC1jYXB0aW9uIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLyogTG9hZGluZyBpbmRpY2F0b3IgKi9cbi5mYW5jeWJveC1zbGlkZSA+IC5mYW5jeWJveC1sb2FkaW5nIHtcbiAgYm9yZGVyOiA2cHggc29saWQgcmdiYSgxMDAsIDEwMCwgMTAwLCAwLjQpO1xuICBib3JkZXItdG9wOiA2cHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiA1MHB4O1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmFuY3lib3gtcm90YXRlIC44cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGFuaW1hdGlvbjogZmFuY3lib3gtcm90YXRlIC44cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zMHB4O1xuICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gIHotaW5kZXg6IDk5OTk5OyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYW5jeWJveC1yb3RhdGUge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtcm90YXRlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7IH0gfVxuXG4vKiBUcmFuc2l0aW9uIGVmZmVjdHMgKi9cbi5mYW5jeWJveC1hbmltYXRlZCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSk7IH1cblxuLyogdHJhbnNpdGlvbkVmZmVjdDogc2xpZGUgKi9cbi5mYW5jeWJveC1meC1zbGlkZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmZhbmN5Ym94LWZ4LXNsaWRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIHRyYW5zaXRpb25FZmZlY3Q6IGZhZGUgKi9cbi5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyxcbi5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuXG4uZmFuY3lib3gtZngtZmFkZS5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogdHJhbnNpdGlvbkVmZmVjdDogem9vbS1pbi1vdXQgKi9cbi5mYW5jeWJveC1meC16b29tLWluLW91dC5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjUsIDEuNSwgMS41KTtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuNSwgMS41LCAxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5mYW5jeWJveC1meC16b29tLWluLW91dC5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNSwgMC41LCAwLjUpO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMC41LCAwLjUsIDAuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiByb3RhdGUgKi9cbi5mYW5jeWJveC1meC1yb3RhdGUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiBjaXJjdWxhciAqL1xuLmZhbmN5Ym94LWZ4LWNpcmN1bGFyLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uZmFuY3lib3gtZngtY2lyY3VsYXIuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLCAwLCAwKSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5mYW5jeWJveC1meC1jaXJjdWxhci5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogdHJhbnNpdGlvbkVmZmVjdDogdHViZSAqL1xuLmZhbmN5Ym94LWZ4LXR1YmUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBzY2FsZSgwLjEpIHNrZXcoLTEwZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2NhbGUoMC4xKSBza2V3KC0xMGRlZyk7IH1cblxuLmZhbmN5Ym94LWZ4LXR1YmUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2NhbGUoMC4xKSBza2V3KDEwZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBzY2FsZSgwLjEpIHNrZXcoMTBkZWcpOyB9XG5cbi5mYW5jeWJveC1meC10dWJlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpOyB9XG5cbi8qIFNoYXJlICovXG4uZmFuY3lib3gtc2hhcmUge1xuICBwYWRkaW5nOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIG1heC13aWR0aDogOTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZhbmN5Ym94LXNoYXJlIGgxIHtcbiAgY29sb3I6ICMyMjI7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgZm9udC1zaXplOiAzNXB4O1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5mYW5jeWJveC1zaGFyZSBwIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnAuZmFuY3lib3gtc2hhcmVfX2xpbmtzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDsgfVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBtYXJnaW46IDAgMTBweCAxMHB4IDA7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgbWluLXdpZHRoOiAxMzBweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzOyB9XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1mYiB7XG4gIGJhY2tncm91bmQ6ICMzYjU5OTg7IH1cblxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLWZiOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzM0NGU4NjsgfVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tcHQge1xuICBiYWNrZ3JvdW5kOiAjYmQwODFkOyB9XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1wdDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNhYTA3MTk7IH1cblxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLXR3IHtcbiAgYmFja2dyb3VuZDogIzFkYTFmMjsgfVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tdHc6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMGQ5NWU4OyB9XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uIHN2ZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbiBzdmcgcGF0aCB7XG4gIGZpbGw6ICNmZmY7IH1cblxuLmZhbmN5Ym94LXNoYXJlX19pbnB1dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggMCAwIDA7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNWQ1YjViO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkN2Q3ZDc7IH1cblxuLyogVGh1bWJzICovXG4uZmFuY3lib3gtdGh1bWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyMTJweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycHggMnB4IDRweCAycHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHotaW5kZXg6IDk5OTk1OyB9XG5cbi5mYW5jeWJveC10aHVtYnMteCB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG4uZmFuY3lib3gtc2hvdy10aHVtYnMgLmZhbmN5Ym94LXRodW1icyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mYW5jeWJveC1zaG93LXRodW1icyAuZmFuY3lib3gtaW5uZXIge1xuICByaWdodDogMjEycHg7IH1cblxuLmZhbmN5Ym94LXRodW1icyA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBmb250LXNpemU6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmZhbmN5Ym94LXRodW1icy14ID4gdWwge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5mYW5jeWJveC10aHVtYnMteSA+IHVsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiA3cHg7IH1cblxuLmZhbmN5Ym94LXRodW1icy15ID4gdWw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cblxuLmZhbmN5Ym94LXRodW1icy15ID4gdWw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogIzJhMmEyYTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG4uZmFuY3lib3gtdGh1bWJzID4gdWwgPiBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDJweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIG1heC13aWR0aDogY2FsYyg1MCUgLSA0cHgpO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5saS5mYW5jeWJveC10aHVtYnMtbG9hZGluZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uZmFuY3lib3gtdGh1bWJzID4gdWwgPiBsaSA+IGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uZmFuY3lib3gtdGh1bWJzID4gdWwgPiBsaTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlcjogNHB4IHNvbGlkICM0ZWE3Zjk7XG4gIHotaW5kZXg6IDk5OTkxO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7IH1cblxuLmZhbmN5Ym94LXRodW1icyA+IHVsID4gbGkuZmFuY3lib3gtdGh1bWJzLWFjdGl2ZTpiZWZvcmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIFN0eWxpbmcgZm9yIFNtYWxsLVNjcmVlbiBEZXZpY2VzICovXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAuZmFuY3lib3gtdGh1bWJzIHtcbiAgICB3aWR0aDogMTEwcHg7IH1cbiAgLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC1pbm5lciB7XG4gICAgcmlnaHQ6IDExMHB4OyB9XG4gIC5mYW5jeWJveC10aHVtYnMgPiB1bCA+IGxpIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpOyB9IH1cbiIsIiNmcm9udC1wYWdlLWhlYWRlciB7XG4gIGhlaWdodDogNTU5cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNDRERERUM7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIHBpY3R1cmUuY29udGFpbmVkLXBpY3R1cmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmZyb250LXBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG59XG5cbiNibG9jay1ibG9jay0xOCB7XG4gIEBpbmNsdWRlIHNwYW4oNSBvZiAxMik7XG4gIHBhZGRpbmctbGVmdDogc3BhbigxKSArIGd1dHRlcigpO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLmJsb2NrLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDQycHg7XG4gICAgbGluZS1oZWlnaHQ6IDUycHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgbWFyZ2luOiA3MHB4IDAgMjBweCAwO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgbWFyZ2luOiAzMHB4IDAgMjBweCAwO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBtYXJnaW46IDMwcHggMCAzMHB4IDA7XG4gICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICBsaW5lLWhlaWdodDogNDRweDtcbiAgICB9XG4gIH1cbiAgLmJsb2NrLWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbiNzZWN0aW9uLXNlbGVjdC1ibG9jayB7XG4gIEBpbmNsdWRlIHNwYW4oNyBvZiAxMiBsYXN0KTtcbiAgcGFkZGluZy1yaWdodDogc3BhbigxKSArIGd1dHRlcigpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxODdweDtcbiAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICBAaW5jbHVkZSBmdWxsO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG59XG5cbnBpY3R1cmUuY29udGFpbmVkLXBpY3R1cmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICAmLnBpY3R1cmUtLWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICB9XG4gIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDE0NjVweCkge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuI3NlbGVjdC1qb2luZWQtZGF0ZS13cmFwcGVyIHtcbiAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5cbi5zZWxlY3Qtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMTBweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICYuc2VsZWN0LXdyYXBwZXItaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID5oMyB7XG4gICAgd2lkdGg6IDE0MXB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuNjRweDtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JQdXJwbGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDExcHggMTZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogNjRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogaW5pdGlhbDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGNvbG9yOiAjM0MzQzNCO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAuc2VsZWN0LXdyYXBwZXItaW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMTtcbiAgICBtaW4taGVpZ2h0OiA2NHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA4MDBweCkge1xuICAgICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4yNSk7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgbWluLWhlaWdodDogNjRweDtcbiAgICB9XG4gIH1cbn1cblxuXG4iLCIvLyBHdXR0ZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09XG5cblxuLy8gR3V0dGVyc1xuLy8gLS0tLS0tLVxuLy8gU2V0IGd1dHRlcnMgb24gYW4gZWxlbWVudC5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQG1peGluIGd1dHRlcnMoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzIDogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfb3V0cHV0OiAoXG4gICAgYmVmb3JlOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSxcbiAgICBhZnRlcjogbWFwLWdldCgkX2d1dHRlcnMsIGFmdGVyKSxcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGd1dHRlcnMsICRpbnNwZWN0KTtcblxuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfVxufVxuXG5AbWl4aW4gZ3V0dGVyKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAaW5jbHVkZSBndXR0ZXJzKCRzcGFuKTtcbn1cblxuXG4vLyBHdXR0ZXJcbi8vIC0tLS0tLVxuLy8gUmV0dXJuIHRoZSB3aWR0aCBvZiBhIGd1dHRlci5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgJHNwYW46IHBhcnNlLWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAkX2d1dHRlcnM6IG1hcC1nZXQoJF9ndXR0ZXJzLCBiZWZvcmUpIG9yIG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlcik7XG5cbiAgQHJldHVybiAkX2d1dHRlcnM7XG59XG5cbkBmdW5jdGlvbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAcmV0dXJuIGd1dHRlcigkc3Bhbik7XG59XG5cblxuLy8gR2V0IEd1dHRlciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGd1dHRlciB3aWR0aC5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlci13aWR0aChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgIDogcGFyc2UtZ3V0dGVycygkY29udGV4dCk7XG5cbiAgJF9ndXR0ZXJzIDogc3VzeS1nZXQoZ3V0dGVycywgJGNvbnRleHQpO1xuICAkX2d1dHRlciAgOiBzdXN5LWdldChndXR0ZXItb3ZlcnJpZGUsICRjb250ZXh0KTtcblxuICBAaWYgJF9ndXR0ZXJzIGFuZCAoJF9ndXR0ZXJzID4gMCkgYW5kIG5vdCgkX2d1dHRlcikge1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRjb250ZXh0KTtcbiAgICAkX21hdGg6IGd1dHRlci1tYXRoKCRjb250ZXh0KTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkX2d1dHRlcjogJF9ndXR0ZXJzICogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX2NvbHVtbnMgOiBzdXN5LWdldChjb2x1bW5zLCAkY29udGV4dCk7XG4gICAgICAkX3NwcmVhZCAgOiBpZihpcy1zcGxpdCgkY29udGV4dCksIHdpZGUsIHN1c3ktZ2V0KHNwcmVhZCwgJGNvbnRleHQpKTtcbiAgICAgICRfZ3V0dGVyICA6IHBlcmNlbnRhZ2UoJF9ndXR0ZXJzIC8gc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSk7XG4gICAgfVxuICB9XG5cbiAgJF9ndXR0ZXI6IGlmKCRfZ3V0dGVyID09ICduby1ndXR0ZXJzJyBvciAkX2d1dHRlciA9PSAnbm8tZ3V0dGVyJywgbnVsbCwgJF9ndXR0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXI7XG59XG5cblxuLy8gR2V0IEd1dHRlcnNcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYmVmb3JlIGFuZCBhZnRlciBndXR0ZXIgdmFsdWVzLlxuLy8gLSBbJGNvbnRleHRdOiA8Y29udGV4dD5cbkBmdW5jdGlvbiBnZXQtZ3V0dGVycyhcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgICAgICAgICAgICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVyLXBvc2l0aW9uICAgOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgICAgICAgICAgICA6IGdldC1ndXR0ZXItd2lkdGgoJGNvbnRleHQpO1xuXG4gICRfcmV0dXJuICAgICAgICAgICAgOiAoYmVmb3JlOiBudWxsLCBhZnRlcjogbnVsbCk7XG5cbiAgQGlmIGlzLXNwbGl0KCRjb250ZXh0KSBhbmQgJF9ndXR0ZXIge1xuICAgICRfZ3V0dGVyOiAkX2d1dHRlciAvIDI7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKGJlZm9yZTogJF9ndXR0ZXIsIGFmdGVyOiAkX2d1dHRlcikpO1xuICB9IEBlbHNlIHtcbiAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoJF9ndXR0ZXItcG9zaXRpb246ICRfZ3V0dGVyKSk7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIElzIEluc2lkZVxuLy8gLS0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgaW5zaWRlLlxuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGlzLWluc2lkZShcbiAgJGNvbnRleHRcbikge1xuICAkX2luc2lkZTogaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfaW5zaWRlLCAkX2d1dHRlci1wb3NpdGlvbiksIHRydWUsIGZhbHNlKTtcbn1cblxuXG4vLyBJcyBTcGxpdFxuLy8gLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBndXR0ZXJzIGFyZSBzcGxpdC5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1zcGxpdChcbiAgJGNvbnRleHRcbikge1xuICAkX3NwbGl0OiBzcGxpdCBpbnNpZGUgaW5zaWRlLXN0YXRpYztcbiAgJF9ndXR0ZXItcG9zaXRpb246IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpO1xuXG4gIEByZXR1cm4gaWYoaW5kZXgoJF9zcGxpdCwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gR3V0dGVyIE1hdGhcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIG1hdGggdG8gdXNlIGZvciBndXR0ZXIgY2FsY3VsYXRpb25zXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ3V0dGVyLW1hdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRfcmV0dXJuICA6IHN1c3ktZ2V0KG1hdGgsICRjb250ZXh0KTtcbiAgJF9yZXR1cm4gIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCkgPT0gaW5zaWRlLXN0YXRpYywgc3RhdGljLCAkX3JldHVybik7XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIiNibG9jay12aWV3cy1sYXRlc3QtcHJvbW90ZWQtbmV3cy1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDRERERUM7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDRERERUM7XG4gIH1cbiAgLmJsb2NrLXRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbiIsIi5yZWQtcHJvbW90ZWQtYmxvY2sge1xuICBtaW4taGVpZ2h0OiAzODBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZDogJGNvbG9yUmVkMjtcbiAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnJlZC1wcm9tb3RlZC1ibG9ja19fYmFubmVyIHtcbiAgICB3aWR0aDogc3Bhbig1KTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JSZWQ7XG4gICAgcGFkZGluZzogNDhweCAyMHB4IDQ0cHggNDFweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vLi4vaW1hZ2VzL3JlZnJlc2gvcHJvbW90ZWQtbmV3cy1wYXR0ZXJuLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAzNHB4IDIwcHg7XG4gICAgfVxuICAgID5oMiB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAubmV3cy1wcm9tb3RlZC1iYW5uZXJfX251bWJlciB7XG4gICAgICBmb250LXNpemU6IDIxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIxOHB4O1xuICAgICAgY29sb3I6ICRjb2xvclJlZDI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNDRweDtcbiAgICAgIGJvdHRvbTogMjVweDtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jcm93bi1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDY3cHg7XG4gICAgICBoZWlnaHQ6IDYxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi8uLi9pbWFnZXMvcmVmcmVzaC9zdmcvY3Jvd24uc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDY3cHggNjFweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDQxcHg7XG4gICAgICBib3R0b206IDQ0cHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgYm90dG9tOiBpbml0aWFsO1xuICAgICAgICB0b3A6IDIzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yZWQtcHJvbW90ZWQtYmxvY2tfX2NvbnRlbnQge1xuICAgIC8vQGluY2x1ZGUgc3Bhbig3IGxhc3QpO1xuICAgIHdpZHRoOiBzcGFuKDcgbGFzdCkgKyBndXR0ZXIoKTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JSZWQyO1xuICAgIHBhZGRpbmc6IDYycHggODFweCA2NnB4IDc3cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDM0cHggMjBweDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gR2V0IGluIHRvdWNoIGJsb2NrIGluIGZvb3RlclxuI2Jsb2NrLWJsb2NrLTE5IHtcbiAgcGFkZGluZy1sZWZ0OiBzcGFuKDEpO1xuICBwYWRkaW5nLXJpZ2h0OiBzcGFuKDEpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIC8vLnJlZC1wcm9tb3RlZC1ibG9ja19fYmFubmVyIHtcbiAgLy8gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gICY6YmVmb3JlIHtcbiAgLy8gICAgY29udGVudDogXCJcIjtcbiAgLy8gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAvLyAgICB0b3A6IDA7XG4gIC8vICAgIGxlZnQ6IC0xMDAlO1xuICAvLyAgICB3aWR0aDogMTAwJTtcbiAgLy8gICAgaGVpZ2h0OiAzNjVweDtcbiAgLy8gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjdmMjtcbiAgLy8gIH1cbiAgLy99XG4gIC8vLnJlZC1wcm9tb3RlZC1ibG9ja19fY29udGVudCB7XG4gIC8vICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vICAmOmFmdGVyIHtcbiAgLy8gICAgY29udGVudDogXCJcIjtcbiAgLy8gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAvLyAgICB0b3A6IDA7XG4gIC8vICAgIHJpZ2h0OiAtMTAwJTtcbiAgLy8gICAgd2lkdGg6IDEwMCU7XG4gIC8vICAgIGhlaWdodDogMzY1cHg7XG4gIC8vICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY3ZjI7XG4gIC8vICB9XG4gIC8vfVxufVxuIiwiI2Jsb2NrLWJsb2NrLTIwIHtcbiAgcGFkZGluZzogNzBweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi8uLi9pbWFnZXMvcmVmcmVzaC9jbG91ZHMtYmcucG5nXCIpIG5vLXJlcGVhdCB0b3AgY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGRpdi1vdmVybGF5LWNvbG9yKCNmOWY3ZjIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmN2YyO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgIHBhZGRpbmc6IDIwcHggNDBweCA0MHB4IDIwcHg7XG4gIH1cbiAgLmJsb2NrLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC40N3B4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgIG1hcmdpbjogMCAwIDY1cHggMDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbjogMCAwIDUwcHggMDtcbiAgICB9XG4gIH1cbiAgLmJsb2NrLWNvbnRlbnQge1xuICAgIHAge1xuICAgICAgJi5yZXNwb25zaXZlLWNlbnRlciB7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpbWcucnRlY2VudGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLnF1aWNrLWxpbmtzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGZ1bGw7XG4gIHBhZGRpbmc6IDU1cHggMCAzMHB4IDA7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgcGFkZGluZzogNTBweCAwIDM0cHggMDtcbiAgfVxuICAucXVpY2stbGlua3MtdGl0bGUge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICBtYXJnaW46IDAgMCA4NHB4IDA7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICB9XG4gIC5xdWljay1saW5rcyB7XG4gICAgQGluY2x1ZGUgc3Bhbig4IG9mIDEyIGxhc3QpO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgd2lkdGg6IHNwYW4oOSBvZiAxMiBsYXN0KTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLnF1aWNrLWxpbmtzX19saW5rIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oMyBvZiA4IGxhc3QpO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5NztcbiAgICAgIHBhZGRpbmc6IDAgMCA0NXB4IDA7XG4gICAgICBtYXJnaW46IDAgMCA0NXB4IDA7XG4gICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5NztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAwIDQwcHggMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucXVpY2stbGlua3NfX2xpbmstdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICB9XG4gIH1cbiAgLnF1aWNrLWxpbmtzX19saW5rLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgbWFyZ2luOiAwIDAgMzVweCAwO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBtYXJnaW46IDAgMCAxN3B4IDA7XG4gICAgfVxuICB9XG4gIC5xdWljay1saW5rc19fbGluay1saW5rIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6ICMzQzNDM0I7XG4gIH1cbn1cbiIsIiNibG9jay1ibG9jay0yMSB7XG4gIHBhZGRpbmc6IDgwcHggMCA0MHB4IDA7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgcGFkZGluZzogNTBweCAwIDQ1cHggMDtcbiAgfVxuICAuYmxvY2stdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDM0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgbWFyZ2luOiAwIDAgODRweCAwO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBtYXJnaW46IDAgMCA1MnB4IDA7XG4gICAgfVxuICB9XG4gIC5ibG9jay1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuICAuZGlkLXlvdS1rbm93IHtcbiAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyIGxhc3QpO1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAwIDUwcHggMDtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwN3B4O1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgICAgfVxuICAgIH1cbiAgICBoMy5kaWQteW91LWtub3dfdGl0bGVfX3RydXN0ZWUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogODhweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTA3cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGgzLmRpZC15b3Uta25vd190aXRsZS0tbWVtYmVycyB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBmb250LXNpemU6IDQ0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDMuZGlkLXlvdS1rbm93X3RpdGxlLS0xMGsge1xuICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDk3cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICB9XG4gIH1cbn1cbiIsIiNibG9jay12aWV3cy12aWRlb3MtYmxvY2stMSB7XG4gIG1hcmdpbjogNDBweCAwIDgwcHggMDtcbiAgcGFkZGluZy1sZWZ0OiBzcGFuKDEpICsgZ3V0dGVyKCk7XG4gIHBhZGRpbmctcmlnaHQ6IHNwYW4oMSkgKyBndXR0ZXIoKTtcbiAgaDIuYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgfVxufVxuXG4vLyBXaXRoIHNsaWRlclxuI2Jsb2NrLXZpZXdzLXZpZGVvcy1ibG9jayB7XG4gIHBhZGRpbmctbGVmdDogc3BhbigxKTtcbiAgcGFkZGluZy1yaWdodDogc3BhbigxKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxuICBoMi5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC52aWV3LWlkLXZpZGVvcyB7XG4gICAgLy9wYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgLy9wYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG4gIC52aWV3LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA5MzBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLnZpZXdzLXJvdyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDcwcHg7XG4gICAgICAmLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAtMTAwcHg7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IC0xMDBweDtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICAgIGJvdHRvbTogLTYwcHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4iLCIuZmFjdHMtZ3JvdXAtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5mYWN0cy1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNjBweCAwIDcwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICB9XG4gICAgLmZhY3RzLWdyb3VwX190aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgMCA4MHB4IDA7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5mYWN0cy1ncm91cF9fZmFjdHMtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmctbGVmdDogc3BhbigxIG9mIDEyKSArIGd1dHRlcigpO1xuICAgICAgcGFkZGluZy1yaWdodDogc3BhbigxIG9mIDEyKSArIGd1dHRlcigpO1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyYueW91ci1iZW5lZml0cyB7XG4gICAgLy8gIGJhY2tncm91bmQtY29sb3I6ICNGM0VGRTk7XG4gICAgLy8gIEBpbmNsdWRlIGJlZm9yZS1jb2xvcigpO1xuICAgIC8vfVxuXG4gICAgJi5pLXdhbnQtdG8ge1xuICAgICAgYmFja2dyb3VuZDogI0Y3QTI5MztcbiAgICAgIC8vQGluY2x1ZGUgYmVmb3JlQ29sb3JIZWlnaHQoMjYwcHgsICNGM0VGRTkpO1xuICAgICAgLmZhY3Qge1xuICAgICAgICAuZmFjdF9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmktd2FudC10by1ibHVlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNCN0M5RTU7XG4gICAgICAvL0BpbmNsdWRlIGJlZm9yZUNvbG9ySGVpZ2h0KDI2MHB4LCAjRUNFQ0VDKTtcbiAgICAgIC5mYWN0X19kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmFjdCB7XG4gICAgd2lkdGg6IHNwYW4oMyBvZiAxMik7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmFjdC1oZWFkZXIge1xuICAgICAgLy8gZmxleDogMSBhdXRvO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgICAuZmFjdF9faW1hZ2Uge1xuICAgICAgbWluLWhlaWdodDogMTUycHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgbWFyZ2luLWJvdHRvbTogMzdweDtcbiAgICB9XG4gICAgLmZhY3RfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgfVxuICAgIC5mYWN0X19kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgICAgLy8gZmxleDogMjtcbiAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICB9XG4gICAgLmZhY3RfX2xpbmsge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYSB7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubGlicmFyeS1ibG9jayB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIG1hcmdpbi1ib3R0b206IDY1cHg7XG59XG5cbi5saWJyYXJ5LXRhYiB7XG4gIGJhY2tncm91bmQ6ICNFQ0VDRUM7XG4gIHBhZGRpbmc6IDI4cHggMTA1cHggMjhweCA4NnB4O1xuICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBwYWRkaW5nOiAyOHB4IDUwcHggMjhweCA1MHB4O1xuICB9XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgcGFkZGluZzogMjhweCAwIDI4cHggMDtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNEQ0RDREE7XG4gICAgaDMubGlicmFyeS10YWJfdGl0bGUge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyAvKiBJRSA5ICovXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgLyogQ2hyb21lLCBTYWZhcmksIE9wZXJhICovXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgzLmxpYnJhcnktdGFiX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvclB1cnBsZSB1cmwoLi4vLi4vLi4vaW1hZ2VzL3JlZnJlc2gvc3ZnL2Fycm93X2Rvd24ucG5nKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgIC8vYmFja2dyb3VuZC1zaXplOiAxNXB4IDE2cHg7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzNnB4O1xuICAgICAgcmlnaHQ6IDM2cHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICB0b3A6IDIxcHg7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgIH1cbiAgfVxuICAubGlicmFyeS1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy9tYXJnaW46IDQwcHggMCAwIDA7XG4gIH1cbiAgLmxpYnJhcnktdGFiX2Rlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDQwcHggMCA0MHB4IDA7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5saWJyYXJ5LXRhYl9jaGlsZHJlbiB7XG4gICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgIC5saWJyYXJ5LXRhYl9jaGlsZHJlbl9fY2hpbGQge1xuICAgICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xuICAgICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNDZweCAwO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxpYnJhcnktbGlua3Mge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5saWJyYXJ5LWxpbmtzX19saW5rIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRENEQ0RBO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBtYXgtaGVpZ2h0OiA5OTllbTtcbiAgICAgIHRyYW5zaXRpb246IC4yNXMgZWFzZTtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIH1cbiAgICAgIC5saW5rLWRhdGUge1xuICAgICAgICB3aWR0aDogMjM1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxpbmstdGl0bGUge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuICAgICAgICBmbGV4OiAyO1xuICAgICAgfVxuICAgICAgLmxpbmstZmlsZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogIzJCMkIyQjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAmLnZpbWVvLXVybC1saW5rIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5saWJyYXJ5LWxpbmtzX19saW5rLS1oaWRkZW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxvYWQtbW9yZS1kb2N1bWVudHMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tIFBhZ2UgYWNjb3JkaW9uXG4ucGFnZS1hY2NvcmRpb24ge1xuICBAaW5jbHVkZSBmdWxsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogNDBweCAwO1xuICAmLmhpZGUtc3F1aXJyZWwge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmFjY29yZGlvbi1yb3cge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgYmFja2dyb3VuZDogI0VDRUNFQztcbiAgICBwYWRkaW5nOiAyOHB4IDg2cHg7XG4gICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgcGFkZGluZzogMjhweCA1MHB4IDI4cHggNTBweDtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDI4cHggMjBweCAyOHB4IDIwcHg7XG4gICAgfVxuICAgICYuYWN0aXZlLCAmLmluaXRpYWwtYWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjRENEQ0RBO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmFjY29yZGlvbi1zZWN0aW9uLXRpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBsaW5lLWhlaWdodDogNDZweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZDogI0VDRUNFQztcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yUHVycGxlIHVybCguLi8uLi8uLi9pbWFnZXMvcmVmcmVzaC9zdmcvYXJyb3dfZG93bi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM2cHggMzZweDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDM2cHg7XG4gICAgICAgIHJpZ2h0OiAzNnB4O1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICAgIHRvcDogMjFweDtcbiAgICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hY3RpdmUsICYuaW5pdGlhbC1hY3RpdmUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgLyogSUUgOSAqL1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgLyogQ2hyb21lLCBTYWZhcmksIE9wZXJhICovXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIC5hY2NvcmRpb24tc2VjdGlvbi10aXRsZSB7XG4gICAgICAvLy8vY29sb3I6ICNmZmY7XG4gICAgICAvL3RleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgLy8mOmFmdGVyIHtcbiAgICAgIC8vICBjb2xvcjogI2ZmZjtcbiAgICAgIC8vfVxuICAgIH1cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgZnVsbDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nOiA4MHB4IDk1cHggNjBweCA5NXB4O1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgcGFkZGluZzogMjRweCAwIDAgMDtcbiAgICAgIH1cbiAgICAgIC5maWVsZC1kZXNjcmlwdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGhyIHtcbiAgICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiA2cHggc29saWQgI2I2OTUzMTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgdWwuYWNjb3JkaW9uLWRvY3VtZW50cy1saXN0IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjYjY5NTMxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGgzLmRvY3VtZW50cy1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgZnVsbDtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYzNjM2I7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMXB4O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLSBQYWdlIGRvY3VtZW50c1xuJHBhZ2VEb2N1bWVudHNGb250Q29sb3VyOiAjMkIyQjJCO1xuXG4ucGFnZS1kb2N1bWVudHMge1xuICBAaW5jbHVkZSBmdWxsO1xuICAvL2JhY2tncm91bmQ6ICM1NzQxODY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM1NzQxODY7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICBwYWRkaW5nOiA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gID5oMiB7XG4gICAgQGluY2x1ZGUgZnVsbDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgbWFyZ2luOiAwIDAgMjFweCAwO1xuICAgIGNvbG9yOiAkcGFnZURvY3VtZW50c0ZvbnRDb2xvdXI7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAyMXB4O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG4gIC5kb2N1bWVudHMtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmdWxsO1xuICAgIC5kb2N1bWVudHMtcm93IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDU1JTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDM2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxOXB4O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgICBAaW5jbHVkZSBmdWxsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgzKSwgJjpudGgtY2hpbGQoNSksICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgbWFyZ2luOiAwIDAgMjdweCAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY29sb3I6ICRwYWdlRG9jdW1lbnRzRm9udENvbG91cjtcbiAgICB9XG4gIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tIERvY3VtZW50IGxpc3RcbnVsLmRvY3VtZW50cy1saXN0IHtcbiAgQGluY2x1ZGUgZnVsbDtcbiAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xuICBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJHBhZ2VEb2N1bWVudHNGb250Q29sb3VyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5hZGRpdGlvbmFsLWluZm8ge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgY29sb3I6ICRwYWdlRG9jdW1lbnRzRm9udENvbG91cjtcbiAgICB9XG4gIH1cbn1cbiIsIi52aWV3LXNlYXJjaCB7XG4gIC52aWV3LWNvbnRlbnQge1xuICAgIC52aWV3LWdyb3VwaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgLnZpZXctZ3JvdXBpbmctaGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgfVxuICAgICAgLnZpZXctZ3JvdXBpbmctY29udGVudCB7XG4gICAgICAgID5oMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgfVxuICAgICAgICAudmlld3Mtcm93IHtcbiAgICAgICAgICBtYXJnaW46IDRweCAwIDRweCAyNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLnJveWFsLXNlYXJjaC1ibG9jayB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDIxN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG4gIC5ibG9jay10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBmb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzVGNUY1RjtcbiAgfVxuXG4gIC52aWV3LXNlYXJjaCB7XG4gICAgLnZpZXctZmlsdGVycyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5saXZlU2VhcmNoSW5wdXROZXcge1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAkY29sb3JQdXJwbGU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHdpZHRoOiAxNTlweDtcbiAgICB9XG4gIH1cblxuICBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JQdXJwbGU7XG4gIH1cblxuICAubGl2ZVNlYXJjaFN1Ym1pdE5ldyB7XG4gICAgd2lkdGg6IDQxcHg7XG4gICAgaGVpZ2h0OiA0MXB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi8uLi8uLi9pbWFnZXMvcmVmcmVzaC9zdmcvc2VhcmNoX2ljb24uc3ZnKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAxOXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5OTk5cHg7XG4gIH1cblxuICAubGl2ZVNlYXJjaFJlc3VsdHNOZXcge1xuICAgIHRvcDogNDNweDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZjJmNGY1O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzU4cHg7XG4gICAgei1pbmRleDogMTAwMTtcbiAgICBwYWRkaW5nOiAycHggM3B4O1xuICAgIGJvcmRlcjogI0Q2RDZENiAxcHggc29saWQ7XG4gICAgdWwge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICNiNjk1MzE7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdGxpZ2h0XCIsIHNhbnMtc2VyaWY7XG5cbiAgICAgICYudmlld0FsbCB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3cy1maWVsZC10aXRsZSB7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0U3RTdFNztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudmlldy1jb250ZW50IHtcbiAgICAgID4gaDMge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdGxpZ2h0XCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFN0U3RTc7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luOiA1cHggMCA1cHggMDtcbiAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLXYyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgPmgzIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDJCNTQ7XG4gICAgcGFkZGluZzogNnB4IDhweDtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogI0U2RTlFQiAxcHggc29saWQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC52aWV3cy1yb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC52aWV3cy1maWVsZC10aXRsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICB9XG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLXNlY3Rpb24ge1xuXG4gICAgfVxuICB9XG59XG5cbi52aWV3cy1zZWFyY2gtdjIge1xuICBtYXJnaW46IDUwcHggMCA1MHB4IDA7XG4gIC52aWV3LWVtcHR5IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG4ubGl2ZS1zZWFyY2gtcGFnZS1maWx0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzVGNUY1RjtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgLnZpZXdzLWV4cG9zZWQtZm9ybSB7XG4gICAgLnZpZXdzLWV4cG9zZWQtd2lkZ2V0cyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC52aWV3cy1leHBvc2VkLXdpZGdldCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5mb3JtLXRleHQge1xuICAgIHdpZHRoOiAyODBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAkY29sb3JQdXJwbGU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHdpZHRoOiAxNTlweDtcbiAgICB9XG4gIH1cblxuICBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JQdXJwbGU7XG4gIH1cblxuICAuZm9ybS1zdWJtaXQge1xuICAgIHdpZHRoOiA0MXB4O1xuICAgIGhlaWdodDogNDFweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi8uLi8uLi9pbWFnZXMvcmVmcmVzaC9zdmcvc2VhcmNoX2ljb24uc3ZnKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAxOXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5OTk5cHg7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJsaWJyYXJpZXMvc2VsZWN0MlwiO1xuQGltcG9ydCBcImxpYnJhcmllcy9zbGlja1wiO1xuQGltcG9ydCBcImxpYnJhcmllcy9mYW5jeWJveFwiO1xuQGltcG9ydCBcImJsb2Nrcy9mcm9udC1wYWdlLWhlYWRlclwiO1xuQGltcG9ydCBcImJsb2Nrcy9sYXRlc3QtbmV3c1wiO1xuQGltcG9ydCBcImJsb2Nrcy9yZWQtcHJvbW90ZWRcIjtcbkBpbXBvcnQgXCJibG9ja3Mvd2hvLWxvb2tzLWFmdGVyLXBlbnNpb25cIjtcbkBpbXBvcnQgXCJibG9ja3MvcXVpY2stbGlua3NcIjtcbkBpbXBvcnQgXCJibG9ja3MvZGlkLXlvdS1rbm93XCI7XG5AaW1wb3J0IFwiYmxvY2tzL3ZpZGVvcy1ibG9ja1wiO1xuQGltcG9ydCBcImJsb2Nrcy9mYWN0c1wiO1xuQGltcG9ydCBcImJsb2Nrcy9saWJyYXJ5LWJsb2NrXCI7XG5AaW1wb3J0IFwiYmxvY2tzL2FjY29yZGlvblwiO1xuQGltcG9ydCBcImJsb2Nrcy9wYWdlLWRvY3VtZW50c1wiO1xuQGltcG9ydCBcImJsb2Nrcy9zZWFyY2hcIjtcblxuLmRvbnQta25vdy1tZXNzYWdlIHtcbiAgbWF4LXdpZHRoOiA2NDBweDtcbiAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuI2Jsb2NrLWJsb2NrLTEyLCAjYmxvY2stYmxvY2stMTEsICNibG9jay1ibG9jay0xNSB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBAbWVkaWEobWF4LXdpZHRoOiAxMTEwcHgpIHtcbiAgICAvL21heC13aWR0aDogMjAwcHg7XG4gICAgbWluLXdpZHRoOiAyMDBweDtcbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiAxMDEwcHgpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYmxvY2stY29udGVudCB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjM2MzYzNiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA4cHggMTBweCA4cHggMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMmFiNmU7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcImVcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250Um95YWxNYWlsO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNDBweCk7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNibG9jay1ibG9jay0xMSB7XG4gIC5ibG9jay1jb250ZW50IHtcbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OGM5OTI7XG4gICAgfVxuICB9XG59XG5cbiNibG9jay1ibG9jay0xNSB7XG4gIC5ibG9jay1jb250ZW50IHtcbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZWFmY2Y7XG4gICAgfVxuICB9XG59XG5cblxuXG4jc2VhcmNoUmVzdWx0cyB7XG4gIEBpbmNsdWRlIGZ1bGw7XG4gIC5zZWFyY2gge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICB9XG4gIC5ncm91cERpdiB7XG4gICAgQGluY2x1ZGUgZnVsbDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgLnNlYXJjaC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4uYmxvY2stc21hbGwge1xuICAvL3BhZGRpbmc6IDI1cHggMzBweDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1YjQ2MztcbiAgYS5ibG9jay1zbWFsbC1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICoge1xuICAgICAgY29sb3I6ICMzQzNDM0I7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgKiB7XG4gICAgICAgIC8vY29sb3I6ICNmZmY7XG4gICAgICAgIC5yZWFkLW1vcmUtYnRuIHtcbiAgICAgICAgICAuZGVmYXVsdC1idXR0b24ge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vLi4vaW1hZ2VzL3N2Zy9hcnJvd19ibGFjazMyeDMyLnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi9pbWFnZXMvc3ZnL2Fycm93X2JsYWNrLnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaDIuYmxvY2stdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgfVxuICAuYmxvY2stY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAucmVhZC1tb3JlLWJ0biB7XG4gICAgc3BhbiwgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiZVwiO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRSb3lhbE1haWw7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0MHB4KTtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmludGVyYWN0aXZlLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24tcm93IHtcbiAgICAuYWNjb3JkaW9uLXNlY3Rpb24tdGl0bGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1YjQ2MztcbiAgICB9XG4gICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgLnNjb2xsLWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIDAuNik7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiZlwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250Um95YWxNYWlsO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmllbGQtZGVzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nOiAyNHB4IDM0cHg7XG4gICAgICB9XG4gICAgfVxuICAgIGhyIHtcbiAgICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiA2cHggc29saWQgIzQ0OTA0ZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLnRvb2x0aXAtZXhwbGFuYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi8uLi9pbWFnZXMvbWFya2VyLnBuZykgbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiAtNnB4IDE1cHggMCAwO1xuICAgIH1cbiAgfVxuICAuaW50ZXJhY3RpdmUtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAubWFya2VyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi8uLi9pbWFnZXMvbWFya2VyLnBuZykgbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAubWFya2VyLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwNTUzYjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0MHB4KTtcbiAgICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgICAgd2lkdGg6IDM3NXB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi9pbWFnZXMvbWVya2VyLXBvcHVwLWFycm93LnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgNzBweCBib3R0b20gMTRweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAtNDBweDtcbiAgICAgICAgfVxuICAgICAgICAmLnBvcy1yaWdodCB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi9pbWFnZXMvbWVya2VyLXBvcHVwLWFycm93LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCAyMHB4IGJvdHRvbSAxNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFnZS1ibG9ja3Mge1xuICBAaW5jbHVkZSBmdWxsO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICAua29sYWItYmxvY2tzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLnBhZ2UtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICY6bnRoLWNoaWxkKDJuKXtcbiAgICAgICAgQGluY2x1ZGUgbGFzdDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hYnNvbHV0ZS1jb250ZW50IHtcbiAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgLy9wYWRkaW5nLXRvcDogNDVweDtcbiAgICAgICAgcGFkZGluZzogMjVweCAyNXB4IDI1cHggMjVweDtcbiAgICAgICAgYm90dG9tOiBpbml0aWFsO1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgcCB7XG4gICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbnRlbnQtYmxvY2staW1hZ2Uge1xuICAgICAgICAvLyBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIC8vIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIC5jb250ZW50LWJsb2NrLWltYWdlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5hYnNvbHV0ZS1jb250ZW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ibG9jay1yZXZzbGlkZXIge1xuICA+LmJsb2NrLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFN0YXRpYyBoZXJvIGltYWdlXG4jYmxvY2sta29sYWItcm95YWwta29sYWItcm95YWwtc3RhdGljLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIGgyLmgyLWxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2xpZGVyLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgLy8gYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAvLyAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAvLyAtbW96LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAvLyAtby1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgLy8gYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB9XG4gIC5iZy1wYXR0ZXJuIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmRpc3BsYXktdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZGlzcGxheS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLmhlcm8tc3RhdGljLWltYWdlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB6LWluZGV4OiAyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTYwMHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmhlcm8tc3RhdGljLWltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IC01MCU7XG4gICAgICB0b3A6IDBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAuaGVyby1zdGF0aWMtaW1hZ2Uge1xuICAgICAgbGVmdDogLTcwJTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgLmhlcm8tc3RhdGljLWltYWdlIHtcbiAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICBsZWZ0OiAtMzAlO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuaGVyby1zdGF0aWMtaW1hZ2Uge1xuICAgICAgbGVmdDogLTY1JTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoI2ZmZiwgMC44KTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC5kaXNwbGF5LWNlbGwge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIDAuNyk7XG4gICAgfVxuICB9XG4gICBAbWVkaWEgKG1heC13aWR0aDogMzMwcHgpIHtcbiAgICAuaGVyby1zdGF0aWMtaW1hZ2Uge1xuICAgICAgbGVmdDogLTEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vIFN0YXRpYyBoZXJvIGltYWdlXG4jYmxvY2sta29sYWItcm95YWwta29sYWItcm95YWwtaGVyby1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgIGhlaWdodDogODIwcHg7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnNsaWRlci13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgICYuaW5mby1ibG9ja3Mge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgLmJsb2NrLXNtYWxsIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuaW5zaWRlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYmctcGF0dGVybiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5pbWFnZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTUyMHB4KSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTNlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTNlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0MjBweCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IC02ZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02ZW07XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzIwcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtOWVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtOWVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTEyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTE2ZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xNmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMThlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTE4ZW07XG4gICAgfVxuICAgIC5oZXJvLXNsaWRlci1pbWFnZSAge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmluc2lkZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBzcGFuKDEwIG9mIDEyKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICBoZWlnaHQ6IDgyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2MHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNwZWFjaC1idWJsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMzc3cHg7XG4gICAgYmFja2dyb3VuZDogI2E3OTZjNyBub25lO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAzNXB4O1xuICAgIHBhZGRpbmc6IDMzcHg7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygyMHB4KTtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDQ0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgfVxuICAgID4gZGl2IHtcbiAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU1MHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgfVxuICAgICAgPiBkaXYge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMCA1MnB4IDUycHggMDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2E3OTZjNyB0cmFuc3BhcmVudDtcbiAgICAgIGhlaWdodDogNTJweDtcbiAgICAgIHdpZHRoOiA1MnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtNTJweDtcbiAgICAgIGxlZnQ6IDEzMnB4O1xuICAgIH1cbiAgfVxuICAuc2xpZGUtaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmJsb2NrLXNtYWxsIHtcbiAgICB3aWR0aDogMzUwcHg7XG4gICAgaGVpZ2h0OiAyNDJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgOHB4IDZweCAtNnB4IGJsYWNrO1xuICAgICAtbW96LWJveC1zaGFkb3c6IDAgOHB4IDZweCAtNnB4IGJsYWNrO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDZweCAtNnB4IGJsYWNrO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgJi5ibG9jay1zbGlkZXItMSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzkwcHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICB9XG5cbiAgICB9XG4gICAgJi5ibG9jay1zbGlkZXItMiB7XG4gICAgICB0b3A6IDI5MHB4O1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICA+IGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAuYWJzb2x1dGUtY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgYm90dG9tOiAwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMCU7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzAlO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIC5yZWFkLW1vcmUtYnRuIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAyMzVweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgei1pbmRleDogMTAxO1xuICAgIHNwYW4ge1xuICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1hZ2VzL2Fycm93LXJpZ2h0LnBuZycpIG5vLXJlcGVhdCAwIDA7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmLnByZXYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2ltYWdlcy9hcnJvdy1sZWZ0LnBuZycpO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgIH1cbiAgfVxuXG59XG5cblxuLy8gT25lIG5ld3Mgb24gc2VjdGlvbiBsYW5kaW5nIHBhZ2Vcbi5uZXdzLWxpc3Qtb25lIHtcbiAgQGluY2x1ZGUgZnVsbDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgLm5vZGUtdGVhc2VyXzIge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICMzNzdkNDI7XG4gICAgLnRpbWUge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OGM5OTI7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgICAgcGFkZGluZzogMTZweCAyMHB4IDE0cHggMjBweDtcbiAgICAgIGNvbG9yOiAjM2MzYzNiO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIEBpbmNsdWRlIGZ1bGw7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgdGltZSB7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICMzYzNjM2I7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig4IG9mIDEyIGxhc3QpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICAgIC8vcGFkZGluZzogMjlweCAzNHB4IDI5cHggMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBAaW5jbHVkZSBmdWxsO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XG4gICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGxpZ2h0O1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogIzNjM2MzYjtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCAwcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcImVcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udFJveWFsTWFpbDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0MHB4KTtcbiAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcHg7XG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vY29sb3I6ICMzNzdENDI7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi9pbWFnZXMvc3ZnL2Fycm93X2JsYWNrMzJ4MzIucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSZXZvbHV0aW9uIHNsaWRlclxuLmJsb2NrLXJldnNsaWRlciB7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgfVxufVxuXG4vLyBQb3B1cCBvbiBjYWxjdWFsdG9yXG4vLyAucG9wdXAtbWFya2VyLW92ZXJsYXkge1xuLy8gICBwb3NpdGlvbjogZml4ZWQ7XG4vLyAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMCwgMC44KTtcbi8vICAgd2lkdGg6IDEwMCU7XG4vLyAgIGhlaWdodDogMTAwJTtcbi8vICAgdG9wOiAwO1xuLy8gICByaWdodDogMDtcbi8vICAgbGVmdDogMDtcbi8vICAgYm90dG9tOiAwO1xuLy8gICB6LWluZGV4OiAxMDA7XG4vLyB9XG5cbiNzbGlkaW5nLXBvcHVwIHtcbiAgaGVpZ2h0OiAxMzBweCAhaW1wb3J0YW50O1xuICAjcG9wdXAtdGV4dCB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuICAucG9wdXAtY29udGVudCB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgICNwb3B1cC10ZXh0IHtcbiAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgIH1cbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiAxMzYwcHgpIHtcbiAgICBoZWlnaHQ6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDogMTA2MHB4KSB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLnBvcHVwLWNvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAjcG9wdXAtdGV4dCwgI3BvcHVwLWJ1dHRvbnMge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbiNrb2xhYi1tb2RlbGxlci1hYi1mb3JtLCAja29sYWItbW9kZWxsZXItYy1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmaWVsZHNldC5mb3JtLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4ucG9wdXAtbWFya2VyIHtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTlweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL21hcmtlci1zbWFsbC5wbmcpIG5vLXJlcGVhdDtcbiAgbWFyZ2luOiAwIDBweCAwIDVweDtcbiAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMztcbiAgICAucG9wdXAtbWFya2VyLWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAucG9wdXAtbWFya2VyLWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdG9wOiA1OXB4O1xuICAgIC8vIGxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuXG4vLyBMaWJyYXJ5XG4ucGFnZS1ub2RlLTExMiwgLnBhZ2Utbm9kZS0xMzIsIC5wYWdlLW5vZGUtMTkyIHtcbiAgLnBhZ2UtZG9jdW1lbnRzIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5cblxuI292ZXJsYXktc3VydmV5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6MDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4zO1xuICB6LWluZGV4OiAxMDBcbn1cbiNzaWRlYmFyLWJveC1zdXJ2ZXkge1xuICB6LWluZGV4OiAxMDE7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IC04MXB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvc3VydmV5L3NtYWxsLWN0YS5wbmdcIikgbm8tcmVwZWF0O1xuICB3aWR0aDogOTVweDtcbiAgaGVpZ2h0OiAxNjJweDtcbn1cbiNwb3B1cF9zdXJ2ZXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMjE1cHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0zNjVweDtcbiAgei1pbmRleDogMTAxO1xuICB3aWR0aDogNzMwcHg7XG4gIGhlaWdodDogNDMwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9zdXJ2ZXkvc3VydmV5LWJnLnBuZ1wiKTtcbiAgcGFkZGluZzogMzBweDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygyMHB4KTtcbiAgQG1lZGlhKG1heC13aWR0aDo5OTBweCkge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW4tbGVmdDogLTMwMHB4O1xuICB9XG4gIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJhY2tncm91bmQ6ICNlMGYxZjQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAjcG9wdXBfc3VydmV5LWlubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAxMjBweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9zdXJ2ZXkvc3F1aXJlZWwucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAzMDdweDtcbiAgICAgIGhlaWdodDogMjE5cHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbiAgLmJveCB7XG4gICAgd2lkdGg6IDMxNXB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDIwcHgpO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcbiAgICAgIHdpZHRoOiAyNjBweDtcbiAgICB9XG4gICAgYmFja2dyb3VuZDogIzUzMjU4MDtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcImVcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwicm95YWwtbWFpbFwiO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zdGFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTQwcHg7XG4gICAgcmlnaHQ6IC0xNTVweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvc3VydmV5L3N0YXIucG5nXCIpIG5vLXJlcGVhdDtcbiAgICB3aWR0aDogNDA4cHg7XG4gICAgaGVpZ2h0OiAzODdweDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOjk5MHB4KSB7XG4gICAgICByaWdodDogLTE5NXB4O1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOjg1MHB4KSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICByaWdodDogLTExNHB4O1xuICAgICAgdG9wOiAtODBweDtcbiAgICAgIHdpZHRoOiAzMDhweDtcbiAgICAgIGhlaWdodDogMjg3cHg7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB3aWR0aDogMjYwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgICAuc3Rhci1pbm5lciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDgwcHg7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOjg1MHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNjBweDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICMwMTAxMDE7XG4gICAgICAgICYuZmlyc3Qge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAxMDEwMTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5zZWNvbmQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAxMDEwMTtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgJi50aGlyZCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDE4cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ODUwcHgpIHtcbiAgICAgICAgICAmLmZpcnN0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5zZWNvbmQsICYudGhpcmQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgICAgICAgJi5maXJzdCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5zZWNvbmQge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLnRoaXJkICB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGEge1xuICAgICAgY29sb3I6ICMwMTAxMDE7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiZ1wiO1xuICAgICAgICBmb250LWZhbWlseTogXCJyb3lhbC1tYWlsXCI7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogM3B4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBFeGNlcHRpb25zXG4gKi9cbi5wYWdlLW5vZGUtNjUsIC5wYWdlLW5vZGUtNjYsIC5wYWdlLW5vZGUtMTcyIHtcbiAgI2Jsb2NrLWtvbGFiLXJveWFsLWtvbGFiLXJveWFsLWhlcm8tc2xpZGVyIHtcbiAgICAuYmxvY2stc2xpZGVyLTEsIC5ibG9jay1zbGlkZXItMiB7XG4gICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgfVxuICAgICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYmxvY2stc2xpZGVyLTEge1xuICAgICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJib2R5IHtcbiAgJi5oYXMtc2Vjb25kLWxldmVsLW1lbnUge1xuICAgIHBhZGRpbmc6IDE0MnB4IDAgMCAwO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDkzMHB4KSB7XG4gICAgICBwYWRkaW5nOiA2OHB4IDAgMCAwO1xuICAgIH1cbiAgICAjaGVhZGVyLXdyYXBwZXIge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLSBIZWFkZXIgd3JhcHBlclxuI2hlYWRlci13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMnB4O1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuNSk7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3JQdXJwbGU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTE7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDkzMHB4KSB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4IDEzcHggMjBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gIH1cbiAgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDEzMTBweCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIGEubG9nbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgQGluY2x1ZGUgc3BhbigzIG9mIDEyKTtcbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAyMTBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIG1heC13aWR0aDogMTY1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yZWdpb24taGVhZGVyIHtcbiAgICBAaW5jbHVkZSBzcGFuKDkgb2YgMTIgbGFzdCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAjYmxvY2stbWVudS1ibG9jay00IHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuICAgICNibG9jay1mcC1saXZlc2VhcmNoLWZwLWxpdmVzZWFyY2gtc2VhcmNoYm94IHtcblxuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA5MzBweCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0gTWFpbiBtZW51XG5ib2R5LmZyb250IHtcbiAgI21lbnUtd3JhcHBlci1zdGlja3kge1xuICAgICNtZW51LXdyYXBwZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgPi5jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5ibG9jay1mcC1saXZlc2VhcmNoIC5saXZlU2VhcmNoUmVzdWx0cyB7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICAgIHRvcDogNDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNtZW51LXdyYXBwZXItc3RpY2t5IHtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjUpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yUHVycGxlO1xuICB6LWluZGV4OiAxMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiA5MnB4O1xuICAuYmxvY2stZnAtbGl2ZXNlYXJjaCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA5MzBweCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDIwcHggYXV0byAwIGF1dG87XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gICAgLmxpdmVTZWFyY2hSZXN1bHRzIHtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIGJvdHRvbTogNDFweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgbGVmdDogLTc5cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgICAgICBsZWZ0OiAtNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI21lbnUtd3JhcHBlci1zdGlja3kge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBAbWVkaWEobWF4LXdpZHRoOiA5MzBweCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDY5cHg7XG4gICAgei1pbmRleDogMTA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA3MHB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDIlLCAwLCAwKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgJi5zdGlja3kge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzO1xuICAgIH1cbiAgfVxufVxuXG4jbWVudS13cmFwcGVyIHtcbiAgLy8gcG9zdCBvZmZpY2Ugc2VjdGlvblxuICAjYmxvY2stbWVudS1ibG9jay01IHtcbiAgICAubWVudS1ibG9jay13cmFwcGVyIHtcbiAgICAgID51bCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgPmxpIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1lbnUtYmxvY2std3JhcHBlciB7XG4gICAgLy8gQ29tbW9uIG1lbnUgc3R5bGVzXG4gICAgdWwge1xuICAgICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNDVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBzcGFuLm1vYmlsZS1hcnJvdyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAvLyBGaXJzdCBsZXZlbFxuICAgID51bCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cbiAgICAgID5saSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc0MTg2O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuICAgICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgPmEge1xuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAvL3dpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgICAgICAgLy9mbG9hdDogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgPnNwYW4ubW9iaWxlLWFycm93IHtcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDkzMHB4KSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9yZWZyZXNoL3N2Zy9hcnJvd19tZW51X2Rvd24uc3ZnKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDIwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUtdHJhaWwsICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1NzQxODY7XG4gICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3MjU5QTg7XG4gICAgICAgICAgfVxuICAgICAgICAgID5hIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgJi5hY3RpdmUtdHJhaWwge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzcyNTlBODtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPmEge1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDEzcHggMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDkzMHB4KSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYWN0aXZlLXRyYWlsIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBOZXN0ZWQgVUxcbiAgICAgICAgPnVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWluLXdpZHRoOiAzOTRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc0MTg2O1xuICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjVweCAwIDMwcHg7XG4gICAgICAgICAgLy8gbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjNTc0MTg2O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweCAwIDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU3NDE4NjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAvLyBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICY6aG92ZXIsICYuYWN0aXZlLXRyYWlsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyNibG9jay1rb2xhYi1yb3lhbC1rb2xhYi1yb3lhbC1zZWN0aW9uLW1lbnUge1xuICAvLyAgLm1lbnUtYmxvY2std3JhcHBlciA+IHVsICB7XG4gIC8vICAgID5saS5hY3RpdmUtdHJhaWwsID5saTpob3ZlciB7XG4gIC8vICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU3NDE4NjtcbiAgLy8gICAgICBAbWVkaWEobWF4LXdpZHRoOiA5MzBweCkge1xuICAvLyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzcyNTlBODtcbiAgLy8gICAgICB9XG4gIC8vICAgICAgPmEge1xuICAvLyAgICAgICAgY29sb3I6ICNmZmY7XG4gIC8vICAgICAgICAmLmFjdGl2ZS10cmFpbCB7XG4gIC8vICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLy8gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gIC8vICAgICAgICB9XG4gIC8vICAgICAgfVxuICAvLyAgICB9XG4gIC8vICB9XG4gIC8vfVxufVxuXG5ib2R5LmFkbWluLW1lbnUge1xuICAjbWVudS13cmFwcGVyLnN0aWNreSB7XG4gICAgdG9wOiAyOXB4XG4gIH1cbn1cblxuLy9Db21tb24gbmF2aWdhdGlvbiBmb3IgYWxsIHNlY3Rpb25zXG4jYmxvY2stbWVudS1ibG9jay00IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB1bCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgICAgIGNvbG9yOiAjNUY1RjVGO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIExpdmUgc2VhcmNoXG5cbi5saXZlU2VhcmNoPmxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNibG9jay1mcC1saXZlc2VhcmNoLWZwLWxpdmVzZWFyY2gtc2VhcmNoYm94LCAuZnVsbFNlYXJjaEJveCwgLmJsb2NrLWZwLWxpdmVzZWFyY2gge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAyMTdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgfVxuICAuYmxvY2stdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgZm9ybSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM1RjVGNUY7XG4gIH1cbiAgLmxpdmVTZWFyY2hJbnB1dCwgLnNlYXJjaC1pbnB1dCB7XG4gICAgd2lkdGg6IDE4MHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgY29sb3I6ICRjb2xvclB1cnBsZTtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgd2lkdGg6IDE1OXB4O1xuICAgIH1cbiAgfVxuICBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JQdXJwbGU7XG4gIH1cbiAgLmxpdmVTZWFyY2hTdWJtaXQsIC5zZWFyY2gtc3VibWl0IHtcbiAgICB3aWR0aDogNDFweDtcbiAgICBoZWlnaHQ6IDQxcHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9yZWZyZXNoL3N2Zy9zZWFyY2hfaWNvbi5zdmcpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDE5cHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDtcbiAgfVxuICAubGl2ZVNlYXJjaFJlc3VsdHMge1xuICAgIHRvcDogNDFweDtcbiAgICByaWdodDogMDtcbiAgICB1bCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogI2I2OTUzMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAmLnZpZXdBbGwge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5mdWxsU2VhcmNoQm94IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA0MDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgLnNlYXJjaC1pbnB1dCB7XG4gICAgd2lkdGg6IDM1OXB4O1xuICB9XG59XG5cbi8vIEhhbWJ1cmdlclxuLmhhbWJ1cmdlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogOTk5OTk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDkzMHB4KSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAucmVzcC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgIGNvbG9yOiAjNTIyNTgwO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA5MjRweCkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbiAgLmJhciB7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZDogIzUyMjU4MDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjtcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XG4gIH1cbn1cblxuLmhhbWJ1cmdlciAuYmFyLmJhcjIsXG4uaGFtYnVyZ2VyIC5iYXIuYmFyMyB7IHRvcDogOXB4IH1cbi5oYW1idXJnZXIgLmJhci5iYXI0IHsgdG9wOiAxOHB4IH1cblxuXG5cbiIsIi5maWVsZC10aXRsZS1zZWN0aW9uLCAudGl0bGUtc2VjdGlvbi13cmFwcGVyIHtcbiAgQGluY2x1ZGUgZnVsbDtcbiAgcGFkZGluZzogMCAwIDIzcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLm5vZGUtdHlwZS1zZWN0aW9uIHtcbiAgLnBhZ2UtdGl0bGUtc3VidGl0bGUtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgfVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAjdGl0bGUtd3JhcHBlciB7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICAgIHBhZGRpbmc6IDc2cHggMCAxNXB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgcGFkZGluZzogNDZweCAyMHB4IDI1cHggMjBweDtcbiAgICB9XG4gICAgLy8mOmJlZm9yZSwgJjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy8gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XG4gICAgLy8gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgd2lkdGg6IDEwMCU7XG4gICAgLy8gIGhlaWdodDogMTAwJTtcbiAgICAvLyAgdG9wOiAwO1xuICAgIC8vfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0xMDAlO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtMTAwJTtcbiAgICB9XG4gICAgaDEjcGFnZS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50aXRsZS1zZWN0aW9uLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA3NnB4O1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICBtYXgtd2lkdGg6IDg0NXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDEzMTBweCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0NnB4O1xuICAgIH1cbiAgICAvLyY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCJcIjtcbiAgICAvLyAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICAvLyAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICB3aWR0aDogMTAwJTtcbiAgICAvLyAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vICBsZWZ0OiAtMTAwJTtcbiAgICAvLyAgdG9wOiAwO1xuICAgIC8vfVxuICAgICY6YWZ0ZXIge1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiAtMTAwJTtcbiAgICB9XG4gIH1cbiAgI25vZGUtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgPi5yZWdpb24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuICAubm9kZS1zZWN0aW9uIHtcbiAgICAmLnZpZXctbW9kZS1mdWxsIHtcblxuICAgIH1cbiAgfVxuXG4gIC8vI2NvbnRlbnQtYWZ0ZXIge1xuICAvLyAgYmFja2dyb3VuZC1jb2xvcjogI0YzRUZFOTtcbiAgLy8gICNibG9jay1ibG9jay0xOSB7XG4gIC8vICAgIC5yZWQtcHJvbW90ZWQtYmxvY2tfX2Jhbm5lciB7XG4gIC8vICAgICAgJjpiZWZvcmUge1xuICAvLyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLy8gICAgICB9XG4gIC8vICAgIH1cbiAgLy8gICAgLnJlZC1wcm9tb3RlZC1ibG9ja19fY29udGVudCB7XG4gIC8vICAgICAgJjphZnRlciB7XG4gIC8vICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAvLyAgICAgIH1cbiAgLy8gICAgfVxuICAvLyAgfVxuICAvL31cbn1cblxuYm9keS5odG1sIHtcbiAgJi5ub2RlLXR5cGUtc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAvLyBQb3N0IG9mZmljZSBzZWN0aW9uIGxhbmRpbmcgcGFnZVxuICAmLnBhZ2Utbm9kZS0yMzYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgI2NvbnRlbnQtYWZ0ZXIge1xuICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5ub2RlLXR5cGUtc2VjdGlvbi1wYWdlIHtcbiAgI3RpdGxlLXdyYXBwZXIge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICBwYWRkaW5nOiA3MHB4IDAgMTVweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDg0NXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDEzMTBweCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMjBweCAxNXB4IDIwcHg7XG4gICAgfVxuICAgIGgxI3BhZ2UtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLXNlY3Rpb24td3JhcHBlciB7XG4gICAgcGFkZGluZzogMCAwIDcwcHggMDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiA4NDVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAxMzEwcHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMzBweCAyMHB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIH1cbiAgfVxuXG4gICNtYWluLXdyYXBwZXIgLmNvbnRhaW5lciB7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gICNub2RlLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGZ1bGw7XG4gIH1cblxuICAuY29udGVudC12aWRlby1yZWZlcmVuY2Uge1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJlZm9yZUNvbG9ySGVpZ2h0KDMzMHB4LCBpbmhlcml0KTtcbiAgfVxuXG4gIC5jb250ZW50LW1haW4taW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTA2NXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBiZWZvcmVDb2xvckhlaWdodCgzMzBweCwgaW5oZXJpdCk7XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5maWVsZC1uYW1lLWJvZHksIC5jb250ZW50Pi5maWVsZC1kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgZnVsbDtcbiAgICBwYWRkaW5nOiA1NXB4IDAgNTVweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDg0NXB4O1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgQGluY2x1ZGUgYmVmb3JlLWNvbG9yKCk7XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIHAge1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhZ2UtdGl0bGUtc3VidGl0bGUtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYmVmb3JlLWNvbG9yKCk7XG59XG4iLCIubm9kZS1uZXdzIHtcbiAgJi5ub2RlLXRlYXNlciB7XG4gICAgLnJlZC1wcm9tb3RlZC1ibG9ja19fYmFubmVyIHtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIC5uZXdzLXRpdGxlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgIG1heC13aWR0aDogMzU1cHg7XG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm5ld3MtZGF0ZSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHggMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAubmV3cy1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgICAgICBwIHtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEudmlldy1hcnRpY2xlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5ub2RlLXNob3J0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDAgNTVweCAwO1xuICAgIG1hcmdpbjogMCAwIDU1cHggMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5NztcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgIC5jb250ZW50IHtcbiAgICAgID4gaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjJweCAwO1xuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB0aW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBtYXJnaW46IDAgMCA1MHB4IDA7XG4gICAgfVxuICAgIC5maWVsZC1kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICAgIH1cbiAgfVxuICAvLyYubm9kZS1zaG9ydCB7XG4gIC8vICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIpO1xuICAvLyAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICMzNzdkNDI7XG4gIC8vICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICAvLyAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gICY6bnRoLWNoaWxkKDJuKSB7XG4gIC8vICAgIEBpbmNsdWRlIGxhc3Q7XG4gIC8vICB9XG4gIC8vICBAbWVkaWEobWF4LXdpZHRoOiA1ODBweCkge1xuICAvLyAgICBAaW5jbHVkZSBmdWxsO1xuICAvLyAgfVxuICAvLyAgLm5ld3MtaW1hZ2Uge1xuICAvLyAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vICAgIGRpc3BsYXk6IGJsb2NrO1xuICAvLyAgICBoZWlnaHQ6IGF1dG87XG4gIC8vICB9XG4gIC8vICB0aW1lIHtcbiAgLy8gICAgQGluY2x1ZGUgZnVsbDtcbiAgLy8gICAgYmFja2dyb3VuZC1jb2xvcjogIzk4Yzk5MjtcbiAgLy8gICAgZm9udC1zaXplOiAyMnB4O1xuICAvLyAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgLy8gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gIC8vICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gICAgcGFkZGluZzogMjZweCAzM3B4IDIwcHggMzNweDtcbiAgLy8gICAgbWFyZ2luOiAwO1xuICAvLyAgICBkaXNwbGF5OiBibG9jaztcbiAgLy8gIH1cbiAgLy8gIC5jb250ZW50IHtcbiAgLy8gICAgQGluY2x1ZGUgZnVsbDtcbiAgLy8gICAgcGFkZGluZzogMjZweCAzM3B4IDIwcHggMzNweDtcbiAgLy8gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgLy8gIH1cbiAgLy8gIGgyIHtcbiAgLy8gICAgZm9udC1zaXplOiAyMnB4O1xuICAvLyAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgLy8gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gIC8vICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAvLyAgfVxuICAvLyAgLmZpZWxkLWRlc2NyaXB0aW9uIHtcbiAgLy8gICAgQGluY2x1ZGUgZnVsbDtcbiAgLy8gICAgcGFkZGluZzogMDtcbiAgLy8gICAgYSB7XG4gIC8vICAgICAgY29sb3I6ICM1NWI0NjM7XG4gIC8vICAgIH1cbiAgLy8gIH1cbiAgLy99XG59XG4iLCIubm9kZS12aWRlbyB7XG4gICYubm9kZS1zaG9ydCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMTVweCAwO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgLmZpZWxkLW5hbWUtZmllbGQtdmllbW8tdXJsIHtcbiAgICAgIGhlaWdodDogMTY3cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBoZWlnaHQ6IDgzcHg7XG4gICAgICB9XG4gICAgICAuZmllbGQtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZpZGVvLWluZm8ge1xuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAudmlkZW8tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgIG1hcmdpbjogMTVweCAwIDAgMDtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnZpZGVvLWR1cmF0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgY29sb3I6ICNCNUI2QjU7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICB9XG4gIH1cbiAgJi5ub2RlLXRlYXNlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLmZpZWxkLW5hbWUtZmllbGQtdmllbW8tdXJsIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgLy9oZWlnaHQ6IDU5N3B4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAucGxheWVyIHtcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgIHBhZGRpbmctYm90dG9tOjU2LjI1JTtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OjA7XG4gICAgICBpZnJhbWUge1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIHRvcDowO1xuICAgICAgICBoZWlnaHQ6MTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAvLy5wbGF5ZXIge1xuICAgIC8vICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vICB3aWR0aDogMTAwJTtcbiAgICAvLyAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLy8gIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC8vICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAvLyAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvLyAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyAgei1pbmRleDogMTtcbiAgICAvLyAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICB0b3A6IDA7XG4gICAgLy8gIGlmcmFtZSB7XG4gICAgLy8gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC8vICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIC8vICB9XG4gICAgLy99XG4gICAgLnZpZGVvLWluZm8ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjQkVBRkNGO1xuICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICM1NzQxODY7XG4gICAgICBwYWRkaW5nOiAxNXB4IDI4cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZpZGVvLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC52aWRlby1kdXJhdGlvbiB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGNvbG9yOiAjM0MzQzNCO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgfVxuICB9XG59XG5cbi5mYW5jeWJveC1jb250ZW50IHtcbiAgLnZpZGVvLWluZm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNCRUFGQ0Y7XG4gICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICM1NzQxODY7XG4gICAgcGFkZGluZzogMTVweCAyOHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgQG1lZGlhKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICB9XG4gIH1cbiAgLnZpZGVvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC52aWRlby1kdXJhdGlvbiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGNvbG9yOiAjM0MzQzNCO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRyZWd1bGFyO1xuICB9XG59XG4iLCIubm9kZS10eXBlLXBhZ2Uge1xuICAjdGl0bGUtd3JhcHBlciB7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICAgIHBhZGRpbmc6IDcwcHggMCAxNXB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogODQ1cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQG1lZGlhKG1heC13aWR0aDogMTMxMHB4KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgcGFkZGluZzogNTBweCAyMHB4IDE1cHggMjBweDtcbiAgICB9XG5cbiAgICBoMSNwYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1zZWN0aW9uLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDAgMCA3MHB4IDA7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIG1heC13aWR0aDogODQ1cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQG1lZGlhKG1heC13aWR0aDogMTMxMHB4KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgcGFkZGluZzogMCAyMHB4IDMwcHggMjBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIH1cbiAgfVxufVxuXG4vLyBOZXdzIHBhZ2UgcmVsYXRlZCBzdHlsZXNcbi5ub2RlLXR5cGUtcGFnZSB7XG4gIC8vIE5ld3MgbGFuZGluZyBwYWdlXG4gICYucGFnZS1ub2RlLTIxOCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAucGFnZS10aXRsZS1zdWJ0aXRsZS13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclJlZDtcbiAgICAgIEBpbmNsdWRlIGJlZm9yZS1jb2xvcigpO1xuICAgICAgI3RpdGxlLXdyYXBwZXIgI3BhZ2UtdGl0bGUsIC50aXRsZS1zZWN0aW9uLXdyYXBwZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gR2V0IGluIHRvdWNoIGJsb2NrXG4gICAgI2Jsb2NrLWJsb2NrLTE5ICB7XG4gICAgICAucmVkLXByb21vdGVkLWJsb2NrX19iYW5uZXIge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJlZC1wcm9tb3RlZC1ibG9ja19fY29udGVudCB7XG4gICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE5ld3NcbiNibG9jay1rb2xhYi1uZXdzLWtvbGFiLW5ld3Mge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgbWF4LXdpZHRoOiAxMDYwcHg7XG4gIHBhZGRpbmc6IDgwcHggMTA4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIEBpbmNsdWRlIGJlZm9yZUNvbG9ySGVpZ2h0KDMyMHB4LCAkY29sb3JSZWQpO1xuICBAbWVkaWEobWF4LXdpZHRoOiA3MDBweCkge1xuICAgIHBhZGRpbmc6IDUwcHggMjBweDtcbiAgfVxuICAjbmV3cy1saXN0LW1haW4ge1xuXG4gIH1cbiAgI2xvYWQtbW9yZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIwNnB4O1xuICB9XG59XG5cbi8vIFVzZWZ1bGwgY29udGFjdCBleGNlcHRpb25cbi5wYWdlLW5vZGUtMjIwIHtcbiAgLnJlZ2lvbi1jb250ZW50IHtcbiAgICAucmVkLXByb21vdGVkLWJsb2NrIHtcbiAgICAgIG1hcmdpbjogNDBweCAwIDUwcHggMDtcbiAgICB9XG4gIH1cbiAgI2NvbnRlbnQtYWZ0ZXIge1xuICAgIC5yZWQtcHJvbW90ZWQtYmxvY2sge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIiNibG9jay1rb2xhYi1yb3lhbC1rb2xhYi1yb3lhbC1zdWJzYWN0aW9uLXN1YnBhZ2VzIHtcbiAgQGluY2x1ZGUgZnVsbDtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gID4uYmxvY2stY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cbiNibG9jay1rb2xhYi1yb3lhbC1rb2xhYi1yb3lhbC1zZWN0aW9uLXN1YnBhZ2VzIHtcbiAgPi5ibG9jay1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stc3VicGFnZSB7XG4gIEBpbmNsdWRlIHNwYW4oNCBvZiAxMik7XG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG4gICY6bnRoLWNoaWxkKDNuKSB7XG4gICAgQGluY2x1ZGUgbGFzdDtcbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMik7XG4gICAgJjpudGgtY2hpbGQoM24pIHtcbiAgICAgIC8vQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgICAgIC8vY2xlYXI6IG5vbmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgIEBpbmNsdWRlIGxhc3Q7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBtZWRpYShtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgQGluY2x1ZGUgZnVsbCgpO1xuICAgIC8vIEBpbmNsdWRlIGRpdi1vdmVybGF5LWNvbG9yKCk7XG4gIH1cbiAgLmFic29sdXRlLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgcGFkZGluZzogMjBweCAyMHB4IDE1cHggMjBweDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICA+LmJsb2NrLWNvbnRlbnQge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgfVxuICBoMi5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIH1cbiAgLmJsb2NrLWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0bGlnaHQ7XG4gIH1cblxuICAucmVhZC1tb3JlLWJ0biB7XG4gICAgc3BhbiwgYSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICAvL3dpZHRoOiA1MXB4O1xuICAgICAgICAvL2hlaWdodDogNTFweDtcbiAgICAgICAgLy9tYXJnaW4tdG9wOiAtMThweDtcbiAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgIC8vdG9wOiAwO1xuICAgICAgICAvL2ZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgLy9saW5lLWhlaWdodDogNTJweDtcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6IDFweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhLmJsb2NrLXNtYWxsLWxpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAvL2hlaWdodDogMTUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgKiB7XG4gICAgICBjb2xvcjogIzNjM2MzYjtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAqIHtcbiAgICAgICAgLy9jb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm5vZGUtc3F1aXJyZWwge1xuICAgIEBpbmNsdWRlIGxhc3Q7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxNTZweDtcbiAgICAgIGhlaWdodDogMTY2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi8uLi9pbWFnZXMvc3F1aXJyZWwucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCUgMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1NnB4IDE2NnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDVweDtcbiAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxufVxuXG5cbiIsImJvZHkge1xuICAmLmJsb2NrLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuLm1nLXBvcHVwIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGJvdHRvbTogMDtcblx0cmlnaHQ6IDA7XG5cdHotaW5kZXg6IDE7XG5cdGJhY2tncm91bmQ6IHJnYmEoMzMsIDMzLCAzMywgMC40KTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwJSkgc2NhbGUoMCk7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcblx0Ji52aXNpYmxlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG5cdFx0ei1pbmRleDogOTk5OTk5O1xuXHR9XG5cdC5tZy1wb3B1cC1pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA2MzBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0cGFkZGluZzogMzBweDtcbiAgICBtYXgtaGVpZ2h0OiA5NSU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cdFx0Ly8gQG1lZGlhIChtYXgtd2lkdGg6IDQyNnB4KSB7XG5cdFx0Ly8gXHR3aWR0aDogOTAlO1xuXHRcdC8vIH1cblx0XHQqPjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cdC5jbG9zZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIHRvcDogMjBweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoLi4vLi4vaW1hZ2VzL2ZlZWRiYWNrL2Nsb3NlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcblx0fVxufVxuXG4jZmVlZGJhY2stbW9kYWwge1xuICAuYmxvY2stdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRsaWdodFwiLCBzYW5zLXNlcmlmO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQ0RDRENEO1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gIH1cbiAgLmJsb2NrLXdlYmZvcm0ge1xuICAgIC5saW5rcyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAubWVzc2FnZXMge1xuICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICB9XG4gIH1cbn1cblxuZm9ybS53ZWJmb3JtLWNsaWVudC1mb3JtIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdGxpZ2h0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjFweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIGNvbG9yOiAjNDM0MzQzO1xuICA+ZGl2Pi5mb3JtLWl0ZW0ge1xuICAgIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLmZvcm0tY2hlY2tib3hlcyB7XG4gICAgPi5mb3JtLWl0ZW0ge1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1pdGVtIHtcbiAgICAmLnJhZGlvLWNvbHVtbiB7XG4gICAgICAuZm9ybS1yYWRpb3Mge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAuZm9ybS1pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuZm9ybS10eXBlLXJhZGlvIHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53ZWJmb3JtLWNvbXBvbmVudCB7XG4gICAgPmxhYmVsIHtcbiAgICAgIG1hcmdpbjogMCAwIDE3cHggMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAuZm9ybS1yZXF1aXJlZCB7XG4gICAgICAgIGNvbG9yOiAjNDM0MzQzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBsYWJlbC5vcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAycHggc29saWQgI0JFQUZDRjtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3Qge1xuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLndlYmZvcm0tY29tcG9uZW50LXJhZGlvcyB7XG4gICAgLmZvcm0tcmFkaW9zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAuZm9ybS1pdGVtIHtcbiAgICAgICAgbWFyZ2luOiAwIDI1cHggMCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgIGlucHV0IHtcbiAgICAgIGJhY2tncm91bmQ6ICM1NzQxODY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNTc0MTg2O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gICAgICBmb250LWZhbWlseTogXCJtb250c2VycmF0cmVndWxhclwiLCBzYW5zLXNlcmlmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgbWluLXdpZHRoOiAyMTNweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1NzQxODY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNTc0MTg2O1xuICAgIH1cbiAgfVxuICAuc2VsZWN0LW11bHRpcGxlLXdyYXBwZXIge1xuICAgIHNlbGVjdCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgI0JFQUZDRjtcbiAgICBjb2xvcjogIzQzNDM0MztcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzOHB4O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSwgYm9yZGVyLWNvbG9yIDAuM3MgZWFzZTtcbiAgICBvcHRpb24ge1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFRkU4RkQ7XG4gICAgICAgIGNvbG9yOiAjNDM0MzQzO1xuICAgICAgfVxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0VGRThGRCBsaW5lYXItZ3JhZGllbnQoMGRlZywgI0VGRThGRCAwJSwgI0VGRThGRCAxMDAlKTtcbiAgICAgICAgY29sb3I6ICM0MzQzNDM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogRm9yIElFIDw9IDExICovXG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHNlbGVjdDpob3ZlcixcbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItY29sb3I6ICNCRUFGQ0Y7XG4gIH1cblxuICAvLyBDaGVja2JveCBzdHlsaW5nXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNDM0MzQzO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBsaW5lYXI7XG4gICAgbWFyZ2luOiAwIDEwcHggLTJweCAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDNweDtcbiAgfVxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9mZWVkYmFjay9jaGVjay5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCAxMHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB9XG5cbiAgLy8gUmFkaW9cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzQzNDM0MztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgbGluZWFyO1xuICAgIG1hcmdpbjogMnB4IDEwcHggMCAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDJweDtcbiAgfVxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2ZlZWRiYWNrL2NoZWNrLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDEwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4jZmVlZGJhY2staWNvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogNDAwcHg7XG4gIGhlaWdodDogNDAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0NDBweCk7XG4gIEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzNDBweCk7XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjQwcHgpO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZmVlZGJhY2stcy1pY29uIHtcbiAgICAmLmZlZWRiYWNrLXMtaWNvbi1hbmltYXRpb24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi5jYnV0dG9uLS1jbGljayB7XG4gICAgYW5pbWF0aW9uLW5hbWU6YW5pbS1tb3ZlO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIH1cbiAgLmZlZWRiYWNrLWljb24tY2xvc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IC0xMHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmIHVybCguLi8uLi9pbWFnZXMvZmVlZGJhY2svY2xvc2Uuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xuICB9XG59XG5cbi8vICNmZWVkYmFjay1pY29uIHtcbi8vICAgcG9zaXRpb246IGZpeGVkO1xuLy8gICB6LWluZGV4OiA5OTk7XG4vLyAgIHJpZ2h0OiAyMHB4O1xuLy8gICBib3R0b206IDIwcHg7XG4vLyAgIHdpZHRoOiA2MHB4O1xuLy8gICBoZWlnaHQ6IDYwcHg7XG4vLyAgIHBhZGRpbmc6IDEwcHg7XG4vLyAgIGJhY2tncm91bmQ6ICNCRUFGQ0YgdXJsKC4uLy4uL2ltYWdlcy9mZWVkYmFjay9zdXJ2ZXkuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xuLy8gICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4vLyAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4vLyAgIGN1cnNvcjogcG9pbnRlcjtcbi8vICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTtcbi8vICAgJi5jYnV0dG9uLS1jbGljayB7XG4vLyAgICAgYW5pbWF0aW9uLW5hbWU6YW5pbS1tb3ZlO1xuLy8gICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4vLyAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4vLyAgIH1cbi8vIH1cblxuLy8gYW5pbWF0aW9uXG5cbi5jYnV0dG9uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luOiAtMzVweCAwIDAgLTM1cHg7XG4gIHdpZHRoOiA3MHB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29udGVudDogJyc7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uY2J1dHRvbi0tZWZmZWN0LWphZ29kYTo6YmVmb3JlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW46IC0yNXB4IDAgMCAtMjVweDtcblx0d2lkdGg6IDUwcHg7XG5cdGhlaWdodDogNTBweDtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb250ZW50OiAnJztcblx0b3BhY2l0eTogMDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jYnV0dG9uLS1lZmZlY3QtamFnb2RhOjphZnRlciB7XG5cdG1hcmdpbjogLTI1cHggMCAwIC0yNXB4O1xuXHR3aWR0aDogNTBweDtcblx0aGVpZ2h0OiA1MHB4O1xufVxuXG4uY2J1dHRvbi0tZWZmZWN0LWphZ29kYTo6YmVmb3JlLFxuLmNidXR0b24tLWVmZmVjdC1qYWdvZGE6OmFmdGVyIHtcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMTExLDE0OCwxODIsMC41KTtcbn1cblxuLmNidXR0b24tLWVmZmVjdC1qYWdvZGEuY2J1dHRvbi0tY2xpY2s6OmJlZm9yZSxcbi5jYnV0dG9uLS1lZmZlY3QtamFnb2RhLmNidXR0b24tLWNsaWNrOjphZnRlciB7XG5cdGFuaW1hdGlvbi1uYW1lOmFuaW0tZWZmZWN0LWphZ29kYS0yLCBhbmltLWVmZmVjdC1qYWdvZGEtMTtcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiAxLjJzO1xuXHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiA1O1xuXHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0YW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cbi5jYnV0dG9uLS1lZmZlY3QtamFnb2RhLmNidXR0b24tLWNsaWNrOjphZnRlciB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xuXHRhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbkBrZXlmcmFtZXMgYW5pbS1tb3ZlIHtcblx0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG5cdH1cblx0MTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBhbmltLWVmZmVjdC1qYWdvZGEtMSB7XG5cdDAlLCAxMDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cdDQwJSwgNjAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgYW5pbS1lZmZlY3QtamFnb2RhLTIge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC41LCAwLjUsIDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjUsIDAuNSwgMSk7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS40LCAxLjQsIDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLjQsIDEuNCwgMSk7XG5cdH1cbn1cblxuIiwiLnNiSG9sZGVye1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGhlaWdodDogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNiSG9sZGVyOmZvY3VzIC5zYlNlbGVjdG9ye1xuXG59XG4uc2JTZWxlY3RvcntcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgbGVmdDogMDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1pbmRlbnQ6IDEwcHg7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2JTZWxlY3RvcjpsaW5rLCAuc2JTZWxlY3Rvcjp2aXNpdGVkLCAuc2JTZWxlY3Rvcjpob3ZlcntcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5zYlRvZ2dsZXtcbiAgYmFja2dyb3VuZDogI2UzYmEzZCB1cmwoJy4uLy4uL2ltYWdlcy9zZWxlY3QtaWNvbnMucG5nJykgY2VudGVyIDAgbm8tcmVwZWF0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA0MHB4O1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA0MHB4O1xufVxuLnNiVG9nZ2xlOmhvdmVye1xuICBiYWNrZ3JvdW5kOiAjZTNiYTNkIHVybCgnLi4vLi4vaW1hZ2VzL3NlbGVjdC1pY29ucy5wbmcnKSBjZW50ZXIgLTQwcHggbm8tcmVwZWF0O1xufVxuLnNiVG9nZ2xlT3BlbntcbiAgYmFja2dyb3VuZDogI2UzYmEzZCB1cmwoJy4uLy4uL2ltYWdlcy9zZWxlY3QtaWNvbnMucG5nJykgY2VudGVyIC00MHB4IG5vLXJlcGVhdDtcbn1cbi5zYkhvbGRlckRpc2FibGVke1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZjZmNmO1xuICAuc2JUb2dnbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlM2JhM2QgdXJsKCcuLi8uLi9pbWFnZXMvc2VsZWN0LWljb25zLnBuZycpIGNlbnRlciAwIG5vLXJlcGVhdDtcbiAgfVxufVxuLnNiSG9sZGVyRGlzYWJsZWQgLnNiSG9sZGVye1xuXG59XG4uc2JIb2xkZXJEaXNhYmxlZCAuc2JUb2dnbGV7XG5cbn1cbi5zYk9wdGlvbnN7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGVmdDogLTFweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMzBweDtcbiAgd2lkdGg6IDIwMHB4O1xuICB6LWluZGV4OiAyO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLnNiT3B0aW9ucyBsaXtcbiAgcGFkZGluZzogMCA3cHg7XG59XG4uc2JPcHRpb25zIGF7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzUxNTE1MTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDdweCAwIDdweCAzcHg7XG59XG4uc2JPcHRpb25zIGE6bGluaywgLnNiT3B0aW9ucyBhOnZpc2l0ZWR7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uc2JPcHRpb25zIGE6aG92ZXIsXG4uc2JPcHRpb25zIGE6Zm9jdXMsXG4uc2JPcHRpb25zIGEuc2JGb2N1c3tcbiAgY29sb3I6ICNlM2JhM2Q7XG59XG4uc2JPcHRpb25zIGxpLmxhc3QgYXtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5zYk9wdGlvbnMgLnNiRGlzYWJsZWR7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzUxNTE1MTtcbiAgY29sb3I6ICM5OTk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA3cHggMCA3cHggM3B4O1xufVxuLnNiT3B0aW9ucyAuc2JHcm91cHtcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjNTE1MTUxO1xuICBjb2xvcjogI0VCQjUyRDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiA3cHggMCA3cHggM3B4O1xufVxuLnNiT3B0aW9ucyAuc2JTdWJ7XG4gIHBhZGRpbmctbGVmdDogMTdweDtcbn1cbiIsIlxuLnBhZ2Utbm9kZS0xMTYsIC5wYWdlLW5vZGUtMTAwIHtcbiAgLnNlY3Rpb24tdHlwZS10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMjBweCAwO1xuICB9XG4gIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIFdlYktpdCwgQmxpbmssIEVkZ2UgKi9cbiAgICBjb2xvcjogICAgIzAwMDtcbiAgfVxuICA6LW1vei1wbGFjZWhvbGRlciB7IC8qIE1vemlsbGEgRmlyZWZveCA0IHRvIDE4ICovXG4gICAgIGNvbG9yOiAgICAjMDAwO1xuICAgICBvcGFjaXR5OiAgMTtcbiAgfVxuICA6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggMTkrICovXG4gICAgIGNvbG9yOiAgICAjMDAwO1xuICAgICBvcGFjaXR5OiAgMTtcbiAgfVxuICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTAtMTEgKi9cbiAgICAgY29sb3I6ICAgICMwMDA7XG4gIH1cbiAgKiB7XG4gICAgb3V0bGluZTogbm9uZVxuICB9XG4gICNibG9jay1rb2xhYi1tb2RlbGxlci1rb2xhYi1tb2RlbGxlci1jLCAjYmxvY2sta29sYWItbW9kZWxsZXIta29sYWItbW9kZWxsZXItYWIge1xuICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xuICB9XG5cbiAgI3Jlc3VsdC1tb2RlbGxlciB7XG4gICAgYmFja2dyb3VuZDogI2UzYmEzZDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI2I2OTUzMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDE3OHB4O1xuICAgICAgaGVpZ2h0OiAxNzBweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9tb2RlbGxlci9zcXVpcnJlbC1yZXN1bHQucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gICAgfVxuICAgICNyZXN1bHQtbW9kZWxsZXItaW5uZXIge1xuICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgICAgbWF4LXdpZHRoOiA2NDBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaDIge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0cmVndWxhcjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICB9XG4gICAgICAucmVzdWx0LWJveCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBjb2xvcjogI2I2OTUzMTtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRib2xkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICA+IGxlZ2VuZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTNiYTNkO1xuICAgICAgcGFkZGluZzogMjBweCAyMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIGZpZWxkc2V0IHtcbiAgICAgID4gbGVnZW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXRsaWdodDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgICAuZmllbGRzZXQtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmZpZWxkc2V0LXdyYXBwZXIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICB9XG5cbiAgICAjZWRpdC1zdWJtaXQtYnV0dG9uIHtcbiAgICAgICYuZXJyb3ItY3VzdG9tIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDAwMDtcbiAgICAgIH1cbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdHJlZ3VsYXI7XG4gICAgICB3aWR0aDogMjYwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmc6IDEwcHggNTZweCAxMHB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTNiYTNkIHVybChcIi4uLy4uL2ltYWdlcy9tb2RlbGxlci9idXR0b24taWNvbi5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cbiAgI2VkaXQtcG90ZW50aWFsLXNlcnZpY2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gICNlZGl0LWFib3V0LXlvdXItcGVuc2lvbiB7XG4gICAgLmZpZWxkc2V0LXdyYXBwZXIge1xuICAgICAgPi5mb3JtLWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIpO1xuICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMiBsYXN0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjZWRpdC1jYWxjdWxhdGUtcGVuc2lvbiB7XG4gICAgYmFja2dyb3VuZDogI2VjZWNlYyB1cmwoXCIuLi8uLi9pbWFnZXMvbW9kZWxsZXIvc3F1aXJyZWwucG5nXCIpIG5vLXJlcGVhdCBib3R0b20gbGVmdDtcbiAgICBwYWRkaW5nOiAwIDAgMTUwcHggMDtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI2I2OTUzMTtcbiAgfVxuICAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW46IDAgMCA1MHB4IDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWluLXdpZHRoOiAxMTVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAuZm9ybS1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0bGlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgcGFkZGluZy10b3A6IDExcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTFweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICAgIC8vcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTNiYTNkO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBmb250LWZhbWlseTogJGZvbnRNb250c2VycmF0Ym9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG4gICAgJi5mb3JtLXR5cGUtZGF0ZS1zZWxlY3QsICYuZm9ybS10eXBlLXNlbGVjdCB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXNlbGVjdCB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb250YWluZXItaW5saW5lLWRhdGUge1xuICAgIGNsZWFyOiBub25lO1xuICAgID4gLmZvcm0taXRlbSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC5kYXRlLXBhZGRpbmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAuZGF0ZS1tb250aCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAuZGF0ZS1kYXkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgLmRhdGUteWVhciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0tdHlwZS1zZWxlY3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG4gIC5lcnJvci1jdXN0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBzcGFuLmVycm9yIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgbWluLXdpZHRoOiAxNDBweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgY29sb3I6ICNmZjAwMDA7XG4gICAgfVxuICAgIC5zYlNlbGVjdG9yLCBpbnB1dCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmYwMDAwO1xuICAgIH1cbiAgfVxuICAja29sYWItbW9kZWxsZXItYy1mb3JtIHtcbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1iaXJ0aCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIpO1xuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1nZW5kZXIge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyIGxhc3QpO1xuICAgICAgc3Bhbi5lcnJvciB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgfVxuICAgICAgLnNiSG9sZGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0taXRlbS5mb3JtLWl0ZW0tc3RhdGUtcGVuc2lvbi1hZ2Uge1xuICAgICAgQGluY2x1ZGUgc3BhbigxMiBvZiAxMik7XG4gICAgICAuYWJvdXQtbGluayB7XG4gICAgICAgIGNvbG9yOiAjYjY5NTMxO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICAgIC5zYkhvbGRlciB7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb3JtLWl0ZW0tY3NkYi1wZW5zaW9uLWF0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMik7XG5cbiAgICB9XG4gICAgLmZvcm0taXRlbS5mb3JtLWl0ZW0tY3NkYi1zdXBwbGVtZW50LWF0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNSBvZiAxMiBsYXN0KTtcblxuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1qb2luZWQtc2NoZW1lIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMik7XG4gICAgfVxuICAgIC5mb3JtLWl0ZW0uZm9ybS1pdGVtLW5yZC02NSB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIgbGFzdCk7XG4gICAgfVxuICAgIC5mb3JtLWl0ZW0uZm9ybS1pdGVtLXBvdGVudGlhbC1zZXJ2aWNlLXl5IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1wb3RlbnRpYWwtc2VydmljZS1kZCB7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1pdGVtLXN0YXJ0LXBlbnNpb24ge1xuICAgICAgc3Bhbi5lcnJvciB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgfVxuICAgICAgLnNiSG9sZGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1lc3NhZ2VzLmVycm9yLCAuc3VjY2VzcywgLmluZm8sIC5ub3RpY2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbiAgI2tvbGFiLW1vZGVsbGVyLWFiLWZvcm0ge1xuICAgIC5mb3JtLWl0ZW0uZm9ybS1pdGVtLWJpcnRoIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMik7XG4gICAgfVxuICAgIC5mb3JtLWl0ZW0uZm9ybS1pdGVtLWdlbmRlciB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIgbGFzdCk7XG4gICAgICBzcGFuLmVycm9yIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICB9XG4gICAgICAuc2JIb2xkZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1pdGVtLWNzZGItcGVuc2lvbi1hdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIpO1xuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1jc2RiLWxzIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNSBvZiAxMiBsYXN0KTtcbiAgICB9XG4gICAgLmZvcm0taXRlbS5mb3JtLWl0ZW0tam9pbmVkLXNjaGVtZSB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIpO1xuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1ucmQtNjUge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgICAuZm9ybS1pdGVtLmZvcm0taXRlbS1wb3RlbnRpYWwtc2VydmljZS15eSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0taXRlbS5mb3JtLWl0ZW0tcG90ZW50aWFsLXNlcnZpY2UtZGQge1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0taXRlbS1zdGFydC1wZW5zaW9uIHtcbiAgICAgIHNwYW4uZXJyb3Ige1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgICAgIC5zYkhvbGRlciB7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZXNzYWdlcy5lcnJvciwgLnN1Y2Nlc3MsIC5pbmZvLCAubm90aWNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5AbWVkaWEobWF4LXdpZHRoOiAxMTUwcHgpIHtcbiAgI3Jlc3VsdC1tb2RlbGxlciB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbkBtZWRpYShtYXgtd2lkdGg6IDExNTBweCkge1xuICAucGFnZS1ub2RlLTExNiwgLnBhZ2Utbm9kZS0xMDAge1xuICAgICNrb2xhYi1tb2RlbGxlci1jLWZvcm0ge1xuXG4gICAgfVxuICAgICNrb2xhYi1tb2RlbGxlci1hYi1mb3JtIHtcbiAgICAgIC5mb3JtLWl0ZW0tY3NkYi1wZW5zaW9uLWF0IHtcbiAgICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgICAgIH1cbiAgICAgIC5mb3JtLWl0ZW0tY3NkYi1scyB7XG4gICAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMiBsYXN0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBtZWRpYShtYXgtd2lkdGg6IDkxNXB4KSB7XG4gIC5wYWdlLW5vZGUtMTE2LCAucGFnZS1ub2RlLTEwMCB7XG4gICAgI2tvbGFiLW1vZGVsbGVyLWMtZm9ybSB7XG4gICAgICAuZm9ybS10eXBlLXNlbGVjdC5mb3JtLWl0ZW0tZ2VuZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5AbWVkaWEobWF4LXdpZHRoOiA4NjBweCkge1xuICAucGFnZS1ub2RlLTExNiwgLnBhZ2Utbm9kZS0xMDAge1xuICAgICNrb2xhYi1tb2RlbGxlci1jLWZvcm0ge1xuICAgICAgLmZvcm0taXRlbS1jc2RiLXBlbnNpb24tYXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5AbWVkaWEobWF4LXdpZHRoOiA2NTBweCkge1xuICAucGFnZS1ub2RlLTEwMCwgLnBhZ2Utbm9kZS0xMTYge1xuICAgICNrb2xhYi1tb2RlbGxlci1hYi1mb3JtLCAja29sYWItbW9kZWxsZXItYy1mb3JtIHtcbiAgICAgIC5mb3JtLXR5cGUtc2VsZWN0LmZvcm0taXRlbS1nZW5kZXIsIC5mb3JtLWl0ZW0tY3NkYi1wZW5zaW9uLWF0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgIH1cbiAgICAgIC5mb3JtLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAmLmZvcm0taXRlbS1wb3RlbnRpYWwtc2VydmljZS15eSwgJi5mb3JtLWl0ZW0tcG90ZW50aWFsLXNlcnZpY2UtZGQge1xuICAgICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ja29sYWItbW9kZWxsZXItYWItZm9ybSwgI2tvbGFiLW1vZGVsbGVyLWMtZm9ybSB7XG4gLnBvcHVwLW1hcmtlciB7XG4gICBkaXNwbGF5OiBub25lO1xuIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/