/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

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

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

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

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

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

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

section.form-section {
  position: relative;
  background-color: #F2F2F2;
}
section.form-section .container {
  padding: 40px 50px 50px;
}
section.form-section .container .form {
  box-sizing: border-box;
  max-width: 900px;
  margin: 0 auto;
  padding: 40px 60px 50px;
  background-color: #fff;
}
@media screen and (max-width: 1000px) {
  section.form-section .container {
    padding: 40px 0;
  }
}
@media screen and (max-width: 750px) {
  section.form-section .container {
    padding: 20px 0;
  }
  section.form-section .container .form {
    padding-top: 30px;
    padding-right: 40px;
    padding-left: 40px;
  }
  section.form-section .container .form h2 {
    margin-top: 20px;
  }
}
@media screen and (max-width: 500px) {
  section.form-section .container .form {
    padding-bottom: 40px;
    padding-right: 26px;
    padding-left: 26px;
  }
  section.form-section .container .form h2 {
    margin-top: 0px;
  }
}

#gform_submit_button_1,
#gform_submit_button_2 {
  background-color: #E03D28;
  text-transform: uppercase;
  width: 200px;
}
#gform_submit_button_1:hover,
#gform_submit_button_2:hover {
  background-color: #f32f15;
}
@media screen and (max-width: 500px) {
  #gform_submit_button_1,
  #gform_submit_button_2 {
    width: 100%;
  }
}

/* Align Right */
.alignright {
  float: right;
  margin: 0 0 1em 1em;
}

/* Align Left */
.alignleft {
  float: left;
  margin: 0 1em 1em 0;
}

/* Align Center */
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1em;
}

/* Align None */
.alignnone {
  margin: 0 0 1em 0;
}

/* Image with Caption */
.wp-caption {
  text-align: center;
  margin: 0 auto;
  padding: 0;
  border: 1px solid #ddd;
  background: #f9f9f9;
}

.wp-caption img {
  margin: 0;
  padding: 0;
  border: none;
}

.wp-caption p.wp-caption-text {
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
  padding: 5px 0;
}

/* Full Width Image */
.size-full {
  width: 100%;
  height: auto;
}

/* Custom Styling for Responsive Images */
img {
  max-width: 100%;
  height: auto;
}

figure {
  margin: 0 0 1em 0;
}

figcaption {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 0.5em;
  color: #555;
  text-align: center;
}

.faq {
  padding: 50px 20px;
  max-width: 800px;
  margin: 0 auto;
  height: 100%;
  overflow: hidden;
  /* Ensure the FAQ buttons follow the same styling */
}
.faq .container h2 {
  margin-bottom: 26px;
}
.faq .container * {
  box-sizing: border-box;
}
.faq .container *::before, .faq .container *::after {
  box-sizing: border-box;
}
.faq .container .faq-accordion .faq-accordion-item {
  border-bottom: 1px solid #e7e7e7;
}
.faq .container .faq-accordion .faq-accordion-item:last-of-type {
  border: none;
}
.faq .container .faq-accordion button {
  position: relative;
  display: block;
  text-align: left;
  text-wrap: pretty;
  font-weight: 600;
  width: 100%;
  padding: 20px 0;
  padding-right: 40px;
  border: none;
  background: none;
  outline: none;
}
.faq .container .faq-accordion button:hover, .faq .container .faq-accordion button:focus {
  cursor: pointer;
  color: #E03D28;
}
.faq .container .faq-accordion button:hover .icon, .faq .container .faq-accordion button:focus .icon {
  filter: invert(30%) sepia(100%) saturate(1323%) hue-rotate(342deg) brightness(88%) contrast(100%);
}
.faq .container .faq-accordion button .icon {
  display: inline-block;
  position: absolute;
  top: 25px;
  right: 0;
  width: 14px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.693' height='11.027' viewBox='0 0 11.693 11.027'%3E%3Cpath id='Path_135' data-name='Path 135' d='M8.18.423,7.009-.736l3.507-3.507H2v-1.7h8.516l-3.507-3.5L8.18-10.6l5.514,5.514Z' transform='translate(-2 10.604)' fill='%237e7e7e'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.3s ease;
}
.faq .container .faq-accordion button[aria-expanded=true] {
  color: #E03D28;
}
.faq .container .faq-accordion button[aria-expanded=true] .icon {
  transform: rotate(90deg);
  filter: invert(30%) sepia(100%) saturate(1323%) hue-rotate(342deg) brightness(88%) contrast(100%);
}
.faq .container .faq-accordion button[aria-expanded=true] + .faq-accordion-content {
  opacity: 1;
  max-height: 9em;
  transition: all 200ms linear;
  will-change: opacity, max-height;
}
.faq .container .faq-accordion .faq-accordion-content {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  margin-bottom: 20px;
  margin-top: -20px;
  transition: opacity 200ms linear, max-height 200ms linear;
  will-change: opacity, max-height;
}
.faq #faq-accordion-button {
  color: #000;
}
.faq #faq-accordion-button:hover, .faq #faq-accordion-button[aria-expanded=true] {
  color: #E03D28;
}

footer.footer .footer-mobile {
  display: none;
}
footer.footer .footer-basic {
  background-color: #fff;
  padding-top: 40px;
  padding-bottom: 60px;
}
footer.footer .footer-basic .container {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
footer.footer .footer-basic .container .footer-logo img {
  object-fit: contain;
  height: 110px;
  width: 100%;
}
footer.footer .footer-basic .container .footer-links-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 200px);
  gap: 50px;
}
footer.footer .footer-basic .container .footer-links-wrapper .footer-column {
  min-width: fit-content;
}
footer.footer .footer-basic .container .footer-links-wrapper .footer-column:first-of-type {
  justify-content: start;
}
footer.footer .footer-basic .container .footer-links-wrapper .footer-column__label {
  text-transform: uppercase;
  text-wrap: nowrap;
  font-weight: 700;
  font-size: 18px;
  margin: 0;
  margin-bottom: 12px;
}
footer.footer .footer-basic .container .footer-links-wrapper .footer-column__content {
  display: flex;
  flex-direction: column;
  font-size: 18px;
}
footer.footer .footer-basic .container .footer-links-wrapper .footer-column__content .footer-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
  text-decoration: none;
  color: #000;
  transition: color 0.15s ease-out;
}
footer.footer .footer-basic .container .footer-links-wrapper .footer-column__content .footer-link:hover {
  color: #E03D28;
}
@media screen and (max-width: 980px) {
  footer.footer .footer-basic .container {
    display: block;
    text-align: center;
  }
  footer.footer .footer-basic .container .footer-links-wrapper {
    grid-template-columns: repeat(3, 1fr);
    margin-top: 40px;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-content: center;
    width: fit-content;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column__label {
    text-align: left;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column__content {
    align-self: center;
    text-align: center;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column__content .footer-link {
    text-align: left;
  }
}
@media screen and (max-width: 700px) {
  footer.footer .footer-basic .container .footer-links-wrapper {
    display: block;
    text-align: center;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column {
    margin-bottom: 30px;
    width: 250px;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column__label {
    text-align-last: center;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column__center .footer-link {
    display: block !important;
    text-align: center;
  }
}
@media screen and (max-width: 500px) {
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column-3 .footer-column__label {
    flex-grow: 1;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column-3 .footer-column__content {
    flex-direction: row;
    gap: 10px;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column-3 .footer-column__content svg {
    height: 30px;
    width: 30px;
    transition: fill 150ms;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column-3 .footer-column__content svg:hover {
    fill: #E03D28;
  }
  footer.footer .footer-basic .container .footer-links-wrapper .footer-column-3 .footer-column__content .footer-link span {
    display: none;
  }
}
footer.footer .footer-credits {
  text-align: center;
  font-size: 14px;
}
@media screen and (max-width: 550px) {
  footer.footer .footer-basic {
    padding-bottom: 12px;
  }
  footer.footer .footer-credits {
    padding-bottom: 20px;
  }
}

header.header {
  position: relative;
  width: 100%;
  z-index: 100;
  background-color: #000;
}
header.header .container .mobile-header {
  display: none;
  text-align: center;
  background-color: #000;
}
header.header .container .mobile-header img {
  height: 50px;
  object-fit: contain;
}
header.header .container .desktop-header {
  display: flex;
  justify-content: end;
  align-items: center;
  gap: 20px;
  position: relative;
  padding-top: 12px;
  padding-bottom: 12px;
}
header.header .container .desktop-header::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  height: 100px;
  width: 50%;
  background-color: #000;
}
header.header .container .desktop-header .logo {
  flex-shrink: 0;
  background-color: #000;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 178px;
  height: 93px;
  padding-top: 7px;
}
header.header .container .desktop-header__menu {
  display: flex;
  gap: 50px;
}
@media screen and (max-width: 950px) {
  header.header .container .desktop-header__menu nav {
    display: none;
  }
}
header.header .container .desktop-header__menu nav ul.menu {
  display: flex;
  gap: 50px;
  list-style: none;
  padding: 0;
  margin: 0;
}
header.header .container .desktop-header__menu nav ul.menu li.menu-item-has-children {
  position: relative;
}
header.header .container .desktop-header__menu nav ul.menu li.menu-item {
  transition: opacity 0.15s ease;
}
header.header .container .desktop-header__menu nav ul.menu li.menu-item:hover ul {
  opacity: 1;
  pointer-events: unset;
}
header.header .container .desktop-header__menu nav ul.menu li.menu-item a {
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 0.18px;
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
  padding-bottom: 10px;
  padding-top: 10px;
  position: relative;
  transition: color 0.15s ease;
}
header.header .container .desktop-header__menu nav ul.menu li.menu-item a svg {
  fill: #000;
  height: 12px;
  width: 11px;
}
header.header .container .desktop-header__menu nav ul.menu li.menu-item a svg path {
  fill: #000;
  transition: fill 0.15s ease;
}
header.header .container .desktop-header__menu nav ul.menu > li:hover > a {
  color: #E03D28;
}
header.header .container .desktop-header__menu nav ul.menu > li:hover > a svg path {
  fill: #E03D28;
}
header.header .container .desktop-header__menu nav ul.menu ul.sub-menu {
  position: absolute;
  background-color: #F2F2F2;
  opacity: 0;
  pointer-events: none;
  margin: 0;
  top: 100%;
  right: 0;
  padding: 0;
  opacity: 0;
}
header.header .container .desktop-header__menu nav ul.menu ul.sub-menu li {
  list-style: none;
  width: 200px;
  position: relative;
  transition: opacity 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}
header.header .container .desktop-header__menu nav ul.menu ul.sub-menu li a {
  border-bottom: 0px solid transparent !important;
  color: #000;
  font-size: 16px;
  letter-spacing: 0.01em;
  padding: 10px 20px;
  transition: color 0.15s ease;
}
header.header .container .desktop-header__menu nav ul.menu ul.sub-menu li:hover {
  background-color: #E03D28;
  opacity: 1;
}
header.header .container .desktop-header__menu nav ul.menu ul.sub-menu li:hover a {
  color: #fff;
}
@media screen and (max-width: 1245px) {
  header.header .container .desktop-header__menu {
    gap: 40px;
  }
  header.header .container .desktop-header__menu nav ul.menu {
    gap: 40px;
  }
}
@media screen and (max-width: 950px) {
  header.header .container .desktop-header {
    display: none;
  }
}
@media screen and (max-width: 950px) {
  header.header .container {
    margin: 0;
  }
  header.header .container .mobile-header {
    padding-top: 12px;
    padding-bottom: 12px;
    display: block;
    text-align: left;
  }
  header.header .container .mobile-header a img {
    display: block;
  }
}

body.mobilemenu-active {
  position: relative;
  min-height: 100vh;
}
body.mobilemenu-active .mobilemenu-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(57, 255, 87, 0.3);
  z-index: 998;
  opacity: 0;
  transition: opacity 150ms;
}
body.mobilemenu-active .mobilemenu-wrapper.active:after {
  opacity: 1;
}

.mobilemenu {
  position: relative;
  z-index: 999;
  font-family: "Roboto", sans-serif;
  background: #000;
  color: #fff;
}
.mobilemenu .mobilemenu__header {
  display: none;
}
@media screen and (max-width: 950px) {
  .mobilemenu .mobilemenu__header {
    display: flex;
  }
}
.mobilemenu .open {
  pointer-events: auto;
}
.mobilemenu__header {
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mobilemenu__header .mobilemenu-icons {
  display: flex;
}
.mobilemenu__header .mobilemenu-icons__call, .mobilemenu__header .mobilemenu-icons__location {
  padding: 8px;
  margin-right: 7px;
  border-radius: 100%;
  display: block;
  color: transparent;
  height: 20px;
  width: 20px;
  overflow: hidden;
  background-color: black;
  position: relative;
  transition: background-color 150ms;
}
@media (hover: hover) and (pointer: fine) {
  .mobilemenu__header .mobilemenu-icons__call:hover, .mobilemenu__header .mobilemenu-icons__location:hover {
    background-color: #E03D28;
  }
}
.mobilemenu__header .mobilemenu-icons__call::after, .mobilemenu__header .mobilemenu-icons__location::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  right: 0;
  bottom: 0;
  transform: translateY(-50%) translateX(-50%);
  width: 20px;
  height: 20px;
  background-color: #fff;
  mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 480.56 480.56'%3E%3Cg%3E%3Cpath d='M365.354,317.9c-15.7-15.5-35.3-15.5-50.9,0c-11.9,11.8-23.8,23.6-35.5,35.6c-3.2,3.3-5.9,4-9.8,1.8 c-7.7-4.2-15.9-7.6-23.3-12.2c-34.5-21.7-63.4-49.6-89-81c-12.7-15.6-24-32.3-31.9-51.1c-1.6-3.8-1.3-6.3,1.8-9.4 c11.9-11.5,23.5-23.3,35.2-35.1c16.3-16.4,16.3-35.6-0.1-52.1c-9.3-9.4-18.6-18.6-27.9-28c-9.6-9.6-19.1-19.3-28.8-28.8 c-15.7-15.3-35.3-15.3-50.9,0.1c-12,11.8-23.5,23.9-35.7,35.5c-11.3,10.7-17,23.8-18.2,39.1c-1.9,24.9,4.2,48.4,12.8,71.3 c17.6,47.4,44.4,89.5,76.9,128.1c43.9,52.2,96.3,93.5,157.6,123.3c27.6,13.4,56.2,23.7,87.3,25.4c21.4,1.2,40-4.2,54.9-20.9 c10.2-11.4,21.7-21.8,32.5-32.7c16-16.2,16.1-35.8,0.2-51.8C403.554,355.9,384.454,336.9,365.354,317.9z'/%3E%3Cpath d='M346.254,238.2l36.9-6.3c-5.8-33.9-21.8-64.6-46.1-89c-25.7-25.7-58.2-41.9-94-46.9l-5.2,37.1 c27.7,3.9,52.9,16.4,72.8,36.3C329.454,188.2,341.754,212,346.254,238.2z'/%3E%3Cpath d='M403.954,77.8c-42.6-42.6-96.5-69.5-156-77.8l-5.2,37.1c51.4,7.2,98,30.5,134.8,67.2c34.9,34.9,57.8,79,66.1,127.5 l36.9-6.3C470.854,169.3,444.354,118.3,403.954,77.8z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mobilemenu__header .mobilemenu-icons__location::after {
  mask-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' height='20' stroke-linejoin='round' stroke-miterlimit='2' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Icon'%3E%3Cpath d='m12 1.25c-3.723 0-6.75 3.054-6.75 6.821 0 1.276.562 2.859 1.38 4.438 1.801 3.477 4.801 6.979 4.801 6.979.142.166.35.262.569.262s.427-.096.569-.262c0 0 3-3.502 4.801-6.979.818-1.579 1.38-3.162 1.38-4.438 0-3.767-3.027-6.821-6.75-6.821zm0 4c-1.518 0-2.75 1.232-2.75 2.75s1.232 2.75 2.75 2.75 2.75-1.232 2.75-2.75-1.232-2.75-2.75-2.75z'/%3E%3Cpath d='m16.784 17.377c.813.244 1.483.546 1.946.9.3.228.52.451.52.723 0 .16-.091.305-.219.45-.212.239-.527.454-.917.654-1.378.705-3.606 1.146-6.114 1.146s-4.736-.441-6.114-1.146c-.39-.2-.705-.415-.917-.654-.128-.145-.219-.29-.219-.45 0-.272.22-.495.52-.723.463-.354 1.133-.656 1.946-.9.396-.119.621-.538.502-.934-.119-.397-.538-.622-.934-.503-1.238.373-2.2.884-2.778 1.449-.508.495-.756 1.049-.756 1.611 0 .702.397 1.402 1.204 1.986 1.416 1.024 4.26 1.764 7.546 1.764s6.13-.74 7.546-1.764c.807-.584 1.204-1.284 1.204-1.986 0-.562-.248-1.116-.756-1.611-.578-.565-1.54-1.076-2.778-1.449-.396-.119-.815.106-.934.503-.119.396.106.815.502.934z'/%3E%3C/g%3E%3C/svg%3E");
}
.mobilemenu__header .mobilemenu__button {
  padding: 8px 12px;
  background-color: black;
  display: inline-block;
  padding-right: 34px;
  text-transform: uppercase;
  color: #fff;
  position: relative;
  border-radius: 5px;
  cursor: pointer;
  line-height: 1;
  font-weight: 500;
  user-select: none;
  transition: background-color 150ms, padding-right 150ms;
}
.mobilemenu__header .mobilemenu__button span {
  transition: transform 150ms, opacity 150ms;
}
@media (hover: hover) and (pointer: fine) {
  .mobilemenu__header .mobilemenu__button:hover {
    background-color: #242424;
  }
}
.mobilemenu__header .mobilemenu__button.close {
  padding-right: 38px;
}
.mobilemenu__header .mobilemenu__button.close span {
  opacity: 0;
}
.mobilemenu__header .mobilemenu__button.close::before {
  opacity: 1;
}
.mobilemenu__header .mobilemenu__button.close::after {
  mask-image: url("data:image/svg+xml,%3Csvg height='512' width='512' viewBox='0 0 320.591 320.591' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m30.391 318.583c-7.86.457-15.59-2.156-21.56-7.288-11.774-11.844-11.774-30.973 0-42.817l257.812-257.813c12.246-11.459 31.462-10.822 42.921 1.424 10.362 11.074 10.966 28.095 1.414 39.875l-259.331 259.331c-5.893 5.058-13.499 7.666-21.256 7.288z'/%3E%3Cpath d='m287.9 318.583c-7.966-.034-15.601-3.196-21.257-8.806l-257.813-257.814c-10.908-12.738-9.425-31.908 3.313-42.817 11.369-9.736 28.136-9.736 39.504 0l259.331 257.813c12.243 11.462 12.876 30.679 1.414 42.922-.456.487-.927.958-1.414 1.414-6.35 5.522-14.707 8.161-23.078 7.288z'/%3E%3C/svg%3E");
}
.mobilemenu__header .mobilemenu__button::before {
  content: "Close";
  position: absolute;
  opacity: 0;
  transition: opacity 150ms;
}
.mobilemenu__header .mobilemenu__button::after {
  content: "";
  position: absolute;
  right: 12px;
  top: calc(50% - 0.5px);
  transform: translateY(-50%);
  width: 13px;
  height: 13px;
  mask-size: 13px;
  background-color: #fff;
  mask-image: url("data:image/svg+xml,%3Csvg height='512' width='512' viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cg%3E%3Cpath d='m40.421 296.421c-22.289 0-40.421-18.132-40.421-40.421s18.132-40.421 40.421-40.421h431.158c22.289 0 40.421 18.132 40.421 40.421s-18.132 40.421-40.421 40.421z'/%3E%3Cpath d='m40.421 107.789c-22.289 0-40.421-18.131-40.421-40.421s18.132-40.421 40.421-40.421h431.158c22.289 0 40.421 18.132 40.421 40.421s-18.132 40.421-40.421 40.421z'/%3E%3Cpath d='m40.421 485.053c-22.289 0-40.421-18.132-40.421-40.421s18.132-40.421 40.421-40.421h431.158c22.289 0 40.421 18.132 40.421 40.421s-18.132 40.421-40.421 40.421z'/%3E%3C/g%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-position: center right;
}
.mobilemenu nav {
  height: 0;
  box-sizing: border-box;
  pointer-events: none;
  transform: scaleY(0);
  transition: transform 150ms, height 150ms;
  transform-origin: top center;
}
.mobilemenu nav.open {
  transform: scaleY(1);
}
.mobilemenu nav.open > ul {
  opacity: 1;
}
.mobilemenu nav ul,
.mobilemenu nav li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.mobilemenu nav > ul {
  box-sizing: border-box;
  padding-bottom: 10px;
  opacity: 0;
  transition: opacity 150ms;
}
.mobilemenu nav li {
  position: relative;
}
.mobilemenu nav li.menu-item-has-children > a::after {
  content: "";
  margin-left: 5px;
  width: 12px;
  height: 12px;
  background-color: #fff;
  mask-image: url("data:image/svg+xml,%3Csvg height='12' viewBox='0 0 24 24' width='12' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Layer_3' data-name='Layer 3'%3E%3Cpath d='m18.646 6.354-6.646 6.646-6.646-6.646a1.914 1.914 0 0 0 -2.708 2.707l9 9a.5.5 0 0 0 .708 0l9-9a1.914 1.914 0 1 0 -2.708-2.707z'/%3E%3C/g%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-position: center;
  transform: rotate(-90deg);
  transition: transform 150ms;
}
.mobilemenu nav ul ul {
  margin-left: 20px;
  transform: scaleY(0);
  transform-origin: center top;
  transition: transform 150ms, height 150ms, opacity 150ms;
  overflow: hidden;
  height: 0;
  pointer-events: none;
  opacity: 0;
}
.mobilemenu nav li.open > a::after {
  transform: rotate(0);
}
.mobilemenu nav li.open > ul {
  transform: scaleY(1);
  pointer-events: auto;
  opacity: 1;
}
.mobilemenu nav a {
  color: #fff;
  text-decoration: none;
  display: block;
  background: transparent;
  padding: 8px 20px;
  display: flex;
  align-items: center;
}
@media (hover: hover) and (pointer: fine) {
  .mobilemenu nav a:hover {
    background: #E03D28;
  }
}

.content {
  max-width: 600px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
  line-height: 2;
}

section.page-title-1 {
  background-color: #222;
}
section.page-title-1 .container {
  padding: 50px 0;
}
section.page-title-1 .container h1 {
  margin: 0 auto;
  position: relative;
  text-align: center;
  color: #fff;
  padding-bottom: 6px;
  font-size: 48px;
  width: fit-content;
}
section.page-title-1 .container h1::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  background-color: #f32f15;
}
@media screen and (max-width: 620px) {
  section.page-title-1 .container {
    padding: 30px 0;
  }
  section.page-title-1 .container h1 {
    font-size: 36px;
  }
}

section.wrapper-404 .container {
  padding-top: 50px;
  padding-bottom: 100px;
  max-width: 1000px;
}
section.wrapper-404 .container h1 {
  line-height: 1em;
}
section.wrapper-404 .container .sitemap li.page_item {
  line-height: 1.8em;
}
section.wrapper-404 .container .sitemap li.page_item a {
  color: #E03D28;
  text-decoration: none;
}
section.wrapper-404 .container .sitemap li.page_item a:hover {
  color: #f32f15;
  text-decoration: underline;
}

body.page-template-about section.content-3 {
  height: 450px;
}
body.page-template-about section.content-3 .content-3__text h2 {
  line-height: 1.4em;
}
@media screen and (max-width: 950px) {
  body.page-template-about section.content-3 {
    display: block;
    height: auto;
  }
  body.page-template-about section.content-3 .content-3__text {
    padding: 10px 20px 20px;
  }
}
body.page-template-about section.team-1 {
  background-color: #F2F2F2;
  padding: 50px 0;
}
@media screen and (max-width: 675px) {
  body.page-template-about section.team-1 {
    padding: 36px 0;
  }
}
body.page-template-about section.team-1 .container h2 {
  margin-bottom: 36px;
}
body.page-template-about section.team-1 .container .team-1-member {
  display: flex;
  gap: 20px;
  background-color: #fff;
  margin-bottom: 20px;
}
body.page-template-about section.team-1 .container .team-1-member__img {
  overflow: hidden;
  flex-shrink: 0;
}
body.page-template-about section.team-1 .container .team-1-member__img img {
  width: 360px;
  height: 100%;
}
body.page-template-about section.team-1 .container .team-1-member__text {
  flex-grow: 1;
  padding: 20px 26px 20px 0px;
}
body.page-template-about section.team-1 .container .team-1-member__text h3 {
  margin-bottom: 4px;
}
body.page-template-about section.team-1 .container .team-1-member__text .content {
  padding: 0;
  max-width: 100%;
  line-height: 1.6em;
}
body.page-template-about section.team-1 .container .team-1-member__text .content h3 {
  font-size: 18px;
  margin-bottom: 10px;
}
body.page-template-about section.team-1 .container .team-1-member__text .content p {
  margin-top: 0;
  font-size: 16px;
}
@media screen and (max-width: 790px) {
  body.page-template-about section.team-1 .container .team-1-member {
    display: block;
  }
  body.page-template-about section.team-1 .container .team-1-member .team-1-member__text {
    margin: auto 20px;
    padding-bottom: 20px;
  }
  body.page-template-about section.team-1 .container .team-1-member .team-1-member__text h3 {
    margin-top: 0;
  }
  body.page-template-about section.team-1 .container .team-1-member img {
    object-fit: cover;
    height: 100%;
    max-height: 400px;
    margin: 20px auto 0;
  }
}
body.page-template-about section.team-1 .container .team-1-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  column-gap: 20px;
}
body.page-template-about section.team-1 .container .team-1-grid .team-1-member__img {
  overflow: hidden;
}
body.page-template-about section.team-1 .container .team-1-grid .team-1-member__img img {
  width: 210px;
  height: auto;
}
body.page-template-about section.team-1 .container .team-1-grid .team-1-member__text p {
  margin-top: 10px;
}
@media screen and (max-width: 950px) {
  body.page-template-about section.team-1 .container .team-1-grid {
    display: block;
  }
  body.page-template-about section.team-1 .container .team-1-grid__text h4 {
    font-size: 18px;
  }
}
body.page-template-about section.team-1 .container .team-1-member--primary {
  gap: 20px;
}
body.page-template-about section.team-1 .container .team-1-member--primary img {
  width: 300px;
  height: auto;
}
@media screen and (max-width: 850px) {
  body.page-template-about section.team-1 .container .team-1-member--primary {
    display: block;
  }
  body.page-template-about section.team-1 .container .team-1-member--primary .team-1-member__text {
    margin: auto 20px;
    padding-bottom: 20px;
  }
  body.page-template-about section.team-1 .container .team-1-member--primary .team-1-member__text h3 {
    margin-top: 0;
  }
  body.page-template-about section.team-1 .container .team-1-member--primary img {
    object-fit: cover;
    height: 100%;
    margin: 20px auto 0;
  }
}
@media screen and (max-width: 790px) {
  body.page-template-about section.team-1 .container {
    margin: 0;
  }
  body.page-template-about section.team-1 .container h2 {
    margin: 0 20px 30px;
  }
  body.page-template-about section.team-1 .container .team-1-grid {
    margin: 0 20px;
  }
}
body.page-template-about section.content-4 {
  padding: 50px 0;
}
body.page-template-about section.content-4 h2.container {
  margin-bottom: 36px;
}
@media screen and (max-width: 790px) {
  body.page-template-about section.content-4 h2.container {
    margin-bottom: 20px;
  }
}
body.page-template-about section.content-4 .facilities {
  display: flex;
  gap: 26px;
}
body.page-template-about section.content-4 .facilities .content-4-grid ul {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  column-gap: 26px;
  list-style: none;
  padding-left: 0;
}
body.page-template-about section.content-4 .facilities .content-4-grid ul li {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 24px;
  color: #E03D28;
  margin-bottom: 10px;
  font-weight: bold;
}
body.page-template-about section.content-4 .facilities .content-4-grid ul ul {
  display: block;
}
body.page-template-about section.content-4 .facilities .content-4-grid ul ul li {
  color: #000;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  line-height: 1.6;
  font-size: 18px;
  text-wrap: pretty;
}
@media screen and (max-width: 790px) {
  body.page-template-about section.content-4 .facilities .content-4-grid ul li {
    font-size: 20px !important;
  }
  body.page-template-about section.content-4 .facilities .content-4-grid ul ul li {
    font-size: 16px !important;
  }
}
body.page-template-about section.content-4 .content-4-cta {
  flex-basis: 33%;
  flex-shrink: 0;
  background-color: #000;
  box-sizing: border-box;
  text-align: center;
  padding: 50px 40px 60px;
  height: fit-content;
  transform: translateY(2px);
}
body.page-template-about section.content-4 .content-4-cta h3 {
  max-width: 250px;
  color: #fff;
  line-height: 36px;
  margin: 0 auto 26px;
}
body.page-template-about section.content-4 .content-4-cta .button {
  margin: 0 auto;
}
@media screen and (max-width: 1045px) {
  body.page-template-about section.content-4 .facilities .content-4-grid ul li {
    font-size: 24px;
  }
}
@media screen and (max-width: 950px) {
  body.page-template-about section.content-4 {
    padding: 50px 0;
  }
  body.page-template-about section.content-4 .facilities {
    display: block;
  }
  body.page-template-about section.content-4 .facilities .content-4-grid ul {
    margin-bottom: 26px;
    column-gap: 14px;
  }
  body.page-template-about section.content-4 .facilities .content-4-cta {
    padding: 40px 20px 50px;
  }
  body.page-template-about section.content-4 .facilities .content-4-cta h3 {
    max-width: 100%;
    margin: 0;
    margin-bottom: 26px;
  }
}
@media screen and (max-width: 750px) {
  body.page-template-about section.content-4 .facilities .content-4-grid {
    margin-bottom: 44px;
  }
  body.page-template-about section.content-4 .facilities .content-4-grid ul {
    display: block;
  }
}

body.page-template-classes section.content-5 {
  padding: 40px 0 60px;
}
@media screen and (max-width: 980px) {
  body.page-template-classes section.content-5 {
    padding: 60px 0;
  }
}
@media screen and (max-width: 980px) {
  body.page-template-classes section.content-5 {
    padding: 20px 0 60px;
  }
}
body.page-template-classes section.content-5 .container {
  display: flex;
  justify-content: space-between;
  gap: 26px;
}
@media screen and (max-width: 980px) {
  body.page-template-classes section.content-5 .container {
    display: block;
  }
}
body.page-template-classes section.content-5 .container .content-5-text h2 {
  line-height: 1.3;
}
body.page-template-classes section.content-5 .container .content-5-grid {
  flex-basis: 50%;
  flex-shrink: 0;
  display: flex;
  gap: 20px;
  margin-top: 36px;
}
body.page-template-classes section.content-5 .container .content-5-grid__item {
  flex-grow: 1;
  flex-shrink: 0;
  background-color: #F2F2F2;
  height: fit-content;
  padding: 33px 20px;
}
body.page-template-classes section.content-5 .container .content-5-grid__item .class-icon {
  margin: 0 auto;
  width: fit-content;
}
body.page-template-classes section.content-5 .container .content-5-grid__item .class-icon img {
  height: 70px;
  width: auto;
}
body.page-template-classes section.content-5 .container .content-5-grid__item .class-label {
  margin: 5px auto 0;
  width: fit-content;
  text-transform: uppercase;
  font-weight: 600;
  text-wrap: nowrap;
}
@media screen and (max-width: 980px) {
  body.page-template-classes section.content-5 .container .content-5-grid__item {
    padding: 28px 20px;
  }
  body.page-template-classes section.content-5 .container .content-5-grid__item .class-icon img {
    object-fit: contain;
    height: 60px;
  }
}
@media screen and (max-width: 750px) {
  body.page-template-classes section.content-5 .container .content-5-grid__item {
    padding: 20px;
  }
}
@media screen and (max-width: 750px) {
  body.page-template-classes section.content-5 .container .content-5-grid {
    display: flex;
    gap: 10px;
  }
}
body.page-template-classes section.schedule {
  background-color: #F2F2F2;
  padding: 50px 0 80px;
}
body.page-template-classes section.schedule .container .schedule-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
body.page-template-classes section.schedule .container .schedule-grid__column {
  background-color: white;
  padding: 32px 38px;
  margin-top: 20px;
  height: fit-content;
}
body.page-template-classes section.schedule .container .schedule-grid__column h4 {
  font-size: 28px;
  font-weight: 700;
  color: #E03D28;
  font-family: Arial, Helvetica, sans-serif;
  margin-bottom: 10px;
}
body.page-template-classes section.schedule .container .schedule-grid__column .event {
  margin-bottom: 20px;
}
body.page-template-classes section.schedule .container .schedule-grid__column .event ul {
  list-style: none;
  padding: 0;
  margin: 0;
  line-height: 1.6;
}
body.page-template-classes section.schedule .container .schedule-grid__column .event ul li {
  text-transform: uppercase;
  font-weight: 650;
  font-size: 16px;
}
body.page-template-classes section.schedule .container .schedule-grid__column .event ul ul {
  margin-bottom: 20px;
}
body.page-template-classes section.schedule .container .schedule-grid__column .event ul ul li {
  text-transform: none;
  font-weight: 400;
  font-size: 16px;
}
@media screen and (max-width: 1100px) {
  body.page-template-classes section.schedule .container .schedule-grid {
    display: block;
  }
  body.page-template-classes section.schedule .container .schedule-grid__column {
    padding: 26px 30px;
  }
  body.page-template-classes section.schedule .container .schedule-grid__column ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
  }
  body.page-template-classes section.schedule .container .schedule-grid__column ul ul {
    display: block;
  }
  body.page-template-classes section.schedule .container .schedule-grid__column .event {
    flex-basis: 18%;
    flex-grow: 1;
    font-style: 0;
    min-width: 150px;
  }
}
@media screen and (max-width: 910px) {
  body.page-template-classes section.schedule .container .schedule-grid__column {
    padding: 22px 26px;
  }
  body.page-template-classes section.schedule .container .schedule-grid__column ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 620px) {
  body.page-template-classes section.schedule .container .schedule-grid__column h4 {
    font-size: 26px;
  }
  body.page-template-classes section.schedule .container .schedule-grid__column .event ul {
    display: block;
  }
}
@media screen and (max-width: 910px) {
  body.page-template-classes section.schedule .container p:first-of-type {
    margin-bottom: 30px;
  }
}

body.page-template-contact section.contact {
  padding: 80px 0;
}
@media screen and (max-width: 750px) {
  body.page-template-contact section.contact {
    padding: 50px;
  }
}
@media screen and (max-width: 500px) {
  body.page-template-contact section.contact {
    padding: 50px 0;
  }
}
body.page-template-contact section.contact .container {
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 750px) {
  body.page-template-contact section.contact .container {
    display: block;
  }
  body.page-template-contact section.contact .container .contact__left h1 {
    font-size: 32px;
  }
  body.page-template-contact section.contact .container .contact__right {
    padding-top: 50px;
  }
}
body.page-template-contact section.contact .container .contact__left {
  flex-grow: 1;
  font-size: 20px;
}
body.page-template-contact section.contact .container .contact__left .contact-tagline {
  margin-top: 10px;
  margin-bottom: 40px;
}
body.page-template-contact section.contact .container .contact__left .contact-label {
  display: flex;
  align-items: center;
  gap: 8px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 5px;
}
body.page-template-contact section.contact .container .contact__left .contact-label svg {
  height: 20px;
  width: 20px;
}
body.page-template-contact section.contact .container .contact__left .contact-link {
  display: block;
  padding-left: 28px;
  color: #000;
  transition: color 0.15s ease-out;
}
body.page-template-contact section.contact .container .contact__left .contact-link:hover {
  color: #E03D28;
}
body.page-template-contact section.contact .container .contact__right {
  flex-basis: 50%;
}

section.hero-2 {
  height: 590px;
  position: relative;
}
section.hero-2::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.75);
}
section.hero-2 .hero-2__background {
  overflow: hidden;
  height: 100%;
}
section.hero-2 .hero-2__background img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
section.hero-2 .hero-2__logo {
  margin-bottom: 28px;
}
section.hero-2 .hero-2__logo img {
  object-fit: contain;
  width: 100%;
  height: 150px;
}
section.hero-2 .hero-2__text {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  text-align: center;
}
section.hero-2 .hero-2__text-wrap {
  margin: 100px auto 0;
  max-width: 450px;
}
section.hero-2 .hero-2__text-wrap h1 {
  margin: 0px;
  margin-bottom: 28px;
  line-height: 1.3;
  color: #fff;
  font-size: 36px;
}
section.hero-2 .hero-2__text-wrap p {
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 30px;
}
section.hero-2 .hero-2__text-wrap a.button {
  margin: 0 auto;
  padding: 13px 55px;
  font-size: 17px;
}

section.content-3 {
  display: flex;
  height: 510px;
}
@media screen and (max-width: 950px) {
  section.content-3 {
    display: block;
    height: auto;
  }
}
section.content-3 .content-3__text {
  flex-grow: 1;
  margin: auto 0;
  padding-top: 36px;
  padding-left: calc((100% - 1194px) / 2);
  padding-bottom: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1245px) {
  section.content-3 .content-3__text {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 750px) {
  section.content-3 .content-3__text {
    padding-left: 26px;
    padding-right: 26px;
  }
}
section.content-3 .content-3__text ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 10px;
  list-style: none;
  margin-top: 30px;
  margin-bottom: 40px;
}
section.content-3 .content-3__text ul li {
  position: relative;
  font-weight: 600;
  text-transform: uppercase;
}
section.content-3 .content-3__text ul li::before {
  content: "";
  position: absolute;
  top: 6px;
  left: -28px;
  height: 14px;
  width: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='15' viewBox='0 0 20 15'%3E%3Cpath id='Path_141' data-name='Path 141' d='M0,72.581l6.849,6.862L20,66.3l-1.888-1.862L6.849,75.693,1.862,70.706Z' transform='translate(0 -64.443)'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
}
section.content-3 .content-3__image {
  flex-basis: 50%;
  flex-shrink: 0;
  overflow: hidden;
}
section.content-3 .content-3__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.content-1 {
  background-color: #222;
  padding: 50px 0;
}
@media screen and (max-width: 950px) {
  section.content-1 {
    padding: 0px 0;
  }
}
section.content-1 .container {
  background-color: #fff;
  display: flex;
}
section.content-1 .container .content-1__image {
  flex-shrink: 0;
  flex-basis: 50%;
  overflow: hidden;
}
section.content-1 .container .content-1__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.content-1 .container .content-1__text {
  flex-grow: 1;
  padding: 40px 60px;
  margin: auto auto;
}
section.content-1 .container .content-1__text h2 {
  margin-top: 0;
}
section.content-1 .container .content-1__text p:last-of-type {
  margin-bottom: 35px;
}
@media screen and (max-width: 1245px) {
  section.content-1 .container .content-1__text {
    padding: 30px 40px 40px;
  }
}
@media screen and (max-width: 950px) {
  section.content-1 .container {
    flex-direction: column-reverse;
    margin: 0;
  }
  section.content-1 .container .content-1__image {
    flex-basis: unset;
  }
  section.content-1 .container .content-1__image img {
    width: 90%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  section.content-1 .container .content-1__text {
    padding: 30px 26px 40px;
  }
}
@media screen and (max-width: 550px) {
  section.content-1 .container .content-1__image img {
    width: 100%;
  }
}

section.events {
  padding: 50px 0;
}
section.events .container {
  background-color: #F2F2F2;
  display: flex;
  box-sizing: border-box;
  padding: 30px 25px 30px 45px;
}
section.events .container .events__text {
  padding-right: 60px;
  flex-grow: 1;
}
section.events .container .events__instagram {
  flex-basis: calc(50% - 72px);
  flex-shrink: 0;
  background-color: #222;
  color: #fff;
  padding: 40px;
  text-align: center;
  margin: auto auto;
}
section.events .container .events__instagram a {
  margin: 0 auto;
}
section.events .container .events__instagram .handle {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
}
section.events .container .events__instagram .handle span {
  font-size: 28px;
  line-height: 0;
  font-weight: 600;
}
@media screen and (max-width: 750px) {
  section.events .container .events__instagram .handle span {
    font-size: 24PX;
  }
}
@media screen and (max-width: 750px) {
  section.events {
    padding: 0;
  }
  section.events .container {
    background-color: #fff;
    display: block;
    padding: 30px 26px;
    margin: 0;
  }
  section.events .container .events__text {
    margin-bottom: 30px;
  }
}

section.gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  height: 350px;
  overflow: hidden;
}
section.gallery img {
  width: auto;
	max-height: 350px;
  object-fit: cover;
}
@media screen and (max-width: 1045px) {
  section.gallery {
    grid-template-columns: repeat(2, 1fr);
    height: auto;
  }
  section.gallery .gallery__image-3 {
    display: none;
  }
}
@media screen and (max-width: 750px) {
  section.gallery {
    grid-template-columns: repeat(1, 1fr);
  }
  section.gallery .gallery__image-2 {
    display: none;
  }
}

section.page-content {
  padding-bottom: 50px;
}
section.page-content .container h2 {
  font-size: 26px;
}

.container {
  width: 1194px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 1234px) {
  .container {
    margin: 0 20px;
    width: auto;
  }
}

svg {
  overflow: unset !important;
}

img {
  max-width: 100%;
  display: block;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

body {
  -webkit-font-smoothing: antialiased; /* For WebKit-based browsers */
  -moz-osx-font-smoothing: grayscale; /* For Firefox on Mac */
  font-family: "Inter", sans-serif;
  font-weight: 400;
  line-height: 1.6;
  font-size: 18px;
  text-wrap: pretty;
}
body h1,
body h2,
body h3,
body h4 {
  font-weight: 700;
  margin: 0;
  padding: 0;
  font-family: Arial, Helvetica, sans-serif;
  letter-spacing: -0.25px;
}
body h1 {
  font-size: 36px;
  line-height: 1.3;
}
body h2 {
  font-size: 30px;
}
body h3 {
  font-size: 26px;
}
body main a {
  text-decoration: none;
  color: #E03D28;
}

.red-text {
  color: #E03D28;
}

.content {
  color: #000;
  text-decoration: none;
}

.button {
  padding: 10px 26px;
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  text-wrap: nowrap;
  cursor: pointer;
  transition: background-color 150ms ease-out, color 150ms ease-out, fill 150ms ease-out;
}
.button svg {
  height: 16px;
  width: 16px;
}
.button.button--primary {
  color: #fff;
  background-color: #E03D28;
}
.button.button--primary svg {
  fill: #fff;
  width: 14px;
  height: 14px;
}
.button.button--primary:hover {
  background-color: #f32f15;
  color: #fff;
  cursor: pointer;
}
.button.button--primary:hover svg {
  fill: #fff;
}

section.cta-banner {
  background-color: #222;
  color: #fff;
  padding: 40px 0 50px;
  text-align: center;
}
section.cta-banner .container a {
  margin: 0 auto;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvX25vcm1hbGl6ZS5zY3NzIiwiVXNlcnMva2VsbHlzYXJnZW4vTG9jYWwlMjBTaXRlcy9qaXUtaml0c3Utb25lL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvaml1LWppdHN1LW9uZS9hc3NldHMvc2Nzcy91dGlscy9fZm9ybS1zZWN0aW9uLnNjc3MiLCJtYWluLnNjc3MiLCJVc2Vycy9rZWxseXNhcmdlbi9Mb2NhbCUyMFNpdGVzL2ppdS1qaXRzdS1vbmUvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9qaXUtaml0c3Utb25lL2Fzc2V0cy9zY3NzL3V0aWxzL19taXhpbnMuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvdXRpbHMvX2ltYWdlcy5zY3NzIiwiVXNlcnMva2VsbHlzYXJnZW4vTG9jYWwlMjBTaXRlcy9qaXUtaml0c3Utb25lL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvaml1LWppdHN1LW9uZS9hc3NldHMvc2Nzcy9wYXJ0cy9fZmFxLWFjY29yZGlvbi5zY3NzIiwiVXNlcnMva2VsbHlzYXJnZW4vTG9jYWwlMjBTaXRlcy9qaXUtaml0c3Utb25lL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvaml1LWppdHN1LW9uZS9hc3NldHMvc2Nzcy9wYXJ0cy9fZm9vdGVyLnNjc3MiLCJVc2Vycy9rZWxseXNhcmdlbi9Mb2NhbCUyMFNpdGVzL2ppdS1qaXRzdS1vbmUvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9qaXUtaml0c3Utb25lL2Fzc2V0cy9zY3NzL3BhcnRzL19oZWFkZXIuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFydHMvX21vYmlsZW1lbnUuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFydHMvX3BhZ2UtdGl0bGUuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFnZXMvXzQwNC5zY3NzIiwiVXNlcnMva2VsbHlzYXJnZW4vTG9jYWwlMjBTaXRlcy9qaXUtaml0c3Utb25lL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvaml1LWppdHN1LW9uZS9hc3NldHMvc2Nzcy9wYWdlcy9fYWJvdXQuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFnZXMvX2NsYXNzZXMuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFnZXMvX2NvbnRhY3Quc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFnZXMvX2Zyb250LXBhZ2Uuc2NzcyIsIlVzZXJzL2tlbGx5c2FyZ2VuL0xvY2FsJTIwU2l0ZXMvaml1LWppdHN1LW9uZS9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2ppdS1qaXRzdS1vbmUvYXNzZXRzL3Njc3MvcGFnZXMvX3BhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUVBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0VBR0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQSxRQUNRO0VBQ047OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQSxTQUNTO0VBQ1A7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7O0FB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TVE7SUFDQTs7OztBQUtSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUlKO0VBRUk7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBSUE7RUFDSTtFQUNBLE9BM0ZJOzs7QUFnR2hCO0VBQ0ksT0FqR1k7OztBQXFHaEI7RUFDSTtFQUNBOzs7QUFLSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxZQUNJOztBQUlKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJLE9BdElBO0VBdUlBLGtCQXJJUTs7QUF1SVI7RUFDSSxNQTFJSjtFQTJJSTtFQUNBOztBQUdKO0VBQ0ksa0JBN0lXO0VBOElYLE9BakpKO0VBa0pJOztBQUVBO0VBQ0ksTUFySlI7OztBQTRKUjtFQUNJLGtCQXpKVztFQTBKWCxPQTlKSTtFQStKSjtFQUNBOztBQUdJO0VBQ0kiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufSIsInNlY3Rpb24uZm9ybS1zZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LW5ldXRyYWw7XG4gICAgXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggNTBweCA1MHB4O1xuICAgICAgICBcbiAgICAgICAgLmZvcm0ge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggNjBweCA1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMDAwcHgpIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5mb3JtIHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNTAwcHgpIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG5cbiAgICAgICAgICAgIC5mb3JtIHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxufVxuXG4jZ2Zvcm1fc3VibWl0X2J1dHRvbl8xLFxuI2dmb3JtX3N1Ym1pdF9idXR0b25fMiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDogMjAwcHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3ItLWhvdmVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNTAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufSIsIkBpbXBvcnQgJ25vcm1hbGl6ZSc7XG5cbi8vIGNvbG9ycyAvL1xuJHdoaXRlOiAjZmZmO1xuJGxpZ2h0LW5ldXRyYWw6ICNGMkYyRjI7XG4kcHJpbWFyeS1jb2xvcjogI0UwM0QyODsgXG4kcHJpbWFyeS1jb2xvci0taG92ZXI6ICNmMzJmMTU7XG4kZGFyay1uZXV0cmFsOiAjMjIyO1xuJGJsYWNrOiAjMDAwO1xuXG5AaW1wb3J0ICd1dGlscy9fbWl4aW5zJztcbkBpbXBvcnQgXCJ1dGlscy9fZm9ybS1zZWN0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ1dGlscy9faW1hZ2VzLnNjc3NcIjtcbkBpbXBvcnQgXCJ1dGlscy9fbWl4aW5zLnNjc3NcIjtcbkBpbXBvcnQgXCJwYXJ0cy9fZmFxLWFjY29yZGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwicGFydHMvX2Zvb3Rlci5zY3NzXCI7XG5AaW1wb3J0IFwicGFydHMvX2hlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwicGFydHMvX21vYmlsZW1lbnUuc2Nzc1wiO1xuQGltcG9ydCBcInBhcnRzL19wYWdlLXRpdGxlLnNjc3NcIjtcbkBpbXBvcnQgXCJwYWdlcy9fNDA0LnNjc3NcIjtcbkBpbXBvcnQgXCJwYWdlcy9fYWJvdXQuc2Nzc1wiO1xuQGltcG9ydCBcInBhZ2VzL19jbGFzc2VzLnNjc3NcIjtcbkBpbXBvcnQgXCJwYWdlcy9fY29udGFjdC5zY3NzXCI7XG5AaW1wb3J0IFwicGFnZXMvX2Zyb250LXBhZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcInBhZ2VzL19wYWdlLnNjc3NcIjtcblxuLy8gc3RhbmRhcmQgY29udGFpbmVyIC8vXG4uY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTE5NHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoY2FsYygxMTk0cHggKyA0MHB4KSkge1xuICAgICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4vLyByZXNldHNcbnN2ZyB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XG59XG5cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuLy8gdHlwb2dyYXBoeSAvL1xuYm9keSB7XG4gICAgLy9mb250IG9wdGltaXphdGlvblxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvKiBGb3IgV2ViS2l0LWJhc2VkIGJyb3dzZXJzICovXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogRm9yIEZpcmVmb3ggb24gTWFjICovXG4gICAgXG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7ICBcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgdGV4dC13cmFwOiBwcmV0dHk7XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4yNXB4O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgIH1cblxuICAgIG1haW4ge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlZC10ZXh0IHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG59XG5cbi8vIHRoZV9jb250ZW50KCk7IGRlYWZ1bHRzIC8vXG4uY29udGVudCB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vLyBidXR0b25zIC8vXG5cbi5idXR0b24ge1xuICAgIHBhZGRpbmc6IDEwcHggMjZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA4cHg7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtd3JhcDogbm93cmFwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgMTUwbXMgZWFzZS1vdXQsXG4gICAgICAgIGNvbG9yIDE1MG1zIGVhc2Utb3V0LFxuICAgICAgICBmaWxsIDE1MG1zIGVhc2Utb3V0O1xuXG4gICAgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICB9XG5cbiAgICAmLmJ1dHRvbi0tcHJpbWFyeSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvci0taG92ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIFxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vQ1RBIEJBTk5FUlxuc2VjdGlvbi5jdGEtYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1uZXV0cmFsO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogNDBweCAwIDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiAiLCIvLyBBcHBsaWVzIGhvcml6b250YWwgcGFkZGluZyB0byBhbiBlbGVtZW50LlxuLy8gQHBhcmFtICRwYWRkaW5nIHtOdW1iZXJ9IC0gVGhlIGFtb3VudCBvZiBwYWRkaW5nIHRvIGFwcGx5IChlLmcuLCAxMHB4LCAyZW0pLlxuQG1peGluIGhvcml6b250YWwtcGFkZGluZygkcGFkZGluZykge1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG59XG5cbi8vIEFwcGxpZXMgdmVydGljYWwgcGFkZGluZyB0byBhbiBlbGVtZW50LlxuLy8gQHBhcmFtICRwYWRkaW5nIHtOdW1iZXJ9IC0gVGhlIGFtb3VudCBvZiBwYWRkaW5nIHRvIGFwcGx5IChlLmcuLCAxcmVtLCAxMCUpLlxuQG1peGluIHZlcnRpY2FsLXBhZGRpbmcoJHBhZGRpbmcpIHtcbiAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xufVxuXG4vLyBBcHBsaWVzIGhvcml6b250YWwgbWFyZ2luIHRvIGFuIGVsZW1lbnQuXG4vLyBAcGFyYW0gJG1hcmdpbiB7TnVtYmVyfSAtIFRoZSBhbW91bnQgb2YgbWFyZ2luIHRvIGFwcGx5IChlLmcuLCA1cHgsIDJ2dykuXG5AbWl4aW4gaG9yaXpvbnRhbC1tYXJnaW4oJG1hcmdpbikge1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbn1cblxuLy8gQXBwbGllcyB2ZXJ0aWNhbCBtYXJnaW4gdG8gYW4gZWxlbWVudC5cbi8vIEBwYXJhbSAkbWFyZ2luIHtOdW1iZXJ9IC0gVGhlIGFtb3VudCBvZiBtYXJnaW4gdG8gYXBwbHkgKGUuZy4sIDEuNXJlbSwgMjAlKS5cbkBtaXhpbiB2ZXJ0aWNhbC1tYXJnaW4oJG1hcmdpbikge1xuICAgIG1hcmdpbi10b3A6ICRtYXJnaW47XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcbn1cblxuLy8gQ3JlYXRlcyBhIHNxdWFyZSBlbGVtZW50IHdpdGggZXF1YWwgd2lkdGggYW5kIGhlaWdodC5cbi8vIEBwYXJhbSAkc2l6ZSB7TnVtYmVyfSAtIFRoZSBzaXplIG9mIHRoZSBzcXVhcmUgKGUuZy4sIDEwMHB4LCA1cmVtKS5cbkBtaXhpbiBzcXVhcmUoJHNpemUpIHtcbiAgICB3aWR0aDogJHNpemU7XG4gICAgaGVpZ2h0OiAkc2l6ZTtcbn1cblxuLy8gQ3JlYXRlcyBhIG1lZGlhIHF1ZXJ5IGJyZWFrcG9pbnQgYXQgdGhlIHNwZWNpZmllZCB3aWR0aC5cbi8vIEBwYXJhbSAkd2lkdGgge051bWJlcn0gLSBUaGUgbWF4aW11bSB3aWR0aCBmb3IgdGhlIGJyZWFrcG9pbnQgKGUuZy4sIDc2OHB4KS5cbkBtaXhpbiBicmVha3BvaW50KCR3aWR0aCkge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG4iLCIvL2FsbG93cyBpbWFnZSBtYW5pcHVsYXRpb24gd2l0aGluIFdQIGNvbnRlbnQgZWRpdG9yXG5cbi8qIEFsaWduIFJpZ2h0ICovXG4uYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMCAwIDFlbSAxZW07XG59XG5cbi8qIEFsaWduIExlZnQgKi9cbi5hbGlnbmxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMCAxZW0gMWVtIDA7XG59XG5cbi8qIEFsaWduIENlbnRlciAqL1xuLmFsaWduY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4vKiBBbGlnbiBOb25lICovXG4uYWxpZ25ub25lIHtcbiAgICBtYXJnaW46IDAgMCAxZW0gMDtcbn1cblxuLyogSW1hZ2Ugd2l0aCBDYXB0aW9uICovXG4ud3AtY2FwdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xufVxuXG4ud3AtY2FwdGlvbiBpbWcge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuLndwLWNhcHRpb24gcC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbn1cblxuLyogRnVsbCBXaWR0aCBJbWFnZSAqL1xuLnNpemUtZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKiBDdXN0b20gU3R5bGluZyBmb3IgUmVzcG9uc2l2ZSBJbWFnZXMgKi9cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuZmlndXJlIHtcbiAgICBtYXJnaW46IDAgMCAxZW0gMDtcbn1cblxuZmlnY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgY29sb3I6ICM1NTU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi5mYXEge1xuICAgIHBhZGRpbmc6IDUwcHggMjBweDtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAqIHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZhcS1hY2NvcmRpb24ge1xuICAgICAgICAgICAgLmZhcS1hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlN2U3ZTc7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgdGV4dC13cmFwOiBwcmV0dHk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogaW52ZXJ0KDMwJSkgc2VwaWEoMTAwJSkgc2F0dXJhdGUoMTMyMyUpIGh1ZS1yb3RhdGUoMzQyZGVnKSBicmlnaHRuZXNzKDg4JSkgY29udHJhc3QoMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTEuNjkzJyBoZWlnaHQ9JzExLjAyNycgdmlld0JveD0nMCAwIDExLjY5MyAxMS4wMjcnJTNFJTNDcGF0aCBpZD0nUGF0aF8xMzUnIGRhdGEtbmFtZT0nUGF0aCAxMzUnIGQ9J004LjE4LjQyMyw3LjAwOS0uNzM2bDMuNTA3LTMuNTA3SDJ2LTEuN2g4LjUxNmwtMy41MDctMy41TDguMTgtMTAuNmw1LjUxNCw1LjUxNFonIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC0yIDEwLjYwNCknIGZpbGw9JyUyMzdlN2U3ZScvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvblthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGludmVydCgzMCUpIHNlcGlhKDEwMCUpIHNhdHVyYXRlKDEzMjMlKSBodWUtcm90YXRlKDM0MmRlZykgYnJpZ2h0bmVzcyg4OCUpIGNvbnRyYXN0KDEwMCUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsuZmFxLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogOWVtO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuICAgICAgICAgICAgICAgICAgICB3aWxsLWNoYW5nZTogb3BhY2l0eSwgbWF4LWhlaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYXEtYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBsaW5lYXIsIG1heC1oZWlnaHQgMjAwbXMgbGluZWFyO1xuICAgICAgICAgICAgICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCBtYXgtaGVpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogRW5zdXJlIHRoZSBGQVEgYnV0dG9ucyBmb2xsb3cgdGhlIHNhbWUgc3R5bGluZyAqL1xuICAgICNmYXEtYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cblxuICAgICNmYXEtYWNjb3JkaW9uLWJ1dHRvbjpob3ZlciAsICNmYXEtYWNjb3JkaW9uLWJ1dHRvblthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjsgXG4gICAgfVxufVxuXG4iLCJmb290ZXIuZm9vdGVyIHtcbiAgICAgICAgLmZvb3Rlci1tb2JpbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvL0Zvb3RlciBPcHRpb25zXG4gICAgICAgIC5mb290ZXItYmFzaWMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcblxuICAgICAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1saW5rcy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMjAwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXA6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb290ZXItbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg5ODBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb290ZXItbGlua3Mtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1saW5rcy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLWNvbHVtbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX19sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX19jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg1MDBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLWxpbmtzLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb290ZXItY29sdW1uLTMge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9vdGVyLWNvbHVtbl9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb290ZXItY29sdW1uX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMTUwbXM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmc6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvb3Rlci1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vU3RhbmRhcmQgQ3JlZGl0c1xuICAgICAgICAuZm9vdGVyLWNyZWRpdHMge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDU1MHB4KSB7XG4gICAgICAgICAgICAgICAgLmZvb3Rlci1iYXNpYyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZm9vdGVyLWNyZWRpdHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICB9XG59IiwiaGVhZGVyLmhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgLm1vYmlsZS1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNrdG9wLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJzsgXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDsgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlLzIpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH0gXG5cbiAgICAgICAgICAgIC5sb2dvIHsgXG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwOyBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNzhweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDkzcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fbWVudSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICBuYXYge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDk1MHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIHVsLm1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbGkubWVudS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4xNXMgZWFzZTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAuMTVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGxpOmhvdmVyID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1uZXV0cmFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2U7XG4gICAgXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMjQ1cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIG5hdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1bC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXA6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoOTUwcHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDk1MHB4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIC5tb2JpbGUtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgYSAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gc2V0dGluZ3NcbiRiYWNrZ3JvdW5kOiAkYmxhY2s7XG4kZm9udF9jb2xvcjogI2ZmZjtcbiRob3Zlcl9jb2xvcjogJHByaW1hcnktY29sb3I7XG5cbi8vIGdsb2JhbCB2YXJzXG4kYnV0dG9uX2JhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTUlKTtcbiRhbmltYXRpb25fc3BlZWQ6IDE1MG1zO1xuXG5ib2R5Lm1vYmlsZW1lbnUtYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG5cbiAgICAubW9iaWxlbWVudS13cmFwcGVyIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzM5ZmY1NywgLjMpO1xuICAgICAgICAgICAgei1pbmRleDogOTk4O1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGFuaW1hdGlvbl9zcGVlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLm1vYmlsZW1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZm9udF9jb2xvcjtcblxuICAgIC5tb2JpbGVtZW51X19oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKDk1MHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9wZW4ge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAubW9iaWxlbWVudS1pY29ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAmX19jYWxsLFxuICAgICAgICAgICAgJl9fbG9jYXRpb24ge1xuICAgICAgICAgICAgICAgICRzaXplOiAyMDtcbiAgICAgICAgICAgICAgICAkcGFkZGluZzogOHB4O1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkc2l6ZSArIDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogJHNpemUgKyAwcHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uX2JhY2tncm91bmQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGFuaW1hdGlvbl9zcGVlZDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJfY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogJHNpemUgKyAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogJHNpemUgKyAwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvbnRfY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0ODAuNTYgNDgwLjU2JyUzRSUzQ2clM0UlM0NwYXRoIGQ9J00zNjUuMzU0LDMxNy45Yy0xNS43LTE1LjUtMzUuMy0xNS41LTUwLjksMGMtMTEuOSwxMS44LTIzLjgsMjMuNi0zNS41LDM1LjZjLTMuMiwzLjMtNS45LDQtOS44LDEuOCBjLTcuNy00LjItMTUuOS03LjYtMjMuMy0xMi4yYy0zNC41LTIxLjctNjMuNC00OS42LTg5LTgxYy0xMi43LTE1LjYtMjQtMzIuMy0zMS45LTUxLjFjLTEuNi0zLjgtMS4zLTYuMywxLjgtOS40IGMxMS45LTExLjUsMjMuNS0yMy4zLDM1LjItMzUuMWMxNi4zLTE2LjQsMTYuMy0zNS42LTAuMS01Mi4xYy05LjMtOS40LTE4LjYtMTguNi0yNy45LTI4Yy05LjYtOS42LTE5LjEtMTkuMy0yOC44LTI4LjggYy0xNS43LTE1LjMtMzUuMy0xNS4zLTUwLjksMC4xYy0xMiwxMS44LTIzLjUsMjMuOS0zNS43LDM1LjVjLTExLjMsMTAuNy0xNywyMy44LTE4LjIsMzkuMWMtMS45LDI0LjksNC4yLDQ4LjQsMTIuOCw3MS4zIGMxNy42LDQ3LjQsNDQuNCw4OS41LDc2LjksMTI4LjFjNDMuOSw1Mi4yLDk2LjMsOTMuNSwxNTcuNiwxMjMuM2MyNy42LDEzLjQsNTYuMiwyMy43LDg3LjMsMjUuNGMyMS40LDEuMiw0MC00LjIsNTQuOS0yMC45IGMxMC4yLTExLjQsMjEuNy0yMS44LDMyLjUtMzIuN2MxNi0xNi4yLDE2LjEtMzUuOCwwLjItNTEuOEM0MDMuNTU0LDM1NS45LDM4NC40NTQsMzM2LjksMzY1LjM1NCwzMTcuOXonLyUzRSUzQ3BhdGggZD0nTTM0Ni4yNTQsMjM4LjJsMzYuOS02LjNjLTUuOC0zMy45LTIxLjgtNjQuNi00Ni4xLTg5Yy0yNS43LTI1LjctNTguMi00MS45LTk0LTQ2LjlsLTUuMiwzNy4xIGMyNy43LDMuOSw1Mi45LDE2LjQsNzIuOCwzNi4zQzMyOS40NTQsMTg4LjIsMzQxLjc1NCwyMTIsMzQ2LjI1NCwyMzguMnonLyUzRSUzQ3BhdGggZD0nTTQwMy45NTQsNzcuOGMtNDIuNi00Mi42LTk2LjUtNjkuNS0xNTYtNzcuOGwtNS4yLDM3LjFjNTEuNCw3LjIsOTgsMzAuNSwxMzQuOCw2Ny4yYzM0LjksMzQuOSw1Ny44LDc5LDY2LjEsMTI3LjUgbDM2LjktNi4zQzQ3MC44NTQsMTY5LjMsNDQ0LjM1NCwxMTguMyw0MDMuOTU0LDc3Ljh6Jy8lM0UlM0MvZyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19sb2NhdGlvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgY2xpcC1ydWxlPSdldmVub2RkJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGhlaWdodD0nMjAnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScyJyB2aWV3Qm94PScwIDAgMjQgMjQnIHdpZHRoPScyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ2cgaWQ9J0ljb24nJTNFJTNDcGF0aCBkPSdtMTIgMS4yNWMtMy43MjMgMC02Ljc1IDMuMDU0LTYuNzUgNi44MjEgMCAxLjI3Ni41NjIgMi44NTkgMS4zOCA0LjQzOCAxLjgwMSAzLjQ3NyA0LjgwMSA2Ljk3OSA0LjgwMSA2Ljk3OS4xNDIuMTY2LjM1LjI2Mi41NjkuMjYycy40MjctLjA5Ni41NjktLjI2MmMwIDAgMy0zLjUwMiA0LjgwMS02Ljk3OS44MTgtMS41NzkgMS4zOC0zLjE2MiAxLjM4LTQuNDM4IDAtMy43NjctMy4wMjctNi44MjEtNi43NS02LjgyMXptMCA0Yy0xLjUxOCAwLTIuNzUgMS4yMzItMi43NSAyLjc1czEuMjMyIDIuNzUgMi43NSAyLjc1IDIuNzUtMS4yMzIgMi43NS0yLjc1LTEuMjMyLTIuNzUtMi43NS0yLjc1eicvJTNFJTNDcGF0aCBkPSdtMTYuNzg0IDE3LjM3N2MuODEzLjI0NCAxLjQ4My41NDYgMS45NDYuOS4zLjIyOC41Mi40NTEuNTIuNzIzIDAgLjE2LS4wOTEuMzA1LS4yMTkuNDUtLjIxMi4yMzktLjUyNy40NTQtLjkxNy42NTQtMS4zNzguNzA1LTMuNjA2IDEuMTQ2LTYuMTE0IDEuMTQ2cy00LjczNi0uNDQxLTYuMTE0LTEuMTQ2Yy0uMzktLjItLjcwNS0uNDE1LS45MTctLjY1NC0uMTI4LS4xNDUtLjIxOS0uMjktLjIxOS0uNDUgMC0uMjcyLjIyLS40OTUuNTItLjcyMy40NjMtLjM1NCAxLjEzMy0uNjU2IDEuOTQ2LS45LjM5Ni0uMTE5LjYyMS0uNTM4LjUwMi0uOTM0LS4xMTktLjM5Ny0uNTM4LS42MjItLjkzNC0uNTAzLTEuMjM4LjM3My0yLjIuODg0LTIuNzc4IDEuNDQ5LS41MDguNDk1LS43NTYgMS4wNDktLjc1NiAxLjYxMSAwIC43MDIuMzk3IDEuNDAyIDEuMjA0IDEuOTg2IDEuNDE2IDEuMDI0IDQuMjYgMS43NjQgNy41NDYgMS43NjRzNi4xMy0uNzQgNy41NDYtMS43NjRjLjgwNy0uNTg0IDEuMjA0LTEuMjg0IDEuMjA0LTEuOTg2IDAtLjU2Mi0uMjQ4LTEuMTE2LS43NTYtMS42MTEtLjU3OC0uNTY1LTEuNTQtMS4wNzYtMi43NzgtMS40NDktLjM5Ni0uMTE5LS44MTUuMTA2LS45MzQuNTAzLS4xMTkuMzk2LjEwNi44MTUuNTAyLjkzNHonLyUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2JpbGVtZW51X19idXR0b24ge1xuICAgICAgICAgICAgJHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHBhZGRpbmc6ICgkcGFkZGluZyAtIDRweCkgJHBhZGRpbmc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uX2JhY2tncm91bmQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZyArIDIycHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRmb250X2NvbG9yO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRhbmltYXRpb25fc3BlZWQsIHBhZGRpbmctcmlnaHQgJGFuaW1hdGlvbl9zcGVlZDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRhbmltYXRpb25fc3BlZWQsIG9wYWNpdHkgJGFuaW1hdGlvbl9zcGVlZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQyNDI0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jbG9zZSB7XG4gICAgICAgICAgICAgICAgLy8gYWRkIDVweCBvZiBwYWRkaW5nIHJpZ2h0XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcgKyAyNnB4O1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgaGVpZ2h0PSc1MTInIHdpZHRoPSc1MTInIHZpZXdCb3g9JzAgMCAzMjAuNTkxIDMyMC41OTEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J20zMC4zOTEgMzE4LjU4M2MtNy44Ni40NTctMTUuNTktMi4xNTYtMjEuNTYtNy4yODgtMTEuNzc0LTExLjg0NC0xMS43NzQtMzAuOTczIDAtNDIuODE3bDI1Ny44MTItMjU3LjgxM2MxMi4yNDYtMTEuNDU5IDMxLjQ2Mi0xMC44MjIgNDIuOTIxIDEuNDI0IDEwLjM2MiAxMS4wNzQgMTAuOTY2IDI4LjA5NSAxLjQxNCAzOS44NzVsLTI1OS4zMzEgMjU5LjMzMWMtNS44OTMgNS4wNTgtMTMuNDk5IDcuNjY2LTIxLjI1NiA3LjI4OHonLyUzRSUzQ3BhdGggZD0nbTI4Ny45IDMxOC41ODNjLTcuOTY2LS4wMzQtMTUuNjAxLTMuMTk2LTIxLjI1Ny04LjgwNmwtMjU3LjgxMy0yNTcuODE0Yy0xMC45MDgtMTIuNzM4LTkuNDI1LTMxLjkwOCAzLjMxMy00Mi44MTcgMTEuMzY5LTkuNzM2IDI4LjEzNi05LjczNiAzOS41MDQgMGwyNTkuMzMxIDI1Ny44MTNjMTIuMjQzIDExLjQ2MiAxMi44NzYgMzAuNjc5IDEuNDE0IDQyLjkyMi0uNDU2LjQ4Ny0uOTI3Ljk1OC0xLjQxNCAxLjQxNC02LjM1IDUuNTIyLTE0LjcwNyA4LjE2MS0yMy4wNzggNy4yODh6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnQ2xvc2UnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGFuaW1hdGlvbl9zcGVlZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICRzaXplOiAxMztcblxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIC41cHgpOyAvLyAuNXB4IHRvIGFsaWduIHdpdGggdGV4dFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogJHNpemUgKyAwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkc2l6ZSArIDBweDtcbiAgICAgICAgICAgICAgICBtYXNrLXNpemU6ICRzaXplICsgMHB4O1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvbnRfY29sb3I7XG4gICAgICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyBoZWlnaHQ9JzUxMicgd2lkdGg9JzUxMicgdmlld0JveD0nMCAwIDUxMiA1MTInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NnJTNFJTNDcGF0aCBkPSdtNDAuNDIxIDI5Ni40MjFjLTIyLjI4OSAwLTQwLjQyMS0xOC4xMzItNDAuNDIxLTQwLjQyMXMxOC4xMzItNDAuNDIxIDQwLjQyMS00MC40MjFoNDMxLjE1OGMyMi4yODkgMCA0MC40MjEgMTguMTMyIDQwLjQyMSA0MC40MjFzLTE4LjEzMiA0MC40MjEtNDAuNDIxIDQwLjQyMXonLyUzRSUzQ3BhdGggZD0nbTQwLjQyMSAxMDcuNzg5Yy0yMi4yODkgMC00MC40MjEtMTguMTMxLTQwLjQyMS00MC40MjFzMTguMTMyLTQwLjQyMSA0MC40MjEtNDAuNDIxaDQzMS4xNThjMjIuMjg5IDAgNDAuNDIxIDE4LjEzMiA0MC40MjEgNDAuNDIxcy0xOC4xMzIgNDAuNDIxLTQwLjQyMSA0MC40MjF6Jy8lM0UlM0NwYXRoIGQ9J200MC40MjEgNDg1LjA1M2MtMjIuMjg5IDAtNDAuNDIxLTE4LjEzMi00MC40MjEtNDAuNDIxczE4LjEzMi00MC40MjEgNDAuNDIxLTQwLjQyMWg0MzEuMTU4YzIyLjI4OSAwIDQwLjQyMSAxOC4xMzIgNDAuNDIxIDQwLjQyMXMtMTguMTMyIDQwLjQyMS00MC40MjEgNDAuNDIxeicvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmF2IHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYW5pbWF0aW9uX3NwZWVkLCBoZWlnaHQgJGFuaW1hdGlvbl9zcGVlZDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG5cbiAgICAgICAgICAgICY+dWwge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCxcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmPnVsIHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRhbmltYXRpb25fc3BlZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbj5hIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9udF9jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyBoZWlnaHQ9JzEyJyB2aWV3Qm94PScwIDAgMjQgMjQnIHdpZHRoPScxMicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ2cgaWQ9J0xheWVyXzMnIGRhdGEtbmFtZT0nTGF5ZXIgMyclM0UlM0NwYXRoIGQ9J20xOC42NDYgNi4zNTQtNi42NDYgNi42NDYtNi42NDYtNi42NDZhMS45MTQgMS45MTQgMCAwIDAgLTIuNzA4IDIuNzA3bDkgOWEuNS41IDAgMCAwIC43MDggMGw5LTlhMS45MTQgMS45MTQgMCAxIDAgLTIuNzA4LTIuNzA3eicvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgICAgICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRhbmltYXRpb25fc3BlZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwgdWwge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciB0b3A7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGFuaW1hdGlvbl9zcGVlZCwgaGVpZ2h0ICRhbmltYXRpb25fc3BlZWQsIG9wYWNpdHkgJGFuaW1hdGlvbl9zcGVlZDtcbiAgICAgICAgICAgIC8vIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uX3NwZWVkO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpLm9wZW4ge1xuICAgICAgICAgICAgJj5hOjphZnRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY+dWwge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udF9jb2xvcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRob3Zlcl9jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xufSIsIi8vIFBBR0UgVElUTEUgT1BUSU9OUyAvL1xuc2VjdGlvbi5wYWdlLXRpdGxlLTEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLW5ldXRyYWw7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgICAgXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICAgICAgICAvL3VuZGVybGluZVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnOyBcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDsgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLS1ob3ZlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDYyMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59Iiwic2VjdGlvbi53cmFwcGVyLTQwNCB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zaXRlbWFwIHtcbiAgICAgICAgICAgIGxpLnBhZ2VfaXRlbSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yLS1ob3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsImJvZHkucGFnZS10ZW1wbGF0ZS1hYm91dCB7XG4gICAgc2VjdGlvbi5jb250ZW50LTMge1xuICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuXG4gICAgICAgIC5jb250ZW50LTNfX3RleHQge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoOTUwcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAuY29udGVudC0zX190ZXh0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlY3Rpb24udGVhbS0xIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LW5ldXRyYWw7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDY3NXB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNnB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFpbmVyIHtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZWFtLTEtbWVtYmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICAgICZfX2ltZyB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzYwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDI2cHggMjBweCAwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzkwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAudGVhbS0xLW1lbWJlcl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRlYW0tMS1ncmlkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMjBweDtcblxuICAgICAgICAgICAgICAgIC50ZWFtLTEtbWVtYmVyIHtcbiAgICAgICAgICAgICAgICAgICAgJl9faW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoOTUwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGVhbS0xLW1lbWJlci0tcHJpbWFyeSB7XG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIFxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg4NTBweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC50ZWFtLTEtbWVtYmVyX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzkwcHgpIHtcbiAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDsgXG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRlYW0tMS1ncmlkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2VjdGlvbi5jb250ZW50LTQge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XG5cbiAgICAgICAgaDIuY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM2cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzkwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZhY2lsaXRpZXMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMjZweDtcblxuICAgICAgICAgICAgLmNvbnRlbnQtNC1ncmlkIHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC8vZmlyc3QgbGV2ZWxcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IFxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy9zZWNvbmQgbGV2ZWxcbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB1bCAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7ICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtd3JhcDogcHJldHR5O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3OTBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bCAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudC00LWN0YSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDQwcHggNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMDQ1cHgpIHtcbiAgICAgICAgLmZhY2lsaXRpZXMge1xuICAgICAgICAgICAgLmNvbnRlbnQtNC1ncmlkIHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoOTUwcHgpIHtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuXG4gICAgICAgIC5mYWNpbGl0aWVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAuY29udGVudC00LWdyaWQge1xuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50LTQtY3RhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHggNTBweDtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NTBweCkge1xuICAgICAgICAuZmFjaWxpdGllcyB7XG4gICAgICAgICAgICAuY29udGVudC00LWdyaWQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ0cHg7XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbn0iLCJib2R5LnBhZ2UtdGVtcGxhdGUtY2xhc3NlcyB7XG4gICAgc2VjdGlvbi5jb250ZW50LTUge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNjBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDk4MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDk4MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgNjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGdhcDogMjZweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg5ODBweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudC01LXRleHQge1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQtNS1ncmlkIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzZweDtcblxuICAgICAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtbmV1dHJhbDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzNweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5jbGFzcy1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jbGFzcy1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg5ODBweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjhweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2xhc3MtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc1MHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWN0aW9uLnNjaGVkdWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LW5ldXRyYWw7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMCA4MHB4O1xuICAgICAgICBcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAuc2NoZWR1bGUtZ3JpZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICBcbiAgICAgICAgICAgICAgICAmX19jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzJweCAzOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIFxuICAgICAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5ldmVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9maXJzdCBsZXZlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDY1MDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3NlY29uZCBsZXZlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsICBsaXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDExMDBweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAmX19jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjZweCAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogMTZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZXZlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDE4JTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg5MTBweCkge1xuICAgICAgICAgICAgICAgICAgICAmX19jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjJweCAyNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDYyMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICZfX2NvbHVtbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZXZlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDkxMHB4KSB7XG4gICAgICAgICAgICAgICAgcDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiYm9keS5wYWdlLXRlbXBsYXRlLWNvbnRhY3R7XG4gICAgc2VjdGlvbi5jb250YWN0IHtcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDUwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuY29udGFjdF9fbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250YWN0X19yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRhY3RfX2xlZnQge1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAuY29udGFjdC10YWdsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY29udGFjdC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogOHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbnRhY3QtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4xNXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250YWN0X19yaWdodCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEhFUk8gT1BUSU9OUyAvL1xuc2VjdGlvbi5oZXJvLTIge1xuICAgIGhlaWdodDogNTkwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjc1KTtcbiAgICB9XG5cbiAgICAuaGVyby0yX19iYWNrZ3JvdW5kIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm8tMl9fbG9nbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI4cHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5oZXJvLTJfX3RleHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDsgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBcbiAgICAgICAgJi13cmFwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTAwcHggYXV0byAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMDBweCkge1xuICAgICAgICAgICAgICAgIC8vY29kZVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTNweCA1NXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ09OVEVOVCBCTE9DSyBPUFRJT05TIC8vXG5zZWN0aW9uLmNvbnRlbnQtMyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDUxMHB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoOTUwcHgpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gICAgXG4gICAgLmNvbnRlbnQtM19fdGV4dCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzNnB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMCUgLSAxMTk0cHgpIC8gMik7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMTI0NXB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NTBweCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6Z3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAxMHB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy9saXN0IG1hcmtlclxuICAgICAgICAgICAgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNnB4OyBsZWZ0OiAtMjhweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScxNScgdmlld0JveD0nMCAwIDIwIDE1JyUzRSUzQ3BhdGggaWQ9J1BhdGhfMTQxJyBkYXRhLW5hbWU9J1BhdGggMTQxJyBkPSdNMCw3Mi41ODFsNi44NDksNi44NjJMMjAsNjYuM2wtMS44ODgtMS44NjJMNi44NDksNzUuNjkzLDEuODYyLDcwLjcwNlonIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDAgLTY0LjQ0MyknLyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudC0zX19pbWFnZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnNlY3Rpb24uY29udGVudC0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1uZXV0cmFsO1xuICAgIHBhZGRpbmc6IDUwcHggMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoOTUwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMHB4IDA7XG5cbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5jb250ZW50LTFfX2ltYWdlIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudC0xX190ZXh0IHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggNjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byBhdXRvO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDEyNDVweCkge1xuICAgICAgICAgICAgLmNvbnRlbnQtMV9fdGV4dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA0MHB4IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDk1MHB4KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIC5jb250ZW50LTFfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiB1bnNldDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgICAgIC5jb250ZW50LTFfX3RleHQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjZweCA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg1NTBweCkge1xuICAgICAgICAgICAgLmNvbnRlbnQtMV9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRVZFTlRTICsgSU5TVEFHUkFNIC8vXG5zZWN0aW9uLmV2ZW50cyB7XG4gICAgcGFkZGluZzogNTBweCAwO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1uZXV0cmFsO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDI1cHggMzBweCA0NXB4O1xuXG4gICAgICAgIC5ldmVudHNfX3RleHQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ldmVudHNfX2luc3RhZ3JhbSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDcycHgpO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLW5ldXRyYWw7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhhbmRsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRQWDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjZweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuXG4gICAgICAgICAgICAuZXZlbnRzX190ZXh0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vL0dBTExFUllcbnNlY3Rpb24uZ2FsbGVyeSB7XG4gICAgZGlzcGxheTpncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMywgMWZyKTtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDEwNDVweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgLmdhbGxlcnlfX2ltYWdlLTMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzUwcHgpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgICAgXG4gICAgICAgIC5nYWxsZXJ5X19pbWFnZS0yIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsInNlY3Rpb24ucGFnZS1jb250ZW50e1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIFxuICAgIC5jb250YWluZXJ7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgfVxuICAgIH0gICBcbn0iXSwiZmlsZSI6Im1haW4uY3NzIn0= */
