@charset "UTF-8";
:root {
  --color-text-body: #2e2e48;
  --color-white: #fff;
  --primary: #2e2e48;
  --primary-foreground: #fff;
  --secondary: #b6d1df;
  --secondary-foreground: #2e2e48;
  --muted: #f8f9fa;
  --muted-foreground: #6c757d;
  --accent: #f07d29;
  --accent-foreground: #fff;
  --accent-hover: #e06b18;
  --accent-dark: #d15a0a;
  --accent-light: #fdf3e7;
  --accent-secondary: #b6d1df;
  --accent-secondary-dark: #a0c3d2;
  --accent-secondary-light: #e8f4f8;
  --color-red-500: oklch(.637 .237 25.331);
  --color-orange-500: oklch(.705 .213 47.604);
  --color-green-500: oklch(.723 .219 149.579);
  --color-green-600: oklch(.627 .194 149.214);
  --color-blue-500: oklch(.623 .214 259.815);
  --color-purple-500: oklch(.627 .265 303.9);
  --color-gray-100: oklch(.967 .003 264.542);
  --color-gray-400: oklch(.707 .022 261.325);
  --spacing: .25rem;
  --radius: .75rem;
  --radius-xs: .125rem;
  --radius-2xl: 1rem;
}

.shadow-lg {
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
}

.shadow-md {
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
}

.shadow-xl {
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
}

.shadow-2xl {
  box-shadow: rgba(240, 125, 41, 0.25) 0px 20px 40px 0px;
}

.shadow-inner {
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.05) 0px 2px 4px 0px inset;
}

.backdrop-blur-sm {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

@keyframes backgroundMove {
  0% {
    background-position: 0%;
  }
  50% {
    background-position: 100%;
  }
  100% {
    background-position: 0%;
  }
}
@keyframes float {
  0%, 100% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-15px) rotate(5deg);
  }
}
@keyframes chaotic {
  0% {
    transform: translate(0) rotate(0) scale(1);
  }
  25% {
    transform: translate(20px, -15px) rotate(90deg) scale(1.2);
  }
  50% {
    transform: translate(-10px, 10px) rotate(180deg) scale(0.8);
  }
  75% {
    transform: translate(15px, -5px) rotate(270deg) scale(1.1);
  }
  100% {
    transform: translate(0) rotate(360deg) scale(1);
  }
}
/* This stylesheet generated by Transfonter (https://transfonter.org) on October 3, 2017 10:05 PM */
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Light.eot");
  src: url("../fonts/Montserrat-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Light.woff") format("woff"), url("../fonts/Montserrat-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-MediumItalic.eot");
  src: url("../fonts/Montserrat-MediumItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-MediumItalic.woff") format("woff"), url("../fonts/Montserrat-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-BoldItalic.eot");
  src: url("../fonts/Montserrat-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-BoldItalic.woff") format("woff"), url("../fonts/Montserrat-BoldItalic.ttf") format("truetype");
  font-weight: bold;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-SemiBold.eot");
  src: url("../fonts/Montserrat-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-SemiBold.woff") format("woff"), url("../fonts/Montserrat-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-ExtraBoldItalic.eot");
  src: url("../fonts/Montserrat-ExtraBoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-ExtraBoldItalic.woff") format("woff"), url("../fonts/Montserrat-ExtraBoldItalic.ttf") format("truetype");
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Italic.eot");
  src: url("../fonts/Montserrat-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Italic.woff") format("woff"), url("../fonts/Montserrat-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Bold.eot");
  src: url("../fonts/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Bold.woff") format("woff"), url("../fonts/Montserrat-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-LightItalic.eot");
  src: url("../fonts/Montserrat-LightItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-LightItalic.woff") format("woff"), url("../fonts/Montserrat-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-SemiBoldItalic.eot");
  src: url("../fonts/Montserrat-SemiBoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-SemiBoldItalic.woff") format("woff"), url("../fonts/Montserrat-SemiBoldItalic.ttf") format("truetype");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Regular.eot");
  src: url("../fonts/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Regular.woff") format("woff"), url("../fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Medium.eot");
  src: url("../fonts/Montserrat-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Medium.woff") format("woff"), url("../fonts/Montserrat-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-ExtraBold.eot");
  src: url("../fonts/Montserrat-ExtraBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-ExtraBold.woff") format("woff"), url("../fonts/Montserrat-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
}
* {
  margin: 0;
  padding: 0;
  outline: none;
}

html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, img, strong, sub, sup, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 100%;
}

header, nav, section, article, aside, footer {
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

html {
  height: 100%;
}

body {
  position: relative;
  height: 100%;
  font-family: "Montserrat", -apple-system, sans-serif;
  color: var(--primary);
  font-size: 16px;
  line-height: 1.5555555556;
  font-weight: normal;
  font-style: normal;
  background: #FFF;
}

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

img {
  border: none;
  max-width: 100%;
  vertical-align: bottom;
}

ul {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
  margin: 0;
  padding: 0;
}

.clear {
  clear: both;
  height: 0;
  overflow: hidden;
  font-size: 0;
}

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

.container {
  width: 100%;
  max-width: 1280px;
  padding: 0 32px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1023.98px) {
  .container {
    padding: 0 24px;
  }
}
@media screen and (max-width: 767.98px) {
  .container {
    max-width: 100%;
  }
}
@media (max-width: 639.98px) {
  .container {
    padding: 0 16px;
  }
}
@media screen and (max-width: 360px) {
  .container {
    padding: 0 15px;
  }
}

.wrapper {
  min-height: 100%;
  width: 100%;
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.wrapper::after {
  position: fixed;
  inset: 0;
  background: linear-gradient(135deg, #fff 0%, #e8f4f8 25%, #b6d1df 50%, #fdf3e7 75%, #fff 100%) 0 0/400% 400%;
  content: "";
  animation: 12s infinite backgroundMove;
  z-index: -1;
}
.wrapper:before {
  position: fixed;
  inset: 0;
  background-image: linear-gradient(to left top, oklab(31.3564% 0.0107227 -0.0449701 / 0.05) 0%, rgba(0, 0, 0, 0) 50%, oklab(70.8055% 0.104443 0.130806 / 0.08) 100%);
  content: "";
}
.wrapper.bg {
  background: #3e3d5c;
  --color-text-body: #fff;
}
.wrapper.bg::after, .wrapper.bg::before {
  display: none;
}
.wrapper.bg section {
  background: none;
  position: relative;
}
.wrapper.bg section::before {
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translate(-50%, -50%);
  width: 70vw;
  height: 50vw;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 60%);
  border-radius: 100%;
  content: "";
  z-index: -1;
}
.wrapper.bg section:nth-child(2n)::before {
  left: 0%;
}

.content__wrapper {
  flex: 1 0 auto;
}

.pd__header {
  margin-top: 100px;
}
@media (max-width: 1199.98px) {
  .pd__header {
    margin-top: 85px;
  }
}
@media (max-width: 1023.98px) {
  .pd__header {
    margin-top: 75px;
  }
}
@media (max-width: 639.98px) {
  .pd__header {
    margin-top: 60px;
  }
}

@media (max-width: 1699.98px) {
  .hide-desktop-lg {
    display: none !important;
  }
}

@media (max-width: 1289.98px) {
  .hide-desktop-md {
    display: none !important;
  }
}

@media (max-width: 1199.98px) {
  .hide-desktop {
    display: none !important;
  }
}

@media (max-width: 1023.98px) {
  .hide-tablet {
    display: none !important;
  }
}

@media (max-width: 767.98px) {
  .hide-tablet-sm {
    display: none !important;
  }
}

@media (max-width: 639.98px) {
  .hide-mobile-lg {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .show-desktop {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .show-tablet {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .show-tablet-sm {
    display: none !important;
  }
}

@media (min-width: 640px) {
  .show-mobile-lg {
    display: none !important;
  }
}

.noscroll {
  overflow: hidden;
}

.nowrap {
  white-space: nowrap;
}

.no-display {
  display: none;
}

.content__text {
  font-size: 18px;
  line-height: 1.5555555556;
}
.content__text > * {
  margin-bottom: 35px;
}
.content__text a {
  text-decoration: underline;
}
.content__text a:hover {
  text-decoration: none;
}
.content__text h1, .content__text h2, .content__text h3, .content__text h4, .content__text h5 {
  color: var(--primary);
  line-height: 1.1;
  font-weight: 700;
}
.content__text h1 {
  font-size: 36px;
  margin: 45px 0;
}
.content__text h2 {
  font-size: 32px;
  margin: 45px 0;
}
.content__text h3 {
  font-size: 24px;
  margin: 30px 0;
}
.content__text h4 {
  font-size: 20px;
  margin: 30px 0;
}
.content__text h5 {
  font-size: 18px;
  margin: 30px 0;
}
.content__text ul,
.content__text ol {
  padding-left: 26px;
}
.content__text ol {
  list-style-type: none;
  counter-reset: num;
}
.content__text li {
  position: relative;
}
.content__text ul li:before {
  position: absolute;
  top: 0px;
  right: 100%;
  margin-right: 11px;
  color: var(--primary);
  font-size: 16px;
  content: "•";
}
.content__text ol li:before {
  content: counter(num) ".";
  counter-increment: num;
  display: inline-block;
  position: absolute;
  top: 0px;
  right: 100%;
  margin-right: 8px;
  text-align: right;
}
.content__text img {
  border-radius: 20px;
}
@media (max-width: 767.98px) {
  .content__text {
    font-size: 16px;
  }
  .content__text > * {
    margin-bottom: 40px;
  }
  .content__text h1 {
    font-size: 28px;
    margin: 40px 0;
  }
  .content__text h2 {
    font-size: 24px;
    margin: 40px 0;
  }
  .content__text h3 {
    font-size: 24px;
    margin: 25px 0;
  }
  .content__text h4 {
    font-size: 18px;
    margin: 25px 0;
  }
  .content__text h5 {
    font-size: 16px;
    margin: 25px 0;
  }
}

.section__head {
  color: var(--color-text-body);
  margin-bottom: 64px;
}
.section__head.mt {
  margin-top: 80px;
}
.section__head.mb--md {
  margin-bottom: 48px;
}
.section__head.hcols {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
.section__tag {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
  background-color: var(--accent-light);
  border-radius: 100px;
  border: 1px solid color-mix(in oklab, var(--accent) 30%, transparent);
  padding-inline: calc(var(--spacing) * 6);
  height: 50px;
  margin-bottom: 24px;
  color: var(--accent);
  font-weight: 600;
}
.section__tag.mb--md {
  margin-bottom: 12px;
}
.section__tag svg, .section__tag img {
  height: 24px;
}
.section__title {
  font-weight: 600;
  font-size: 3rem;
  line-height: 1.3;
}
.section__title.fs--md {
  font-size: 1.875rem;
}
.section__intro {
  font-size: 1.25rem;
  margin-top: 24px;
  max-width: 768px;
}
.section__intro.mt--md {
  margin-top: 16px;
}
.section__intro.fs--md {
  font-size: 1.125rem;
}
.text--center .section__intro {
  margin-left: auto;
  margin-right: auto;
}
.section__buttons {
  margin-top: 68px;
  text-align: center;
}
.section__first {
  margin-top: 0 !important;
}
.section__mg {
  margin: 80px 0;
}
.section__pd {
  padding: 80px 0;
}
.section__pdt {
  padding-top: 70px;
}
.section__tab {
  display: none;
}
.section__tab.active {
  display: block;
}
@media (max-width: 1023.98px) {
  .section__head.hcols {
    flex-direction: column;
    gap: 20px;
  }
}
@media (max-width: 767.98px) {
  .section__head {
    margin-bottom: 40px;
  }
  .section__title {
    font-size: 2.25rem;
  }
  .section__intro {
    font-size: 1rem;
    margin-top: 16px;
  }
  .section__mg {
    margin: 60px 0;
  }
  .section__pd {
    padding: 60px 0;
  }
}
@media (max-width: 479.98px) {
  .section__title {
    font-size: 1.875rem;
  }
}

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

.text--white {
  color: white;
}

.text-accent {
  color: var(--accent);
}

.cols {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 0;
  margin: 0 -10px;
  width: auto;
}
.cols.al-center {
  align-items: center;
}

[class*=col-] {
  flex: 0 0 auto;
  padding: 0 10px;
}

.col-1 {
  width: 100%;
}

.col-2 {
  width: 100%;
}

.col-3 {
  width: 100%;
}

.col-4 {
  width: 100%;
}

.col-5 {
  width: 100%;
}

.col-6 {
  width: 100%;
}

.col-7 {
  width: 100%;
}

.col-8 {
  width: 100%;
}

.col-9 {
  width: 100%;
}

.col-10 {
  width: 100%;
}

.col-11 {
  width: 100%;
}

.col-12 {
  width: 100%;
}

.mgl-1 {
  margin-left: 0;
}

.mgl-2 {
  margin-left: 0;
}

.mgl-3 {
  margin-left: 0;
}

.mgl-4 {
  margin-left: 0;
}

.mgl-5 {
  margin-left: 0;
}

.mgl-6 {
  margin-left: 0;
}

.mgl-7 {
  margin-left: 0;
}

.mgl-8 {
  margin-left: 0;
}

.mgl-9 {
  margin-left: 0;
}

.mgl-10 {
  margin-left: 0;
}

.mgl-11 {
  margin-left: 0;
}

.mgl-12 {
  margin-left: 0;
}

.mgr-1 {
  margin-right: 0;
}

.mgr-2 {
  margin-right: 0;
}

.mgr-3 {
  margin-right: 0;
}

.mgr-4 {
  margin-right: 0;
}

.mgr-5 {
  margin-right: 0;
}

.mgr-6 {
  margin-right: 0;
}

.mgr-7 {
  margin-right: 0;
}

.mgr-8 {
  margin-right: 0;
}

.mgr-9 {
  margin-right: 0;
}

.mgr-10 {
  margin-right: 0;
}

.mgr-11 {
  margin-right: 0;
}

.mgr-12 {
  margin-right: 0;
}

.col-mt {
  margin-top: 20px;
}
.col-mt--sm {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .col-md-1 {
    width: 16.6666666667%;
  }
  .col-md-2 {
    width: 33.3333333333%;
  }
  .col-md-3 {
    width: 50%;
  }
  .col-md-4 {
    width: 66.6666666667%;
  }
  .col-md-5 {
    width: 83.3333333333%;
  }
  .col-md-6 {
    width: 100%;
  }
  .mgl-md-1 {
    margin-left: calc(16.6666666667% + 10px);
  }
  .mgl-md-2 {
    margin-left: calc(33.3333333333% + 10px);
  }
  .mgl-md-3 {
    margin-left: calc(50% + 10px);
  }
  .mgl-md-4 {
    margin-left: calc(66.6666666667% + 10px);
  }
  .mgl-md-5 {
    margin-left: calc(83.3333333333% + 10px);
  }
  .mgl-md-6 {
    margin-left: calc(100% + 10px);
  }
  .mgr-md-1 {
    margin-right: calc(16.6666666667% + 10px);
  }
  .mgr-md-2 {
    margin-right: calc(33.3333333333% + 10px);
  }
  .mgr-md-3 {
    margin-right: calc(50% + 10px);
  }
  .mgr-md-4 {
    margin-right: calc(66.6666666667% + 10px);
  }
  .mgr-md-5 {
    margin-right: calc(83.3333333333% + 10px);
  }
  .mgr-md-6 {
    margin-right: calc(100% + 10px);
  }
  .col-mt {
    margin-top: 30px;
  }
  .col-mt--sm {
    margin-top: 20px;
  }
}
@media (min-width: 1024px) {
  .col-1 {
    width: 8.3333333333%;
  }
  .col-2 {
    width: 16.6666666667%;
  }
  .col-3 {
    width: 25%;
  }
  .col-4 {
    width: 33.3333333333%;
  }
  .col-5 {
    width: 41.6666666667%;
  }
  .col-6 {
    width: 50%;
  }
  .col-7 {
    width: 58.3333333333%;
  }
  .col-8 {
    width: 66.6666666667%;
  }
  .col-9 {
    width: 75%;
  }
  .col-10 {
    width: 83.3333333333%;
  }
  .col-11 {
    width: 91.6666666667%;
  }
  .col-12 {
    width: 100%;
  }
  .mgl-1 {
    margin-left: calc(8.3333333333% + 10px);
  }
  [class*=col-].mgl-1 {
    margin-left: calc(8.3333333333% + 0px);
  }
  .mgl-2 {
    margin-left: calc(16.6666666667% + 10px);
  }
  [class*=col-].mgl-2 {
    margin-left: calc(16.6666666667% + 0px);
  }
  .mgl-3 {
    margin-left: calc(25% + 10px);
  }
  [class*=col-].mgl-3 {
    margin-left: calc(25% + 0px);
  }
  .mgl-4 {
    margin-left: calc(33.3333333333% + 10px);
  }
  [class*=col-].mgl-4 {
    margin-left: calc(33.3333333333% + 0px);
  }
  .mgl-5 {
    margin-left: calc(41.6666666667% + 10px);
  }
  [class*=col-].mgl-5 {
    margin-left: calc(41.6666666667% + 0px);
  }
  .mgl-6 {
    margin-left: calc(50% + 10px);
  }
  [class*=col-].mgl-6 {
    margin-left: calc(50% + 0px);
  }
  .mgl-7 {
    margin-left: calc(58.3333333333% + 10px);
  }
  [class*=col-].mgl-7 {
    margin-left: calc(58.3333333333% + 0px);
  }
  .mgl-8 {
    margin-left: calc(66.6666666667% + 10px);
  }
  [class*=col-].mgl-8 {
    margin-left: calc(66.6666666667% + 0px);
  }
  .mgl-9 {
    margin-left: calc(75% + 10px);
  }
  [class*=col-].mgl-9 {
    margin-left: calc(75% + 0px);
  }
  .mgl-10 {
    margin-left: calc(83.3333333333% + 10px);
  }
  [class*=col-].mgl-10 {
    margin-left: calc(83.3333333333% + 0px);
  }
  .mgl-11 {
    margin-left: calc(91.6666666667% + 10px);
  }
  [class*=col-].mgl-11 {
    margin-left: calc(91.6666666667% + 0px);
  }
  .mgl-12 {
    margin-left: calc(100% + 10px);
  }
  [class*=col-].mgl-12 {
    margin-left: calc(100% + 0px);
  }
  .mgr-1 {
    margin-right: calc(8.3333333333% + 10px);
  }
  [class*=col-].mgr-1 {
    margin-right: calc(8.3333333333% + 0px);
  }
  .mgr-2 {
    margin-right: calc(16.6666666667% + 10px);
  }
  [class*=col-].mgr-2 {
    margin-right: calc(16.6666666667% + 0px);
  }
  .mgr-3 {
    margin-right: calc(25% + 10px);
  }
  [class*=col-].mgr-3 {
    margin-right: calc(25% + 0px);
  }
  .mgr-4 {
    margin-right: calc(33.3333333333% + 10px);
  }
  [class*=col-].mgr-4 {
    margin-right: calc(33.3333333333% + 0px);
  }
  .mgr-5 {
    margin-right: calc(41.6666666667% + 10px);
  }
  [class*=col-].mgr-5 {
    margin-right: calc(41.6666666667% + 0px);
  }
  .mgr-6 {
    margin-right: calc(50% + 10px);
  }
  [class*=col-].mgr-6 {
    margin-right: calc(50% + 0px);
  }
  .mgr-7 {
    margin-right: calc(58.3333333333% + 10px);
  }
  [class*=col-].mgr-7 {
    margin-right: calc(58.3333333333% + 0px);
  }
  .mgr-8 {
    margin-right: calc(66.6666666667% + 10px);
  }
  [class*=col-].mgr-8 {
    margin-right: calc(66.6666666667% + 0px);
  }
  .mgr-9 {
    margin-right: calc(75% + 10px);
  }
  [class*=col-].mgr-9 {
    margin-right: calc(75% + 0px);
  }
  .mgr-10 {
    margin-right: calc(83.3333333333% + 10px);
  }
  [class*=col-].mgr-10 {
    margin-right: calc(83.3333333333% + 0px);
  }
  .mgr-11 {
    margin-right: calc(91.6666666667% + 10px);
  }
  [class*=col-].mgr-11 {
    margin-right: calc(91.6666666667% + 0px);
  }
  .mgr-12 {
    margin-right: calc(100% + 10px);
  }
  [class*=col-].mgr-12 {
    margin-right: calc(100% + 0px);
  }
  .col-mt {
    margin-top: 0px;
  }
}
@media (min-width: 1024px) and (max-width: 1289.98px) {
  .col-mdx-1 {
    width: 8.3333333333%;
  }
  .col-mdx-2 {
    width: 16.6666666667%;
  }
  .col-mdx-3 {
    width: 25%;
  }
  .col-mdx-4 {
    width: 33.3333333333%;
  }
  .col-mdx-5 {
    width: 41.6666666667%;
  }
  .col-mdx-6 {
    width: 50%;
  }
  .col-mdx-7 {
    width: 58.3333333333%;
  }
  .col-mdx-8 {
    width: 66.6666666667%;
  }
  .col-mdx-9 {
    width: 75%;
  }
  .col-mdx-10 {
    width: 83.3333333333%;
  }
  .col-mdx-11 {
    width: 91.6666666667%;
  }
  .col-mdx-12 {
    width: 100%;
  }
  .mgl-mdx-1 {
    margin-left: calc(8.3333333333% + 10px);
  }
  .mgl-mdx-2 {
    margin-left: calc(16.6666666667% + 10px);
  }
  .mgl-mdx-3 {
    margin-left: calc(25% + 10px);
  }
  .mgl-mdx-4 {
    margin-left: calc(33.3333333333% + 10px);
  }
  .mgl-mdx-5 {
    margin-left: calc(41.6666666667% + 10px);
  }
  .mgl-mdx-6 {
    margin-left: calc(50% + 10px);
  }
  .mgl-mdx-7 {
    margin-left: calc(58.3333333333% + 10px);
  }
  .mgl-mdx-8 {
    margin-left: calc(66.6666666667% + 10px);
  }
  .mgl-mdx-9 {
    margin-left: calc(75% + 10px);
  }
  .mgl-mdx-10 {
    margin-left: calc(83.3333333333% + 10px);
  }
  .mgl-mdx-11 {
    margin-left: calc(91.6666666667% + 10px);
  }
  .mgl-mdx-12 {
    margin-left: calc(100% + 10px);
  }
  .mgr-mdx-1 {
    margin-right: calc(8.3333333333% + 10px);
  }
  .mgr-mdx-2 {
    margin-right: calc(16.6666666667% + 10px);
  }
  .mgr-mdx-3 {
    margin-right: calc(25% + 10px);
  }
  .mgr-mdx-4 {
    margin-right: calc(33.3333333333% + 10px);
  }
  .mgr-mdx-5 {
    margin-right: calc(41.6666666667% + 10px);
  }
  .mgr-mdx-6 {
    margin-right: calc(50% + 10px);
  }
  .mgr-mdx-7 {
    margin-right: calc(58.3333333333% + 10px);
  }
  .mgr-mdx-8 {
    margin-right: calc(66.6666666667% + 10px);
  }
  .mgr-mdx-9 {
    margin-right: calc(75% + 10px);
  }
  .mgr-mdx-10 {
    margin-right: calc(83.3333333333% + 10px);
  }
  .mgr-mdx-11 {
    margin-right: calc(91.6666666667% + 10px);
  }
  .mgr-mdx-12 {
    margin-right: calc(100% + 10px);
  }
}
@media (max-width: 1023.98px) {
  .cols {
    margin: 0 -10px;
  }
  [class*=col-] {
    padding: 0 10px;
  }
}
@media (max-width: 767.98px) {
  .cols {
    gap: 16px 0;
    margin: 0 -8px;
  }
  [class*=col-] {
    padding: 0 8px;
  }
}
.icon {
  stroke: currentColor;
  fill: none;
  color: inherit;
  font-size: inherit;
  transition: all 0.3s ease-in-out;
  flex: 0 0 auto;
}
.icon--fill {
  fill: currentColor;
  stroke: initial;
}
.icon path {
  stroke: currentColor;
  color: inherit;
  font-size: inherit;
  transition: all 0.3s ease-in-out;
}

.rating {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
}
.rating span {
  position: relative;
  top: -1px;
  width: 20px;
  height: 20px;
  background: url(../images/icons/star.svg) no-repeat;
  background-size: cover !important;
}
.rating span.active {
  background: url(../images/icons/star-active.svg) no-repeat;
}
.rating__val {
  margin-left: 8px;
  font-weight: 600;
}

.link {
  font-size: 20px;
  line-height: 1.35;
  font-weight: 700;
  transition: all 0.3s ease-in-out;
  display: inline-flex;
  align-items: center;
}
.link .icon {
  width: 20px;
  height: 20px;
  margin-left: 8px;
}
.link__more .close_t {
  display: none;
}
.link__more.opened .open_t {
  display: none;
}
.link__more.opened .close_t {
  display: block;
}
@media (max-width: 1199.98px) {
  .link {
    font-size: 16px;
  }
}

/**************************************************************
swiper
**************************************************************/
.swiper-slide {
  height: auto;
}

.swiper-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.swiper-pagination-bullet {
  margin: 0 !important;
  width: 12px;
  height: 12px;
  border: none;
  background: var(--accent);
  transition: all 0.3s ease-in-out;
  opacity: 0.6;
}
.swiper-pagination-bullet-active {
  width: 15px;
  height: 15px;
  opacity: 1;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-button {
  width: 36px;
  height: 36px;
  left: 16px;
  transform: translateY(-50%);
  border-radius: calc(var(--radius) - 2px);
  background-color: rgba(255, 255, 255, 0.9019607843);
  border: 2px solid color-mix(in oklab, var(--accent) 30%, transparent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  color: var(--accent);
  transition: all 0.2s;
}
.swiper-button-next {
  left: auto;
  right: 16px;
}
.swiper-button:after {
  display: none;
}
.swiper-button svg {
  width: 16px;
  height: 16px;
}
@media (hover: hover) {
  .swiper-button:hover {
    background-color: var(--accent-light);
  }
}
.swiper-button-nav {
  position: relative;
  display: flex;
  align-items: center;
}
.swiper-button-nav .swiper-pagination {
  position: static;
  width: auto;
  margin: 0 -6px;
}

.swiper-scrollbar {
  background: none;
}

/**************************************************************
.noUi
**************************************************************/
.noUi-target {
  height: 16px;
  background-color: var(--muted);
  border-radius: 100px;
}

.noUi-connect {
  background-color: var(--primary);
}

.noUi-horizontal .noUi-handle {
  width: 16px;
  height: 16px;
  border: 1px solid var(--primary);
  top: 0;
  right: -8px;
  box-shadow: none;
}
.noUi-horizontal .noUi-handle:hover {
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, oklab(70.8055% 0.104443 0.130806 / 0.5) 0px 0px 0px 4px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
}

/**************************************************************
forms
**************************************************************/
.input::-webkit-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::-o-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::-moz-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input:-moz-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::-ms-input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input input-placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input::placeholder {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input:placeholder-shown {
  color: rgba(85, 85, 85, 0.6);
  opacity: 1;
}

.input:focus::-webkit-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus::-o-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus::-moz-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus:-moz-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus::-ms-input-placeholder {
  color: transparent;
  opacity: 0;
}

.input:focus:input-placeholder {
  color: transparent;
  opacity: 0;
}

input[placeholder] {
  text-overflow: ellipsis;
}

input::-moz-placeholder {
  text-overflow: ellipsis;
}

input:-moz-placeholder {
  text-overflow: ellipsis;
}

input:-ms-input-placeholder {
  text-overflow: ellipsis;
}

input[type=text], input[type=tel], button {
  -webkit-appearance: none;
}

.form__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 0 24px;
}
.form__row {
  margin-bottom: 24px;
  position: relative;
}
.form__label {
  margin-bottom: 8px;
  font-weight: 600;
  position: relative;
}
.form__submit {
  margin-top: 24px;
}
.form__policy {
  margin-top: 24px;
  text-align: center;
  color: #6c757d;
  font-size: 0.875rem;
}
@media (max-width: 639.98px) {
  .form__cols {
    grid-template-columns: 1fr;
  }
  .form__row {
    margin-bottom: 16px;
  }
}

.input {
  width: 100%;
  height: 36px;
  padding: 0 12px;
  background-color: var(--input-background);
  border: 2px solid color-mix(in oklab, var(--accent) 30%, transparent);
  border-radius: calc(var(--radius) - 2px);
  font-family: "Montserrat", -apple-system, sans-serif;
  font-size: 0.875rem;
  color: var(--primary);
  outline: 0;
}
.input:focus {
  border-color: var(--accent);
}
.input.error, .input.is-invalid {
  border-color: var(--color-red-500);
}
.input.error::-webkit-input-placeholder, .input.is-invalid::-webkit-input-placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error::-o-input-placeholder, .input.is-invalid::-o-input-placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error::-moz-input-placeholder, .input.is-invalid::-moz-input-placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error:-moz-input-placeholder, .input.is-invalid:-moz-input-placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error::-ms-input-placeholder, .input.is-invalid::-ms-input-placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error input-placeholder, .input.is-invalid input-placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error::placeholder, .input.is-invalid::placeholder {
  color: var(--color-red-500);
  opacity: 1;
}
.input.error:placeholder-shown, .input.is-invalid:placeholder-shown {
  color: var(--color-red-500);
  opacity: 1;
}
.input__error {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  font-size: 14px;
  color: var(--color-red-500);
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s;
}
[class*=col-] > .input__error {
  padding-left: 15px;
}
.input.error ~ .input__error {
  opacity: 1;
  visibility: visible;
}

textarea.input {
  line-height: normal;
  padding: 10px 12px;
  resize: none;
  height: 100px;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  height: 38px;
  padding: 0 24px;
  font-family: "Montserrat", -apple-system, sans-serif;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.1;
  border: none;
  border-radius: 10px;
  background: linear-gradient(135deg, rgb(240, 125, 41) 0%, rgb(224, 107, 24) 100%);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  outline: 0;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  position: relative;
}
.btn img, .btn svg {
  flex: 0 0 auto;
  height: 16px;
  width: auto;
}
.btn:before {
  content: "";
  background: linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0));
  width: 100%;
  height: 100%;
  transition: left 0.5s;
  position: absolute;
  top: 0;
  left: -100%;
}
.btn--md {
  height: 40px;
  font-weight: bold;
  font-size: 1.125rem;
}
.btn--green {
  background: var(--color-green-500);
}
.btn--green::before {
  display: none;
}
.btn--white {
  background: #fff;
  color: var(--accent-dark);
}
.btn--white::before {
  display: none;
}
.btn--bd {
  background: none;
  border: 1px solid var(--accent);
  color: var(--accent);
}
.btn--bd.btn--white {
  border-color: #fff;
  color: #fff;
}
.btn--bd::before {
  display: none;
}
.btn.rounded {
  border-radius: 100px;
}
@media (hover: hover) {
  .btn:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(240, 125, 41, 0.2509803922);
  }
  .btn:hover:before {
    left: 100%;
  }
  .btn.cta-pulse:hover {
    animation: none;
    transform: scale(1.05);
    box-shadow: 0 0 20px rgba(240, 125, 41, 0.8);
  }
  .btn--green:hover {
    background: var(--color-green-600);
  }
  .btn--bd:hover {
    background: var(--accent);
    color: #fff;
  }
  .btn--bd:hover.btn--white {
    background: #fff;
    color: var(--accent);
  }
}
.btn--wall {
  width: 100%;
  padding: 0 20px;
}
@media (max-width: 639.98px) {
  .btn--md {
    font-size: 1rem;
  }
}

/**************************************************************
popup
**************************************************************/
.popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  display: none;
}
.popup__content {
  width: 100%;
  min-height: 100%;
  overflow: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 15px;
  position: relative;
  z-index: 1;
}
.popup__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #232730;
  opacity: 0.7;
}
.popup__container {
  position: relative;
  width: 100%;
  max-width: 510px;
  padding: 60px 30px 70px;
  background: #2B2D38;
  overflow: hidden;
  text-align: center;
}
.popup__close {
  position: absolute;
  right: 13px;
  top: 13px;
  width: 28px;
  height: 28px;
  background: url(../images/popup-close.svg) no-repeat center;
  cursor: pointer;
  z-index: 99;
}
.popup__head {
  margin-bottom: 30px;
}
.popup__title {
  font-weight: bold;
  font-size: 48px;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.02em;
  color: #FFFFFF;
  font-family: "Montserrat", -apple-system, sans-serif;
}
.popup form {
  max-width: 360px;
  margin: 0 auto;
}
.popup form .btn {
  min-width: 280px;
}
.popup__iconthank {
  margin-bottom: 50px;
}
.popup-thank .popup__title {
  margin-bottom: 0;
}

/**************************************************************
header
**************************************************************/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}
.header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 24);
}
.header__inner::after {
  position: absolute;
  top: 5px;
  bottom: 5px;
  left: -15px;
  right: -15px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 100px;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  z-index: -1;
  content: "";
  transition: all 0.3s ease-in-out;
  opacity: 0;
}
.fixed .header__inner::after {
  opacity: 1;
}
.header__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(var(--spacing) * 16);
  overflow: hidden;
}
.header__logo img {
  max-height: 100%;
}
.header__nav {
  padding: 4px 8px;
  border-radius: 100px;
  border: 1px solid color-mix(in oklab, var(--accent-secondary) 20%, transparent);
  background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
  display: flex;
  align-items: center;
  gap: 4px;
}
.header__nav-item {
  position: relative;
}
.header__nav-btn {
  height: 36px;
  min-width: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background: none;
  border: none;
  border-radius: 100px;
  font-family: "Montserrat", -apple-system, sans-serif;
  font-size: 0.875rem;
  color: var(--primary);
  font-weight: 500;
  cursor: pointer;
  outline: 0;
  transition: all 0.2s;
}
@media (hover: hover) {
  .header__nav-btn:hover {
    color: var(--accent);
    background-color: var(--accent-light);
  }
}
.header__nav-btn svg {
  width: 16px;
  height: 16px;
}
.header__nav-list {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 192px;
  transform: translate(-50%, 8px);
  padding: 4px 8px;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 1px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  z-index: 9;
  transition: all 0.2s;
  opacity: 0;
  visibility: hidden;
}
.header__nav-list li a {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 12px 16px;
  border-radius: var(--radius);
  transition: all 0.2s;
}
.header__nav-list li a:hover {
  color: var(--accent);
  background-color: var(--accent-light);
}
.header__nav-item:hover .header__nav-list {
  opacity: 1;
  visibility: visible;
}
.header__contacts {
  display: flex;
  align-items: center;
  gap: 16px;
}
.header__phones {
  border-radius: 100px;
  border: 1px solid color-mix(in oklab, var(--accent-secondary) 20%, transparent);
  background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
  padding: calc(var(--spacing) * 2) calc(var(--spacing) * 4);
  display: flex;
  align-items: center;
  gap: 12px;
}
.header__phones-icon {
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  width: 32px;
  height: 32px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header__phones-icon > * {
  width: 50%;
  height: 50%;
}
.header__phones-info {
  text-align: center;
  line-height: 1.3;
}
.header__phones-label {
  color: var(--accent-secondary-dark);
  font-weight: 500;
  font-size: 0.75rem;
}
.header__phones-val {
  font-size: 0.875rem;
  font-weight: bold;
}
.header__btn {
  border-radius: 100px;
  align-self: stretch;
  height: auto;
}
.header__burger {
  display: none;
}
@media (max-width: 1289.98px) {
  .header__nav {
    display: none;
  }
  .header__burger {
    width: 38px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    outline: 0;
    cursor: pointer;
    position: relative;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid color-mix(in oklab, var(--accent) 10%, transparent);
    border-radius: 100px;
  }
  .header__burger .icon {
    width: 16px;
    height: 16px;
    color: var(--primary);
  }
  .header__burger img {
    transition: all 0.3s ease-in-out;
  }
  .header__burger .img-close {
    opacity: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 19px;
    height: 19px;
  }
  .header__burger.active img, .header__burger.active .icon {
    opacity: 0;
  }
  .header__burger.active .img-close {
    opacity: 1;
  }
}
@media (max-width: 767.98px) {
  .header__logo {
    height: 60px;
  }
  .header__phones, .header__btn {
    display: none;
  }
}

.navfix {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 16px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 1px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  z-index: 999;
  padding: 16px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: all 0.6s ease-out;
}
.navfix.opened {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}
.navfix__contacts {
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid color-mix(in oklab, var(--accent) 10%, transparent);
}
.navfix__phones {
  border-radius: calc(var(--radius) + 4px);
  background-color: color-mix(in oklab, var(--accent-light) 50%, transparent);
  padding: 12px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.navfix__phones-icon {
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  width: 40px;
  height: 40px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.navfix__phones-icon > * {
  width: 50%;
  height: 50%;
}
.navfix__phones-info {
  line-height: 1.3;
}
.navfix__phones-label {
  color: var(--accent-secondary-dark);
  font-weight: 500;
  font-size: 0.875rem;
}
.navfix__phones-val {
  font-weight: bold;
}
.navfix__buttons {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid color-mix(in oklab, var(--accent) 10%, transparent);
}
.navfix__menu li + li {
  margin-top: 12px;
}
.navfix__menu li a {
  display: block;
  font-weight: 500;
  padding: 12px 16px;
  border-radius: var(--radius);
  transition: all 0.2s;
}

/**************************************************************
footer
**************************************************************/
.footer {
  background: linear-gradient(135deg, #2e2e48 0%, #3a3a5c 100%);
  color: #b6d1df;
  padding: 48px 0;
}
.footer__cols {
  display: flex;
  gap: 32px;
}
.footer__left {
  width: 38%;
  flex: 0 0 auto;
}
.footer__menu {
  flex: 1 0 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.footer__nav-title {
  font-size: 1.25rem;
  color: #fff;
  font-weight: bold;
  margin-bottom: 12px;
}
.footer__nav-list li + li {
  margin-top: 12px;
}
.footer__nav-list a {
  font-size: 1rem;
  font-weight: 500;
}
.footer__nav-list a:hover {
  text-decoration: underline;
}
.footer__sname {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 1.875rem;
  color: #fff;
  font-weight: bold;
  margin-bottom: 24px;
}
.footer__logo {
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  width: 70px;
  height: 70px;
  overflow: hidden;
}
.footer__intro {
  margin-bottom: 32px;
  font-weight: 500;
  font-size: 1.125rem;
  max-width: 28rem;
}
.footer__contact {
  display: flex;
  align-items: center;
  gap: 16px;
  font-weight: 500;
  font-size: 1.125rem;
}
.footer__contact + .footer__contact {
  margin-top: 16px;
}
.footer__contact-icon {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  background-color: color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.footer__contact-icon > * {
  width: 50%;
  height: 50%;
}
.footer__bottom {
  border-top: 1px solid color-mix(in oklab, var(--color-white) 20%, transparent);
  margin-top: 48px;
  padding-top: 32px;
  text-align: center;
}
.footer__social {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
  font-weight: 500;
  font-size: 1.125rem;
}
.footer__social-items {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px 24px;
}
.footer__social-link {
  transition: all 0.3s;
}
.footer__social-link:hover {
  transform: scale(1.05);
}
.footer__social .text-xl {
  font-size: 1.25rem;
}
.footer__copy {
  margin-top: 24px;
  font-weight: 500;
}
.footer__links {
  margin-top: 24px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
}
.footer__link {
  font-size: 0.875rem;
  font-weight: 500;
}
.footer__link:hover {
  text-decoration: underline;
}
.footer__items {
  border-top: 1px solid color-mix(in oklab, var(--color-white) 20%, transparent);
  margin-top: 48px;
  padding-top: 32px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 32px;
}
.footer__item {
  padding: 24px;
  background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
  border: 1px solid color-mix(in oklab, var(--color-white) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  font-weight: 500;
}
.footer__item-title {
  color: #fff;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 12px;
}
@media (max-width: 1023.98px) {
  .footer__cols {
    flex-direction: column;
  }
  .footer__left {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 32px;
  }
  .footer__items {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .footer__left {
    grid-template-columns: 1fr;
    grid-gap: 0;
  }
}
@media (max-width: 639.98px) {
  .footer__menu {
    grid-template-columns: 1fr;
  }
}

/**************************************************************

**************************************************************/
.hero {
  padding-top: 140px;
}
.hero__cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--spacing) * 12);
  align-items: center;
}
.hero__left {
  min-width: 1px;
}
.hero__title {
  color: var(--color-text-body);
  font-size: 4.5rem;
  font-weight: 800;
  line-height: 1.25;
}
.hero__advants {
  margin-top: 24px;
  min-width: 1px;
  color: var(--color-text-body);
}
.hero__advants-item {
  font-size: 1.25rem;
  padding-left: 36px;
  position: relative;
}
.hero__advants-item::before {
  position: absolute;
  left: 0;
  top: 3px;
  width: 24px;
  height: 24px;
  background: url(../images/icons/check-circle.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
.hero__docs {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  padding: calc(var(--spacing) * 8);
  background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
  border: 1px solid color-mix(in oklab, var(--accent-secondary) 30%, transparent);
  border-radius: var(--radius-2xl);
}
@media (hover: hover) {
  .hero__docs:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(240, 125, 41, 0.2509803922);
  }
}
.hero__docs-head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
}
.hero__docs-logo {
  width: 70px;
  height: 70px;
  border-radius: 100px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero__docs-title {
  font-size: 1.5rem;
  font-weight: bold;
}
.hero__docs-subtitle {
  font-size: 1.125rem;
}
.hero__docs-progress {
  background-color: var(--accent-secondary-light);
  border: 1px solid color-mix(in oklab, var(--accent-secondary) 40%, transparent);
  border-radius: calc(var(--radius) + 4px);
  padding: calc(var(--spacing) * 6);
}
.hero__docs-progress__head {
  margin-bottom: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  position: relative;
}
.hero__docs-progress__title {
  font-weight: 600;
}
.hero__docs-progress__val {
  font-size: 1.25rem;
  font-weight: bold;
  color: var(--accent);
  position: relative;
}
.hero__docs-progress__percent {
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--accent);
  position: absolute;
  bottom: 100%;
  right: 0;
  transform: translate(50%, 30%);
}
.hero__docs-progress__line {
  height: 16px;
  background: #fff;
  border-radius: 100px;
  position: relative;
}
.hero__docs-progress__line > * {
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: 100px;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  animation: 2.2s ease-in-out progress;
}
@keyframes progress {
  0% {
    width: 0;
  }
  100% {
    width: 95%;
  }
}
.hero__docs-props {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: calc(var(--spacing) * 4);
}
.hero__docs-prop {
  padding: 16px;
  background-color: color-mix(in oklab, var(--color-white) 70%, transparent);
  border: 1px solid color-mix(in oklab, var(--accent-secondary) 30%, transparent);
  border-radius: calc(var(--radius) + 4px);
  text-align: center;
}
.hero__docs-prop:nth-child(2) {
  animation-delay: 0.5s;
}
.hero__docs-prop:nth-child(3) {
  animation-delay: 1s;
}
.hero__docs-prop .svg {
  margin-bottom: calc(var(--spacing) * 2);
}
.hero__docs-prop__val {
  color: var(--accent);
  font-weight: bold;
  font-size: 1.25rem;
}
.hero__docs-prop__text {
  font-weight: 500;
  font-size: 0.75rem;
}
.hero__docs-circle-1 {
  position: absolute;
  top: -32px;
  right: -32px;
  width: 80px;
  height: 80px;
  animation: 4s ease-in-out infinite float;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: 100%;
  opacity: 0.7;
  z-index: 1;
}
.hero__docs-circle-2 {
  position: absolute;
  top: 50%;
  right: -16px;
  width: 48px;
  height: 48px;
  animation: 6s ease-in-out infinite chaotic;
  background: linear-gradient(135deg, #2e2e48 0%, #3a3a5c 100%);
  border-radius: 100%;
  opacity: 0.5;
  z-index: 1;
}
.hero__docs-circle-3 {
  position: absolute;
  bottom: -24px;
  right: 24px;
  width: 64px;
  height: 64px;
  animation: 4s ease-in-out infinite float;
  background: linear-gradient(135deg, #b6d1df 0%, #a0c3d2 100%);
  border-radius: 100%;
  opacity: 0.6;
  z-index: 1;
}
.hero__props {
  margin-top: 32px;
  padding: calc(var(--spacing) * 6);
  background: #fff;
  border: 1px solid color-mix(in oklab, var(--accent-secondary) 30%, transparent);
  border-radius: var(--radius-2xl);
}
.hero__prop {
  display: flex;
  align-items: center;
  gap: 16px;
  font-weight: 500;
}
.hero__prop.prop--bg {
  background-color: color-mix(in oklab, var(--accent-light) 50%, transparent);
  border-radius: var(--radius);
  padding: calc(var(--spacing) * 2);
  color: var(--accent);
}
.hero__prop + .hero__prop {
  margin-top: 12px;
}
.hero__prop-icon {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  background: var(--accent);
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.prop--bg .hero__prop-icon {
  background: #fb2c36;
}
.hero__prop-icon img {
  width: 50%;
}
.hero__buttons {
  margin-top: 32px;
  display: flex;
  gap: 16px;
}
.hero__rating {
  color: var(--color-text-body);
  margin-top: 32px;
  display: flex;
  align-items: center;
  gap: 12px 24px;
  flex-wrap: wrap;
}
.hero__rating-comm {
  padding-left: 24px;
  font-weight: 500;
  border-left: 1px solid var(--accent-secondary);
}
@media (max-width: 1023.98px) {
  .hero__cols {
    grid-template-columns: 1fr;
    max-width: 750px;
    margin: 0 auto;
  }
  .hero__title {
    font-size: 3.75rem;
  }
}
@media (max-width: 767.98px) {
  .hero__title {
    font-size: 2.25rem;
  }
}
@media (max-width: 639.98px) {
  .hero__buttons {
    flex-direction: column;
  }
  .hero__buttons .btn {
    height: 60px;
  }
  .hero__props {
    padding: 16px;
  }
  .hero__docs {
    padding: 16px;
  }
  .hero__docs-title {
    font-size: 1.25rem;
  }
  .hero__docs-subtitle {
    font-size: 1rem;
  }
  .hero__docs-props {
    gap: 8px;
  }
  .hero__rating {
    flex-direction: column;
  }
  .hero__rating-comm {
    padding: 0;
    border: none;
  }
}

/**************************************************************

**************************************************************/
.solutions__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 32px;
}
.solutions__item {
  transition: all 0.3s;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  padding: 24px;
  display: flex;
  flex-direction: column;
}
@media (hover: hover) {
  .solutions__item:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 30px rgba(240, 125, 41, 0.6);
    transform: translateY(-8px) scale(1.02);
  }
}
.solutions__item-icon {
  width: 56px;
  height: 56px;
  margin-bottom: 16px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: var(--radius-2xl);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.solutions__item-icon svg, .solutions__item-icon img {
  width: 55%;
  height: 55%;
}
.solutions__item-title {
  font-weight: 600;
  font-size: 1.25rem;
}
.solutions__item-intro {
  margin-top: 6px;
}
.solutions__item-list {
  margin-top: 24px;
}
.solutions__item-list li {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}
.solutions__item-list li + li {
  margin-top: 12px;
}
.solutions__item-list li::before {
  width: 8px;
  height: 8px;
  background: var(--accent);
  border-radius: 100px;
  content: "";
}
.solutions__item-buttons {
  margin-top: auto;
  padding-top: 24px;
}
@media (max-width: 1023.98px) {
  .solutions__items {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767.98px) {
  .solutions__items {
    grid-template-columns: 1fr;
  }
}

/**************************************************************

**************************************************************/
.cardinfo {
  max-width: 768px;
  margin: 80px auto 0;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  padding: calc(var(--spacing) * 10);
  border: 1px solid rgba(46, 46, 72, 0.15);
  border-radius: calc(var(--radius) + 4px);
  color: #fff;
  text-align: center;
}
.cardinfo.w--md {
  max-width: 896px;
}
.cardinfo.pd--md {
  padding: calc(var(--spacing) * 8);
}
.cardinfo.pd--lg {
  padding: calc(var(--spacing) * 12);
}
.cardinfo.mt--md {
  margin-top: 32px;
}
.cardinfo__title {
  font-size: 1.875rem;
  line-height: 1.2;
  font-weight: bold;
}
.cardinfo__title.fs--md {
  font-size: 1.5rem;
  line-height: 1.3333333333;
}
.cardinfo__title.fs--lg {
  font-size: 2.25rem;
  line-height: 1.1111111111;
}
.cardinfo__intro {
  margin-top: 48px;
  font-size: 1.125rem;
}
.cardinfo__intro.mt--sm {
  margin-top: 16px;
}
.cardinfo__intro.fs--md {
  font-size: 1.25rem;
}
.cardinfo__intro b {
  font-weight: 500;
}
.cardinfo__buttons {
  margin-top: 56px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}
.cardinfo__buttons.mt--md {
  margin-top: 24px;
}
.cardinfo__buttons-label {
  width: 100%;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 639.98px) {
  .cardinfo {
    padding: 24px !important;
    margin-top: 50px;
  }
  .cardinfo__title {
    font-size: 1.5rem;
    line-height: 1.3333333333;
  }
  .cardinfo__title.fs--lg {
    font-size: 1.5rem;
    line-height: 1.3333333333;
  }
  .cardinfo__intro {
    margin-top: 24px;
    font-size: 1rem;
  }
  .cardinfo__intro.fs--md {
    font-size: 1rem;
  }
  .cardinfo__buttons {
    margin-top: 32px;
  }
  .cardinfo__buttons .btn {
    width: 100%;
  }
}

/**************************************************************

**************************************************************/
.rates {
  background-color: color-mix(in oklab, var(--accent-light) 40%, transparent);
}
.rates__props {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 6);
  margin-bottom: 48px;
}
.rates__prop {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  background-color: rgba(255, 255, 255, 0.9019607843);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 100px;
  border: 1px solid color-mix(in oklab, var(--accent) 20%, transparent);
  padding-inline: calc(var(--spacing) * 6);
  height: 58px;
  color: var(--accent);
  font-weight: 600;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.rates__prop-icon {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  background: var(--accent);
  border-radius: 100px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rates__prop-icon svg, .rates__prop-icon img {
  height: 16px;
  width: auto;
}
@media (hover: hover) {
  .rates__prop:hover {
    --tw-scale-x: 105%;
    --tw-scale-y: 105%;
    --tw-scale-z: 105%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
}
.rates__calc {
  max-width: 896px;
  margin: 0 auto;
  margin-bottom: 48px;
  padding: calc(var(--spacing) * 6);
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 1px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
}
.rates__calc-head {
  margin-bottom: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.rates__calc-hicon {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: calc(var(--radius) + 4px);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.rates__calc-hicon img, .rates__calc-hicon svg {
  width: 50%;
  height: 50%;
}
.rates__calc-title {
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 600;
}
.rates__calc-rcols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
}
.rates__calc-item__label {
  font-weight: 600;
  font-size: 0.875rem;
  margin-bottom: 12px;
}
.rates__calc-bottom {
  margin-top: 48px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: calc(var(--spacing) * 4);
}
.rates__calc-bitem {
  padding: 12px;
  border-radius: calc(var(--radius) + 4px);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  text-align: center;
}
.rates__calc-bitem svg {
  margin-bottom: 8px;
}
.rates__calc-bitem__val {
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.1;
}
.rates__calc-bitem__label {
  margin-top: 4px;
  opacity: 0.8;
  font-size: 0.75rem;
}
.rates__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
}
.rates__item {
  position: relative;
  transition: all 0.3s;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 30%, transparent);
  border-radius: calc(var(--radius) + 4px);
  padding: 32px 24px 24px;
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: 6px;
}
.rates__item.item--scale {
  transform: scale(1.05);
}
@media (hover: hover) {
  .rates__item:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(240, 125, 41, 0.2509803922);
  }
  .rates__item.item--scale:hover {
    transform: translateY(-8px) scale(1.07);
  }
}
.rates__item-icon {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  border-radius: calc(var(--radius) + 4px);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
  color: #fff;
}
.rates__item-icon img, .rates__item-icon svg {
  width: 50%;
  height: auto;
}
.rates__item-title {
  font-weight: 600;
  font-size: 1.25rem;
}
.rates__item-intro {
  font-size: 0.875rem;
}
.rates__item-price {
  margin-top: 16px;
  font-weight: 600;
  font-size: 1.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.rates__item-price__label {
  font-size: 0.875rem;
  font-weight: normal;
  margin-left: 4px;
}
.rates__item-price__old {
  color: var(--color-gray-400);
  text-decoration: line-through;
  font-weight: normal;
  font-size: 1.125rem;
}
.rates__item-list {
  text-align: left;
  margin-top: 40px;
}
.rates__item-list li {
  font-size: 0.875rem;
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.rates__item-list li + li {
  margin-top: 8px;
}
.rates__item-list li::before {
  width: 16px;
  height: 16px;
  background: url(../images/icons/check.svg) no-repeat center;
  background-size: 75%;
  background-color: var(--accent);
  border-radius: 100px;
  content: "";
}
.rates__item-buttons {
  margin-top: auto;
  padding-top: 18px;
}
.rates__item-tag {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  z-index: 5;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  border: 1px solid #fff;
  border-radius: calc(var(--radius) - 2px);
  height: 32px;
  padding-inline: calc(var(--spacing) * 4);
  display: flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  font-size: 0.75rem;
  font-weight: bold;
}
.rates__item-tag svg {
  height: 12px;
  width: auto;
  transform: translateY(-5%);
}
.rates__item-sale {
  position: absolute;
  top: -8px;
  right: -8px;
  width: 48px;
  height: 48px;
  transform: rotate(12deg);
  background-color: var(--color-red-500);
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  color: #fff;
  font-weight: bold;
}
.rates__blocks {
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 32px;
}
.rates__block {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 30%, transparent);
  border-radius: calc(var(--radius) + 4px);
  padding: 24px;
}
.rates__block.bg {
  color: #fff;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
}
.rates__block-head {
  margin-bottom: 40px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.rates__block-hicon {
  width: 32px;
  height: 32px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.rates__block-hicon img, .rates__block-hicon svg {
  width: 50%;
  height: 50%;
}
.rates__block.bg .rates__block-hicon {
  background: none;
  width: 24px;
  height: 24px;
}
.rates__block.bg .rates__block-hicon img, .rates__block.bg .rates__block-hicon svg {
  width: 100%;
  height: 100%;
}
.rates__block-title {
  font-size: 1.125rem;
  font-weight: 600;
}
.rates__block-list li {
  font-size: 0.875rem;
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}
.rates__block-list li + li {
  margin-top: 8px;
}
.rates__block-list li::before {
  width: 16px;
  height: 16px;
  background: url(../images/icons/check-orange.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
.rates__block-item {
  padding: calc(var(--spacing) * 3);
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: var(--radius);
  font-size: 0.875rem;
}
.rates__block-item + .rates__block-item {
  margin-top: 12px;
}
.rates__block-item__title {
  font-weight: bold;
}
.rates__block-item__text {
  margin-top: 4px;
  opacity: 0.9;
}
.rates__block-buttons {
  margin-top: 40px;
}
.rates__btext {
  max-width: 768px;
  margin: 48px auto 0;
  padding: 16px;
  background-color: rgba(255, 255, 255, 0.7019607843);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  border-radius: calc(var(--radius) + 4px);
  border: 1px solid color-mix(in oklab, var(--accent) 10%, transparent);
  text-align: center;
  font-size: 0.75rem;
  color: #6c757d;
}
.rates__btext > * + * {
  margin-top: 8px;
}
@media (max-width: 1023.98px) {
  .rates__items {
    grid-template-columns: 1fr;
  }
  .rates__blocks {
    grid-template-columns: 1fr;
  }
  .rates__calc-rcols {
    grid-template-columns: 1fr;
  }
  .rates__calc-bottom {
    grid-template-columns: 1fr;
  }
  .rates__calc-bitem:empty {
    display: none;
  }
}
@media (max-width: 639.98px) {
  .rates__props {
    gap: 16px;
  }
  .rates__prop {
    font-size: 0.875rem;
  }
  .rates__calc {
    padding: 16px;
  }
  .rates__calc-head {
    margin-bottom: 24px;
  }
  .rates__block {
    padding: 16px;
  }
  .rates__block-head {
    margin-bottom: 24px;
  }
}

/**************************************************************

**************************************************************/
.audit {
  background: #fff;
}
.audit__cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  gap: calc(var(--spacing) * 16);
}
.audit__included-title {
  margin-bottom: 24px;
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--color-text-body);
}
.audit__included-items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 24px;
}
.audit__included-item {
  padding: calc(var(--spacing) * 4);
  background-color: color-mix(in oklab, var(--accent-light) 30%, transparent);
  border-radius: calc(var(--radius) + 4px);
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.audit__included-item__icon {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  border-radius: calc(var(--radius) + 4px);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.audit__included-item__icon img, .audit__included-item__icon svg {
  width: 50%;
  height: auto;
}
.audit__included-item__info {
  flex: 1 0 0;
}
.audit__included-item__title {
  font-weight: 600;
}
.audit__included-item__text {
  margin-top: 4px;
  font-size: 0.875rem;
}
.audit__results {
  margin-top: 32px;
  padding: 32px;
  border-radius: var(--radius-2xl);
  text-align: center;
  color: var(--color-text-body);
}
.audit__results-title {
  margin-bottom: 24px;
  font-size: 1.25rem;
  font-weight: bold;
}
.audit__results-items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 24px;
}
.audit__results-item__val {
  font-size: 1.875rem;
  line-height: 1;
  font-weight: bold;
}
.audit__results-item__text {
  margin-top: 8px;
  font-size: 0.875rem;
  opacity: 0.8;
}
.audit__going {
  padding: 24px;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  transition: all 0.3s;
  text-align: center;
}
@media (hover: hover) {
  .audit__going:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 30px rgba(240, 125, 41, 0.6);
  }
}
.audit__going-icon {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  border-radius: var(--radius-2xl);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  margin: 0 auto 20px;
}
.audit__going-icon img, .audit__going-icon svg {
  width: 50%;
  height: auto;
}
.audit__going-title {
  font-weight: 600;
  font-size: 1.5rem;
}
.audit__going-intro {
  margin-top: 6px;
  margin-bottom: 48px;
}
.audit__going-item {
  position: relative;
  padding-left: 64px;
  counter-increment: verse 1;
  min-height: 48px;
  text-align: left;
}
.audit__going-item + .audit__going-item {
  margin-top: 24px;
}
.audit__going-item:before {
  position: absolute;
  left: 0;
  top: 0;
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #2e2e48 0%, #3a3a5c 100%);
  border-radius: calc(var(--radius) + 4px);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: #fff;
  content: "0" counter(verse);
}
.audit__going-item__top {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.audit__going-item__title {
  font-weight: 600;
}
.audit__going-item__time {
  color: var(--accent);
  font-weight: 500;
  font-size: 0.75rem;
  height: 22px;
  display: flex;
  align-items: center;
  gap: 4px;
  padding-inline: calc(var(--spacing) * 2);
  background-color: var(--accent-light);
  border: 1px solid color-mix(in oklab, var(--accent) 30%, transparent);
  border-radius: 100px;
}
.audit__going-item__time:before {
  width: 12px;
  height: 12px;
  background: url(../images/icons/time.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
.audit__going-item__text {
  font-size: 0.875rem;
  margin-top: 8px;
}
.audit__guarant {
  margin: 80px auto 0;
  max-width: 896px;
  padding: calc(var(--spacing) * 8);
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: var(--radius-2xl);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  text-align: center;
}
.audit__guarant-title {
  margin-bottom: 24px;
  font-weight: 600;
  font-size: 1.25rem;
}
.audit__guarant-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 8);
}
.audit__guarant-list li {
  display: flex;
  align-items: center;
  gap: 8px;
}
.audit__guarant-list li::before {
  width: 20px;
  height: 20px;
  background: url(../images/icons/check-circle.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
@media (max-width: 1023.98px) {
  .audit__cols {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .audit__included-items {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 639.98px) {
  .audit__results-items {
    grid-template-columns: 1fr;
  }
  .audit__going {
    padding: 16px;
  }
  .audit__going-item__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .audit__going-item__time {
    order: -1;
  }
  .audit__guarant {
    margin-top: 40px;
    padding: 24px;
  }
  .audit__guarant-list ul {
    gap: 16px;
  }
}

/**************************************************************

**************************************************************/
.partners__slider {
  max-width: 896px;
  margin: 0 auto;
  padding-bottom: 30px;
  position: relative;
}
.partners__slider .swiper {
  background-color: rgba(255, 255, 255, 0.9019607843);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: var(--radius-2xl);
}
.partners__slider .swiper-pagination {
  bottom: 0;
}
.partners__item {
  text-align: center;
  padding: 48px;
}
.partners__item-logo {
  height: 80px;
  margin-bottom: 32px;
}
.partners__item-logo img {
  height: 100%;
}
.partners__item-title {
  font-weight: 600;
  font-size: 1.875rem;
}
.partners__item-desc {
  margin-top: 16px;
  font-size: 1.125rem;
}
.partners__item-tag {
  margin-top: 16px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
  background-color: var(--accent-light);
  border-radius: 100px;
  border: 1px solid color-mix(in oklab, var(--accent) 30%, transparent);
  padding-inline: 16px;
  height: 42px;
  color: var(--accent-dark);
  font-weight: 600;
}
.partners__item-buttons {
  margin-top: 32px;
}
.partners__advants {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 32px;
}
.partners__advant {
  transition: all 0.3s;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  padding: 32px 32px 24px;
  text-align: center;
}
@media (hover: hover) {
  .partners__advant:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 30px rgba(240, 125, 41, 0.6);
    transform: translateY(-8px) scale(1.02);
  }
}
.partners__advant-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 24px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: var(--radius-2xl);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.partners__advant-icon svg, .partners__advant-icon img {
  width: 55%;
  height: 55%;
}
.partners__advant-title {
  font-weight: 600;
  font-size: 1.25rem;
}
.partners__advant-intro {
  margin-top: 16px;
}
@media (max-width: 1023.98px) {
  .partners__advants {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767.98px) {
  .partners__advants {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 639.98px) {
  .partners__slider .swiper-button {
    display: none;
  }
  .partners__item {
    padding: 24px;
  }
  .partners__item-logo {
    margin-bottom: 24px;
  }
  .partners__item-title {
    font-size: 1.5rem;
  }
  .partners__item-desc {
    margin-top: 12px;
    font-size: 1rem;
  }
}

/**************************************************************

**************************************************************/
.history__nav {
  margin-bottom: 48px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
}
.history__nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  height: 36px;
  padding: 0 24px;
  font-family: "Montserrat", -apple-system, sans-serif;
  color: var(--accent);
  font-weight: bold;
  font-size: 1rem;
  border: none;
  border-radius: 10px;
  border: 2px solid var(--accent);
  background: #fff;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
  outline: 0;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  position: relative;
}
.history__nav-btn img, .history__nav-btn svg {
  height: 16px;
}
.history__nav-btn .text-lg {
  font-size: 1.125rem;
}
.history__nav-btn.active {
  pointer-events: none;
  background: var(--accent);
  color: #fff;
}
@media (hover: hover) {
  .history__nav-btn:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(240, 125, 41, 0.2509803922);
  }
  .history__nav-btn:hover:before {
    left: 100%;
  }
}
.history__item {
  max-width: 1152px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.history__item-info {
  padding: 40px;
}
.history__item-head {
  margin-bottom: 32px;
}
.history__item-title {
  font-size: 1.875rem;
  font-weight: 600;
}
.history__item-tag {
  margin-top: 12px;
  display: inline-block;
  padding: 4px 16px;
  background-color: var(--accent-light);
  border-radius: calc(var(--radius) - 2px);
  color: var(--accent-dark);
  font-weight: bold;
  font-size: 0.75rem;
}
.history__item-row + .history__item-row {
  margin-top: 32px;
}
.history__item-label {
  margin-bottom: 12px;
  font-size: 1.25rem;
  font-weight: 600;
}
.history__item-quote {
  margin-top: 32px;
  padding: 24px;
  background-color: color-mix(in oklab, var(--accent-light) 70%, transparent);
  border: 2px solid color-mix(in oklab, var(--accent) 30%, transparent);
  border-radius: var(--radius-2xl);
}
.history__item-quote::before {
  display: block;
  width: 24px;
  height: 24px;
  margin-bottom: 12px;
  background: url(../images/icons/quote.svg) no-repeat;
  background-size: 100%;
  content: "";
}
.history__item-quote__text {
  font-weight: 600;
  font-style: italic;
}
.history__item-quote__author {
  margin-top: 16px;
  font-size: 0.875rem;
}
.history__item-quote__author b {
  font-weight: 600;
}
.history__item-result {
  padding: 40px;
  background: var(--accent);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.history__item-result__title {
  margin-bottom: 32px;
  font-size: 1.5rem;
  font-weight: bold;
}
.history__item-result__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
.history__item-result__row + .history__item-result__row {
  margin-top: 32px;
}
.history__item-result__label {
  color: rgba(255, 255, 255, 0.8);
  font-weight: 500;
}
.history__item-result__val {
  font-size: 1.875rem;
  font-weight: bold;
}
.history__item-result__buttons {
  margin-top: 40px;
}
.history__item-result__buttons .btn {
  color: var(--accent-dark);
}
@media (max-width: 1023.98px) {
  .history__item {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 639.98px) {
  .history__item-info {
    padding: 24px;
  }
  .history__item-head {
    margin-bottom: 24px;
  }
  .history__item-title {
    font-size: 1.25rem;
  }
  .history__item-label {
    margin-bottom: 8px;
    font-size: 1rem;
  }
  .history__item-row + .history__item-row {
    margin-top: 24px;
  }
  .history__item-quote {
    margin-top: 24px;
    padding: 16px;
  }
  .history__item-result {
    padding: 24px;
  }
  .history__item-result__title {
    margin-bottom: 24px;
    font-size: 1.25rem;
  }
  .history__item-result__row {
    gap: 8px;
  }
  .history__item-result__row + .history__item-result__row {
    margin-top: 16px;
  }
  .history__item-result__val {
    font-size: 1.25rem;
  }
  .history__item-result__buttons {
    margin-top: 24px;
  }
}

/**************************************************************

**************************************************************/
.reviews__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-gap: 32px;
}
.reviews__item {
  transition: all 0.3s;
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: calc(var(--radius) + 4px);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  padding: 32px 32px 24px;
}
@media (hover: hover) {
  .reviews__item:hover {
    filter: brightness(1.1);
    box-shadow: 0 0 30px rgba(240, 125, 41, 0.6);
    transform: translateY(-8px) scale(1.02);
  }
}
.reviews__item-rating {
  margin-bottom: 16px;
}
.reviews__item-text {
  font-style: italic;
}
.reviews__item-author {
  border-top: 1px solid color-mix(in oklab, var(--accent) 20%, transparent);
  margin-top: 24px;
  padding-top: 16px;
  font-size: 0.875rem;
}
.reviews__item-author b {
  font-weight: 600;
  font-size: 1rem;
}
.reviews__props {
  margin-top: 80px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-gap: 32px;
}
.reviews__prop {
  background-color: rgba(255, 255, 255, 0.9490196078);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: var(--radius-2xl);
  padding: 24px;
  text-align: center;
}
.reviews__prop-val {
  font-size: 2.25rem;
  font-weight: bold;
  color: var(--accent);
  line-height: 1;
}
.reviews__prop-text {
  margin-top: 8px;
}
@media (max-width: 767.98px) {
  .reviews__items {
    grid-template-columns: 1fr;
  }
  .reviews__props {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 639.98px) {
  .reviews__item {
    padding: 24px;
  }
  .reviews__props {
    gap: 16px;
    margin-top: 24px;
  }
  .reviews__prop {
    padding: 16px 12px;
  }
}

/**************************************************************

**************************************************************/
.contacts__cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--spacing) * 12);
}
.contacts__box {
  background-color: rgba(255, 255, 255, 0.9490196078);
  border: 2px solid color-mix(in oklab, var(--accent) 20%, transparent);
  border-radius: var(--radius-2xl);
  padding: 24px;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}
.contacts__box + .contacts__box {
  margin-top: 32px;
}
.contacts__box-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
}
.contacts__box-head.mb--sm {
  margin-bottom: 8px;
}
.contacts__box-icon {
  width: 24px;
  display: flex;
}
.contacts__box-icon > * {
  width: 100%;
  height: auto;
}
.contacts__box-title {
  font-size: 1.25rem;
  font-weight: 600;
}
.contacts__box-list li {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}
.contacts__box-list li + li {
  margin-top: 12px;
}
.contacts__box-list li::before {
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  background: var(--accent);
  border-radius: 100px;
  content: "";
}
.contacts__item {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  align-items: flex-start;
  gap: 24px;
}
.contacts__item + .contacts__item {
  margin-top: 24px;
}
@media (hover: hover) {
  .contacts__item:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(240, 125, 41, 0.2509803922);
  }
}
.contacts__item-icon {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #f07d29 0%, #e06b18 100%);
  border-radius: var(--radius-2xl);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.contacts__item-icon > * {
  width: 50%;
  height: 50%;
}
.contacts__item-label {
  font-size: 1.25rem;
  font-weight: 600;
}
.contacts__item-val {
  font-size: 1.125rem;
  color: var(--accent-dark);
  font-weight: bold;
}
.contacts__time {
  background-color: color-mix(in oklab, var(--accent-light) 70%, transparent);
  box-shadow: none;
  border: 1px solid color-mix(in oklab, var(--accent) 30%, transparent);
}
.contacts__time .contacts__box-title {
  color: var(--accent);
  font-size: 1.125rem;
  font-weight: bold;
}
.contacts__form-head {
  margin-bottom: 48px;
}
.contacts__form-title {
  font-size: 1.5rem;
  font-weight: bold;
}
.contacts__form-intro {
  opacity: 0.9;
  font-weight: 500;
}
@media (max-width: 1023.98px) {
  .contacts__cols {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 639.98px) {
  .contacts__box {
    padding: 16px;
  }
  .contacts__item {
    gap: 12px;
  }
  .contacts__item-icon {
    width: 40px;
    height: 40px;
    border-radius: var(--radius);
  }
  .contacts__item-label {
    font-size: 1.125rem;
  }
  .contacts__item-val {
    font-size: 1rem;
  }
  .contacts__form-head {
    margin-bottom: 24px;
  }
  .contacts__form-title {
    font-size: 1.25rem;
  }
}

/**************************************************************

**************************************************************/
/**************************************************************

**************************************************************/
/**************************************************************

**************************************************************/
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluYy9fdmFycy5zY3NzIiwiX2FsbC5zY3NzIiwiX2ZvbnRzLnNjc3MiLCJfcmVzZXQuc2NzcyIsIl9jb21tb24uc2NzcyIsImNvbW1vbi9fY29udGVudC5zY3NzIiwiY29tbW9uL19zZWN0aW9uLnNjc3MiLCJjb21tb24vX2NvbHMuc2NzcyIsImNvbW1vbi9fZWxlbWVudHMuc2NzcyIsIl9saWJzLnNjc3MiLCJfZm9ybXMuc2NzcyIsImluYy9fbWl4aW5zLnNjc3MiLCJfcG9wdXAuc2NzcyIsIl9oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX25hdmZpeC5zY3NzIiwiX2Zvb3Rlci5zY3NzIiwic3R5bGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7OztBQzlCSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNFOzs7QUFFRjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUlKO0VBQ0k7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7OztBQUdOO0VBQ0k7SUFDRTs7RUFHRjtJQUNFOzs7QUFJTjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTs7RUFHRjtJQUNFOztFQUdGO0lBQ0U7O0VBR0Y7SUFDRTs7O0FDL0RKO0FBRUE7RUFDQztFQUNBO0VBQ0EsS0FDQztFQUdEO0VBQ0E7O0FBR0Q7RUFDQztFQUNBO0VBQ0EsS0FDQztFQUdEO0VBQ0E7O0FBR0Q7RUFDQztFQUNBO0VBQ0EsS0FDQztFQUdEO0VBQ0E7O0FBR0Q7RUFDQztFQUNBO0VBQ0EsS0FDQztFQUdEO0VBQ0E7O0FBR0Q7RUFDQztFQUNBO0VBQ0EsS0FDQztFQUdEO0VBQ0E7O0FBR0Q7RUFDQztFQUNBO0VBQ0Es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SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBS0o7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBS1Y7SUFDSTs7RUFDQTtJQUNJOzs7QUFJVjtFQUdJO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQU1HO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUpKO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUpKO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUpKO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUlKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUxKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUxKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUxKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUtSO0lBQ0k7OztBQUdSO0VBR0k7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VB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STs7QUFHUjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTtFQUFhOztBQUdyQjtFQUNJLFdoQjNpREo7RWdCNGlESTs7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQVk7RUFDWixZaEJ0a0RMO0VnQnVrREs7RUFDQTs7QUFLaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7SUFDSTtJQUNBOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQVk7O0FBR3BCO0VBQ0ksV2hCOWxESjtFZ0IrbERJOztBQUVKO0VBQ0ksV2hCcG1ESjtFZ0JvbUR1QixPaEI1bURYO0VnQjZtRFI7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSSxPaEJ2bkRHO0VnQnduREgsV2hCOW1ESjtFZ0IrbURJOztBQUtKO0VBQ0k7O0FBRUo7RUFDSSxXaEJwbkRIO0VnQnFuREc7O0FBRUo7RUFDSTtFQUNBOztBQUtSO0VBQ0k7SUFDSTs7O0FBR1I7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBQ0E7SUFDSTtJQUNBO0lBQ0E7O0VBRUo7SUFDSSxXaEJucERSOztFZ0JxcERJO0lBQ0ksV2hCeHBETjs7RWdCOHBERTtJQUNJOztFQUVKO0lBQ0ksV2hCOXBEUjs7OztBZ0J1cURSOztBQUFBO0FBUUE7O0FBQUE7QUFRQTs7QUFBQSIsImZpbGUiOiJzdHlsZXMubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcclxuICAgIC0tY29sb3ItdGV4dC1ib2R5OiAjMmUyZTQ4O1xyXG4gICAgLS1jb2xvci13aGl0ZTogI2ZmZjtcclxuICAgIC0tcHJpbWFyeTogIzJlMmU0ODtcclxuICAgIC0tcHJpbWFyeS1mb3JlZ3JvdW5kOiAjZmZmO1xyXG4gICAgLS1zZWNvbmRhcnk6ICNiNmQxZGY7XHJcbiAgICAtLXNlY29uZGFyeS1mb3JlZ3JvdW5kOiAjMmUyZTQ4O1xyXG4gICAgLS1tdXRlZDogI2Y4ZjlmYTtcclxuICAgIC0tbXV0ZWQtZm9yZWdyb3VuZDogIzZjNzU3ZDtcclxuICAgIC0tYWNjZW50OiAjZjA3ZDI5O1xyXG4gICAgLS1hY2NlbnQtZm9yZWdyb3VuZDogI2ZmZjtcclxuICAgIC0tYWNjZW50LWhvdmVyOiAjZTA2YjE4O1xyXG4gICAgLS1hY2NlbnQtZGFyazogI2QxNWEwYTtcclxuICAgIC0tYWNjZW50LWxpZ2h0OiAjZmRmM2U3O1xyXG4gICAgLS1hY2NlbnQtc2Vjb25kYXJ5OiAjYjZkMWRmO1xyXG4gICAgLS1hY2NlbnQtc2Vjb25kYXJ5LWRhcms6ICNhMGMzZDI7XHJcbiAgICAtLWFjY2VudC1zZWNvbmRhcnktbGlnaHQ6ICNlOGY0Zjg7XHJcblxyXG4gICAgLS1jb2xvci1yZWQtNTAwOiBva2xjaCguNjM3IC4yMzcgMjUuMzMxKTtcclxuICAgIC0tY29sb3Itb3JhbmdlLTUwMDogb2tsY2goLjcwNSAuMjEzIDQ3LjYwNCk7XHJcbiAgICAtLWNvbG9yLWdyZWVuLTUwMDogb2tsY2goLjcyMyAuMjE5IDE0OS41NzkpO1xyXG4gICAgLS1jb2xvci1ncmVlbi02MDA6IG9rbGNoKC42MjcgLjE5NCAxNDkuMjE0KTtcclxuICAgIC0tY29sb3ItYmx1ZS01MDA6IG9rbGNoKC42MjMgLjIxNCAyNTkuODE1KTtcclxuICAgIC0tY29sb3ItcHVycGxlLTUwMDogb2tsY2goLjYyNyAuMjY1IDMwMy45KTtcclxuICAgIC0tY29sb3ItZ3JheS0xMDA6IG9rbGNoKC45NjcgLjAwMyAyNjQuNTQyKTtcclxuICAgIC0tY29sb3ItZ3JheS00MDA6IG9rbGNoKC43MDcgLjAyMiAyNjEuMzI1KTtcclxuXHJcbiAgICAtLXNwYWNpbmc6IC4yNXJlbTtcclxuICAgIC0tcmFkaXVzOiAuNzVyZW07XHJcbiAgICAtLXJhZGl1cy14czogLjEyNXJlbTtcclxuICAgIC0tcmFkaXVzLTJ4bDogMXJlbTtcclxufVxyXG5cclxuJGZvbnQ6ICdNb250c2VycmF0JywgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZjtcclxuXHJcbiRiZy1ib2R5OiAjRkZGO1xyXG4kYmctZ3JheS1saWdodDogI0Y4RkFGQztcclxuXHJcbiRjb2xvci1ib2R5OiB2YXIoLS1wcmltYXJ5KTtcclxuJGNvbG9yLWFjY2VudDogdmFyKC0tYWNjZW50KTtcclxuJGNvbG9yLWFjY2VudC1ob3ZlcjogdmFyKC0tYWNjZW50LWhvdmVyKTtcclxuJGNvbG9yLWFjY2VudC1kYXJrOiB2YXIoLS1hY2NlbnQtZGFyayk7XHJcblxyXG4kZnMteHM6IC43NXJlbTtcclxuJGZzLXhzLS1saW5lLWhlaWdodDogY2FsYygxIC8gLjc1KTtcclxuJGZzLXNtOiAuODc1cmVtO1xyXG4kZnMtc20tLWxpbmUtaGVpZ2h0OiBjYWxjKDEuMjUgLyAuODc1KTtcclxuJGZzLWJhc2U6IDFyZW07XHJcbiRmcy1iYXNlLS1saW5lLWhlaWdodDogY2FsYygxLjUgLyAxKTtcclxuJGZzLWxnOiAxLjEyNXJlbTtcclxuJGZzLWxnLS1saW5lLWhlaWdodDogY2FsYygxLjc1IC8gMS4xMjUpO1xyXG4kZnMteGw6IDEuMjVyZW07XHJcbiRmcy14bC0tbGluZS1oZWlnaHQ6IGNhbGMoMS43NSAvIDEuMjUpO1xyXG4kZnMtMnhsOiAxLjVyZW07XHJcbiRmcy0yeGwtLWxpbmUtaGVpZ2h0OiBjYWxjKDIgLyAxLjUpO1xyXG4kZnMtM3hsOiAxLjg3NXJlbTtcclxuJGZzLTN4bC0tbGluZS1oZWlnaHQ6IGNhbGMoMi4yNSAvIDEuODc1KTtcclxuJGZzLTR4bDogMi4yNXJlbTtcclxuJGZzLTR4bC0tbGluZS1oZWlnaHQ6IGNhbGMoMi41IC8gMi4yNSk7XHJcbiRmcy01eGw6IDNyZW07XHJcbiRmcy01eGwtLWxpbmUtaGVpZ2h0OiAxO1xyXG4kZnMtNnhsOiAzLjc1cmVtO1xyXG4kZnMtNnhsLS1saW5lLWhlaWdodDogMTtcclxuJGZzLTd4bDogNC41cmVtO1xyXG4kZnMtN3hsLS1saW5lLWhlaWdodDogMTtcclxuXHJcblxyXG5cclxuJHdpZHRoLWNvbnRhaW5lcjogMTI4MHB4O1xyXG4kcGQtY29udGFpbmVyOiAxNnB4O1xyXG4kcGQtY29udGFpbmVyLXNteDogMTVweDtcclxuXHJcbiRtZC1kZXNrdG9wLWxnOiAxNjk5Ljk4cHg7XHJcbiRtZC1kZXNrdG9wLW1kOiAxMjg5Ljk4cHg7XHJcbiRtZC1kZXNrdG9wOiAxMTk5Ljk4cHg7XHJcbiRtZC10YWJsZXQ6IDEwMjMuOThweDtcclxuJG1kLXRhYmxldC1zbTogNzY3Ljk4cHg7XHJcbiRtZC1tb2JpbGUtbGc6IDYzOS45OHB4O1xyXG4kbWQtbW9iaWxlOiA0NzkuOThweDtcclxuJG1kLW1vYmlsZS1zbTogMzk5Ljk4cHg7XHJcbiRtZC1tb2JpbGUtc214OiAzNjBweDtcclxuXHJcbiRoZWFkZXItaDogMTAwcHg7XHJcbiRoZWFkZXItaC10OiA4MHB4O1xyXG4kaGVhZGVyLWgtbTogNzBweDsiLCIuc2hhZG93LWxnIHtcclxuICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDEwcHggMTVweCAtM3B4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDRweCA2cHggLTRweDtcclxufVxyXG4uc2hhZG93LW1kIHtcclxuICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDRweCA2cHggLTFweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAycHggNHB4IC0ycHhcclxufVxyXG4uc2hhZG93LXhsIHtcclxuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAyMHB4IDI1cHggLTVweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA4cHggMTBweCAtNnB4O1xyXG59XHJcbi5zaGFkb3ctMnhsIHtcclxuICAgIGJveC1zaGFkb3c6IHJnYmEoMjQwLCAxMjUsIDQxLCAwLjI1KSAwcHggMjBweCA0MHB4IDBweFxyXG59XHJcbi5zaGFkb3ctaW5uZXIge1xyXG4gICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMC4wNSkgMHB4IDJweCA0cHggMHB4IGluc2V0O1xyXG4gIH1cclxuXHJcbi5iYWNrZHJvcC1ibHVyLXNtIHtcclxuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCk7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcclxufVxyXG5cclxuXHJcbkBrZXlmcmFtZXMgYmFja2dyb3VuZE1vdmUge1xyXG4gICAgMCUge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJTtcclxuICAgIH1cclxuICBcclxuICAgIDUwJSB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCU7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAxMDAlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCU7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBmbG9hdCB7XHJcbiAgICAwJSwgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKXJvdGF0ZSgwKTtcclxuICAgIH1cclxuICBcclxuICAgIDUwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweClyb3RhdGUoNWRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgY2hhb3RpYyB7XHJcbiAgMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMClyb3RhdGUoMClzY2FsZSgxKTtcclxuICB9XHJcblxyXG4gIDI1JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyMHB4LCAtMTVweClyb3RhdGUoOTBkZWcpc2NhbGUoMS4yKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTBweCwgMTBweClyb3RhdGUoMTgwZGVnKXNjYWxlKC44KTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNXB4LCAtNXB4KXJvdGF0ZSgyNzBkZWcpc2NhbGUoMS4xKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMClyb3RhdGUoMzYwZGVnKXNjYWxlKDEpO1xyXG4gIH1cclxufSIsIi8qIFRoaXMgc3R5bGVzaGVldCBnZW5lcmF0ZWQgYnkgVHJhbnNmb250ZXIgKGh0dHBzOi8vdHJhbnNmb250ZXIub3JnKSBvbiBPY3RvYmVyIDMsIDIwMTcgMTA6MDUgUE0gKi9cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtTGlnaHQuZW90Jyk7XHJcblx0c3JjOlxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUxpZ2h0LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUxpZ2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1NZWRpdW1JdGFsaWMuZW90Jyk7XHJcblx0c3JjOiBcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1NZWRpdW1JdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1NZWRpdW1JdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LU1lZGl1bUl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZEl0YWxpYy5lb3QnKTtcclxuXHRzcmM6IFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUJvbGRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1Cb2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1Cb2xkSXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtU2VtaUJvbGQuZW90Jyk7XHJcblx0c3JjOiBcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1TZW1pQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVNlbWlCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1TZW1pQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtRXh0cmFCb2xkSXRhbGljLmVvdCcpO1xyXG5cdHNyYzogXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtRXh0cmFCb2xkSXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtRXh0cmFCb2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1FeHRyYUJvbGRJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0LUl0YWxpYy5lb3QnKTtcclxuXHRzcmM6XHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtSXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1JdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0LUJvbGQuZW90Jyk7XHJcblx0c3JjOlxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtTGlnaHRJdGFsaWMuZW90Jyk7XHJcblx0c3JjOiBcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1MaWdodEl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LUxpZ2h0SXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1MaWdodEl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtU2VtaUJvbGRJdGFsaWMuZW90Jyk7XHJcblx0c3JjOiBcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1TZW1pQm9sZEl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVNlbWlCb2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1TZW1pQm9sZEl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci5lb3QnKTtcclxuXHRzcmM6IFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LVJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1NZWRpdW0uZW90Jyk7XHJcblx0c3JjOiBcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1NZWRpdW0uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0LU1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtRXh0cmFCb2xkLmVvdCcpO1xyXG5cdHNyYzogXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtRXh0cmFCb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQtRXh0cmFCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC1FeHRyYUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcbiIsIioge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBlbSwgaW1nLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCAgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCB0YWJsZSwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgZm9udC1zaXplOiAxMDAlO1xyXG59XHJcbmhlYWRlciwgbmF2LCBzZWN0aW9uLCBhcnRpY2xlLCBhc2lkZSwgZm9vdGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuaHRtbCB7ICBcclxuICAgIGhlaWdodDoxMDAlOyBcclxufVxyXG5ib2R5IHsgIFxyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7IFxyXG4gICAgaGVpZ2h0OjEwMCU7IFxyXG4gICAgZm9udC1mYW1pbHk6ICRmb250OyBcclxuICAgIGNvbG9yOiAkY29sb3ItYm9keTsgZm9udC1zaXplOiAxNnB4OztcclxuICAgIGxpbmUtaGVpZ2h0OiBsaCgyOCwgMTgpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGJhY2tncm91bmQ6ICRiZy1ib2R5O1xyXG59XHJcbmJvZHkgKixcclxuYm9keSAqOmJlZm9yZSxcclxuYm9keSAqOmFmdGVyIHtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IFxyXG59XHJcblxyXG5pbWcgeyBcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbn1cclxuXHJcbnVsIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5hIHsgXHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXHJcbiAgICBtYXJnaW46IDA7IHBhZGRpbmc6IDA7XHJcbn1cclxuIiwiXHJcbi5jbGVhciB7IFxyXG4gICAgY2xlYXI6IGJvdGg7IFxyXG4gICAgaGVpZ2h0OiAwOyBcclxuICAgIG92ZXJmbG93OiBoaWRkZW47IFxyXG4gICAgZm9udC1zaXplOiAwO1xyXG59XHJcbi5jbGVhcmZpeDphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG4uY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAkd2lkdGgtY29udGFpbmVyOyBcclxuICAgIHBhZGRpbmc6IDAgMzJweDtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICAgICAgXHJcbiAgICB9XHRcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgIFxyXG4gICAgfVx0XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgICBcclxuICAgIH1cdFxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIC8vIG1heC13aWR0aDogNzIycHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAyNHB4OztcclxuICAgIH1cdFxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cdFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBwYWRkaW5nOiAwICRwZC1jb250YWluZXI7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLXNteCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgJHBkLWNvbnRhaW5lci1zbXg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLndyYXBwZXIge1xyXG4gICAgbWluLWhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7ICBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICBpbnNldDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmIDAlLCAjZThmNGY4IDI1JSwgI2I2ZDFkZiA1MCUsICNmZGYzZTcgNzUlLCAjZmZmIDEwMCUpIDAgMCAvIDQwMCUgNDAwJTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBhbmltYXRpb246IDEycyBpbmZpbml0ZSBiYWNrZ3JvdW5kTW92ZTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgaW5zZXQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQgdG9wLCBva2xhYigwLjMxMzU2NCAwLjAxMDcyMjcgLTAuMDQ0OTcwMSAvIDAuMDUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDUwJSwgb2tsYWIoMC43MDgwNTUgMC4xMDQ0NDMgMC4xMzA4MDYgLyAwLjA4KSAxMDAlKTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgIH1cclxuICAgICYuYmcge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMzZTNkNWM7XHJcbiAgICAgICAgLS1jb2xvci10ZXh0LWJvZHk6ICNmZmY7XHJcbiAgICAgICAgJjo6YWZ0ZXIsICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNlY3Rpb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTsgbGVmdDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6NzB2dzsgaGVpZ2h0OiA1MHZ3O1xyXG4gICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgICAgICAgICAgICAgLy8gLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcclxuICAgICAgICAgICAgICAgIC8vIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDYwJSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybik6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwJTtcclxuICAgICAgICAgICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uY29udGVudF9fd3JhcHBlciB7XHJcbiAgICBmbGV4OiAxIDAgYXV0bztcclxufVxyXG5cclxuLnBkX19oZWFkZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA4NXB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA3NXB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGlkZS1kZXNrdG9wLWxnIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1sZykge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uaGlkZS1kZXNrdG9wLW1kIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uaGlkZS1kZXNrdG9wIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uaGlkZS10YWJsZXQge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLmhpZGUtdGFibGV0LXNtIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5oaWRlLW1vYmlsZS1sZyB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uc2hvdy1kZXNrdG9wIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWQtZGVza3RvcCsgMC4wMnB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5zaG93LXRhYmxldCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldCsgMC4wMnB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5zaG93LXRhYmxldC1zbSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldC1zbSsgMC4wMnB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5zaG93LW1vYmlsZS1sZyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLW1vYmlsZS1sZysgMC4wMnB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubm9zY3JvbGwge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm5vd3JhcCB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcbi5uby1kaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG5AaW1wb3J0IFwiY29tbW9uL2NvbnRlbnRcIjtcclxuQGltcG9ydCBcImNvbW1vbi9zZWN0aW9uXCI7XHJcbkBpbXBvcnQgXCJjb21tb24vY29sc1wiO1xyXG5AaW1wb3J0IFwiY29tbW9uL2VsZW1lbnRzXCI7IiwiXHJcbi5jb250ZW50X190ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaCgyOCwgMTgpO1xyXG4gICAgPiAqIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB9XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgIG1hcmdpbjogNDVweCAwO1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICBtYXJnaW46IDQ1cHggMDtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgICB9XHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xyXG4gICAgfVxyXG4gICAgaDUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIH1cclxuICAgIHVsLFxyXG4gICAgb2wge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XHJcbiAgICB9XHJcbiAgICBvbCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyBcclxuICAgICAgICBjb3VudGVyLXJlc2V0OiBudW07XHJcbiAgICB9XHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgdWwgbGk6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDBweDtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTFweDsgXHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICBjb250ZW50OiAn4oCiJztcclxuICAgIH1cclxuICAgIG9sIGxpOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobnVtKSAnLic7IFxyXG4gICAgICBjb3VudGVyLWluY3JlbWVudDogbnVtO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHRcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDBweDtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4OyBcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNDBweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDI1cHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMjVweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5zZWN0aW9uIHtcclxuICAgICZfX2hlYWQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWJvZHkpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7XHJcbiAgICAgICAgJi5tdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYubWItLW1kIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5oY29scyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgZ2FwOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3RhZyB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggNHB4IDZweCAtMXB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDJweCA0cHggLTJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQtbGlnaHQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAzMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBwYWRkaW5nLWlubGluZTogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDYpO1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgJi5tYi0tbWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdmcsIGltZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy01eGw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTN4bDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMteGw7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xyXG4gICAgICAgICYubXQtLW1kIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRleHQtLWNlbnRlciAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19idXR0b25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2OHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICAgICZfX2ZpcnN0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmX19tZyB7XHJcbiAgICAgICAgbWFyZ2luOiA4MHB4IDA7XHJcbiAgICAgICAgJi0tbWQge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtLXNtIHtcclxuICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19tZ3Qge1xyXG4gICAgICAgICYtLXNtIHtcclxuICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3BkIHtcclxuICAgICAgICBwYWRkaW5nOiA4MHB4IDA7XHJcbiAgICB9XHJcbiAgICAmX19wZHQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xyXG4gICAgfVxyXG4gICAgJl9fdGFiIHtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICBcclxuICAgICAgICAmX19oZWFkIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYuaGNvbHMge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgIFxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICBcclxuICAgICAgICAmX19oZWFkIHtcclxuICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6ICRmcy00eGw7ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ludHJvIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNjBweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19wZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZSkge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7ICAgICAgICAgICAgXHJcbiAgICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50aXRsZSB7XHJcbiAgICBcclxufVxyXG4udGV4dCB7XHJcbiAgIFxyXG59XHJcblxyXG4udGV4dC0tY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4udGV4dC0td2hpdGUge1xyXG4gICAgY29sb3I6ICNmZmZmO1xyXG59XHJcbi50ZXh0LWFjY2VudCB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcclxufSIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuXHJcbi5jb2xzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBnYXA6IDIwcHggMDtcclxuICAgIG1hcmdpbjogMCAtMTBweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgJi5hbC1jZW50ZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuW2NsYXNzKj0nY29sLSddIHtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAxMHB4O1xyXG59XHJcblx0XHJcbiRncmlkLWNvbHVtbnM6IDEyO1xyXG4kZ3JpZC1jb2x1bW5zLW1kOiA2O1xyXG5cclxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHRcclxuICAgIC5jb2wtI3skaX0geyBcclxuICAgICAgICB3aWR0aDogMTAwJTtcdFx0XHJcbiAgICB9XHRcclxufVxyXG5cclxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHRcclxuICAubWdsLSN7JGl9IHsgXHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1x0XHRcclxuICB9XHRcclxufVxyXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1x0ICBcdFxyXG4gIC5tZ3ItI3skaX0geyBcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1x0XHRcclxuICB9XHRcclxufVxyXG5cclxuLmNvbC1tdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgJi0tc20ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkbWQtdGFibGV0LXNtICsgMC4wMnB4KSB7XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zLW1kIHtcdCBcclxuXHJcblx0ICBcdC5jb2wtbWQtI3skaX0geyBcclxuXHQgIFx0XHR3aWR0aDogY2FsYygxMDAlIC8gJGdyaWQtY29sdW1ucy1tZCAqICRpKTtcdFx0XHJcblx0ICBcdH1cdFxyXG5cclxuXHR9XHJcblxyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zLW1kIHtcdCAgXHRcclxuXHJcbiAgICAgICAgLm1nbC1tZC0jeyRpfSB7IFxyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gJGdyaWQtY29sdW1ucy1tZCAqICRpICsgMTBweCk7XHRcdFxyXG4gICAgICAgIH1cdFxyXG5cclxuICAgIH1cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucy1tZCB7XHQgIFxyXG4gICAgICAgIC5tZ3ItbWQtI3skaX0geyBcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCAxMDAlIC8gJGdyaWQtY29sdW1ucy1tZCAqICRpICsgMTBweCk7XHJcbiAgICAgICAgICAgXHRcclxuICAgICAgICB9XHRcclxuICAgIH1cclxuXHJcbiAgLmNvbC1tdCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICYtLXNtIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgIH1cclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6ICRtZC10YWJsZXQrIDAuMDJweCkge1xyXG5cdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHQgIFx0XHJcblxyXG5cdCAgXHQuY29sLSN7JGl9IHsgXHJcblx0ICBcdFx0d2lkdGg6IGNhbGMoMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSk7XHRcdFxyXG5cdCAgXHR9XHRcclxuXHJcblx0fVxyXG5cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHQgIFxyXG4gICAgICAgIC5tZ2wtI3skaX0geyBcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoIDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGkgKyAxMHB4KTtcclxuICAgICAgICB9XHRcclxuICAgICAgICBbY2xhc3MqPSdjb2wtJ10ubWdsLSN7JGl9IHsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpICsgMHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1x0ICBcclxuICAgICAgICAubWdyLSN7JGl9IHsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyggMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSArIDEwcHgpO1xyXG4gICAgICAgICAgIFx0XHJcbiAgICAgICAgfVx0XHJcbiAgICAgICAgW2NsYXNzKj0nY29sLSddLm1nci0jeyRpfSB7IFxyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoIDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGkgKyAwcHgpO1xyXG4gICAgICAgICAgIFx0XHJcbiAgICAgICAgfVx0XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbC1tdCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAkbWQtdGFibGV0KyAwLjAycHgpIGFuZCAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG5cdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHQgIFx0XHJcblxyXG5cdCAgXHQuY29sLW1keC0jeyRpfSB7IFxyXG5cdCAgXHRcdHdpZHRoOiBjYWxjKDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGkpO1x0XHRcclxuXHQgIFx0fVx0XHJcblxyXG5cdH1cclxuXHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1x0ICBcclxuICAgICAgICAubWdsLW1keC0jeyRpfSB7IFxyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyggMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSArIDEwcHgpO1xyXG4gICAgICAgICAgIFx0XHJcbiAgICAgICAgfVx0XHJcbiAgICB9XHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1x0ICBcclxuICAgICAgICAubWdyLW1keC0jeyRpfSB7IFxyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoIDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGkgKyAxMHB4KTtcclxuICAgICAgICAgICBcdFxyXG4gICAgICAgIH1cdFxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAuY29scyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xyXG4gICAgfVxyXG4gICAgW2NsYXNzKj0nY29sLSddIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgIC5jb2xzIHtcclxuICAgICAgICBnYXA6IDE2cHggMDtcclxuICAgICAgICBtYXJnaW46IDAgLThweDtcclxuICAgIH1cclxuICAgIFtjbGFzcyo9J2NvbC0nXSB7XHJcbiAgICAgICAgcGFkZGluZzogMCA4cHg7XHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5pY29uIHtcclxuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xyXG4gICAgZmlsbDogbm9uZTtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICYtLWZpbGwge1xyXG4gICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICBzdHJva2U6IGluaXRpYWw7XHJcbiAgICB9XHJcbiAgICBwYXRoIHtcclxuICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIC5zb2NpYWwge1xyXG4vLyAgICAgJl9faXRlbXMge1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbi8vICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuLy8gICAgICAgICBnYXA6IDE2cHg7XHJcbi8vICAgICB9XHJcbi8vICAgICBhIHtcclxuLy8gICAgICAgICB3aWR0aDogNTVweDsgaGVpZ2h0OiA1NXB4O1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbi8vICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuLy8gICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuLy8gICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRjBGRkU5O1xyXG4vLyAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4vLyAgICAgICAgIGNvbG9yOiAjRjBGRkU5O1xyXG4vLyAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4vLyAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBcclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vICAgICAuaWNvbiB7XHJcbi8vICAgICAgICAgd2lkdGg6IDE5cHg7IGhlaWdodDogMTlweDtcclxuLy8gICAgIH1cclxuLy8gfSAgIFxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4ucmF0aW5nIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBzcGFuIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAtMXB4O1xyXG4gICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9zdGFyLnN2Zykgbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvc3Rhci1hY3RpdmUuc3ZnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdmFsIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5saW5rIHtcclxuXHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogbGgoMjcsIDIwKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC5pY29uIHtcclxuICAgICAgICB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgIFxyXG4gICAgfVxyXG4gICAgJl9fbW9yZSB7XHJcbiAgICAgICAgLmNsb3NlX3Qge1xyXG4gICAgICAgICAgICBkaXNwbGF5Om5vbmVcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5vcGVuZWQgLm9wZW5fdCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLm9wZW5lZCAuY2xvc2VfdCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2tcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHhcclxuICAgIH1cclxufVxyXG5cclxuLy8gLmNvbnRlbnRfX3RvZ2dsZSB7XHJcbi8vICAgICA+ICoge1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbi8vICAgICB9XHJcbi8vICAgICAmID4gOm50aC1jaGlsZCgxKSxcclxuLy8gICAgICYgPiA6bnRoLWNoaWxkKDIpIHtcclxuLy8gICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuLy8gICAgIH1cclxuLy8gICAgICYub3BlbmVkID4gKiB7XHJcbi8vICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuLy8gICAgIH1cclxuLy8gICAgICYtLW1vYmlsZSB7XHJcbi8vICAgICAgICAgPiAqIHtcclxuLy8gICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgfVxyXG4vLyAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuLy8gICAgICAgICA+ICoge1xyXG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgICYgPiA6bnRoLWNoaWxkKDEpIHtcclxuLy8gICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vIH1cclxuXHJcblxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcblxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcblxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcblxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcblxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlKSB7XHJcblxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLXNtKSB7XHJcblxyXG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbnN3aXBlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLnN3aXBlciB7XHJcblxyXG59XHJcbi5zd2lwZXItc2xpZGUge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcbi5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGdhcDogOHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICYtYnVsbGV0IHtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEycHg7IGhlaWdodDogMTJweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICYtYWN0aXZlIHtcclxuICAgICAgd2lkdGg6IDE1cHg7IGhlaWdodDogMTVweDtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcbi5zd2lwZXItYnV0dG9uIHtcclxuICAgIHdpZHRoOiAzNnB4OyBoZWlnaHQ6IDM2cHg7XHJcbiAgICBsZWZ0OiAxNnB4O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpIC0gMnB4KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZlNjtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAzMCUsIHRyYW5zcGFyZW50KTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgJi1uZXh0IHtcclxuICAgICAgbGVmdDogYXV0bztcclxuICAgICAgcmlnaHQ6IDE2cHg7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgc3ZnIHtcclxuICAgICAgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1saWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLW5hdiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xyXG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIC02cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5zd2lwZXItc2Nyb2xsYmFyIHtcclxuICBiYWNrZ3JvdW5kOiBub25lIDtcclxufVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbi5ub1VpXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ubm9VaS10YXJnZXQge1xyXG4gIGhlaWdodDogMTZweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tdXRlZCk7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbn1cclxuLm5vVWktY29ubmVjdCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeSk7XHJcbn1cclxuLm5vVWktaG9yaXpvbnRhbCAubm9VaS1oYW5kbGUge1xyXG4gIHdpZHRoOiAxNnB4OyBoZWlnaHQ6IDE2cHg7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeSk7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAtOHB4O1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCBva2xhYigwLjcwODA1NSAwLjEwNDQ0MyAwLjEzMDgwNiAvIDAuNSkgMHB4IDBweCAwcHggNHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDFweCAzcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDFweCAycHggLTFweFxyXG4gIH1cclxufSIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5mb3Jtc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuQGluY2x1ZGUgaW5wdXQtcGxhY2Vob2xkZXIoJy5pbnB1dCcsIHJnYmEoODUsIDg1LCA4NSwgMC42KSwgMSk7XHJcblxyXG4uaW5wdXQ6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge2NvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XHJcbi5pbnB1dDpmb2N1czo6LW8taW5wdXQtcGxhY2Vob2xkZXIgeyAgY29sb3I6IHRyYW5zcGFyZW50OyBvcGFjaXR5OiAwO31cclxuLmlucHV0OmZvY3VzOjotbW96LWlucHV0LXBsYWNlaG9sZGVyIHsgIGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XHJcbi5pbnB1dDpmb2N1czotbW96LWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6IHRyYW5zcGFyZW50OyBvcGFjaXR5OiAwO31cclxuLmlucHV0OmZvY3VzOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxyXG4uaW5wdXQ6Zm9jdXM6aW5wdXQtcGxhY2Vob2xkZXIge2NvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XHJcblxyXG5pbnB1dFtwbGFjZWhvbGRlcl0gICAgICAgICAge3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7fVxyXG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciAgICAge3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7fSBcclxuaW5wdXQ6LW1vei1wbGFjZWhvbGRlciAgICAgIHt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO30gXHJcbmlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt9XHJcblxyXG5cclxuXHJcblxyXG5pbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPXRlbF0sIGJ1dHRvbiB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTt9XHJcblxyXG4uZm9ybSB7XHJcbiAgICAmX19jb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICBncmlkLWdhcDogMCAyNHB4O1xyXG4gICAgfVxyXG4gICAgJl9fcm93IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgICZfX2xhYmVsIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAmX19zdWJtaXQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICB9XHJcbiAgICAmX19wb2xpY3kge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiAjNmM3NTdkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3JvdyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaW5wdXQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnB1dC1iYWNrZ3JvdW5kKTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAzMCUsIHRyYW5zcGFyZW50KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSAtIDJweCk7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgICBmb250LXNpemU6ICRmcy1zbTsgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYWNjZW50KTtcclxuICAgIH1cclxuICAgICYuZXJyb3IsICYuaXMtaW52YWxpZCB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQtNTAwKTtcclxuICAgICAgICAvLyBjb2xvcjogJGNvbG9yLWVycm9yO1xyXG4gICAgICAgIEBpbmNsdWRlIGlucHV0LXBsYWNlaG9sZGVyKCcmJywgdmFyKC0tY29sb3ItcmVkLTUwMCksIDEpO1xyXG4gICAgfVxyXG4gICAgJl9fZXJyb3Ige1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDEwMCU7IGxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcmVkLTUwMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgICAgIFtjbGFzcyo9J2NvbC0nXSA+ICYge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5lcnJvciB+ICZfX2Vycm9yIHtcclxuICAgICAgICBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG59XHJcbnRleHRhcmVhLmlucHV0IHtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICByZXNpemU6IG5vbmU7XHJcbiAgICBoZWlnaHQ6IDEwMHB4O1xyXG59XHJcblxyXG5cclxuLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMTZweDtcclxuICAgIGhlaWdodDogMzhweDtcclxuICAgIHBhZGRpbmc6IDAgMjRweDtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiKDI0MCwgMTI1LCA0MSkgMCUsIHJnYigyMjQsIDEwNywgMjQpIDEwMCUpO1xyXG4gICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggMTBweCAxNXB4IC0zcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggNHB4IDZweCAtNHB4O1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC40LCAwLCAuMiwgMSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaW1nLCBzdmcge1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogMTZweDsgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMDAwLCAjZmZmMywgIzAwMDApO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IC41cztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IC0xMDAlO1xyXG4gICAgfVxyXG4gICAgJi0tbWQge1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgIH1cclxuICAgICYtLWdyZWVuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbi01MDApO1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi0td2hpdGUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQtZGFyaztcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtLWJkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgJi5idG4tLXdoaXRlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5yb3VuZGVkIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KXNjYWxlKDEuMDIpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNDBweCAjZjA3ZDI5NDA7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5jdGEtcHVsc2U6aG92ZXIge1xyXG4gICAgICAgICAgICBhbmltYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4ICNmMDdkMjljYztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0tZ3JlZW46aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbi02MDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLS1iZDpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmOyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgJi5idG4tLXdoaXRlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtLXdhbGwge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICYtLW1kIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAdXNlIFwic2FzczptYXRoXCI7XHJcblxyXG5AbWl4aW4gaW5wdXQtcGxhY2Vob2xkZXIoJGNsYXNzLCAkY29sb3IsICRvcGFjaXR5OjAuNikge1xyXG4gICAgI3skY2xhc3N9Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW8taW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXJ7IGNvbG9yOiAkY29sb3I7b3BhY2l0eTogJG9wYWNpdHk7fVxyXG4gICAgI3skY2xhc3N9Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXJ7ICBjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyeyAgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc30gaW5wdXQtcGxhY2Vob2xkZXIgeyAgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306OnBsYWNlaG9sZGVyIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTpwbGFjZWhvbGRlci1zaG93biB7Y29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gYWJzLWFsbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbkBtaXhpbiBhYnMtY2VudGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTsgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKVxyXG59XHJcblxyXG5AbWl4aW4gcGhvdG8tY292ZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBsaCgkbGgsICRmcykge1xyXG4gICAgQHJldHVybiAje21hdGguZGl2KCRsaCwgJGZzKX07XHJcbn0iLCJcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbnBvcHVwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ucG9wdXAge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwOyBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTVweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuICAgICZfX2JnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMyMzI3MzA7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IG1heC13aWR0aDogNTEwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNjBweCAzMHB4IDcwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzJCMkQzODtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmX19jbG9zZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAxM3B4OyB0b3A6IDEzcHg7XHJcbiAgICAgICAgd2lkdGg6IDI4cHg7IGhlaWdodDogMjhweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BvcHVwLWNsb3NlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICB9XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDhweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcclxuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgICB9XHJcbiAgICBmb3JtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDI4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ljb250aGFuayB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuICAgICYtdGhhbmsgJl9fdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbmhlYWRlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmhlYWRlciB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDk5O1xyXG4gICAgJl9faW5uZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGdhcDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDgpO1xyXG4gICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDI0KTtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1cHg7IGJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtMTVweDsgcmlnaHQ6IC0xNXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAxMHB4IDE1cHggLTNweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA0cHggNnB4IC00cHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maXhlZCAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAvLyBib3JkZXI6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMjAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAvLyB3aWR0aDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDIwKTtcclxuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tc3BhY2luZykgKiAxNik7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX25hdiB7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudC1zZWNvbmRhcnkpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tY29sb3Itd2hpdGUpIDgwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDRweDtcclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYnRuIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDkwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTsgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxpc3Qge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMTAwJTsgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTkycHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDhweCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAyMHB4IDI1cHggLTVweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA4cHggMTBweCAtNnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmZjI7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICAgICAgei1pbmRleDogOTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7IHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgbGkgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTZweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1saWdodCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtOmhvdmVyICAmLWxpc3Qge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2NvbnRhY3RzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgfVxyXG4gICAgJl9fcGhvbmVzIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudC1zZWNvbmRhcnkpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tY29sb3Itd2hpdGUpIDgwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc3BhY2luZykgKiAyKSBjYWxjKHZhcigtLXNwYWNpbmcpICogNCk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTJweDtcclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjA3ZDI5IDAlLCAjZTA2YjE4IDEwMCUpO1xyXG4gICAgICAgICAgICB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW5mbyB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sYWJlbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtc2Vjb25kYXJ5LWRhcmspO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy14cztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi12YWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnRuIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuICAgICZfX2J1cmdlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19uYXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXJnZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogMzhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmYztcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDEwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuXHJcbiAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNnB4OyBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJvZHk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfSAgICBcclxuICAgICAgICAgICAgLmltZy1jbG9zZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWJzLWNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOXB4OyBoZWlnaHQ6IDE5cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgaW1nLCAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5pbWctY2xvc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2xvZ28ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Bob25lcywgJl9fYnRuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9uYXZmaXgnOyIsIi5uYXZmaXgge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxMDAlOyBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgIHdpZHRoOiAxMDAlOyBcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZmMjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDRweCk7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjZzIGVhc2Utb3V0O1xyXG4gICAgJi5vcGVuZWQge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGFjdHMge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAxMCUsIHRyYW5zcGFyZW50KTtcclxuICAgIH1cclxuICAgICZfX3Bob25lcyB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudC1saWdodCkgNTAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxMnB4O1xyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmMDdkMjkgMCUsICNlMDZiMTggMTAwJSk7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW5mbyB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbGFiZWwge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYWNjZW50LXNlY29uZGFyeS1kYXJrKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdmFsIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDEwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX21lbnUgeyAgICAgXHJcbiAgICAgICAgbGkgKyBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgfSAgIFxyXG4gICAgICAgIGxpIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbmZvb3RlclxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmZvb3RlciB7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJlMmU0OCAwJSwgIzNhM2E1YyAxMDAlKTtcclxuICAgIGNvbG9yOiAjYjZkMWRmO1xyXG4gICAgcGFkZGluZzogNDhweCAwO1xyXG4gICAgJl9fY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDMycHg7XHJcbiAgICB9XHJcbiAgICAmX19sZWZ0IHtcclxuICAgICAgICB3aWR0aDogMzglO1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgfVxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xyXG4gICAgICAgIGdhcDogMzJweDtcclxuICAgIH1cclxuICAgICZfX25hdiB7XHJcbiAgICBcclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteGw7IGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1saXN0IHtcclxuICAgICAgICAgICAgbGkgKyBsaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19zbmFtZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7IGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICB9XHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtbGc7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyOHJlbTtcclxuICAgIH1cclxuICAgICZfX2NvbnRhY3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMjAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tY29sb3Itd2hpdGUpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDMycHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fc29jaWFsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGdhcDogMjRweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgICYtaXRlbXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBnYXA6IDE2cHggMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1saW5rIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudGV4dC14bCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2NvcHkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIH1cclxuICAgICZfX2xpbmtzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgIH1cclxuICAgICZfX2xpbmsge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tY29sb3Itd2hpdGUpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDMycHg7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAzMnB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWNvbG9yLXdoaXRlKSAxMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWNvbG9yLXdoaXRlKSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19sZWZ0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19sZWZ0IHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fbWVudSB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiaW5jL2NvcmVcIjtcclxuXHJcbkBpbXBvcnQgXCJhbGxcIjtcclxuQGltcG9ydCBcImZvbnRzXCI7XHJcbkBpbXBvcnQgXCJyZXNldFwiO1xyXG5AaW1wb3J0IFwiY29tbW9uXCI7XHJcbkBpbXBvcnQgXCJsaWJzXCI7XHJcbkBpbXBvcnQgXCJmb3Jtc1wiO1xyXG5AaW1wb3J0IFwicG9wdXBcIjtcclxuQGltcG9ydCBcImhlYWRlclwiO1xyXG5AaW1wb3J0IFwiZm9vdGVyXCI7XHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5oZXJvIHtcclxuICAgIHBhZGRpbmctdG9wOiAxNDBweDtcclxuICAgICZfX2NvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xyXG4gICAgICAgIGdhcDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDEyKTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fbGVmdCB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtYm9keSk7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtN3hsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICB9XHJcbiAgICAmX19hZHZhbnRzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogMXB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWJvZHkpO1xyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM2cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7IHRvcDogM3B4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvY2hlY2stY2lyY2xlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuICAgICZfX2RvY3Mge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC40LCAwLCAuMiwgMSk7XHJcbiAgICAgICAgcGFkZGluZzogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDgpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tY29sb3Itd2hpdGUpIDkwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50LXNlY29uZGFyeSkgMzAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLTJ4bCk7XHJcbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCkgc2NhbGUoMS4wMik7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNDBweCAjZjA3ZDI5NDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDcwcHg7IGhlaWdodDogNzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtMnhsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1zdWJ0aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByb2dyZXNzIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LXNlY29uZGFyeS1saWdodCk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50LXNlY29uZGFyeSkgNDAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDRweCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc3BhY2luZykgKiA2KTtcclxuICAgICAgICAgICAgJl9faGVhZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX192YWwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteGw7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3BlcmNlbnQge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDEwMCU7IHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAzMCUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX2xpbmUge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjA3ZDI5IDAlLCAjZTA2YjE4IDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogMi4ycyBlYXNlLWluLW91dCBwcm9ncmVzcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBrZXlmcmFtZXMgcHJvZ3Jlc3Mge1xyXG4gICAgICAgICAgICAgICAgICAgIDAlIHtcclxuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAxMDAlIHtcclxuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5NSU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcHJvcHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgICAgICAgICAgIGdhcDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByb3Age1xyXG4gICAgICAgICAgICAvLyBhbmltYXRpb246IDRzIGVhc2UtaW4tb3V0IGluZmluaXRlIGZsb2F0O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWNvbG9yLXdoaXRlKSA3MCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQtc2Vjb25kYXJ5KSAzMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3ZnIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tc3BhY2luZykgKiAyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX192YWwge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3RleHQge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtY2lyY2xlLTEge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogLTMycHg7IHJpZ2h0OiAtMzJweDtcclxuICAgICAgICAgICAgd2lkdGg6IDgwcHg7IGhlaWdodDogODBweDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiA0cyBlYXNlLWluLW91dCBpbmZpbml0ZSBmbG9hdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2YwN2QyOSAwJSwgI2UwNmIxOCAxMDAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNpcmNsZS0yIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTsgcmlnaHQ6IC0xNnB4O1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDsgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBhbmltYXRpb246IDZzIGVhc2UtaW4tb3V0IGluZmluaXRlIGNoYW90aWM7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyZTJlNDggMCUsICMzYTNhNWMgMTAwJSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1jaXJjbGUtMyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAtMjRweDsgcmlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2NHB4OyBoZWlnaHQ6IDY0cHg7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogNHMgZWFzZS1pbi1vdXQgaW5maW5pdGUgZmxvYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNiNmQxZGYgMCUsICNhMGMzZDIgMTAwJSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19wcm9wcyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLXNwYWNpbmcpICogNik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudC1zZWNvbmRhcnkpIDMwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgfVxyXG4gICAgJl9fcHJvcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICYucHJvcC0tYmcge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudC1saWdodCkgNTAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc3BhY2luZykgKiAyKTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgLnByb3AtLWJnICYge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZiMmMzNjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICB9XHJcbiAgICAmX19yYXRpbmcge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWJvZHkpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTJweCAyNHB4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAmLWNvbW0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYWNjZW50LXNlY29uZGFyeSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9fY29scyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy02eGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBcclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTR4bDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19wcm9wcyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2RvY3Mge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtc3VidGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXByb3BzIHtcclxuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3JhdGluZyB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICYtY29tbSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uc29sdXRpb25zIHtcclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcclxuICAgICAgICBncmlkLWdhcDogMzJweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZmYyO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjEpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggI2YwN2QyOTk5O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpc2NhbGUoMS4wMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDU2cHg7IGhlaWdodDogNTZweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2YwN2QyOSAwJSwgI2UwNmIxOCAxMDAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLTJ4bCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgc3ZnLCBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDU1JTsgaGVpZ2h0OiA1NSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWludHJvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxpc3Qge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTJweDtcclxuICAgICAgICAgICAgICAgICYgKyBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDhweDsgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWFjY2VudDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWJ1dHRvbnMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uY2FyZGluZm8ge1xyXG4gICAgbWF4LXdpZHRoOiA3NjhweDtcclxuICAgIG1hcmdpbjogODBweCBhdXRvIDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjA3ZDI5IDAlLCAjZTA2YjE4IDEwMCUpO1xyXG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDEwKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNDYsIDQ2LCA3MiwgMC4xNSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAmLnctLW1kIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDg5NnB4O1xyXG4gICAgfVxyXG4gICAgJi5wZC0tbWQge1xyXG4gICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc3BhY2luZykgKiA4KTtcclxuICAgIH1cclxuICAgICYucGQtLWxnIHtcclxuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLXNwYWNpbmcpICogMTIpO1xyXG4gICAgfVxyXG4gICAgJi5tdC0tbWQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtM3hsO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkZnMtM3hsLS1saW5lLWhlaWdodDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTJ4bDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRmcy0yeGwtLWxpbmUtaGVpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmZzLS1sZyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTR4bDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRmcy00eGwtLWxpbmUtaGVpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0OHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgICYubXQtLXNtIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy14bDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYiB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNTZweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICAgICAgJi5tdC0tbWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxhYmVsIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtMnhsO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGZzLTJ4bC0tbGluZS1oZWlnaHQ7XHJcbiAgICAgICAgICAgICYuZnMtLWxnIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTJ4bDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkZnMtMnhsLS1saW5lLWhlaWdodDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbnRybyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICAgICAgICAgICYuZnMtLW1kIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLnJhdGVzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50LWxpZ2h0KSA0MCUsIHRyYW5zcGFyZW50KTtcclxuICAgICZfX3Byb3BzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBnYXA6IGNhbGModmFyKC0tc3BhY2luZykgKiA2KTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xyXG4gICAgfVxyXG4gICAgJl9fcHJvcCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggMTBweCAxNXB4IC0zcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggNHB4IDZweCAtNHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZlNjtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBwYWRkaW5nLWlubGluZTogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDYpO1xyXG4gICAgICAgIGhlaWdodDogNThweDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHN2ZywgaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgLS10dy1zY2FsZS14OiAxMDUlO1xyXG4gICAgICAgICAgICAgICAgLS10dy1zY2FsZS15OiAxMDUlO1xyXG4gICAgICAgICAgICAgICAgLS10dy1zY2FsZS16OiAxMDUlO1xyXG4gICAgICAgICAgICAgICAgc2NhbGU6IHZhcigtLXR3LXNjYWxlLXgpIHZhcigtLXR3LXNjYWxlLXkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgIFxyXG4gICAgfVxyXG5cclxuICAgICZfX2NhbGMge1xyXG4gICAgICAgIG1heC13aWR0aDogODk2cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcclxuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLXNwYWNpbmcpICogNik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZmYyO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaGljb24ge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDQwcHg7IGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2YwN2QyOSAwJSwgI2UwNmIxOCAxMDAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBpbWcsIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlOyBoZWlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteGw7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcmNvbHMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgICAgICAgICAgIGdhcDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDYpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAmX19sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYm90dG9tIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDhweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xyXG4gICAgICAgICAgICBnYXA6IGNhbGModmFyKC0tc3BhY2luZykgKiA0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1iaXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDRweCk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDEwcHggMTVweCAtM3B4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDRweCA2cHggLTRweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3ZhbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTJ4bDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xyXG4gICAgICAgIGdhcDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDYpO1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmZjI7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDMwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDRweCk7XHJcbiAgICAgICAgcGFkZGluZzogMzJweCAyNHB4IDI0cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDZweDtcclxuICAgICAgICAmLml0ZW0tLXNjYWxlIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweClzY2FsZSgxLjAyKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA0MHB4ICNmMDdkMjk0MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLml0ZW0tLXNjYWxlOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KXNjYWxlKDEuMDcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0OHB4OyBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmMDdkMjkgMCUsICNlMDZiMTggMTAwJSk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDEwcHggMTVweCAtM3B4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDRweCA2cHggLTRweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDE2cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBpbWcsIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlOyBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWludHJvIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcHJpY2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgJl9fbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX19vbGQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktNDAwKTtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbGlzdCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgICAgICYgKyBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDsgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvY2hlY2suc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1idXR0b25zIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGFnIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7IHRvcDogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmMDdkMjkgMCUsICNlMDZiMTggMTAwJSk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDIwcHggMjVweCAtNXB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDhweCAxMHB4IC02cHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSAtIDJweCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IGNhbGModmFyKC0tc3BhY2luZykgKiA0KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiA2cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy14cztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNSUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtc2FsZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAtOHB4OyByaWdodDogLThweDtcclxuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7IGhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTJkZWcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQtNTAwKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhzOyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2Jsb2NrcyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDhweDtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICBncmlkLWdhcDogMzJweDtcclxuICAgIH1cclxuICAgICZfX2Jsb2NrIHtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZmMjtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMzAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICBwYWRkaW5nOiAyNHB4O1xyXG4gICAgICAgICYuYmcge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2YwN2QyOSAwJSwgI2UwNmIxOCAxMDAlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWhpY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMycHg7IGhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2YwN2QyOSAwJSwgI2UwNmIxOCAxMDAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBpbWcsIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlOyBoZWlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJnICYtaGljb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBpbWcsIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1saXN0IHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTJweDtcclxuICAgICAgICAgICAgICAgICYgKyBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDsgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvY2hlY2stb3JhbmdlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDMpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmMztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1idXR0b25zIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYnRleHQge1xyXG4gICAgICAgIG1heC13aWR0aDogNzY4cHg7XHJcbiAgICAgICAgbWFyZ2luOiA0OHB4IGF1dG8gMDtcclxuICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZiMztcclxuICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAyMHB4IDI1cHggLTVweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA4cHggMTBweCAtNnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDRweCk7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDEwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6ICRmcy14czsgY29sb3I6ICM2Yzc1N2Q7XHJcbiAgICAgICAgPiAqICsgKiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19ibG9ja3Mge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY2FsYyB7XHJcbiAgICAgICAgICAgICYtcmNvbHMge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1ib3R0b20ge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1iaXRlbTplbXB0eSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgJl9fcHJvcHMge1xyXG4gICAgICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Byb3Age1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2NhbGMge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fYmxvY2sge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmF1ZGl0IHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAmX19jb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDE2KTtcclxuICAgIH1cclxuICAgICZfX2luY2x1ZGVkIHtcclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtMnhsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1ib2R5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtcyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc3BhY2luZykgKiA0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQtbGlnaHQpIDMwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgICAgICAmX19pY29uIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4cHg7IGhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmMDdkMjkgMCUsICNlMDZiMTggMTAwJSk7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAxMHB4IDE1cHggLTNweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA0cHggNnB4IC00cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgaW1nLCBzdmcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3Jlc3VsdHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgcGFkZGluZzogMzJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtMnhsKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtYm9keSk7XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pdGVtcyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgICZfX3ZhbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3RleHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZ29pbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZmYyO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJhZGl1cykgKyA0cHgpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMSk7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCAjZjA3ZDI5OTk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9ICAgICBcclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogODBweDsgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjA3ZDI5IDAlLCAjZTA2YjE4IDEwMCUpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAxMHB4IDE1cHggLTNweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA0cHggNnB4IC00cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XHJcbiAgICAgICAgICAgIGltZywgc3ZnIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gIFxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy0yeGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW50cm8ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaXRlbSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2NHB4O1xyXG4gICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogdmVyc2UgMTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0OHB4OyBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMmUyZTQ4IDAlLCAjM2EzYTVjIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDRweCA2cHggLTFweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAycHggNHB4IC0ycHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcwJyBjb3VudGVyKHZlcnNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX190b3Age1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3RpbWUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogNHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IGNhbGModmFyKC0tc3BhY2luZykgKiAyKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1saWdodCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMzAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDsgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvdGltZS5zdmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZfX3RleHQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19ndWFyYW50IHtcclxuICAgICAgICBtYXJnaW46IDgwcHggYXV0byAwO1xyXG4gICAgICAgIG1heC13aWR0aDogODk2cHg7XHJcbiAgICAgICAgcGFkZGluZzogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIDgpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZjO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAyMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWxpc3Qge1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IGNhbGModmFyKC0tc3BhY2luZykgKiA4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvY2hlY2stY2lyY2xlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2luY2x1ZGVkIHtcclxuICAgICAgICAgICAgJi1pdGVtcyB7XHJcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fcmVzdWx0cyB7XHJcbiAgICAgICAgICAgICYtaXRlbXMge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fZ29pbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICAmLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgJl9fdG9wIHtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJl9fdGltZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IC0xO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2d1YXJhbnQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNHB4O1xyXG4gICAgICAgICAgICAmLWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLnBhcnRuZXJzIHtcclxuICAgICZfX3NsaWRlciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4OTZweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLnN3aXBlciB7ICAgICAgICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZmU2O1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMjAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDQ4cHg7XHJcbiAgICAgICAgJi1sb2dvIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRhZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMSkgMHB4IDRweCA2cHggLTFweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAycHggNHB4IC0ycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1saWdodCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMzAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAxNnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50LWRhcms7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2FkdmFudHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAzMnB4O1xyXG4gICAgfVxyXG4gICAgJl9fYWR2YW50IHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZmMjtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMjAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICBwYWRkaW5nOiAzMnB4IDMycHggMjRweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMSk7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCAjZjA3ZDI5OTk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweClzY2FsZSgxLjAyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogNjRweDsgaGVpZ2h0OiA2NHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyNHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjA3ZDI5IDAlLCAjZTA2YjE4IDEwMCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtMnhsKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBzdmcsIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTUlOyBoZWlnaHQ6IDU1JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW50cm8ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19hZHZhbnRzIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgJl9fYWR2YW50cyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fc2xpZGVyIHtcclxuICAgICAgICAgICAgLnN3aXBlci1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICAgICAgJi1sb2dvIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy0yeGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1kZXNjIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uaGlzdG9yeSB7XHJcbiAgICAmX19uYXYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgICYtYnRuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAyNHB4O1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA0cHggNnB4IC0xcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggMnB4IDRweCAtMnB4O1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC40LCAwLCAuMiwgMSk7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgaW1nLCBzdmcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50ZXh0LWxnIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWFjY2VudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweClzY2FsZSgxLjAyKTtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNDBweCAjZjA3ZDI5NDA7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIG1heC13aWR0aDogMTE1MnB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZmMjtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMjAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNHB4KTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xyXG4gICAgICAgICYtaW5mbyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGFnIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggMTZweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LWxpZ2h0KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpIC0gMnB4KTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQtZGFyaztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXJvdyB7XHJcbiAgICAgICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXF1b3RlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQtbGlnaHQpIDcwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMzAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvcXVvdGUuc3ZnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX190ZXh0IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fYXV0aG9yIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICAgICAgICAgIGIge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1yZXN1bHQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy0yeGw7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX19yb3cge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX19sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmX192YWwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtM3hsO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQtZGFyaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICAmLWluZm8ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXJvdyB7XHJcbiAgICAgICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXF1b3RlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmLXJlc3VsdCAge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICAgICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJl9fcm93IHtcclxuICAgICAgICAgICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJl9fdmFsIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy14bDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5yZXZpZXdzIHtcclxuICAgIFxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAzMnB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmZjI7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDRweCk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggMjBweCAyNXB4IC01cHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggOHB4IDEwcHggLTZweDtcclxuICAgICAgICBwYWRkaW5nOiAzMnB4IDMycHggMjRweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4xKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4ICNmMDdkMjk5OTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KXNjYWxlKDEuMDIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcmF0aW5nIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWF1dGhvciB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gb2tsYWIsIHZhcigtLWFjY2VudCkgMjAlLCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICAgICAgYiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgXHJcbiAgICAmX19wcm9wcyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogODBweDtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgwLCAxZnIpKTtcclxuICAgICAgICBncmlkLWdhcDogMzJweDtcclxuICAgIH1cclxuICAgICZfX3Byb3Age1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZmMjtcclxuICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCAxMHB4IDE1cHggLTNweCwgcmdiYSgwLCAwLCAwLCAwLjEpIDBweCA0cHggNnB4IC00cHg7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICYtdmFsIHtcclxuICAgICAgICAgICBmb250LXNpemU6ICRmcy00eGw7XHJcbiAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH0gICBcclxuXHJcbiAgICAgICAgJl9fcHJvcHMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fcHJvcHMge1xyXG4gICAgICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Byb3Age1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uY29udGFjdHMge1xyXG4gICAgJl9fY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgICAgICAgZ2FwOiBjYWxjKHZhcigtLXNwYWNpbmcpICogMTIpO1xyXG4gICAgfVxyXG4gICAgJl9fYm94IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmZjI7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgY29sb3ItbWl4KGluIG9rbGFiLCB2YXIoLS1hY2NlbnQpIDIwJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0yeGwpO1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMCkgMHB4IDBweCAwcHggMHB4LCByZ2JhKDAsIDAsIDAsIDApIDBweCAwcHggMHB4IDBweCwgcmdiYSgwLCAwLCAwLCAwKSAwcHggMHB4IDBweCAwcHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggMjBweCAyNXB4IC01cHgsIHJnYmEoMCwgMCwgMCwgMC4xKSAwcHggOHB4IDEwcHggLTZweDtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICAmLm1iLS1zbSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy14bDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1saXN0IHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAmICsgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7IGhlaWdodDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZ2FwOiAyNHB4O1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweClzY2FsZSgxLjAyKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA0MHB4ICNmMDdkMjk0MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gIFxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjA3ZDI5IDAlLCAjZTA2YjE4IDEwMCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtMnhsKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgaGVpZ2h0OiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IFxyXG4gICAgICAgICYtbGFiZWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy14bDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi12YWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1sZzsgY29sb3I6ICRjb2xvci1hY2NlbnQtZGFyazsgXHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3RpbWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50LWxpZ2h0KSA3MCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBva2xhYiwgdmFyKC0tYWNjZW50KSAzMCUsIHRyYW5zcGFyZW50KTtcclxuICAgICAgICAuY29udGFjdHNfX2JveC10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWNjZW50O1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2Zvcm0ge1xyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy0yeGw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWludHJvIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9fY29scyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fYm94IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIGdhcDogMTJweDtcclxuICAgICAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgJi1sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXZhbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgJl9fZm9ybSB7XHJcbiAgICAgICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuXHJcbiJdfQ== */
