@charset "UTF-8";
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Light.eot");
  src: url("../fonts/Montserrat/Montserrat-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat/Montserrat-Light.woff") format("woff"), url("../fonts/Montserrat/Montserrat-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-BoldItalic.eot");
  src: url("../fonts/Montserrat/Montserrat-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat/Montserrat-BoldItalic.woff") format("woff"), url("../fonts/Montserrat/Montserrat-BoldItalic.ttf") format("truetype");
  font-weight: bold;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Italic.eot");
  src: url("../fonts/Montserrat/Montserrat-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat/Montserrat-Italic.woff") format("woff"), url("../fonts/Montserrat/Montserrat-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Bold.eot");
  src: url("../fonts/Montserrat/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat/Montserrat-Bold.woff") format("woff"), url("../fonts/Montserrat/Montserrat-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat/Montserrat-Regular.eot");
  src: url("../fonts/Montserrat/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat/Montserrat-Regular.woff") format("woff"), url("../fonts/Montserrat/Montserrat-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Involve";
  src: url("../fonts/Involve/Involve-Regular.woff2") format("woff2"), url("../fonts/Involve/Involve-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Involve";
  src: url("../fonts/Involve/Involve-Medium.woff2") format("woff2"), url("../fonts/Involve/Involve-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "PolySans Neutral";
  src: url("../fonts/PolySans Neutral/PolySans Neutral.woff2") format("woff2"), url("../fonts/PolySans Neutral/PolySans Neutral.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
* {
  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", sans-serif;
  color: #1A3469;
  font-weight: normal;
  font-style: normal;
  background: #FCFDFF;
  font-size: 18px;
  line-height: 1.4;
}
@media (max-width: 1023.98px) {
  body {
    font-size: 16px;
  }
}
@media (max-width: 609.98px) {
  body {
    font-size: 14px;
  }
}

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: 1392px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1439.98px) {
  .container {
    max-width: 976px;
  }
}
@media screen and (max-width: 1023.98px) {
  .container {
    max-width: 720px;
  }
}
@media screen and (max-width: 767.98px) {
  .container {
    max-width: 100%;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media screen and (max-width: 360px) {
  .container {
    padding: 0 15px;
  }
}

.container-fluid {
  width: 100%;
  max-width: 1392px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
  max-width: 100%;
  padding-left: 20px !important;
  padding-right: 20px !important;
}
@media screen and (max-width: 360px) {
  .container-fluid {
    padding: 0 15px;
  }
}
.container-fluid .section__title {
  max-width: 100%;
}

.wrapper {
  min-height: 100%;
  width: 100%;
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
}

.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: 609.98px) {
  .pd__header {
    margin-top: 60px;
  }
}

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

@media (max-width: 1439.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: 609.98px) {
  .hide-mobile-lg {
    display: none !important;
  }
}

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

@media (min-width: 1200px) {
  .show-desktop-md {
    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: 610px) {
  .show-mobile-lg {
    display: none !important;
  }
}

.noscroll {
  overflow: hidden;
}

.nowrap {
  white-space: nowrap;
}

.no-display {
  display: none;
}

@keyframes move_up_down {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(0, -10%);
  }
  75% {
    transform: translate(0, 10%);
  }
  100% {
    transform: translate(0, 0%);
  }
}
@keyframes hero_img {
  0% {
    transform: rotate(0) scale(1);
  }
  50% {
    transform: rotate(20deg) scale(0.85);
  }
  100% {
    transform: rotate(0) scale(1);
  }
}
.content__text > *:last-child {
  margin-bottom: 0 !important;
}
.content__text p {
  margin-bottom: 16px;
}
.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 {
  font-family: "PolySans Neutral", sans-serif;
  color: #1A3469;
  line-height: 1.2;
}
.content__text h1 {
  font-size: 64px;
  margin: 45px 0;
}
.content__text h2 {
  font-size: 42px;
  margin: 24px 0 16px;
}
.content__text h3 {
  font-size: 36px;
  margin: 24px 0 12px;
}
.content__text h4 {
  font-size: 24px;
  margin: 24px 0 12px;
}
.content__text h5 {
  font-size: 18px;
  margin: 24px 0 12px;
}
.content__text ul,
.content__text ol {
  padding-left: 26px;
  margin-bottom: 16px;
}
.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: #1A3469;
  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;
  margin-bottom: 16px;
}
@media (max-width: 1439.98px) {
  .content__text h1 {
    font-size: 56px;
  }
  .content__text h2 {
    font-size: 36px;
  }
  .content__text h3 {
    font-size: 28px;
  }
  .content__text h4 {
    font-size: 20px;
  }
}
@media (max-width: 767.98px) {
  .content__text h1 {
    font-size: 32px;
  }
  .content__text h2 {
    font-size: 24px;
  }
  .content__text h3 {
    font-size: 18px;
  }
  .content__text h4 {
    font-size: 16px;
  }
}

.sbdr {
  border-radius: 50px;
  margin: 0 auto;
  padding: 65px 50px 100px;
  position: relative;
  background: linear-gradient(180deg, rgba(207, 211, 255, 0.3) 0%, rgba(198, 211, 255, 0.6) 39.46%, rgba(183, 207, 253, 0.8) 66.83%, #c9d7f8 100%);
  overflow: hidden;
}
.sbdr > * {
  position: relative;
  z-index: 5;
}
@media (max-width: 1439.98px) {
  .sbdr {
    padding: 50px 24px 84px;
    border-radius: 30px;
  }
}
@media (max-width: 767.98px) {
  .sbdr {
    border-radius: 20px;
    padding-bottom: 40px;
  }
}

.section__head {
  margin-bottom: 40px;
  text-align: center;
}
.section__head.mb--md {
  margin-bottom: 66px;
}
.section__head.hcols {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
.section__title {
  font-family: "PolySans Neutral", sans-serif;
  font-size: 64px;
  line-height: 1;
  max-width: 985px;
  margin: 0 auto;
}
.section__title.mw {
  max-width: 900px;
}
.section__title.mw--md {
  max-width: 800px;
}
.section__title.mw--lg {
  max-width: 1070px;
}
.section__title.mw--lgx {
  max-width: 1200px;
}
.section__title.w-all {
  max-width: 100%;
}
@media (min-width: 1440px) {
  .section__title.fs--md-d {
    font-size: 56px;
  }
}
.section__title mark {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.section__intro {
  margin: 20px auto 0;
  max-width: 866px;
}
.section__intro.mw--sm {
  max-width: 640px;
}
.section__intro.mw--md {
  max-width: 750px;
}
.section__intro.w-all {
  max-width: 100%;
}
.section__buttons {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px 30px;
  text-align: center;
}
.section__buttons.mt--sm {
  margin-top: 20px;
}
.section__first {
  margin-top: 0 !important;
}
.section__mg {
  margin: 140px 0;
}
.section__mg--smx {
  margin: 24px 0;
}
.section__mgt {
  margin-top: 140px;
}
.section__mgt--smx {
  margin-top: 24px;
}
.section__mgb {
  margin-bottom: 140px;
}
.section__pd {
  padding: 130px 0;
}
.section__pdt {
  padding-top: 70px;
}
.section__tab {
  display: none;
}
.section__tab.show {
  display: block;
}
@media (max-width: 1439.98px) {
  .section__head.mb--md {
    margin-bottom: 40px;
  }
  .section__title {
    font-size: 56px;
    max-width: 850px;
  }
  .section__title.mw {
    max-width: 800px;
  }
  .section__intro {
    max-width: 766px;
  }
  .section__mg {
    margin: 100px 0;
  }
  .section__mgt {
    margin-top: 100px;
  }
  .section__mgt--smx {
    margin-top: 24px;
  }
  .section__mgb {
    margin-bottom: 100px;
  }
}
@media (max-width: 1023.98px) {
  .section__head {
    margin-bottom: 30px;
  }
  .section__head.mb--md {
    margin-bottom: 30px;
  }
  .section__head.hcols {
    flex-direction: column;
    gap: 20px;
  }
  .section__title {
    font-size: 40px;
  }
  .section__title.mw {
    max-width: 600px;
  }
  .section__intro {
    max-width: 600px;
  }
  .section__mg {
    margin: 80px 0;
  }
  .section__mgt {
    margin-top: 80px;
  }
  .section__mgb {
    margin-bottom: 80px;
  }
}
@media (max-width: 609.98px) {
  .section__head {
    margin-bottom: 20px;
  }
  .section__head.mb--md {
    margin-bottom: 20px;
  }
  .section__title {
    font-size: 28px;
  }
  .section__title.mw {
    max-width: 95% !important;
  }
  .section__intro {
    margin-top: 16px;
  }
  .section__buttons {
    margin-top: 24px;
    gap: 12px;
  }
  .section__buttons.mt--sm {
    margin-top: 16px;
  }
  .section__mg {
    margin: 40px 0;
  }
  .section__mg--smx {
    margin: 40px 0;
  }
  .section__mgt {
    margin-top: 40px;
  }
  .section__mgb {
    margin-bottom: 40px;
  }
}
.title {
  font-family: "PolySans Neutral", sans-serif;
  font-size: 36px;
  line-height: 1.2;
}
.title.fs--mdx {
  font-size: 32px;
}
.title.fs--md {
  font-size: 28px;
}
.title.fs--sm {
  font-size: 24px;
}
@media (max-width: 1439.98px) {
  .title {
    font-size: 28px;
  }
  .title.fs--mdx {
    font-size: 28px;
  }
}
@media (max-width: 1023.98px) {
  .title {
    font-size: 24px;
  }
  .title.fs--mdx {
    font-size: 24px;
  }
  .title.fs--md {
    font-size: 24px;
  }
}
@media (max-width: 609.98px) {
  .title {
    font-size: 18px;
  }
  .title.fs--md {
    font-size: 18px;
  }
  .title.fs--mdx {
    font-size: 16px;
  }
  .title.fs--sm {
    font-size: 18px;
  }
}

.text {
  margin-top: 8px;
}

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

.text--white {
  color: white;
}

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

[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: 1439.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;
}

.btnarr {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  position: relative;
  transition: all 0.3s ease-in-out;
}
.btnarr::before, .btnarr::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../images/icons/arrow-circle.svg) no-repeat center;
  background-size: 100%;
  content: "";
  transition: all 0.3s ease-in-out;
}
.btnarr::before {
  opacity: 0;
  z-index: 1;
  background-image: url(../images/icons/arrow-circle-hover.svg);
}
.btnarr--drop::after {
  background-image: url(../images/icons/arrow-circle-up-hover.svg);
}
.btnarr--drop::before {
  background-image: url(../images/icons/arrow-circle-down.svg);
}
.btnarr--white::after {
  background-image: url(../images/icons/arrow-circle-white.svg);
}
.btnarr--white::before {
  background-image: url(../images/icons/arrow-circle-white-hover.svg);
}
.btnarr:hover::after, .item-hover:hover .btnarr::after, .opened .btnarr::after {
  opacity: 0;
}
.btnarr:hover::before, .item-hover:hover .btnarr::before, .opened .btnarr::before {
  opacity: 1;
}
@media (max-width: 1023.98px) {
  .btnarr {
    width: 32px;
    height: 32px;
  }
}

.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;
  }
}

.navs {
  margin-bottom: 40px;
}
.navs ul {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.navs li {
  flex: 0 0 auto;
}
.navs li a {
  display: flex;
  align-items: center;
  height: 40px;
  padding: 0 16px;
  background: #e7eafe;
  border-radius: 100px;
}
@media (max-width: 767.98px) {
  .navs {
    margin-bottom: 24px;
  }
  .navs ul {
    gap: 8px;
    flex-wrap: nowrap;
    overflow: auto;
    padding: 0 20px 5px;
    margin: 0 -20px;
  }
  .navs li {
    flex: 0 0 auto;
  }
  .navs li a {
    white-space: nowrap;
    height: 33px;
    padding: 0 16px;
    font-size: 12px;
  }
  .navs li.current a, .navs li.current-cat a {
    color: #fff;
    background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  }
}

.pagination {
  margin-top: 80px;
  text-align: center;
}
.pagination__count {
  margin-bottom: 10px;
}
@media (max-width: 1439.98px) {
  .pagination {
    margin-top: 40px;
  }
}

.scrolltop {
  position: fixed;
  bottom: 50px;
  right: 86px;
  z-index: 99;
  width: 80px;
  height: 80px;
  border: 1px solid #fff;
  border-radius: 8px;
  backdrop-filter: blur(50px);
  background: rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  outline: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
}
.scrolltop.active {
  opacity: 1;
  visibility: visible;
}
.scrolltop__arrow {
  width: 62%;
  height: 62%;
  transition: all 0.3s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
}
.scrolltop__arrow::after, .scrolltop__arrow:before {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  border-radius: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  content: "";
  transition: all 0.3s ease-in-out;
}
.scrolltop__arrow:before {
  background: linear-gradient(90deg, #533b99 0%, #175eb5 100%);
  z-index: -1;
  opacity: 0;
}
.scrolltop__arrow img {
  width: 46%;
}
@media (hover: hover) {
  .scrolltop:hover .scrolltop__arrow::before {
    opacity: 1;
  }
}

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

.swiper-pagination {
  display: flex;
  justify-content: center;
  position: relative;
  bottom: auto !important;
  margin-top: 16px;
}
.swiper-pagination-bullet {
  margin: 0 2px !important;
  width: 8px;
  height: 8px;
  border: none;
  background: #e7eafe;
  transition: all 0.3s ease-in-out;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-button {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: auto;
  right: 0;
  left: auto;
  margin: 0;
  margin-left: 24px;
  position: static;
  color: black;
}
.swiper-button:after {
  display: none;
}
.swiper-button .icon {
  width: 90%;
}
.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;
}

/**************************************************************
forms
**************************************************************/
.input::-webkit-input-placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input::-o-input-placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input::-moz-input-placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input:-moz-input-placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input::-ms-input-placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input input-placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input::placeholder {
  color: #92a3c5;
  opacity: 1;
}

.input:placeholder-shown {
  color: #92a3c5;
  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;
}

.wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 10px;
}

.form__row {
  margin-bottom: 10px;
}
.form__policy {
  position: relative;
  z-index: 9;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-size: 12px;
}
.form__policy input {
  display: none;
}
.form__policy-t a {
  text-decoration: underline;
}
.form__policy-t a:hover {
  text-decoration: none;
}
.form__policy-sq {
  position: relative;
  flex: 0 0 auto;
  margin: 3px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  border: 1px solid #F8F9FD;
  border-radius: 3px;
}
.form__policy :checked + .form__policy-sq {
  border: none;
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
}
.form__policy :checked + .form__policy-sq::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: url(../images/icons/check.svg) no-repeat center center;
  background-size: 60%;
}
.form__policy input.error + .form__policy-sq {
  border-color: #e157b0;
}
.form__policy input.is-invalid ~ .form__policy-t {
  color: #e157b0;
}

.wpcf7-spinner {
  display: none;
}

.input {
  width: 100%;
  height: 65px;
  padding: 0 35px;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid #fff;
  border-radius: 10px;
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  color: #1A3469;
  transition: border-color 0.2s ease-in-out;
}
.input:focus {
  border-color: #1A3469;
}
.input.error, .input.is-invalid {
  border-color: #e157b0;
}
.input.error::-webkit-input-placeholder, .input.is-invalid::-webkit-input-placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error::-o-input-placeholder, .input.is-invalid::-o-input-placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error::-moz-input-placeholder, .input.is-invalid::-moz-input-placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error:-moz-input-placeholder, .input.is-invalid:-moz-input-placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error::-ms-input-placeholder, .input.is-invalid::-ms-input-placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error input-placeholder, .input.is-invalid input-placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error::placeholder, .input.is-invalid::placeholder {
  color: #e157b0;
  opacity: 1;
}
.input.error:placeholder-shown, .input.is-invalid:placeholder-shown {
  color: #e157b0;
  opacity: 1;
}
.input__error {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  font-size: 14px;
  color: #e157b0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s;
}
[class*=col-] > .input__error {
  padding-left: 15px;
}
.input.error ~ .input__error {
  opacity: 1;
  visibility: visible;
}
@media (max-width: 609.98px) {
  .input {
    height: 44px;
    padding: 0 16px;
    font-size: 14px;
  }
}

textarea.input {
  line-height: normal;
  padding-top: 16px;
  padding-bottom: 16px;
  resize: none;
  height: 150px;
}
textarea.input.h--sm {
  height: 120px;
}
textarea.input.h--md {
  height: 200px;
}
textarea.input.h--lg {
  height: 240px;
}
@media (max-width: 1023.98px) {
  textarea.input {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  height: 50px;
  padding: 0 40px;
  background: none;
  border: none;
  border-radius: 50px;
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  color: #fff;
  text-align: center;
  cursor: pointer;
  outline: 0;
  overflow: hidden;
  transition: all 0.4s ease-in-out;
}
.btn::after, .btn:before {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  content: "";
  transition: all 0.3s ease-in-out;
}
.btn:before {
  background: linear-gradient(90deg, #533b99 0%, #175eb5 100%);
  z-index: -1;
  opacity: 0;
}
.btn--bd {
  color: #1A3469;
}
.btn--bd::after {
  padding: 2px;
  border-radius: inherit;
  background: linear-gradient(90deg, #7a57e1, #468add);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
@media (hover: hover) {
  .btn:hover::before {
    opacity: 1;
  }
  .btn--bd:hover {
    color: #fff;
  }
}
.btn--md {
  height: 60px;
}
.btn--wall {
  width: 100%;
  padding: 0 20px;
}
@media (max-width: 1023.98px) {
  .btn {
    font-size: 16px;
    height: 46px;
  }
  .btn--md {
    height: 58px;
  }
}
@media (max-width: 609.98px) {
  .btn {
    font-size: 14px;
    height: 44px;
  }
  .btn--view-m {
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    color: #1A3469;
  }
  .btn--view-m::before {
    opacity: 1;
    background: #e7eafe;
  }
  .btn--view-m::after {
    opacity: 0;
  }
  .btn--md {
    height: 44px;
  }
  .btn--wall-m {
    width: 100%;
    padding: 0 20px;
  }
}

/**************************************************************
popup
**************************************************************/
.popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  z-index: 9999;
  transition: all 0.3s ease-in-out;
  -webkit-backdrop-filter: blur(15.5px);
  backdrop-filter: blur(15.5px);
  background: rgba(0, 0, 0, 0.5);
}
.popup.opened {
  opacity: 1;
  visibility: visible;
}
.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%;
}
.popup__container {
  position: relative;
  width: 100%;
  max-width: 640px;
  padding: 40px;
  border-radius: 10px;
  box-shadow: 8px 8px 8px 0 rgba(46, 83, 157, 0.1);
  background: linear-gradient(360deg, #dcc9fb 0%, #cec9f9 39.46%, rgba(183, 207, 253, 0.8) 66.83%, #c9d7f8 100%);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 500px;
}
.popup__close {
  position: absolute;
  right: 20px;
  top: 20px;
  width: 24px;
  height: 24px;
  cursor: pointer;
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease-in-out;
  color: #7A57E1;
}
@media (hover: hover) {
  .popup__close:hover {
    color: #1A3469;
  }
}
.popup__close .icon {
  width: 66%;
  height: 66%;
}
.popup__body {
  width: 100%;
}
.popup__head {
  margin-bottom: 10px;
}
.popup__title {
  line-height: 1.2;
  font-size: 36px;
  font-family: "PolySans Neutral", sans-serif;
}
.popup__intro {
  margin-top: 10px;
}
@media (max-width: 1023.98px) {
  .popup__container {
    max-width: 500px;
  }
}
@media (max-width: 609.98px) {
  .popup__container {
    padding: 32px 20px;
  }
  .popup__close {
    top: 13px;
    right: 13px;
  }
  .popup__head {
    margin-bottom: 12px;
  }
  .popup__title {
    font-size: 28px;
  }
  .popup__intro {
    margin-top: 12px;
  }
}

.cookie {
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 99;
  -webkit-backdrop-filter: blur(15.5px);
  backdrop-filter: blur(15.5px);
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  max-width: 820px;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 20px;
  border-radius: 10px;
  padding: 20px;
}
.cookie a {
  text-decoration: underline;
}
.cookie a:hover {
  text-decoration: none;
}
.cookie.opened {
  opacity: 1;
  visibility: visible;
}
.cookie__buttons {
  display: flex;
  flex-wrap: nowrap;
  white-space: nowrap;
  gap: 20px;
}
@media (max-width: 1023.98px) {
  .cookie {
    max-width: 352px;
    padding: 20px;
    flex-direction: column;
    gap: 18px;
    font-size: 16px;
  }
}
@media (max-width: 767.98px) {
  .cookie {
    max-width: 280px;
    padding: 10px;
    font-size: 12px;
    gap: 16px;
  }
  .cookie__buttons {
    width: 100%;
    gap: 10px;
  }
  .cookie__buttons .btn {
    flex: 1 0 0;
    padding: 0 10px;
  }
}

/**************************************************************
header
**************************************************************/
.header {
  position: fixed;
  width: 100%;
  top: 23px;
  z-index: 99;
}
.header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 10px 20px;
  min-height: 78px;
}
.header__inner::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-backdrop-filter: blur(15.5px);
  backdrop-filter: blur(15.5px);
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 90px;
  z-index: -1;
  content: "";
}
.header__sname {
  display: flex;
  align-items: center;
}
.header__logo img,
.header .custom-logo-link img {
  width: 50px;
  height: auto;
}
.header__menu ul {
  display: flex;
  align-items: center;
  gap: 40px;
}
.header__menu li {
  position: relative;
}
.header__menu li a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
}
.header__menu li a::before {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleX(0);
  transform-origin: right;
  content: "";
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  height: 1px;
  background: currentColor;
}
.header__menu li a:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.header__menu li.current-menu-item > a {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.header__menu li.current-menu-item > a::before {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  transform: scaleX(1);
  transform-origin: left;
}
.header__menu li.menu-item-has-children > a::after {
  flex: 0 0 auto;
  width: 11px;
  height: 6px;
  background: url(../images/icons/drop-menu.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
.header__menu li.menu-item-has-children.current-menu-item a::after {
  background-image: url(../images/icons/drop-menu-active.svg);
}
.header__menu .sub-menu {
  display: block;
  position: absolute;
  top: 60px;
  left: -20px;
  padding: 10px;
  padding-top: 30px;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
  transform: translateY(10px);
  overflow: hidden;
  opacity: 0;
  min-width: 200px;
  height: auto;
  width: auto;
  border: 1px solid #f2f2f2;
  -webkit-backdrop-filter: blur(15.5px);
  backdrop-filter: blur(15.5px);
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 30px;
  padding: 24px;
}
.header__menu .sub-menu li + li {
  margin-top: 20px;
}
.header__menu .sub-menu li a {
  white-space: nowrap;
}
.header__menu li:hover .sub-menu {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
}
.header__lang {
  position: relative;
  z-index: 5;
}
.header__lang-current {
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
}
.header__lang-current::before {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  background: url(../images/icons/planet.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
.header__lang-open {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  cursor: pointer;
  background: none;
  border: none;
  outline: none;
  display: none;
}
.header__lang-drop {
  position: absolute;
  top: 60px;
  right: -20px;
  padding: 16px 26px;
  border: 1px solid #f2f2f2;
  -webkit-backdrop-filter: blur(15.5px);
  backdrop-filter: blur(15.5px);
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 20px;
  transform: translateY(10px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
  overflow: hidden;
}
.header__lang-drop li + li {
  margin-top: 16px;
}
.header__lang-drop li a {
  position: relative;
  transition: all 0.3s ease-in-out;
}
.header__lang-drop li a::before {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleX(0);
  transform-origin: right;
  content: "";
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  height: 1px;
  background: currentColor;
}
.header__lang-drop li a:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.header__lang-drop li.current a,
.header__lang-drop li.current-lang a {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.header__lang-drop li.current a::before,
.header__lang-drop li.current-lang a::before {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
}
.header__lang:hover .header__lang-drop, .header__lang.opened .header__lang-drop {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}
.header__burger {
  display: none;
}
@media (max-width: 1439.98px) {
  .header__inner {
    min-height: 60px;
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .header__menu ul {
    gap: 20px;
  }
  .header__menu li a {
    font-size: 14px;
  }
  .header__lang {
    font-size: 14px;
  }
}
@media (max-width: 1023.98px) {
  .header__inner {
    min-height: 60px;
  }
  .header__menu {
    display: none;
  }
  .header__lang {
    display: none;
  }
  .header__burger {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: url(../images/icons/burger.svg) no-repeat center;
    background-size: 100%;
    border: none;
    cursor: pointer;
    outline: 0;
  }
}
@media (max-width: 609.98px) {
  .header__inner {
    padding: 8px 20px;
    min-height: 52px;
  }
  .header__logo img,
  .header .custom-logo-link img {
    width: 36px;
  }
}

.navfix {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--vh) * 100);
  background: linear-gradient(270deg, #b5c5fa 0%, #ebcbf7 100%);
  z-index: 999;
  padding: 20px 0 50px;
  margin: 0;
  overflow: auto;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  display: flex;
  flex-direction: column;
}
.navfix.opened {
  opacity: 1;
  visibility: visible;
}
.navfix__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1 0 0;
}
.navfix__head {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.navfix__close {
  width: 24px;
  height: 24px;
  cursor: pointer;
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease-in-out;
  color: #7A57E1;
  background: none;
  border: none;
  outline: 0;
}
@media (hover: hover) {
  .navfix__close:hover {
    color: #1A3469;
  }
}
.navfix__close .icon {
  width: 70%;
  height: 70%;
}
.navfix__menu {
  width: 100%;
}
.navfix__menu li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 10px;
}
.navfix__menu li a {
  display: flex;
  flex: 1 0 0;
  padding: 16px 0;
}
.navfix__menu li.opened > a {
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.navfix__menu ul ul {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  width: 100%;
  overflow: hidden;
  opacity: 0;
  max-height: 0px;
  transition: all 0.3s ease-in-out;
}
.navfix__menu ul ul.opened {
  opacity: 1;
}
.navfix__menu ul ul a {
  padding-left: 12px;
}
.navfix__menu-toggle {
  position: relative;
  flex: 0 0 auto;
  background: none;
  border: none;
  outline: none;
  z-index: 5;
  color: #1A3469;
  width: 20px;
  height: 20px;
  left: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease-in-out;
}
.navfix__menu-toggle::after, .navfix__menu-toggle:before {
  background: url(../images/icons/drop-menu.svg) no-repeat center;
  background-size: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  height: 50%;
  z-index: -2;
  content: "";
  transition: all 0.3s ease-in-out;
}
.navfix__menu-toggle:before {
  background-image: url(../images/icons/drop-menu-active.svg);
  z-index: -1;
  opacity: 0;
}
li.opened > .navfix__menu-toggle {
  transform: scale(1, -1);
}
li.opened > .navfix__menu-toggle::before {
  opacity: 1;
}
.navfix__lang {
  display: inline-flex;
  margin-top: auto;
}
.navfix__lang .header__lang-open {
  display: block;
}
.navfix__lang .header__lang-drop {
  top: auto;
  bottom: 100%;
  transform: translateY(-20px);
}
.navfix__lang.opened .header__lang-drop {
  transform: translateY(-10px);
}
/**************************************************************
footer
**************************************************************/
.footer__sbg {
  border-radius: 50px 50px 0 0;
  margin: 0 auto;
  background: url(../images/footer-bg.jpg) no-repeat bottom center;
  background-size: cover;
  padding: 40px 24px 28px;
}
.footer__cols {
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.footer__left {
  display: flex;
  flex-direction: column;
}
.footer__sname {
  font-size: 18px;
  display: flex;
  align-items: center;
}
.footer__logo img,
.footer .custom-logo-link img {
  width: 58px;
  height: auto;
}
.footer__contacts {
  margin-top: auto;
  padding-top: 20px;
}
.footer__tname {
  position: relative;
  z-index: -1;
  margin-top: -10px;
  font-family: "PolySans Neutral", sans-serif;
  font-size: 160px;
  line-height: 1;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  display: flex;
  justify-content: space-between;
}
.footer__tname > *:first-child {
  letter-spacing: -0.05em;
}
.footer__tname-img {
  position: relative;
  flex: 1 0 0;
}
.footer__tname-img img {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 2%);
}
.footer__menu li {
  padding: 4px 20px;
}
.footer__menu li + li {
  margin-top: 4px;
}
.footer__menu li a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.footer__menu li a::before {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleX(0);
  transform-origin: right;
  content: "";
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  height: 1px;
  background: currentColor;
}
.footer__menu li a:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.footer__menu .sub-menu {
  display: none;
}
.footer__bottom {
  font-size: 11px;
  color: #7575aa;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px 30px;
  margin-top: 30px;
}
.footer__lang {
  display: flex;
  align-items: center;
  gap: 10px;
}
.footer__lang::before {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  background: url(../images/icons/planet-2.svg) no-repeat center;
  background-size: 100%;
  content: "";
}
@media (max-width: 1439.98px) {
  .footer__sbg {
    border-radius: 30px 30px 0 0;
  }
  .footer__contacts {
    margin-top: 0;
  }
  .footer__menu li {
    padding: 3px 15px;
  }
  .footer__menu li + li {
    margin-top: 0;
  }
  .footer__tname {
    font-size: 100px;
    margin-top: 10px;
    gap: 15px;
  }
  .footer__tname-img img {
    width: 100%;
    max-width: 320px;
  }
}
@media (max-width: 1023.98px) {
  .footer {
    font-size: 14px;
  }
  .footer__sbg {
    background-image: url(../images/footer-bg-t.jpg);
    border-radius: 20px 20px 0 0;
  }
  .footer__contacts {
    padding-top: 10px;
  }
  .footer__menu ul {
    columns: 2;
    gap: 27px;
  }
  .footer__menu li {
    padding: 0;
    margin-bottom: 8px;
  }
  .footer__menu li.menu-item-has-children a::after {
    width: 8px;
    height: 5px;
  }
  .footer__tname {
    font-size: 78px;
    align-items: flex-end;
  }
  .footer__tname-img img {
    position: relative;
  }
  .footer__bottom {
    margin-top: 20px;
  }
}
@media (max-width: 767.98px) {
  .footer__sbg {
    background-image: url(../images/footer-bg-m.jpg);
    border-radius: 30px 30px 0 0;
  }
}
@media (max-width: 609.98px) {
  .footer__cols {
    flex-direction: column;
    gap: 30px;
  }
  .footer__contacts {
    padding-top: 20px;
  }
  .footer__tname {
    display: none;
  }
  .footer__bottom {
    margin-top: 35px;
  }
}

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

**************************************************************/
.hero {
  --dh: 224px;
  --bdr: 50px;
  position: relative;
  z-index: 2;
  padding: 150px 0 0;
  text-align: center;
}
.hero::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - var(--dh));
  border-radius: 0 0 var(--bdr) var(--bdr);
  background: linear-gradient(270deg, #b5c5fa 0%, #ebcbf7 100%);
  content: "";
}
.hero__title {
  font-size: 72px;
  line-height: 1;
  font-family: "PolySans Neutral", sans-serif;
  max-width: 1100px;
  margin: 0 auto;
}
.hero__title.fs--md {
  font-size: 64px;
}
.hero__intro {
  max-width: 715px;
  margin: 8px auto 0;
}
.hero__buttons {
  margin-top: 12px;
}
.hero__bottom {
  margin-top: 24px;
  position: relative;
}
.hero__tag {
  position: absolute;
  border: 1px solid #fff;
  border-radius: 50px;
  padding: 10px 8px 10px 20px;
  height: 59px;
  display: flex;
  align-items: center;
  gap: 22px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background: rgba(255, 255, 255, 0.3);
  z-index: 9;
  animation: move_up_down 2.5s infinite linear;
}
.hero__tag.tag--right {
  padding: 10px 20px 10px 8px;
}
.hero__tag.tag--right .tag-m {
  order: -1;
}
.hero__tag .tag-m {
  width: 39px;
  height: 39px;
  border-radius: 100px;
  border: 1px solid #F4F4F4;
  position: relative;
}
.hero__tag .tag-m::before {
  width: 21px;
  height: 21px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  border: 1px solid #f6f6f6;
  content: "";
}
.hero__tag .tag-m::after {
  width: 18px;
  height: 18px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  content: "";
}
.hero__tag.tag--1 {
  top: 29%;
  right: 55%;
}
.hero__tag.tag--2 {
  top: 5%;
  left: 50%;
  animation-delay: 0.3s;
}
.hero__tag.tag--3 {
  top: 40%;
  left: 58%;
  animation-delay: 0.8s;
}
.hero__tag.tag--4 {
  bottom: 20%;
  right: 52%;
  animation-delay: 0.5s;
}
.hero__tname {
  position: absolute;
  left: 0;
  bottom: 230px;
  bottom: var(--dh);
  width: 100%;
  font-family: "PolySans Neutral", sans-serif;
  font-size: 160px;
  line-height: 1;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  display: flex;
  justify-content: space-between;
}
.hero__tname *:first-child {
  letter-spacing: -0.05em;
}
.hero__img {
  width: 538px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  animation: hero_img 5.5s infinite linear;
}
@media (max-width: 1439.98px) {
  .hero {
    --dh: 160px;
    --bdr: 30px;
  }
  .hero__title {
    font-size: 64px;
    max-width: 792px;
  }
  .hero__title.fs--md {
    font-size: 56px;
  }
  .hero__intro {
    margin-top: 24px;
  }
  .hero__buttons {
    margin-top: 24px;
  }
  .hero__bottom {
    margin-top: 75px;
  }
  .hero__tag {
    padding: 8px 6px 8px 15px;
    height: 45px;
    gap: 16px;
  }
  .hero__tag.tag--right {
    padding: 8px 15px 8px 6px;
  }
  .hero__tag .tag-m {
    width: 30px;
    height: 30px;
  }
  .hero__tag .tag-m::before {
    width: 16px;
    height: 16px;
  }
  .hero__tag .tag-m::after {
    width: 14px;
    height: 14px;
  }
  .hero__tname {
    font-size: 100px;
    left: -10px;
    right: -10px;
    width: auto;
  }
  .hero__img {
    width: 400px;
  }
}
@media (max-width: 1023.98px) {
  .hero {
    --dh: 55px;
    --bdr: 20px;
    padding-top: 220px;
  }
  .hero__title {
    font-size: 48px;
    max-width: 590px;
  }
  .hero__title.fs--md {
    font-size: 40px;
  }
  .hero__intro {
    margin-top: 24px;
    max-width: 590px;
  }
  .hero__bottom {
    margin-top: 110px;
  }
  .hero__img {
    width: 350px;
  }
}
@media (max-width: 609.98px) {
  .hero {
    --dh: 0px;
    padding: 144px 0 70px;
  }
  .hero__title {
    font-size: 32px;
  }
  .hero__title.fs--md {
    font-size: 26px;
  }
  .hero__bottom {
    margin-top: 85px;
  }
  .hero__tname {
    font-size: 32px;
    left: 0px;
    right: 0px;
  }
  .hero__img {
    width: 250px;
  }
  .hero__tag {
    font-size: 12px;
    padding: 6px 4px 6px 8px;
    height: 32px;
    gap: 8px;
    white-space: nowrap;
  }
  .hero__tag.tag--right {
    padding: 6px 8px;
  }
  .hero__tag .tag-m {
    width: 20px;
    height: 20px;
  }
  .hero__tag .tag-m::before {
    width: 11px;
    height: 11px;
  }
  .hero__tag .tag-m::after {
    width: 10px;
    height: 10px;
  }
  .hero__tag.tag--1 {
    right: auto;
    left: 0;
  }
  .hero__tag.tag--2 {
    left: auto;
    right: 30px;
  }
  .hero__tag.tag--3 {
    top: 50%;
  }
}

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

**************************************************************/
.services__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 30px;
}
.services__items.gap--md {
  grid-gap: 24px;
}
.services__item {
  background: #F8F9FD;
  border-radius: 50px;
  position: relative;
  padding: 270px 38px 38px;
  overflow: hidden;
}
.services__item-img {
  position: absolute;
  top: 0;
  right: 0;
  width: 63%;
  transform: translate(15%, -30%);
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}
.services__item-img img {
  max-height: 100%;
  transition: all 0.3s linear;
}
@media (hover: hover) {
  .services__item:hover .services__item-img img {
    transform: rotate(25deg);
  }
}
.services__item-bottom {
  display: flex;
  align-items: flex-end;
  gap: 20px;
}
.services__item-text {
  text-warp: balance;
  display: block;
  margin-top: 8px;
}
.services__itemsib {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 24px;
}
.services__itemib {
  background: #F8F9FD;
  border-radius: 50px;
  position: relative;
  padding: 30px 30px 180px 30px;
  overflow: hidden;
  display: flex;
  gap: 20px;
}
.services__itemib-img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 328px;
  height: 204px;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.services__itemib-img img {
  max-height: 100%;
}
.services__itemib-text {
  text-warp: balance;
  display: block;
  margin-top: 10px;
  position: relative;
  z-index: 2;
}
@media (max-width: 1439.98px) {
  .services__items {
    grid-gap: 24px;
  }
  .services__item {
    padding: 143px 0 20px 20px;
    border-radius: 30px;
  }
  .services__itemib {
    border-radius: 30px;
    position: relative;
    padding: 20px 20px 160px 20px;
    position: relative;
  }
  .services__itemib-title {
    padding-right: 55px;
  }
  .services__itemib-btnarr {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 1023.98px) {
  .services__items {
    grid-gap: 12px;
  }
  .services__item {
    padding: 117px 16px 16px 16px;
    border-radius: 20px;
  }
  .services__item-img {
    top: -25px;
  }
  .services__item-bottom {
    gap: 8px;
  }
  .services__itemsib {
    grid-template-columns: 1fr;
  }
  .services__itemib {
    border-radius: 20px;
    padding: 20px;
  }
  .services__itemib-title {
    padding-right: 55px;
    min-height: 36px;
    display: block;
  }
  .services__itemib-text {
    max-width: 530px;
    margin-top: 12px;
  }
  .services__itemib-img {
    height: 114px;
    width: 170px;
    right: -15px;
  }
}
@media (max-width: 767.98px) {
  .services__items {
    grid-template-columns: 1fr;
    grid-gap: 20px;
  }
  .services__item {
    padding-top: 98px;
  }
  .services__item-img {
    height: 210px;
    top: -80px;
  }
  .services__itemib {
    padding-bottom: 50px;
  }
}

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

**************************************************************/
.further__sbdr::before {
  width: 1392px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -48%);
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.2);
  filter: blur(56.5px);
  content: "";
}
.further__sbdr::after {
  width: 864px;
  aspect-ratio: 1/1;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(7%, 28%);
  border-radius: 100%;
  background: rgba(210, 221, 251, 0.8);
  filter: blur(56.5px);
  content: "";
}
.further__inner {
  margin-top: 90px;
  position: relative;
}
.further__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 56px;
}
.further__item {
  width: 100%;
  max-width: 528px;
  min-height: 300px;
  padding: 40px;
  border: 1px solid #fff;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(255, 255, 255, 0.3);
  display: flex;
  flex-direction: column;
}
.further__item:last-child:nth-child(4n-1) {
  margin: 0 auto;
}
.further__item-head {
  width: 100%;
  margin-bottom: auto;
  padding-bottom: 30px;
}
.further__item-number {
  width: 48px;
  height: 48px;
  border-radius: 100%;
  border: 1px solid #1A3469;
  background: #F8F9FD;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.further__imgbg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  display: flex;
  justify-content: center;
}
.further__imgbg video {
  width: 100%;
}
.further__icon {
  position: absolute;
  animation: move_up_down 2.5s infinite linear;
  max-width: 115px;
}
.further__icon.icon-1 {
  right: 0;
  bottom: 100%;
  margin-bottom: 80px;
}
.further__icon.icon-2 {
  left: 50%;
  top: 15px;
  margin-left: -70px;
  animation-delay: 0.9s;
}
.further__icon.icon-3 {
  right: 50%;
  bottom: 58px;
  margin-right: 340px;
  animation-delay: 0.5s;
}
.further__icon.icon-4 {
  left: 50%;
  bottom: 115px;
  margin-left: 335px;
}
@media (max-width: 1439.98px) {
  .further__items {
    gap: 32px;
  }
  .further__item {
    max-width: 392px;
    border-radius: 30px;
    padding: 20px;
  }
  .further__icon {
    max-width: 105px;
  }
  .further__icon.icon-1 {
    right: 0;
    bottom: 100%;
    margin-bottom: 0px;
  }
  .further__icon.icon-2 {
    top: 75px;
    margin-left: -60px;
  }
  .further__icon.icon-3 {
    bottom: 10px;
    margin-right: 340px;
  }
  .further__icon.icon-4 {
    bottom: 125px;
    margin-left: 300px;
  }
}
@media (max-width: 1023.98px) {
  .further__inner {
    margin: 0;
  }
  .further__items {
    gap: 12px;
  }
  .further__item {
    max-width: 100%;
    min-height: 1px;
    border-radius: 20px;
    flex-direction: row;
    gap: 20px;
  }
  .further__item-head {
    padding: 0;
    width: auto;
  }
  .further__item-number {
    width: 40px;
    height: 40px;
  }
  .further__icon {
    display: none;
  }
}
@media (max-width: 609.98px) {
  .further__items {
    gap: 20px;
  }
  .further__item {
    flex-direction: column;
    gap: 6px;
  }
  .further__item-head {
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .further__item-number {
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    font-size: 17px;
  }
  .further__item-text {
    margin: 0;
  }
}

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

**************************************************************/
.wehelp__item {
  max-width: 1100px;
  margin: 0 auto;
  background: linear-gradient(197deg, rgba(248, 249, 253, 0.3) 30%, rgba(236, 233, 255, 0.6) 60.46%, rgba(203, 217, 255, 0.8) 80.76%, #d1d4ff 100%);
  background-color: #F8F9FD;
  border-radius: 50px;
  padding: 50px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.wehelp__item + .wehelp__item {
  margin-top: 24px;
}
.wehelp__item-photo {
  flex: 0 0 auto;
  width: 320px;
  height: 320px;
  position: relative;
}
.wehelp__item-photo img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-height: 100%;
}
.wehelp__item-info {
  flex: 1 0 0;
}
.wehelp__item-text {
  margin-top: 20px;
}
.wehelp__item-buttons {
  display: flex;
  gap: 20px 30px;
  margin-top: 30px;
}
@media (max-width: 1439.98px) {
  .wehelp__item {
    border-radius: 30px;
    padding: 20px;
  }
}
@media (max-width: 1023.98px) {
  .wehelp__item {
    border-radius: 20px;
    padding: 30px 20px;
  }
  .wehelp__item + .wehelp__item {
    margin-top: 20px;
  }
  .wehelp__item-photo {
    width: 190px;
    height: 190px;
  }
  .wehelp__item-text {
    margin-top: 12px;
  }
  .wehelp__item-buttons {
    margin-top: 12px;
  }
  .wehelp__item-buttons .btn {
    flex: 1 0 0;
    padding: 0 10px;
  }
}
@media (max-width: 767.98px) {
  .wehelp__item-buttons {
    flex-direction: column;
    gap: 12px;
  }
  .wehelp__item-buttons .btn {
    width: 100%;
    flex: 0 0 auto;
  }
}
@media (max-width: 609.98px) {
  .wehelp__item {
    flex-direction: column;
    padding: 20px 16px;
  }
  .wehelp__item-photo {
    width: 160px;
    height: 160px;
    margin: 0 auto;
  }
}

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

**************************************************************/
.trust__item {
  min-height: 430px;
  border-radius: 50px;
  padding: 40px;
  background: #F8F9FD;
  display: flex;
  flex-direction: column;
}
.trust__item-info {
  margin-top: auto;
  padding-top: 28px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.trust__item-photo {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  border-radius: 100%;
  background: linear-gradient(270deg, #e7eafe 0%, #e6e9fe 100%);
  position: relative;
  overflow: hidden;
}
.trust__item-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.trust__item-name {
  font-family: "PolySans Neutral", sans-serif;
  font-size: 24px;
}
.trust__item-logo {
  min-height: auto;
  height: 233px;
  padding: 20px;
  border-radius: 0;
  background: transparent;
  align-items: center;
  justify-content: center;
}
.trust__item-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media (max-width: 1439.98px) {
  .trust__item {
    border-radius: 30px;
    padding: 20px;
  }
  .trust__item-logo {
    padding: 20px;
    border-radius: 0;
  }
}
@media (max-width: 609.98px) {
  .trust {
    overflow: hidden;
  }
  .trust__carousel {
    overflow: initial;
  }
  .trust__item {
    min-height: 1px;
    border-radius: 20px;
  }
  .trust__item-name {
    font-size: 18px;
  }
  .trust__item-logo {
    height: 150px;
    border-radius: 0;
  }
}

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

**************************************************************/
.weoffer__sbdr {
  background: #e6e9fe;
}
.weoffer__sbdr::before {
  width: 1480px;
  height: 748px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -60%);
  border-radius: 100%;
  background: rgba(248, 249, 253, 0.4);
  filter: blur(56.5px);
  content: "";
}
.weoffer__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px 56px;
}
.weoffer__item {
  width: 100%;
  max-width: 528px;
  padding: 40px;
  border: 1px solid #fff;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(255, 255, 255, 0.3);
}
.weoffer__item:nth-child(2n) {
  transform: translateY(100px);
}
.weoffer__item:nth-child(4n-1) {
  transform: translateY(-50px);
  margin-left: 170px;
}
.weoffer__item-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 30px;
}
.weoffer__item-number {
  width: 48px;
  height: 48px;
  border-radius: 100%;
  border: 1px solid #1A3469;
  background: #F8F9FD;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.weoffer__imgbg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  display: flex;
  justify-content: center;
}
.weoffer__imgbg video {
  width: 100%;
}
@media (max-width: 1439.98px) {
  .weoffer__item {
    max-width: 420px;
    border-radius: 30px;
    padding: 20px;
  }
  .weoffer__item:nth-child(2n) {
    transform: translateY(84px);
  }
  .weoffer__item:nth-child(4n-1) {
    transform: translateY(-50px);
    margin-left: 20px;
  }
  .weoffer__item-text {
    font-size: 16px;
  }
}
@media (max-width: 1023.98px) {
  .weoffer__items {
    gap: 20px;
  }
  .weoffer__item {
    max-width: 100%;
    transform: initial !important;
    margin-left: 0 !important;
  }
  .weoffer__item-head {
    margin-bottom: 16px;
  }
  .weoffer__item-number {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }
  .weoffer__item-title {
    flex: 1 0 0;
  }
}
@media (max-width: 609.98px) {
  .weoffer__item {
    border-radius: 20px;
  }
  .weoffer__item-text {
    font-size: 14px;
  }
}

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

**************************************************************/
.consult {
  text-align: center;
}
.consult__img {
  max-width: 306px;
  margin: 0 auto;
}
@media (max-width: 609.98px) {
  .consult__img {
    max-width: 195px;
  }
}

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

**************************************************************/
.promo {
  position: relative;
  min-height: 720px;
  display: flex;
  align-items: center;
  padding: 100px 0 100px;
  text-align: center;
  background: linear-gradient(270deg, #b5c5fa 0%, #ebcbf7 100%);
  overflow: hidden;
  border-radius: 0 0 50px 50px;
}
.promo--nav {
  padding-bottom: 150px;
}
.promo--detail {
  min-height: 400px;
  padding-bottom: 50px;
}
.promo--bghead {
  border-radius: 0 !important;
  padding: 0 !important;
  min-height: 126px !important;
  margin-bottom: 60px;
}
.promo::before {
  width: 867px;
  height: 867px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -45%);
  border-radius: 100%;
  background: rgba(199, 205, 226, 0.5);
  filter: blur(81.5px);
  content: "";
}
.promo::after {
  width: 390px;
  height: 390px;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(30%, -45%);
  border-radius: 100%;
  background: #dac7fa;
  filter: blur(300px);
  content: "";
}
.promo--detail::before {
  width: 1400px;
  height: 387px;
  background: #D1CEF9;
  left: 50%;
  top: 0;
}
.promo__bgimg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.promo__bgimg img {
  width: 100%;
}
.promo__bgimg .img-left {
  width: 45%;
  max-width: 550px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.promo__bgimg .img-right {
  width: 45%;
  max-width: 555px;
  position: absolute;
  right: 0;
  bottom: 0;
}
.promo__tag {
  height: 45px;
  border: 1px solid #fff;
  border-radius: 50px;
  padding: 10px 20px 10px 8px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background: rgba(255, 255, 255, 0.3);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 40px;
  margin-bottom: 20px;
}
.promo__tag.mb--lg {
  margin-bottom: 50px;
}
.promo__tag.tag--about {
  min-width: 246px;
  margin-bottom: 30px;
}
.promo__title {
  max-width: 1140px;
  margin: 0 auto;
  font-family: "PolySans Neutral", sans-serif;
  font-size: 72px;
  line-height: 1;
}
.promo__title.mw {
  max-width: 870px;
}
.promo__title.fs--md {
  font-size: 64px;
}
.promo__intro {
  margin: 16px auto 0;
  max-width: 963px;
}
.promo__intro.mw {
  max-width: 760px;
}
.promo__buttons {
  margin-top: 20px;
}
.promo__numbers {
  max-width: 1100px;
  margin: 45px auto 0;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(248, 249, 253, 0.2);
  border: 1px solid #fff;
  border-radius: 30px;
  padding: 30px 50px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.promo__itnumb {
  text-align: center;
  width: 200px;
}
.promo__itnumb-val {
  font-family: "PolySans Neutral", sans-serif;
  font-size: 72px;
  line-height: 1;
}
.promo__itnumb-text {
  margin-top: 12px;
}
.promo__nav {
  position: absolute;
  left: 50%;
  bottom: 70px;
  transform: translateX(-50%);
  width: calc(100% - 50px);
  max-width: 1177px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(248, 249, 253, 0.2);
  border: 1px solid #fff;
  border-radius: 30px;
  padding: 30px 50px;
}
.promo__nav ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}
.promo__nav li {
  text-align: center;
}
.promo__nav li a {
  position: relative;
}
.promo__nav li a::before {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: scaleX(0);
  transform-origin: right;
  content: "";
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  height: 1px;
  background: currentColor;
}
.promo__nav li a:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.promo__nav li.current a, .promo__nav li.current-cat a {
  pointer-events: none;
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 1439.98px) {
  .promo {
    border-radius: 0 0 30px 30px;
  }
  .promo--detail {
    min-height: 380px;
  }
  .promo--bghead {
    min-height: 108px !important;
  }
  .promo__tag {
    margin-bottom: 16px !important;
  }
  .promo__tag.tag--about {
    min-width: 1px;
  }
  .promo__title {
    font-size: 64px;
    max-width: 850px;
  }
  .promo__buttons {
    margin-top: 16px;
  }
  .promo__numbers {
    margin-top: 80px;
  }
  .promo__itnumb-val {
    font-size: 56px;
  }
  .promo__bgimg .img-left {
    width: 45%;
    transform: translate(-15%, 0);
  }
  .promo__bgimg .img-right {
    width: 45%;
    transform: translate(15%, 0);
  }
}
@media (max-width: 1023.98px) {
  .promo {
    border-radius: 0 0 20px 20px;
    min-height: 825px;
  }
  .promo--nav {
    padding-bottom: 150px;
  }
  .promo--detail {
    min-height: 360px;
  }
  .promo__title {
    font-size: 48px;
    max-width: 590px;
  }
  .promo__title.fs--md {
    font-size: 48px;
  }
  .promo__intro {
    max-width: 590px;
  }
  .promo__buttons {
    margin-top: 16px;
  }
  .promo__numbers {
    padding: 30px;
    margin-top: 140px;
  }
  .promo__itnumb-val {
    font-size: 40px;
  }
  .promo__nav {
    padding: 30px;
    bottom: 100px;
  }
  .promo__nav ul {
    justify-content: center;
    gap: 24px;
  }
  .promo__nav li {
    flex: 0 0 auto;
  }
}
@media (max-width: 767.98px) {
  .promo--nav {
    padding-bottom: 150px;
  }
  .promo__nav {
    display: none;
  }
  .promo__bgimg .img-left {
    width: 70%;
    transform: translate(-15%, 0);
  }
  .promo__bgimg .img-right {
    width: 70%;
    transform: translate(15%, 0);
  }
}
@media (max-width: 609.98px) {
  .promo {
    min-height: 700px;
    padding: 140px 0;
  }
  .promo--detail:not(.promo--bghead) {
    min-height: 1px;
    padding: 120px 0 0;
    background: none;
    overflow: initial;
  }
  .promo--detail:not(.promo--bghead)::after {
    display: none;
  }
  .promo--detail:not(.promo--bghead)::before {
    display: none;
  }
  .promo--bghead {
    min-height: 100px !important;
    margin-bottom: 30px;
  }
  .promo.h-auto-m {
    min-height: 410px;
    padding-bottom: 100px;
  }
  .promo.promo--about {
    align-items: flex-start;
    padding: 144px 0 25px;
  }
  .promo__hbg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 96px;
    background: linear-gradient(270deg, #b5c5fa 0%, #ebcbf7 100%);
    border-radius: 0 0 20px 20px;
    overflow: hidden;
  }
  .promo__hbg::before {
    width: 590px;
    height: 160px;
    top: auto;
    bottom: 100%;
    transform: translate(-50%, 96px);
    border-radius: 100%;
    background: #d1cef9;
    filter: blur(100px);
    z-index: 1;
    content: "";
  }
  .promo__tag {
    height: 40px;
  }
  .promo__title {
    font-size: 32px;
  }
  .promo__title.fs--md {
    font-size: 32px;
  }
  .promo__buttons {
    margin-top: 20px;
  }
  .promo__numbers {
    padding: 30px;
    margin-top: 80px;
    flex-direction: column;
    gap: 10px;
    padding: 0;
    background: none;
    border: none;
  }
  .promo__itnumb {
    width: 100%;
    -webkit-backdrop-filter: blur(50px);
    backdrop-filter: blur(50px);
    background: rgba(248, 249, 253, 0.2);
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 12px;
  }
  .promo__itnumb-val {
    text-align: center;
    font-size: 28px;
    min-width: 75px;
    flex: 0 0 auto;
  }
  .promo__itnumb-text {
    margin: 0;
  }
  .promo__bgimg {
    display: flex;
    justify-content: center;
  }
  .promo__bgimg img {
    width: 662px;
    max-width: initial;
  }
}

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

**************************************************************/
.values__sbdr::before {
  width: 1392px;
  height: 383px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -48%);
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.2);
  filter: blur(56.5px);
  content: "";
}
.values__sbdr::after {
  width: 490px;
  aspect-ratio: 1/1;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(30%, 28%);
  border-radius: 100%;
  background: #dac7fa;
  filter: blur(30px);
  content: "";
}
.values__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 43px;
}
.values__ithead {
  width: calc(100% + 20px);
}
.values__item {
  padding: 40px;
  border: 1px solid #fff;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(255, 255, 255, 0.3);
  display: flex;
  flex-direction: column;
}
.values__item.item--empty {
  padding: 0 10px 0 0;
  background: none;
  border: none;
  -webkit-backdrop-filter: initial;
  backdrop-filter: initial;
}
.values__item:last-child:nth-child(4n-1) {
  margin: 0 auto;
}
.values__item-head {
  width: 100%;
  margin-bottom: auto;
  padding-bottom: 30px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.values__item-number {
  width: 48px;
  height: 48px;
  border-radius: 100%;
  border: 1px solid #1A3469;
  background: #F8F9FD;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.values__imgbg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  display: flex;
  justify-content: center;
}
@media (max-width: 1439.98px) {
  .values__items {
    grid-gap: 24px;
  }
  .values__item {
    border-radius: 30px;
    padding: 20px;
  }
  .values__item-head {
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .values__item-text {
    margin-top: 20px;
  }
  .values__imgbg {
    bottom: 35px;
  }
}
@media (max-width: 1023.98px) {
  .values__items {
    grid-gap: 12px;
  }
  .values__item {
    border-radius: 20px;
  }
  .values__item-head {
    gap: 8px;
  }
  .values__item-number {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }
}
@media (max-width: 767.98px) {
  .values__items {
    grid-gap: 20px;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 609.98px) {
  .values__item {
    padding: 16px;
  }
  .values__item-number {
    width: 24px;
    height: 24px;
    font-size: 14px;
  }
  .values__item-text {
    margin-top: 8px;
  }
}

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

**************************************************************/
.team__items {
  max-width: 1100px;
  margin: 0 auto;
}
.team__item {
  position: relative;
  display: flex;
  gap: 24px;
}
.team__item + .team__item {
  margin-top: 24px;
}
.team__item-photo {
  flex: 0 0 auto;
}
.team__item-photo__wrap {
  width: 448px;
  aspect-ratio: 1/1;
  border-radius: 50px;
  position: relative;
  overflow: hidden;
  background: #F8F9FD;
}
.team__item-photo__wrap::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: linear-gradient(197deg, rgba(248, 249, 253, 0.3) 0%, rgba(236, 233, 255, 0.6) 39.46%, rgba(203, 217, 255, 0.8) 66.76%, #d1d4ff 100%);
  content: "";
}
.team__item-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  object-position: top;
  z-index: 2;
}
.team__item-info {
  background: #F8F9FD;
  border-radius: 50px;
  padding: 40px;
  flex: 1 0 0;
}
.team__item-text {
  margin-top: 20px;
}
.team__item-text > * + * {
  margin-top: 20px;
}
@media (max-width: 1439.98px) {
  .team__item + .team__item {
    margin-top: 20px;
  }
  .team__item-photo__wrap {
    width: 393px;
    border-radius: 30px;
  }
  .team__item-info {
    border-radius: 30px;
    padding: 20px;
  }
  .team__item-text {
    margin-top: 20px;
  }
  .team__item-text > * + * {
    margin-top: 20px;
  }
}
@media (max-width: 1023.98px) {
  .team__item {
    gap: 12px;
  }
  .team__item-photo__wrap {
    width: 171px;
    border-radius: 20px;
  }
  .team__item-info {
    border-radius: 20px;
  }
}
@media (max-width: 609.98px) {
  .team__item-photo {
    position: absolute;
    top: 0;
    left: 0;
  }
  .team__item-photo__wrap {
    width: 108px;
  }
  .team__item-info {
    padding: 0;
  }
  .team__item-head {
    display: flex;
    align-items: center;
    height: 108px;
    padding: 16px 16px 16px 120px;
  }
  .team__item-btnarr {
    margin-left: auto;
  }
  .team__item-text {
    max-height: 0px;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
    padding: 0 16px;
    margin: 0;
    opacity: 0;
  }
  .team__item.opened .team__item-text {
    opacity: 1;
    margin: 12px 0 16px;
  }
  .team__item-open {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    background: none;
    border: none;
    outline: 0;
  }
}

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

**************************************************************/
.supporting__sbdr::before {
  width: 1392px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -30%);
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.2);
  filter: blur(56.5px);
  content: "";
}
.supporting__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 36px;
  position: relative;
}
.supporting__item {
  max-width: 448px;
  padding: 30px;
  border: 1px solid #fff;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(248, 249, 253, 0.4);
}
.supporting__item:nth-child(4n-3) {
  margin-left: 97px;
}
.supporting__item:nth-child(4n-2) {
  margin-right: 97px;
}
.supporting__item-title {
  font-size: 39px;
}
.supporting__img {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -13%);
  z-index: -1;
  width: 616px;
  display: flex;
  justify-content: center;
}
.supporting__img::after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background: #adc6ff;
  filter: blur(56.5px);
  content: "";
  z-index: -5;
}
@media (max-width: 1439.98px) {
  .supporting__items {
    gap: 60px;
    max-width: 800px;
    margin: 0 auto;
  }
  .supporting__item {
    max-width: 360px;
    border-radius: 30px;
    padding: 20px;
    margin: 0 !important;
    min-height: 240px;
  }
  .supporting__item-title {
    font-size: 28px;
  }
  .supporting__img {
    transform: translate(-50%, -5%);
  }
}
@media (max-width: 1023.98px) {
  .supporting__sbdr::before {
    width: 816px;
    height: 927px;
    transform: translate(-50%, -25%);
  }
  .supporting__items {
    gap: 50px;
  }
  .supporting__item {
    max-width: calc(50% - 25px);
    border-radius: 20px;
  }
  .supporting__item-title {
    font-size: 24px;
  }
  .supporting__img {
    max-width: 394px;
    top: 50%;
    transform: translate(-50%, -50%);
  }
}
@media (max-width: 767.98px) {
  .supporting__sbdr::before {
    width: 100%;
    height: auto;
    transform: translate(-50%, -35%);
  }
  .supporting__items {
    gap: 20px;
  }
  .supporting__item {
    max-width: 100%;
    min-height: 1px;
  }
}
.supporting__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 25px;
}
.supporting__wehelp {
  background: #f3f6fa;
  border-radius: 50px;
  padding: 50px 78px 50px 50px;
  display: flex;
  flex-direction: column;
}
.supporting__wehelp.pd--md {
  padding: 30px 45px 55px 40px;
}
.supporting__wehelp-icons {
  height: 60px;
  margin-bottom: 30px;
}
.supporting__wehelp-icons img {
  height: 100%;
}
.supporting__wehelp-img {
  margin-bottom: 15px;
  height: 183px;
}
.supporting__wehelp-img img {
  max-height: 100%;
}
.supporting__wehelp-info {
  margin-top: auto;
}
.supporting__methods {
  border-radius: 50px;
  padding: 30px;
  background: url(../images/consulting/methods-bg.jpg) no-repeat center;
  background-size: cover;
}
.supporting__itmethod {
  border: 1px solid #fff;
  border-radius: 30px;
  padding: 30px;
  min-height: 200px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(248, 249, 253, 0.4);
}
.supporting__itmethod + .supporting__itmethod {
  margin-top: 22px;
}
@media (max-width: 1439.98px) {
  .supporting__wehelp {
    padding: 30px !important;
    border-radius: 30px;
  }
  .supporting__methods {
    padding: 30px;
    border-radius: 30px;
  }
}
@media (max-width: 1023.98px) {
  .supporting__cols {
    grid-template-columns: 1fr;
    grid-gap: 20px;
  }
  .supporting__wehelp {
    padding: 20px !important;
    border-radius: 20px;
  }
  .supporting__wehelp.wehelp--img {
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
  }
  .supporting__wehelp.wehelp--img > * {
    margin: 0;
  }
  .supporting__wehelp-icons {
    margin-bottom: 55px;
  }
  .supporting__wehelp-img {
    flex: 0 0 auto;
    height: auto;
    width: 240px;
  }
  .supporting__methods {
    padding: 20px;
    border-radius: 20px;
  }
  .supporting__itmethod {
    min-height: 160px;
    border-radius: 20px;
  }
}
@media (max-width: 609.98px) {
  .supporting__wehelp.wehelp--img {
    flex-direction: column;
  }
  .supporting__wehelp-icons {
    margin-bottom: 30px;
    height: 36px;
  }
  .supporting__wehelp-img {
    width: 100px;
  }
  .supporting__methods {
    margin: 0 -20px;
  }
  .supporting__itmethod {
    padding: 20px;
    min-height: 150px;
  }
}

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

**************************************************************/
.webring__inner {
  max-width: 1100px;
  margin: 0 auto;
}
.webring__item {
  display: flex;
  align-items: center;
  gap: 20px;
  border: 1px solid #fff;
  border-radius: 30px;
  background: #F8F9FD;
  padding: 30px 50px;
}
.webring__item + .webring__item {
  margin-top: 24px;
}
.webring__item-head {
  flex: 1 0 0;
  display: flex;
  align-items: center;
  gap: 20px;
}
.webring__item-text {
  flex: 0 0 auto;
  width: 47%;
}
.webring__getin {
  position: relative;
  margin-top: 50px;
  border: 1px solid #fff;
  border-radius: 30px;
  overflow: hidden;
  padding: 30px 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  color: #fff;
  overflow: hidden;
}
.webring__getin::after, .webring__getin::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  transition: all 0.3s ease-in-out;
  content: "";
  z-index: -2;
}
.webring__getin:before {
  z-index: -1;
  opacity: 0;
  background: linear-gradient(90deg, #533b99 0%, #175eb5 100%);
}
.webring__getin-title {
  max-width: 680px;
}
@media (hover: hover) {
  .webring__getin:hover::before {
    opacity: 1;
  }
}
@media (max-width: 1439.98px) {
  .webring__getin {
    margin-top: 24px;
  }
}
@media (max-width: 1023.98px) {
  .webring__item {
    border-radius: 20px;
    padding: 20px 30px;
  }
  .webring__getin {
    margin-top: 30px;
    border-radius: 20px;
  }
}
@media (max-width: 767.98px) {
  .webring__item {
    padding: 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .webring__item + .webring__item {
    margin-top: 20px;
  }
  .webring__item-text {
    width: 100%;
  }
  .webring__getin {
    margin-top: 20px;
    padding: 20px;
  }
}

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

**************************************************************/
.approach__items {
  max-width: 1156px;
  margin: 0 auto;
}
.approach__item {
  display: flex;
  align-items: center;
  gap: 24px;
  border-radius: 30px;
  padding: 30px;
  position: relative;
  overflow: hidden;
  background: #F8F9FD;
}
.approach__item + .approach__item {
  margin-top: 24px;
}
.approach__item::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(197deg, rgba(248, 249, 253, 0.3) 50%, rgba(236, 233, 255, 0.6) 65.46%, rgba(203, 217, 255, 0.8) 80.76%, #d1d4ff 100%);
  content: "";
}
.approach__item > * {
  position: relative;
  z-index: 5;
}
.approach__item-head {
  display: flex;
  align-items: center;
  gap: 24px;
  flex: 1 0 0;
}
.approach__item-icon {
  position: relative;
  width: 160px;
  height: 160px;
  flex: 0 0 auto;
}
.approach__item-icon img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-height: 100%;
}
.approach__item-title {
  max-width: 350px;
}
.approach__item-text {
  width: 47%;
}
@media (max-width: 1439.98px) {
  .approach__item-icon {
    width: 120px;
    height: 120px;
  }
  .approach__item-text {
    width: 53%;
  }
}
@media (max-width: 1023.98px) {
  .approach__item {
    padding: 20px;
    border-radius: 20px;
    gap: 20px;
    align-items: flex-start;
  }
  .approach__item-head {
    gap: 20px;
  }
  .approach__item-icon {
    width: 80px;
    height: 80px;
  }
  .approach__item-text {
    width: 50%;
  }
}
@media (max-width: 609.98px) {
  .approach__item {
    flex-direction: column;
    gap: 12px;
  }
  .approach__item-head {
    gap: 20px;
  }
  .approach__item-icon {
    width: 36px;
    height: 36px;
  }
  .approach__item-text {
    width: 100%;
  }
}

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

**************************************************************/
.earn__inner {
  position: relative;
  min-height: 380px;
}
.earn__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 62px;
  position: relative;
}
.earn__items.gap--md {
  gap: 100px 62px;
}
.earn__item {
  max-width: 380px;
  min-height: 116px;
  padding: 20px;
  border: 1px solid #fff;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(248, 249, 253, 0.4);
  display: flex;
  align-items: center;
  gap: 32px;
}
.earn__item.item--md {
  max-width: 480px;
  min-height: 130px;
}
.earn__item:nth-child(4n-3) {
  margin-left: 70px;
}
.earn__item:nth-child(4n-2) {
  margin-right: 70px;
}
.earn__item:nth-child(4n-3):last-child {
  margin: 0 auto !important;
}
.earn__item-numb {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  background: #F8F9FD;
  border: 1px solid #1A3469;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.earn__img {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: -1;
  width: 454px;
  display: flex;
  justify-content: center;
}
.earn__img.top--0 {
  top: 0;
}
.earn__img.img--lg {
  width: 850px;
}
.earn__img::after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  height: 70%;
  border-radius: 100%;
  background: #adc6ff;
  filter: blur(56.5px);
  content: "";
  z-index: -5;
}
.earn__img.img--lg::after {
  background: rgba(173, 198, 255, 0.5);
  width: 100%;
  height: 55%;
}
@media (max-width: 1439.98px) {
  .earn__inner {
    min-height: 1px;
  }
  .earn__items {
    gap: 54px 40px;
  }
  .earn__items.gap--md {
    gap: 55px 40px;
  }
  .earn__item.item--md {
    max-width: 380px;
    min-height: 130px;
  }
  .earn__item:nth-child(4n-3) {
    margin-left: 48px;
  }
  .earn__item:nth-child(4n-2) {
    margin-right: 48px;
  }
  .earn__img {
    width: 360px;
  }
  .earn__img.img--lg {
    width: 640px;
  }
}
@media (max-width: 1023.98px) {
  .earn__items {
    gap: 40px !important;
  }
  .earn__item {
    max-width: calc(50% - 20px);
    border-radius: 20px;
    gap: 16px;
    margin: 0 !important;
  }
  .earn__item.item--md {
    max-width: calc(50% - 20px);
  }
  .earn__item.item--md:nth-child(4n-3):last-child {
    max-width: 395px;
  }
  .earn__item-numb {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }
  .earn__img {
    width: 195px;
    top: 50%;
    transform: translate(-50%, -50%);
  }
  .earn__img.img--lg {
    width: 390px;
    transform: translate(-50%, 30px);
  }
}
@media (max-width: 767.98px) {
  .earn__sbdr::before {
    width: 100%;
    height: auto;
    transform: translate(-50%, -35%);
  }
  .earn__items {
    gap: 20px !important;
  }
  .earn__item {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 1px !important;
  }
  .earn__img {
    position: relative;
    transform: initial !important;
    left: auto;
    top: auto !important;
    width: 140px;
    margin: 0 auto 10px;
  }
  .earn__img.img--lg {
    width: 232px;
  }
}

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

**************************************************************/
.contacts__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 24px;
}
.contacts__info {
  border-radius: 50px;
  padding: 50px;
  background: #f3f6fa;
}
.contacts__item {
  margin-top: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
}
.contacts__item-icon {
  width: 60px;
  height: 60px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.contacts__item-icon img {
  max-height: 100%;
}
.contacts__form {
  border-radius: 50px;
  padding: 50px;
  background: linear-gradient(360deg, #dcc9fb 0%, #cec9f9 39.46%, rgba(183, 207, 253, 0.8) 66.83%, #c9d7f8 100%);
  position: relative;
}
.contacts__form::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../images/form-img.png) no-repeat center;
  background-size: 55%;
  content: "";
}
@media (max-width: 1439.98px) {
  .contacts__info {
    padding: 30px;
    border-radius: 30px;
  }
  .contacts__form {
    padding: 30px;
    border-radius: 30px;
  }
  .contacts__item-icon {
    width: 45px;
    height: 45px;
  }
}
@media (max-width: 1023.98px) {
  .contacts__cols {
    grid-gap: 20px;
    grid-template-columns: 1fr;
  }
  .contacts__info {
    padding: 20px;
    border-radius: 20px;
  }
  .contacts__items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0 16px;
  }
  .contacts__item {
    min-height: 60px;
    margin-top: 16px;
  }
  .contacts__form {
    padding: 20px;
    border-radius: 20px;
  }
  .contacts__form-inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 6px 16px;
  }
  .contacts__form .w-all {
    grid-column: span 2;
  }
}
@media (max-width: 609.98px) {
  .contacts__cols {
    grid-gap: 16px;
  }
  .contacts__info {
    padding: 20px;
    border-radius: 20px;
  }
  .contacts__items {
    grid-template-columns: 1fr;
  }
  .contacts__item {
    min-height: 40px;
  }
  .contacts__item-icon {
    width: 36px;
    height: 36px;
  }
  .contacts__form-inputs {
    grid-template-columns: 1fr;
    grid-gap: 0;
  }
  .contacts__form .w-all {
    grid-column: initial;
  }
}

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

**************************************************************/
.binfo__inner {
  background: #F8F9FD;
  border-radius: 50px;
  padding: 50px 50px 110px;
  min-height: 425px;
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  grid-gap: 50px;
  position: relative;
  overflow: hidden;
}
.binfo__inner.pd--md {
  padding: 60px 60px 110px;
}
.binfo__inner > * {
  position: relative;
  z-index: 2;
}
.binfo__text {
  max-width: 590px;
}
.binfo__text > * + * {
  margin-top: 20px;
}
.binfo__bgimg {
  position: absolute;
  left: 0;
  bottom: 0;
  max-width: 760px;
  z-index: 1;
}
.binfo__bgimg.img--lg {
  max-width: 1300px;
}
@media (max-width: 1439.98px) {
  .binfo__inner {
    padding: 30px 30px 110px !important;
  }
  .binfo__bgimg {
    max-width: 675px;
  }
  .binfo__bgimg.img--lg {
    max-width: 1300px;
  }
}
@media (max-width: 1023.98px) {
  .binfo__inner {
    display: block;
    border-radius: 20px;
  }
  .binfo__right {
    margin-top: 24px;
  }
  .binfo__bgimg {
    transform: translateY(11%);
  }
  .binfo__bgimg.img--lg {
    transform: initial;
    max-width: initial;
    width: 150%;
  }
}
@media (max-width: 609.98px) {
  .binfo__inner {
    margin: 0 -20px;
    padding: 20px 20px 42px !important;
  }
  .binfo__bgimg {
    width: 120%;
    transform: translateY(14%);
  }
}

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

**************************************************************/
.areas__itemsib {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 24px;
}
.areas__itemib {
  background: #F8F9FD;
  border-radius: 50px;
  position: relative;
  padding: 30px 30px 190px 30px;
  overflow: hidden;
  display: flex;
  gap: 20px;
}
.areas__itemib-img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 328px;
  height: 204px;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.areas__itemib-img img {
  max-height: 100%;
}
.areas__itemib-text {
  text-warp: balance;
  display: block;
  margin-top: 10px;
  position: relative;
  z-index: 2;
}
@media (max-width: 1439.98px) {
  .areas__itemib {
    border-radius: 30px;
    position: relative;
    padding: 20px 20px 120px 20px;
    position: relative;
  }
  .areas__itemib-img {
    transform: translate(5%, 35%);
  }
}
@media (max-width: 1023.98px) {
  .areas__itemsib {
    grid-template-columns: 1fr;
  }
  .areas__itemib {
    border-radius: 20px;
    padding: 20px 20px 35px;
  }
  .areas__itemib-title {
    display: flex;
    align-items: center;
    min-height: 48px;
  }
  .areas__itemib-text {
    max-width: 500px;
    margin-top: 12px;
  }
  .areas__itemib-img {
    transform: initial;
  }
}
@media (max-width: 767.98px) {
  .areas__itemib {
    padding-bottom: 196px;
  }
  .areas-title {
    min-height: 1px;
  }
}

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

**************************************************************/
.designed__sbdr::before {
  width: 1392px;
  height: 383px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -48%);
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.2);
  filter: blur(56.5px);
  content: "";
}
.designed__sbdr::after {
  width: 490px;
  aspect-ratio: 1/1;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(30%, 28%);
  border-radius: 100%;
  background: #dac7fa;
  filter: blur(30px);
  content: "";
}
.designed__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 40px;
}
.designed__ithead {
  width: calc(100% + 20px);
}
.designed__item {
  padding: 40px;
  min-height: 310px;
  border: 1px solid #fff;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(255, 255, 255, 0.3);
  display: flex;
  flex-direction: column;
}
.designed__item.item--empty {
  padding: 0 10px 0 0;
  background: none;
  border: none;
  -webkit-backdrop-filter: initial;
  backdrop-filter: initial;
  min-height: 1px;
}
.designed__item:last-child:nth-child(4n-1) {
  margin: 0 auto;
}
.designed__item-head {
  width: 100%;
  margin-bottom: auto;
  padding-bottom: 30px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.designed__item-number {
  width: 48px;
  height: 48px;
  border-radius: 100%;
  border: 1px solid #1A3469;
  background: #F8F9FD;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.designed__imgbg {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  z-index: 1;
  display: flex;
  justify-content: center;
}
@media (max-width: 1439.98px) {
  .designed__items {
    grid-template-columns: 1fr 1fr;
    grid-gap: 24px 32px;
  }
  .designed__item {
    border-radius: 30px;
    padding: 30px;
    min-height: 260px;
  }
  .designed__item.item--empty {
    padding-right: 40px;
  }
  .designed__item-head {
    padding-bottom: 16px;
  }
  .designed__item-title {
    padding-right: 10px;
  }
  .designed__imgbg {
    bottom: 100px;
  }
}
@media (max-width: 1023.98px) {
  .designed__items {
    grid-gap: 25px 20px;
    grid-template-columns: 1fr 1fr;
  }
  .designed__items .w-all-m {
    grid-column: span 2;
  }
  .designed__ithead {
    margin-bottom: 15px;
  }
  .designed__item.w-all-m:last-child {
    margin-top: 15px;
  }
  .designed__item.w-all-m:last-child .title {
    font-size: 28px;
  }
  .designed__imgbg {
    width: 135%;
    bottom: 240px;
  }
}
@media (max-width: 767.98px) {
  .designed__items {
    grid-gap: 20px;
    grid-template-columns: 1fr;
  }
  .designed__items .w-all-m {
    grid-column: initial;
  }
  .designed__item {
    min-height: 1px;
  }
}
@media (max-width: 609.98px) {
  .designed__ithead {
    margin-bottom: 5px;
    text-align: center;
  }
  .designed__item {
    border-radius: 20px;
    padding: 20px;
    flex-direction: row;
    align-items: center;
    gap: 12px;
  }
  .designed__item.w-all-m:last-child {
    margin-top: 0;
  }
  .designed__item.w-all-m:last-child .title {
    font-size: 18px;
  }
  .designed__item.item--empty {
    padding-right: 0;
  }
  .designed__item-head {
    margin: 0;
    padding: 0;
    width: auto;
  }
  .designed__item-number {
    width: 36px;
    height: 36px;
    font-size: 18px;
  }
  .designed__item-title {
    padding: 0;
  }
}

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

**************************************************************/
.courses__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 40px 24px;
}
.courses__item-photo {
  padding-bottom: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  margin-bottom: 20px;
}
.courses__item-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.3s ease-in-out;
}
@media (hover: hover) {
  .courses__item:hover .courses__item-photo img {
    transform: scale(1.1);
  }
}
.courses__item-category {
  margin-bottom: 12px;
  color: #468ADD;
}
.courses__item-buttons {
  margin-top: 20px;
}
@media (max-width: 1023.98px) {
  .courses__items {
    grid-template-columns: 1fr 1fr;
    grid-gap: 24px 20px;
  }
}
@media (max-width: 609.98px) {
  .courses__items {
    grid-template-columns: 1fr;
  }
  .courses__item {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .courses__item-photo {
    flex: 0 0 auto;
    width: 33%;
    padding-bottom: 32%;
    border-radius: 8px;
    margin: 0;
  }
  .courses__item-category {
    font-size: 12px;
    margin-bottom: 8px;
  }
  .courses__item-buttons {
    margin-top: 8px;
  }
}

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

**************************************************************/
.dcourse {
  --bdr: 30px;
}
.dcourse__cols {
  display: flex;
  gap: 24px;
}
.dcourse__content {
  flex: 1 0 0;
  border-radius: var(--bdr);
  background: #F8F9FD;
  padding: 60px 50px;
}
.dcourse__title {
  font-size: 56px;
  margin-bottom: 24px;
}
.dcourse__aside {
  flex: 0 0 auto;
  width: 448px;
  border-radius: var(--bdr);
  background: #F8F9FD;
}
.dcourse__photo {
  padding-bottom: 100%;
  border-radius: var(--bdr);
  overflow: hidden;
  position: relative;
}
.dcourse__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.dcourse__info {
  padding: 24px 30px 40px;
}
.dcourse__category {
  margin-bottom: 24px;
  color: #468add;
}
.dcourse__prop {
  display: flex;
  align-items: center;
  gap: 20px;
}
.dcourse__prop + .dcourse__prop {
  margin-top: 24px;
}
.dcourse__prop-icon {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dcourse__prop-icon img {
  max-height: 100%;
}
.dcourse__buttons {
  margin-top: 24px;
}
@media (max-width: 1439.98px) {
  .dcourse__content {
    padding: 30px;
  }
  .dcourse__aside {
    width: 309px;
  }
  .dcourse__info {
    padding: 24px 20px 20px;
  }
  .dcourse__prop {
    gap: 16px;
  }
}
@media (max-width: 1023.98px) {
  .dcourse__cols {
    gap: 20px;
  }
  .dcourse__aside {
    width: 257px;
  }
  .dcourse__info {
    padding: 24px 16px 16px;
  }
  .dcourse__category {
    margin-bottom: 16px;
  }
  .dcourse__prop {
    gap: 8px;
  }
  .dcourse__prop + .dcourse__prop {
    margin-top: 16px;
  }
  .dcourse__prop-icon {
    width: 20px;
    height: 20px;
  }
  .dcourse__buttons {
    margin-top: 16px;
  }
}
@media (max-width: 767.98px) {
  .dcourse__cols {
    flex-direction: column;
  }
  .dcourse__aside {
    width: auto;
    order: -1;
  }
}
@media (max-width: 609.98px) {
  .dcourse {
    margin: 24px 0;
  }
  .dcourse__content {
    margin: 0 -20px;
  }
  .dcourse__aside {
    margin: 0 -20px;
  }
  .dcourse__info {
    padding: 24px 20px 20px;
  }
}

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

**************************************************************/
.blog__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 24px;
}
.blog__item-photo {
  padding-bottom: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  margin-bottom: 20px;
}
.blog__item-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.3s ease-in-out;
}
@media (hover: hover) {
  .blog__item:hover .blog__item-photo img {
    transform: scale(1.1);
  }
}
.blog__item-head {
  margin-bottom: 12px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.blog__item-category {
  color: #468ADD;
}
.blog__item-desc {
  margin-top: 12px;
}
.blog__item-buttons {
  margin-top: 20px;
}
.blog__item-link {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.4;
  text-decoration: underline;
  color: #7a57e1;
  transition: all 0.3s ease-in-out;
}
.blog__item-link:hover {
  color: #1A3469;
}
@media (max-width: 1023.98px) {
  .blog__items {
    grid-template-columns: 1fr 1fr;
    grid-gap: 24px 20px;
  }
}
@media (max-width: 609.98px) {
  .blog__items {
    grid-template-columns: 1fr;
  }
  .blog__item {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .blog__item-photo {
    flex: 0 0 auto;
    width: 33%;
    padding-bottom: 32%;
    border-radius: 8px;
    margin: 0;
  }
  .blog__item-category {
    font-size: 12px;
    margin-bottom: 8px;
  }
  .blog__item-buttons {
    margin-top: 8px;
  }
}
.blog__itlatest {
  display: flex;
  gap: 20px;
}
.blog__itlatest + .blog__itlatest {
  margin-top: 24px;
}
.blog__itlatest-photo {
  flex: 0 0 auto;
  width: 160px;
  height: 160px;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
}
.blog__itlatest-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.blog__itlatest-info {
  display: flex;
  flex-direction: column;
  font-size: 16px;
}
.blog__itlatest-props {
  margin-top: auto;
  padding-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.blog__itlatest-category {
  color: #468ADD;
}
@media (max-width: 609.98px) {
  .blog__itlatest {
    gap: 8px;
  }
  .blog__itlatest-photo {
    width: 100px;
    height: 100px;
    border-radius: 8px;
  }
  .blog__itlatest-props {
    font-size: 12px;
  }
}

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

**************************************************************/
.dblog__cols {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}
.dblog__aside {
  flex: 0 0 auto;
  width: 448px;
}
.dblog__aside-title {
  margin-bottom: 24px;
}
.dblog__body {
  flex: 1 0 0;
}
.dblog__photo {
  height: 600px;
  position: relative;
  border-radius: 30px;
  overflow: hidden;
  margin-bottom: 24px;
}
.dblog__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.dblog__title {
  margin-bottom: 20px;
}
.dblog__props {
  margin-bottom: 24px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.dblog__category {
  color: #468ADD;
}
.dblog__bottom {
  max-width: calc(100% - 448px - 24px);
  margin-top: 24px;
  padding-top: 12px;
  border-top: 1px solid #E7EAFE;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
@media (max-width: 1439.98px) {
  .dblog__cols {
    flex-direction: column;
    gap: 24px;
  }
  .dblog__aside {
    width: 100%;
    padding-top: 24px;
    border-top: 1px solid #E7EAFE;
  }
  .dblog__bottom {
    max-width: 100%;
  }
}
@media (max-width: 609.98px) {
  .dblog__photo {
    margin-bottom: 16px;
    border-radius: 20px;
    padding-bottom: 100%;
    height: auto;
  }
  .dblog__props {
    margin-bottom: 16px;
  }
  .dblog__title {
    margin-bottom: 16px;
  }
  .dblog__aside {
    border: none;
    padding-top: 0;
  }
  .dblog__aside-title {
    font-size: 24px;
  }
  .dblog__bottom {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    padding-top: 0;
    border: none;
  }
}

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

**************************************************************/
.learning__cols {
  display: flex;
  gap: 28px;
}
.learning__info {
  flex: 1 0 0;
  border-radius: 30px;
  padding: 50px 140px 250px 50px;
  background: #F8F9FD;
  position: relative;
  overflow: hidden;
}
.learning__info > * {
  position: relative;
  z-index: 2;
}
.learning__text {
  margin-top: 20px;
}
.learning__text * + * {
  margin-top: 20px;
}
.learning__imgbg {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: 1;
}
.learning__imgbg img {
  width: 100%;
}
.learning__items {
  flex: 0 0 auto;
  width: 560px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  grid-gap: 24px 20px;
}
.learning__item {
  border-radius: 30px;
  padding: 30px 30px 150px;
  background: #F8F9FD;
  position: relative;
  overflow: hidden;
}
.learning__item-img {
  height: 214px;
  position: absolute;
  right: -40px;
  bottom: -50px;
}
@media (max-width: 1439.98px) {
  .learning__cols {
    gap: 24px;
  }
  .learning__info {
    padding: 30px 30px 215px;
  }
  .learning__items {
    width: 476px;
  }
}
@media (max-width: 1023.98px) {
  .learning__cols {
    flex-direction: column;
  }
  .learning__info {
    flex: 0 0 auto;
  }
  .learning__items {
    width: 100%;
  }
  .learning__item {
    min-height: 120px;
    padding-right: 120px;
    padding-bottom: 30px;
    display: flex;
    align-items: center;
  }
  .learning__item-img {
    height: 190px;
  }
}
@media (max-width: 767.98px) {
  .learning__info {
    padding: 20px 20px 120px;
    border-radius: 20px;
  }
  .learning__item {
    padding: 20px 105px 20px 20px;
    border-radius: 20px;
    min-height: 80px;
  }
  .learning__item-img {
    right: 0;
    bottom: 0;
    transform: translate(35%, 50%);
    height: 180px;
  }
}
@media (max-width: 609.98px) {
  .learning__cols {
    gap: 20px;
  }
  .learning__items {
    grid-template-columns: 1fr;
    grid-gap: 20px;
  }
}

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

**************************************************************/
.guide__questions {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 70px;
}
.guide__quest {
  width: 45%;
  max-width: 500px;
  border: 1px solid #fff;
  border-radius: 30px;
  padding: 30px;
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  background: rgba(248, 249, 253, 0.4);
  display: flex;
  align-items: center;
  gap: 20px;
}
.guide__quest-icon {
  flex: 0 0 auto;
  width: 66px;
  display: flex;
  justify-content: center;
}
.guide__img {
  width: 693px;
  position: relative;
  height: 370px;
  margin: 80px auto;
}
.guide__img img {
  position: absolute;
  top: 58%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.guide__tag {
  position: absolute;
  border: 1px solid #fff;
  border-radius: 50px;
  padding: 10px 8px 10px 20px;
  height: 59px;
  display: flex;
  align-items: center;
  gap: 22px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background: rgba(255, 255, 255, 0.3);
  z-index: 9;
  animation: move_up_down 2.5s infinite linear;
}
.guide__tag.tag--right {
  padding: 10px 20px 10px 8px;
}
.guide__tag.tag--right .tag-m {
  order: -1;
}
.guide__tag .tag-m {
  width: 39px;
  height: 39px;
  border-radius: 100px;
  border: 1px solid #F4F4F4;
  position: relative;
}
.guide__tag .tag-m::before {
  width: 21px;
  height: 21px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  border: 1px solid #f6f6f6;
  content: "";
}
.guide__tag .tag-m::after {
  width: 18px;
  height: 18px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  background: linear-gradient(90deg, #7a57e1 0%, #468add 100%);
  content: "";
}
.guide__tag.tag--1 {
  top: 29%;
  left: 0;
}
.guide__tag.tag--2 {
  top: 0;
  right: 15%;
  animation-delay: 0.3s;
}
.guide__tag.tag--3 {
  top: 50%;
  right: 0;
  animation-delay: 0.8s;
}
.guide__tag.tag--4 {
  bottom: 0;
  left: 20%;
  animation-delay: 0.5s;
}
.guide__bottom {
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
}
.guide__bbuttons {
  margin-top: 20px;
}
@media (max-width: 1439.98px) {
  .guide__quest {
    max-width: 400px;
    padding: 20px;
  }
  .guide__img {
    max-width: 550px;
    height: 320px;
  }
  .guide__tag {
    padding: 8px 6px 8px 15px;
    height: 45px;
    gap: 16px;
  }
  .guide__tag.tag--right {
    padding: 8px 15px 8px 6px;
  }
  .guide__tag .tag-m {
    width: 30px;
    height: 30px;
  }
  .guide__tag .tag-m::before {
    width: 16px;
    height: 16px;
  }
  .guide__tag .tag-m::after {
    width: 14px;
    height: 14px;
  }
  .guide__bottom {
    max-width: 580px;
  }
}
@media (max-width: 1023.98px) {
  .guide__sbdr {
    padding-top: 20px;
  }
  .guide__questions {
    gap: 20px;
    margin-bottom: 40px;
  }
  .guide__quest {
    gap: 12px;
    width: calc(50% - 10px);
    border-radius: 10px;
    padding: 12px;
    font-size: 14px;
  }
  .guide__quest-icon {
    width: 32px;
  }
  .guide__img {
    margin-top: 50px;
  }
  .guide__tag.tag--2 {
    top: 10%;
  }
}
@media (max-width: 609.98px) {
  .guide__questions {
    gap: 13px;
    margin-bottom: 30px;
  }
  .guide__quest {
    gap: 12px;
    width: 100%;
    max-width: 100%;
  }
  .guide__img {
    width: 100%;
    height: 180px;
    margin-bottom: 40px;
    margin-top: 30px;
    max-width: 400px;
  }
  .guide__tag {
    font-size: 12px;
    padding: 6px 4px 6px 8px;
    height: 32px;
    gap: 8px;
    white-space: nowrap;
  }
  .guide__tag.tag--right {
    padding: 6px 8px;
  }
  .guide__tag .tag-m {
    width: 20px;
    height: 20px;
  }
  .guide__tag .tag-m::before {
    width: 11px;
    height: 11px;
  }
  .guide__tag .tag-m::after {
    width: 10px;
    height: 10px;
  }
  .guide__tag.tag--1 {
    right: auto;
    left: 0;
  }
  .guide__tag.tag--2 {
    top: 5%;
  }
  .guide__tag.tag--3 {
    top: 50%;
  }
  .guide__tag.tag--4 {
    left: 5%;
    bottom: 10%;
  }
}

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

**************************************************************/
.methods {
  --gap: 40px;
}
.methods__items {
  max-width: 980px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--gap);
}
.methods__item {
  position: relative;
  background: #F8F9FD;
  width: calc((100% - 2 * var(--gap)) / 3);
  min-height: 300px;
  border-radius: 30px;
  padding: 20px 20px 130px;
  text-align: center;
  overflow: hidden;
}
.methods__item-img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-width: 300px;
}
.methods__bottom {
  max-width: 620px;
  margin: 50px auto 0;
  text-align: center;
}
.methods__btext {
  margin-top: 16px;
}
.methods__bbuttons {
  margin-top: 16px;
}
@media (max-width: 1439.98px) {
  .methods {
    --gap: 24px;
  }
}
@media (max-width: 1023.98px) {
  .methods {
    --gap: 20px;
  }
  .methods__bottom {
    margin-top: 40px;
  }
}
@media (max-width: 767.98px) {
  .methods__item {
    width: 100%;
    max-width: 400px;
    min-height: 1px;
    padding: 16px 16px 80px;
    border-radius: 20px;
  }
  .methods__item-img {
    top: 100%;
    transform: translateY(-80px);
  }
}
/**************************************************************

**************************************************************/
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zY3NzIiwiX3Jlc2V0LnNjc3MiLCJpbmMvX3ZhcnMuc2NzcyIsIl9jb21tb24uc2NzcyIsImNvbW1vbi9fY29udGVudC5zY3NzIiwiY29tbW9uL19zZWN0aW9uLnNjc3MiLCJjb21tb24vX2NvbHMuc2NzcyIsImNvbW1vbi9fZWxlbWVudHMuc2NzcyIsImluYy9fbWl4aW5zLnNjc3MiLCJfbGlicy5zY3NzIiwiX2Zvcm1zLnNjc3MiLCJfcG9wdXAuc2NzcyIsIl9oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX25hdmZpeC5zY3NzIiwiX2Zvb3Rlci5zY3NzIiwic3R5bGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBO0VBQ0M7RUFDQTtFQUNBLEtBQ0M7RUFHRDtFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBLEtBQ0M7RUFHRDtFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBLEtBQ0M7RUFHRDtFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBLEtBQ0M7RUFHRDtFQUNBOztBQUVEO0VBQ0M7RUFDQTtFQUNBLEtBQ0M7RUFHRDtFQUNBOztBQUdEO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQzNFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBLGFDMUJHO0VEMkJILE9DcEJTO0VEcUJUO0VBQ0E7RUFDQSxZQzFCTTtFRDJCTjtFQUNBOztBQU9BO0VBaEJKO0lBaUJROzs7QUFFSjtFQW5CSjtJQW9CUTs7OztBQUlSO0FBQUE7QUFBQTtFQUdJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0U7OztBQUdGO0VBQ0k7RUFDQTtFQUNBO0VBQVc7OztBRW5FZjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBLFdERWM7RUNEZDtFQUFtQjtFQUNuQjtFQUNBOztBQUlBO0VBVEo7SUFVUTs7O0FBS0o7RUFmSjtJQWdCUTs7O0FBRUo7RUFsQko7SUFtQlE7SUFDQTtJQUNBOzs7QUFFSjtFQXZCSjtJQXdCUTs7OztBQUdSO0VBQ0k7RUFDQSxXRHpCYztFQzBCZDtFQUFtQjtFQUNuQjtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBVko7SUFXUTs7O0FBR0o7RUFDSTs7O0FBTVI7RUFDSTtFQUFrQjtFQUNsQjtFQUNBO0VBQ0E7RUFDQTs7O0FBSUo7RUFDSTs7O0FBR0o7RUFDSTs7QUFDQTtFQUZKO0lBR1E7OztBQUVKO0VBTEo7SUFNUTs7O0FBRUo7RUFSSjtJQVNROzs7O0FBT0o7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSUo7RUFESjtJQUVROzs7O0FBSVI7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUo7RUFDSTs7O0FBSUo7RUFDSTtJQUFJOztFQUNKO0lBQUs7O0VBQ0w7SUFBSzs7RUFDTDtJQUFNOzs7QUFFVjtFQUNJO0lBQUk7O0VBQ0o7SUFBSzs7RUFDTDtJQUFNOzs7QUNuS047RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBRUk7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJLGFGZFE7RUVlUixPRlZLO0VFV0w7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFFSjtBQUFBO0VBRUU7RUFDQTs7QUFFRjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFFSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT0ZsRE87RUVtRFA7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDSTtFQUNBOztBQUdKO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBSVI7RUFDSTtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7O0FDdEdaO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFFSjtFQVpKO0lBYVE7SUFDQTs7O0FBRUo7RUFoQko7SUFpQlE7SUFDQTs7OztBQUtKO0VBQ0k7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBOztBQUdSO0VBQ0ksYUhsQ1E7RUdtQ1I7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7SUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUVKO0VBQ0k7O0FBSUE7RUFDSTs7QUFHUjtFQUNJOztBQUNBO0VBQ0U7O0FBR047RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFDQTtFQUNJOztBQUlSO0VBTVE7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJOztFQUdKO0lBQ0k7O0VBUUo7SUFDSTs7RUFDQTtJQUNHOztFQUdQO0lBQ0k7OztBQU9SO0VBRUk7SUFDSTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFHUjtJQUNJOztFQUNBO0lBQ0k7O0VBSVI7SUFDSTs7RUFLSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFFSTtJQUNJOztFQUNBO0lBQ0k7O0VBSVI7SUFDSTs7RUFDQTtJQUNJOztFQUdSO0lBQ0k7O0VBRUo7SUFDSTtJQUNBOztFQUNBO0lBQ0k7O0VBR1I7SUFDSTs7RUFDQTtJQUNJOztFQUdSO0lBQ0k7O0VBRUo7SUFDSTs7O0FBUVo7RUFDSSxhSHZQWTtFR3dQWjtFQUNBOztBQUVBO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBZEo7SUFlUTs7RUFDQTtJQUNJOzs7QUFHUjtFQXBCSjtJQXFCUTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7OztBQUdSO0VBN0JKO0lBOEJROztFQUNBO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJOzs7O0FBSVo7RUFDSTs7O0FBR0o7RUFDSTs7O0FBRUo7RUFDSTs7O0FDeFNKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFPQTtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFLTjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFJSjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFESjtFQUNJOzs7QUFJTjtFQUNJOztBQUNBO0VBQ0k7OztBQUlSO0VBR0k7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBT0c7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBS0o7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBS1Y7SUFDSTs7RUFDQTtJQUNJOzs7QUFJVjtFQUdJO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQU1HO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUpKO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUpKO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUpKO0lBQ0k7O0VBRUo7SUFDSTs7RUFKSjtJQUNJOztFQUVKO0lBQ0k7O0VBSko7SUFDSTs7RUFFSjtJQUNJOztFQUlKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUxKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUxKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUxKO0lBQ0k7O0VBR0o7SUFDSTs7RUFMSjtJQUNJOztFQUdKO0lBQ0k7O0VBTEo7SUFDSTs7RUFHSjtJQUNJOztFQUtSO0lBQ0k7OztBQUdSO0VBR0k7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBREQ7SUFDQzs7RUFERDtJQUNDOztFQUREO0lBQ0M7O0VBTUc7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBS0o7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7O0VBREo7SUFDSTs7RUFESjtJQUNJOztFQURKO0lBQ0k7OztBQVFaO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOzs7QUM5SVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUFhO0VBQ2I7RUFDQTs7QUFDQTtFQ1RBO0VBQ0E7RUFBUztFQUNUO0VBQWE7RURTVDtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7QUFHQTtFQUNJOztBQUVKO0VBQ0k7O0FBSUo7RUFDSTs7QUFFSjtFQUNJOztBQU1KO0VBQ0k7O0FBRUo7RUFDSTs7QUFHUjtFQTNDSjtJQTRDUTtJQUFhOzs7O0FBdURyQjtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQWE7RUFDYjs7QUFNQTtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFHUjtFQTFCSjtJQTJCUTs7OztBQThCUjtFQUNJOztBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNB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O0VBQ0k7O0FBSVo7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTs7QUFFSjtFQUNJOztBQUlaO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7O0FBWVI7RUFDSTtFQUNBO0VBQVM7RUFDVDtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtJO0VBQ0k7O0FBR1I7RUFDSTtFQUtBOztBQUVBO0VBQ0k7RUFDQTtFQUFXO0VBQ1g7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUdSO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0VBQ0k7O0FBTVo7RUFFSTtFQUNBO0VBQ0E7O0FBR1I7RUFDSTs7QUFHSjtFQUNJO0lBQ0k7SUFDQTtJQUNBOztFQVVBO0lBQ0k7O0VBR0E7SUFDSTs7RUFJWjtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7O0VBT0o7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFBYTtJQUNiO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQUdSO0VBQ0k7SUFDSTtJQUNBOztFQUlBO0FBQUE7SUFDSTs7OztBQ3ZUaEI7RUFDSTtFQUNBO0VBQVE7RUFDUjtFQUFhO0VBQ2I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBWTtFQUNaO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQVk7O0FBRWhCO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtF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O0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBQUdSO0VBQ0k7SUFDSTtJQUNBOztFQUtKO0lBQ0k7SUFDQTs7O0FBR1I7RUEzREo7SUE0RFE7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7Ozs7QUFRWjs7QUFBQTtBQUlJO0VBQ0k7O0FBQ0E7RUFDSTtFQUFlO0VBQ2Y7RUFDQTtFQUFRO0VBQ1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQWE7RUFDYjtFQUNBO0VBQ0EsWWIzMEJFO0VhNDBCRjtFQUNBO0VBQ0E7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFBVztFQUNYO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7SUFDQTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOzs7QUFJWjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJO0lBQWE7SUFDYjs7RUFFSjtJQUNJOzs7QUFXWjtFQUNJO0lBQ0k7O0VBQ0E7SUFDSTs7OztBQVNoQjs7QUFBQTtBQUdBO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBOztBQUdKO0VBQ0k7SUFDSTs7OztBQVVaOztBQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQWM7RUFDZDtFQUNBO0VBQVM7RUFDVDtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VB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Q0k7RUFDQTtFQUNBO0VBQ0E7RUFNQTtFQUNBOztBQUNBO0VBQ0ksT2J0NkZIOztBYTI2RlQ7RUFDSTtJQUNJO0lBQ0E7OztBQUdSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTs7RUFDQTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUo7SUFDSTtJQUNBOztFQUVKO0lBQ0k7OztBQUtaO0VBQ0k7RUFDQTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VQcDhGUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FPbThGSTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFHUjtFQUNJO0lBQ0k7O0VBQ0E7SUFDSTtJQUFjO0lBQ2Q7O0VBRUo7SUFDSTs7OztBQVNoQjs7QUFBQTtBQUlJO0VBQ0k7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFHQTtFQUNJOztBQUdSO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VQcGdHSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FPbWdHQTtFQUNJOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtJQUNJO0lBQ0E7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7OztBQU1aOztBQUFBO0FBSUk7RUFDSTtFQUNBOztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsWWJ4bUdNO0VheW1HTjtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFHUjtFQUNJOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBO0VBQVc7RUFDWDtFQUNBOztBQUNBO0VBQ0k7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBO0VBQ0EsWWIxb0dNO0VhMm9HTjtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQWM7O0FBSXRCO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7OztBQUdSO0VBQ0k7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7O0VBRUo7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0k7OztBQUlaO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTtJQUNBOztFQUNBO0lBQ0k7SUFBVTtJQUNWO0lBQ0E7OztBQUlaO0VBQ0k7SUFDSTs7RUFFSjtJQUNJO0lBQ0E7Ozs7QUFTWjs7QUFBQTtBQUlJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUFVO0VBQ1Y7RUFDQTs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJO0VBQWE7RUFDYjtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUFhO0VQOXdHekI7RUFDQTtFQUFXO0VBQ1g7RU84d0dZO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQWE7RVByeEd6QjtFQUNBO0VBQVc7RUFDWDtFT3F4R1k7RUFDQTtFQUNBOztBQUdSO0VBQ0k7RUFBVTs7QUFFZDtFQUNJO0VBQVE7RUFBWTs7QUFFeEI7RUFDSTtFQUFVO0VBQVU7O0FBRXhCO0VBQ0k7RUFBVztFQUFXOztBQUs5QjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUdKO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTs7RUFDQTtJQUNJOztFQUVKO0lBQ0k7SUFBYTs7RUFDYjtJQUNJO0lBQWE7O0VBRWpCO0lBQ0k7SUFBYTs7RUFLekI7SUFDSTs7O0FBR1I7RUFDSTtJQUNJOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFHUjtJQUNJOztFQUlBO0lBQ0k7OztBQUlaO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTtJQUNBOztFQUVKO0lBQ0k7SUFBYTtJQUNiO0lBQ0E7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBQ0E7SUFDSTs7RUFFSjtJQUNJO0lBQWE7O0VBQ2I7SUFDSTtJQUFhOztFQUVqQjtJQUNJO0lBQWE7O0VBR3JCO0lBQ0k7SUFBYTs7RUFFakI7SUFDSTs7RUFFSjtJQUNJOztFQUVKO0lBQ0k7SUFBVTs7OztBQVUxQjs7QUFBQTtBQUdBO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBLFliNzdHTTtFYTg3R047RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUFXO0VBQ1g7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBR0o7RUF2Q0o7SUF3Q1E7OztBQUdKO0VBM0NKO0lBNENROztFQUNBO0lBQ0k7OztBQUdSO0VBSUk7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0k7SUFDQTs7O0FBYWhCOztBQUFBIiwiZmlsZSI6InN0eWxlcy5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LUxpZ2h0LmVvdCcpO1xyXG5cdHNyYzpcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LUxpZ2h0LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0JztcclxuXHRzcmM6IHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LUJvbGRJdGFsaWMuZW90Jyk7XHJcblx0c3JjOiBcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LUJvbGRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LUJvbGRJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtQm9sZEl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcbkBmb250LWZhY2Uge1xyXG5cdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7XHJcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1JdGFsaWMuZW90Jyk7XHJcblx0c3JjOlxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtSXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1JdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtSXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtQm9sZC5lb3QnKTtcclxuXHRzcmM6XHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1Cb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuXHRcdHVybCgnLi4vZm9udHMvTW9udHNlcnJhdC9Nb250c2VycmF0LUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5AZm9udC1mYWNlIHtcclxuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO1xyXG5cdHNyYzogdXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci5lb3QnKTtcclxuXHRzcmM6IFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG5cdFx0dXJsKCcuLi9mb250cy9Nb250c2VycmF0L01vbnRzZXJyYXQtUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcblx0XHR1cmwoJy4uL2ZvbnRzL01vbnRzZXJyYXQvTW9udHNlcnJhdC1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0ludm9sdmUnO1xyXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL0ludm9sdmUvSW52b2x2ZS1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICAgIHVybCgnLi4vZm9udHMvSW52b2x2ZS9JbnZvbHZlLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcclxufVxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnSW52b2x2ZSc7XHJcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvSW52b2x2ZS9JbnZvbHZlLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgICB1cmwoJy4uL2ZvbnRzL0ludm9sdmUvSW52b2x2ZS1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcclxufVxyXG5cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdQb2x5U2FucyBOZXV0cmFsJztcclxuICAgIHNyYzogdXJsKCcuLi9mb250cy9Qb2x5U2FucyBOZXV0cmFsL1BvbHlTYW5zIE5ldXRyYWwud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICAgdXJsKCcuLi9mb250cy9Qb2x5U2FucyBOZXV0cmFsL1BvbHlTYW5zIE5ldXRyYWwud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcclxufSIsIioge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBlbSwgaW1nLCBzdHJvbmcsIHN1Yiwgc3VwLCBiLCB1LCBpLCAgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCB0YWJsZSwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgZm9udC1zaXplOiAxMDAlO1xyXG59XHJcbmhlYWRlciwgbmF2LCBzZWN0aW9uLCBhcnRpY2xlLCBhc2lkZSwgZm9vdGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuaHRtbCB7ICBcclxuICAgIGhlaWdodDoxMDAlOyBcclxufVxyXG5ib2R5IHsgIFxyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7IFxyXG4gICAgaGVpZ2h0OjEwMCU7IFxyXG4gICAgZm9udC1mYW1pbHk6ICRmb250OyBcclxuICAgIGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmctYm9keTtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbGcpIHtcclxuICBcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5ICosXHJcbmJvZHkgKjpiZWZvcmUsXHJcbmJvZHkgKjphZnRlciB7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyBcclxufVxyXG5cclxuaW1nIHsgXHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG59XHJcblxyXG51bCB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuYSB7IFxyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG4gICAgbWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xyXG59XHJcbiIsIiRmb250OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiRmb250LWludm9sZTogJ0ludm9sdmUnLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1wb2x5c2FuczogJ1BvbHlTYW5zIE5ldXRyYWwnLCBzYW5zLXNlcmlmO1xyXG5cclxuJGJnLWJvZHk6ICNGQ0ZERkY7XHJcbiRiZy1ncmF5LWxpZ2h0OiAjRjhGQUZDO1xyXG5cclxuJGNvbG9yLWJvZHk6ICMxQTM0Njk7XHJcbiRjb2xvci1hY2NlbnQtZmlydHM6ICM3QTU3RTE7XHJcbiRjb2xvci1hY2NlbnQtbGFzdDogIzdBNTdFMTtcclxuJGNvbG9yLXRleHQ6ICNFN0VBRkU7XHJcbiRjb2xvci13aGl0ZTogI0Y4RjlGRDtcclxuJGNvbG9yLWVycm9yOiAjZTE1N2IwO1xyXG5cclxuXHJcblxyXG4kd2lkdGgtY29udGFpbmVyOiAxMzkycHg7XHJcbiRwZC1jb250YWluZXI6IDIwcHg7XHJcbiRwZC1jb250YWluZXItc214OiAxNXB4O1xyXG5cclxuJG1kLWRlc2t0b3AtbGc6IDE5MTkuOThweDtcclxuJG1kLWRlc2t0b3AtbWQ6IDE0MzkuOThweDtcclxuJG1kLWRlc2t0b3A6IDExOTkuOThweDtcclxuJG1kLXRhYmxldDogMTAyMy45OHB4O1xyXG4kbWQtdGFibGV0LXNtOiA3NjcuOThweDtcclxuJG1kLW1vYmlsZS1sZzogNjA5Ljk4cHg7XHJcbiRtZC1tb2JpbGU6IDQ3OC45OHB4O1xyXG4kbWQtbW9iaWxlLXNtOiAzOTkuOThweDtcclxuJG1kLW1vYmlsZS1zbXg6IDM2MHB4O1xyXG5cclxuJGhlYWRlci1oOiAxMDBweDtcclxuJGhlYWRlci1oLXQ6IDgwcHg7XHJcbiRoZWFkZXItaC1tOiA3MHB4OyIsIlxyXG4uY2xlYXIgeyBcclxuICAgIGNsZWFyOiBib3RoOyBcclxuICAgIGhlaWdodDogMDsgXHJcbiAgICBvdmVyZmxvdzogaGlkZGVuOyBcclxuICAgIGZvbnQtc2l6ZTogMDtcclxufVxyXG4uY2xlYXJmaXg6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbn1cclxuLmNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogJHdpZHRoLWNvbnRhaW5lcjsgXHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgLy8gbWF4LXdpZHRoOiAxMzYwcHg7XHJcbiAgICB9XHRcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5NzZweDtcclxuICAgIH1cdFxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICAgXHJcbiAgICB9XHRcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDcyMHB4O1xyXG4gICAgfVx0XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBkLWNvbnRhaW5lciAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwZC1jb250YWluZXIgIWltcG9ydGFudDtcclxuICAgIH1cdFxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kLW1vYmlsZS1zbXgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwICRwZC1jb250YWluZXItc214O1xyXG4gICAgfVxyXG59XHJcbi5jb250YWluZXItZmx1aWQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6ICR3aWR0aC1jb250YWluZXI7IFxyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRwZC1jb250YWluZXIgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRwZC1jb250YWluZXIgIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLXNteCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgJHBkLWNvbnRhaW5lci1zbXg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLndyYXBwZXIge1xyXG4gICAgbWluLWhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7ICBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uY29udGVudF9fd3JhcHBlciB7XHJcbiAgICBmbGV4OiAxIDAgYXV0bztcclxufVxyXG5cclxuLnBkX19oZWFkZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3ApIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA4NXB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA3NXB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi5oaWRlLWRlc2t0b3AtbGcge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5oaWRlLWRlc2t0b3AtbWQge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5oaWRlLWRlc2t0b3Age1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5oaWRlLXRhYmxldCB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uaGlkZS10YWJsZXQtc20ge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLmhpZGUtbW9iaWxlLWxnIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5zaG93LWRlc2t0b3Age1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC1kZXNrdG9wKyAwLjAycHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLnNob3ctZGVza3RvcC1tZCB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLWRlc2t0b3ArIDAuMDJweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uc2hvdy10YWJsZXQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC10YWJsZXQrIDAuMDJweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uc2hvdy10YWJsZXQtc20ge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC10YWJsZXQtc20rIDAuMDJweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uc2hvdy1tb2JpbGUtbGcge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZC1tb2JpbGUtbGcrIDAuMDJweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLm5vc2Nyb2xsIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5ub3dyYXAge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4ubm8tZGlzcGxheSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcblxyXG5Aa2V5ZnJhbWVzIG1vdmVfdXBfZG93biB7XHJcbiAgICAwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKTt9XHJcbiAgICAyNSUge3RyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTEwJSk7fVxyXG4gICAgNzUlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDEwJSk7fVxyXG4gICAgMTAwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwJSk7fVxyXG59XHJcbkBrZXlmcmFtZXMgaGVyb19pbWcge1xyXG4gICAgMCUge3RyYW5zZm9ybTogcm90YXRlKDApIHNjYWxlKDEpO31cclxuICAgIDUwJSB7dHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpIHNjYWxlKDAuODUpO31cclxuICAgIDEwMCUge3RyYW5zZm9ybTogcm90YXRlKDApIHNjYWxlKDEpO31cclxufVxyXG5cclxuQGltcG9ydCBcImNvbW1vbi9jb250ZW50XCI7XHJcbkBpbXBvcnQgXCJjb21tb24vc2VjdGlvblwiO1xyXG5AaW1wb3J0IFwiY29tbW9uL2NvbHNcIjtcclxuQGltcG9ydCBcImNvbW1vbi9lbGVtZW50c1wiOyIsIlxyXG4uY29udGVudF9fdGV4dCB7XHJcbiAgICA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1IHtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcG9seXNhbnM7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICB9XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA2NHB4O1xyXG4gICAgICAgIG1hcmdpbjogNDVweCAwO1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICBtYXJnaW46IDI0cHggMCAxNnB4O1xyXG4gICAgfVxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICBtYXJnaW46IDI0cHggMCAxMnB4O1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBtYXJnaW46IDI0cHggMCAxMnB4O1xyXG4gICAgfVxyXG4gICAgaDUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBtYXJnaW46IDI0cHggMCAxMnB4O1xyXG4gICAgfVxyXG4gICAgdWwsXHJcbiAgICBvbCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMjZweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgIH1cclxuICAgIG9sIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IFxyXG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IG51bTtcclxuICAgIH1cclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICB1bCBsaTpiZWZvcmUge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMHB4O1xyXG4gICAgICByaWdodDogMTAwJTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMXB4OyBcclxuICAgICAgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgIGNvbnRlbnQ6ICfigKInO1xyXG4gICAgfVxyXG4gICAgb2wgbGk6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogY291bnRlcihudW0pICcuJzsgXHJcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBudW07XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcdFxyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMHB4O1xyXG4gICAgICByaWdodDogMTAwJTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IFxyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1NnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgXHJcbiAgICB9XHJcbn1cclxuIiwiLnNiZHIge1xyXG4gICAgLy8gbWF4LXdpZHRoOiAkd2lkdGgtY29udGFpbmVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogNjVweCA1MHB4IDEwMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMDcsIDIxMSwgMjU1LCAwLjMpIDAlLCByZ2JhKDE5OCwgMjExLCAyNTUsIDAuNikgMzkuNDYlLCByZ2JhKDE4MywgMjA3LCAyNTMsIDAuOCkgNjYuODMlLCAjYzlkN2Y4IDEwMCUpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgID4gKiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICBwYWRkaW5nOiA1MHB4IDI0cHggODRweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VjdGlvbiB7XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAmLm1iLS1tZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDY2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaGNvbHMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGdhcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXBvbHlzYW5zO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNjRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBtYXgtd2lkdGg6IDk4NXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICYubXcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLm13LS1tZCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYubXctLWxnIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYubXctLWxneCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnctYWxsIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1kLWRlc2t0b3AtbWQrMC4wMnB4KSB7XHJcbiAgICAgICAgICAgICYuZnMtLW1kLWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1NnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1hcmsge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM3YTU3ZTEgMCUsICM0NjhhZGQgMTAwJSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbnRybyB7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcclxuICAgICAgICBtYXgtd2lkdGg6IDg2NnB4O1xyXG4gICAgICAgICYubXctLXNtIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5tdy0tbWQge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnctYWxsIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiAyMHB4IDMwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICYubXQtLXNtIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19maXJzdCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgJl9fbWcge1xyXG4gICAgICAgIG1hcmdpbjogMTQwcHggMDtcclxuICAgICAgICAmLS1tZCB7XHJcbiAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0tc214IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAyNHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fbWd0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNDBweDtcclxuICAgICAgICAmLS1zbXgge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19tZ2Ige1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE0MHB4O1xyXG4gICAgfVxyXG4gICAgJl9fcGQge1xyXG4gICAgICAgIHBhZGRpbmc6IDEzMHB4IDA7XHJcbiAgICB9XHJcbiAgICAmX19wZHQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xyXG4gICAgfVxyXG4gICAgJl9fdGFiIHtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faGVhZCB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmLm1iLS1tZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1NnB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg1MHB4O1xyXG4gICAgICAgICAgICAmLm13IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc2NnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fbWcge1xyXG4gICAgICAgICAgICBtYXJnaW46IDEwMHB4IDA7XHJcbiAgICAgICAgICAgICYtLW1kIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi0tc20ge1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWd0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICAgICAgICAgICYtLXNteCB7XHJcbiAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWdiIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgXHJcbiAgICAgICAgJl9faGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICYubWItLW1kIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5oY29scyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgICAgICAmLm13IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ludHJvIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiA4MHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21ndCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX21nYiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICBcclxuICAgICAgICAmX19oZWFkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgJi5tYi0tbWQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAgICAgJi5tdyB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDk1JSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ludHJvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgIGdhcDogMTJweDtcclxuICAgICAgICAgICAgJi5tdC0tc20ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNDBweCAwO1xyXG4gICAgICAgICAgICAmLS1zbXgge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWd0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWdiIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZSkge1xyXG4gICAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuXHJcbi50aXRsZSB7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtcG9seXNhbnM7XHJcbiAgICBmb250LXNpemU6IDM2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgLy8gdGV4dC13cmFwOiBiYWxhbmNlO1xyXG4gICAgJi5mcy0tbWR4IHtcclxuICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICB9XHJcbiAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgfVxyXG4gICAgJi5mcy0tc20ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAmLmZzLS1tZHgge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgJi5mcy0tbWR4IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5mcy0tbWR4IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmZzLS1zbSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnRleHQge1xyXG4gICAgbWFyZ2luLXRvcDogOHB4O1xyXG59XHJcblxyXG4udGV4dC0tY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4udGV4dC0td2hpdGUge1xyXG4gICAgY29sb3I6ICNmZmZmO1xyXG59IiwiQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5cclxuLmNvbHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogMjBweCAwO1xyXG4gICAgbWFyZ2luOiAwIC0xMHB4O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbn1cclxuW2NsYXNzKj0nY29sLSddIHtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAxMHB4O1xyXG59XHJcblx0XHJcbiRncmlkLWNvbHVtbnM6IDEyO1xyXG4kZ3JpZC1jb2x1bW5zLW1kOiA2O1xyXG5cclxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHRcclxuICAgIC5jb2wtI3skaX0geyBcclxuICAgICAgICB3aWR0aDogMTAwJTtcdFx0XHJcbiAgICB9XHRcclxufVxyXG5cclxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHRcclxuICAubWdsLSN7JGl9IHsgXHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1x0XHRcclxuICB9XHRcclxufVxyXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1x0ICBcdFxyXG4gIC5tZ3ItI3skaX0geyBcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1x0XHRcclxuICB9XHRcclxufVxyXG5cclxuLmNvbC1tdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgJi0tc20ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiAkbWQtdGFibGV0LXNtKyAwLjAycHgpIHtcclxuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMtbWQge1x0IFxyXG5cclxuXHQgIFx0LmNvbC1tZC0jeyRpfSB7IFxyXG5cdCAgXHRcdHdpZHRoOiBjYWxjKDEwMCUgLyAkZ3JpZC1jb2x1bW5zLW1kICogJGkpO1x0XHRcclxuXHQgIFx0fVx0XHJcblxyXG5cdH1cclxuXHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMtbWQge1x0ICBcdFxyXG5cclxuICAgICAgICAubWdsLW1kLSN7JGl9IHsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAkZ3JpZC1jb2x1bW5zLW1kICogJGkgKyAxMHB4KTtcdFx0XHJcbiAgICAgICAgfVx0XHJcblxyXG4gICAgfVxyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zLW1kIHtcdCAgXHJcbiAgICAgICAgLm1nci1tZC0jeyRpfSB7IFxyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoIDEwMCUgLyAkZ3JpZC1jb2x1bW5zLW1kICogJGkgKyAxMHB4KTtcclxuICAgICAgICAgICBcdFxyXG4gICAgICAgIH1cdFxyXG4gICAgfVxyXG5cclxuICAuY29sLW10IHtcclxuICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgJi0tc20ge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgfVxyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogJG1kLXRhYmxldCsgMC4wMnB4KSB7XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHRcclxuXHJcblx0ICBcdC5jb2wtI3skaX0geyBcclxuXHQgIFx0XHR3aWR0aDogY2FsYygxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpKTtcdFx0XHJcblx0ICBcdH1cdFxyXG5cclxuXHR9XHJcblxyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHJcbiAgICAgICAgLm1nbC0jeyRpfSB7IFxyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyggMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSArIDEwcHgpO1xyXG4gICAgICAgIH1cdFxyXG4gICAgICAgIFtjbGFzcyo9J2NvbC0nXS5tZ2wtI3skaX0geyBcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoIDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGkgKyAwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHQgIFxyXG4gICAgICAgIC5tZ3ItI3skaX0geyBcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCAxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpICsgMTBweCk7XHJcbiAgICAgICAgICAgXHRcclxuICAgICAgICB9XHRcclxuICAgICAgICBbY2xhc3MqPSdjb2wtJ10ubWdyLSN7JGl9IHsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyggMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSArIDBweCk7XHJcbiAgICAgICAgICAgXHRcclxuICAgICAgICB9XHRcclxuICAgIH1cclxuXHJcbiAgICAuY29sLW10IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6ICRtZC10YWJsZXQrIDAuMDJweCkgYW5kIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcdCAgXHRcclxuXHJcblx0ICBcdC5jb2wtbWR4LSN7JGl9IHsgXHJcblx0ICBcdFx0d2lkdGg6IGNhbGMoMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSk7XHRcdFxyXG5cdCAgXHR9XHRcclxuXHJcblx0fVxyXG5cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHQgIFxyXG4gICAgICAgIC5tZ2wtbWR4LSN7JGl9IHsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpICsgMTBweCk7XHJcbiAgICAgICAgICAgXHRcclxuICAgICAgICB9XHRcclxuICAgIH1cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XHQgIFxyXG4gICAgICAgIC5tZ3ItbWR4LSN7JGl9IHsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyggMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSArIDEwcHgpO1xyXG4gICAgICAgICAgIFx0XHJcbiAgICAgICAgfVx0XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgIC5jb2xzIHtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHg7XHJcbiAgICB9XHJcbiAgICBbY2xhc3MqPSdjb2wtJ10ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgLmNvbHMge1xyXG4gICAgICAgIGdhcDogMTZweCAwO1xyXG4gICAgICAgIG1hcmdpbjogMCAtOHB4O1xyXG4gICAgfVxyXG4gICAgW2NsYXNzKj0nY29sLSddIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDhweDtcclxuICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLmljb24ge1xyXG4gICAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XHJcbiAgICBmaWxsOiBub25lO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgJi0tZmlsbCB7XHJcbiAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgICAgIHN0cm9rZTogaW5pdGlhbDtcclxuICAgIH1cclxuICAgIHBhdGgge1xyXG4gICAgICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIH1cclxufVxyXG5cclxuLmJ0bmFyciB7XHJcbiAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgIHdpZHRoOiA0OHB4OyBoZWlnaHQ6IDQ4cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGFicy1hbGw7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9hcnJvdy1jaXJjbGUuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvYXJyb3ctY2lyY2xlLWhvdmVyLnN2Zyk7XHJcbiAgICB9XHJcbiAgICAmLS1kcm9wIHtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvYXJyb3ctY2lyY2xlLXVwLWhvdmVyLnN2Zyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvYXJyb3ctY2lyY2xlLWRvd24uc3ZnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLS13aGl0ZSB7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2Fycm93LWNpcmNsZS13aGl0ZS5zdmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2Fycm93LWNpcmNsZS13aGl0ZS1ob3Zlci5zdmcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIsXHJcbiAgICAuaXRlbS1ob3Zlcjpob3ZlciAmLFxyXG4gICAgLm9wZW5lZCAmIHtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyAuc29jaWFsIHtcclxuLy8gICAgICZfX2l0ZW1zIHtcclxuLy8gICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4vLyAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbi8vICAgICAgICAgZ2FwOiAxNnB4O1xyXG4vLyAgICAgfVxyXG4vLyAgICAgYSB7XHJcbi8vICAgICAgICAgd2lkdGg6IDU1cHg7IGhlaWdodDogNTVweDtcclxuLy8gICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4vLyAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbi8vICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbi8vICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0YwRkZFOTtcclxuLy8gICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuLy8gICAgICAgICBjb2xvcjogI0YwRkZFOTtcclxuLy8gICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuLy8gICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgXHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgfVxyXG4vLyAgICAgLmljb24ge1xyXG4vLyAgICAgICAgIHdpZHRoOiAxOXB4OyBoZWlnaHQ6IDE5cHg7XHJcbi8vICAgICB9XHJcbi8vIH0gICBcclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuLy8gLnJhdGluZyB7XHJcbi8vIFx0bWFyZ2luOiAwIGF1dG87XHJcbi8vIFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbi8vICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbi8vICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbi8vICAgICBtYXJnaW46IDAgLTJweDtcclxuLy8gICAgIHNwYW4ge1xyXG4vLyAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuLy8gICAgICAgICB0b3A6IC0xcHg7XHJcbi8vICAgICAgICAgd2lkdGg6IDE5cHg7IGhlaWdodDogMThweDtcclxuLy8gICAgICAgICBtYXJnaW46IDAgMnB4O1xyXG4vLyAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvc3Rhci5zdmcpIG5vLXJlcGVhdDtcclxuLy8gICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgICAgJi5hY3RpdmUge1xyXG4vLyAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25zL3N0YXItYWN0aXZlLnN2Zykgbm8tcmVwZWF0O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gfVxyXG5cclxuXHJcblxyXG5cclxuLmxpbmsge1xyXG5cclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiBsaCgyNywgMjApO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgXHJcbiAgICB9XHJcbiAgICAmX19tb3JlIHtcclxuICAgICAgICAuY2xvc2VfdCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLm9wZW5lZCAub3Blbl90IHtcclxuICAgICAgICAgICAgZGlzcGxheTpub25lXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYub3BlbmVkIC5jbG9zZV90IHtcclxuICAgICAgICAgICAgZGlzcGxheTpibG9ja1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweFxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAuY29udGVudF9fdG9nZ2xlIHtcclxuLy8gICAgID4gKiB7XHJcbi8vICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuLy8gICAgIH1cclxuLy8gICAgICYgPiA6bnRoLWNoaWxkKDEpLFxyXG4vLyAgICAgJiA+IDpudGgtY2hpbGQoMikge1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4vLyAgICAgfVxyXG4vLyAgICAgJi5vcGVuZWQgPiAqIHtcclxuLy8gICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4vLyAgICAgfVxyXG4vLyAgICAgJi0tbW9iaWxlIHtcclxuLy8gICAgICAgICA+ICoge1xyXG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4vLyAgICAgICAgID4gKiB7XHJcbi8vICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgJiA+IDpudGgtY2hpbGQoMSkge1xyXG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gfVxyXG5cclxuLm5hdnMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIHVsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICB9XHJcbiAgICBsaSB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxNnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTdlYWZlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMCAkcGQtY29udGFpbmVyIDVweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xKiRwZC1jb250YWluZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzNweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmN1cnJlbnQsXHJcbiAgICAgICAgICAgICYuY3VycmVudC1jYXQge1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnaW5hdGlvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgJl9fY291bnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnNjcm9sbHRvcCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDUwcHg7IHJpZ2h0OiA4NnB4O1xyXG4gICAgei1pbmRleDogOTk7XHJcbiAgICB3aWR0aDogODBweDsgaGVpZ2h0OiA4MHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTsgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIH1cclxuICAgICZfX2Fycm93IHtcclxuICAgICAgICB3aWR0aDogNjIlOyBoZWlnaHQ6IDYyJTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgJjo6YWZ0ZXIsICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjNTMzYjk5IDAlLCAjMTc1ZWI1IDEwMCUpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ2JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICY6aG92ZXIgJl9fYXJyb3cge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcclxuICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAdXNlIFwic2FzczptYXRoXCI7XHJcblxyXG5AbWl4aW4gaW5wdXQtcGxhY2Vob2xkZXIoJGNsYXNzLCAkY29sb3IsICRvcGFjaXR5OjAuNikge1xyXG4gICAgI3skY2xhc3N9Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW8taW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXJ7IGNvbG9yOiAkY29sb3I7b3BhY2l0eTogJG9wYWNpdHk7fVxyXG4gICAgI3skY2xhc3N9Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXJ7ICBjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyeyAgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc30gaW5wdXQtcGxhY2Vob2xkZXIgeyAgY29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbiAgICAjeyRjbGFzc306OnBsYWNlaG9sZGVyIHtjb2xvcjogJGNvbG9yO29wYWNpdHk6ICRvcGFjaXR5O31cclxuICAgICN7JGNsYXNzfTpwbGFjZWhvbGRlci1zaG93biB7Y29sb3I6ICRjb2xvcjtvcGFjaXR5OiAkb3BhY2l0eTt9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gYWJzLWFsbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbkBtaXhpbiBhYnMtY2VudGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTsgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKVxyXG59XHJcblxyXG5AbWl4aW4gcGhvdG8tY292ZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBsaCgkbGgsICRmcykge1xyXG4gICAgQHJldHVybiAje21hdGguZGl2KCRsaCwgJGZzKX07XHJcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuc3dpcGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uc3dpcGVyIHtcclxuXHJcbn1cclxuLnN3aXBlci1zbGlkZSB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuLnN3aXBlci1wYWdpbmF0aW9uIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcclxuICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICYtYnVsbGV0IHtcclxuICAgIG1hcmdpbjogMCAycHggIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiA4cHg7IGhlaWdodDogOHB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogI2U3ZWFmZTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgICYtYWN0aXZlIHtcclxuICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM3YTU3ZTEgMCUsICM0NjhhZGQgMTAwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxufVxyXG4uc3dpcGVyLWJ1dHRvbiB7XHJcbiAgICB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHRvcDogYXV0bzsgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMjRweDtcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmljb24ge1xyXG4gICAgICB3aWR0aDogOTAlO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciAuaWNvbiB7XHJcbiAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgICYtbmF2IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IDAgLTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnN3aXBlci1zY3JvbGxiYXIge1xyXG4gIGJhY2tncm91bmQ6IG5vbmUgO1xyXG59XHJcblxyXG5cclxuXHJcbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5mb3Jtc1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuQGluY2x1ZGUgaW5wdXQtcGxhY2Vob2xkZXIoJy5pbnB1dCcsICM5MmEzYzUsIDEpO1xyXG5cclxuLmlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxyXG4uaW5wdXQ6Zm9jdXM6Oi1vLWlucHV0LXBsYWNlaG9sZGVyIHsgIGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XHJcbi5pbnB1dDpmb2N1czo6LW1vei1pbnB1dC1wbGFjZWhvbGRlciB7ICBjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxyXG4uaW5wdXQ6Zm9jdXM6LW1vei1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiB0cmFuc3BhcmVudDsgb3BhY2l0eTogMDt9XHJcbi5pbnB1dDpmb2N1czo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6IHRyYW5zcGFyZW50OyBvcGFjaXR5OiAwO31cclxuLmlucHV0OmZvY3VzOmlucHV0LXBsYWNlaG9sZGVyIHtjb2xvcjogdHJhbnNwYXJlbnQ7IG9wYWNpdHk6IDA7fVxyXG5cclxuaW5wdXRbcGxhY2Vob2xkZXJdICAgICAgICAgIHt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO31cclxuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIgICAgIHt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO30gXHJcbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIgICAgICB7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt9IFxyXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7fVxyXG5cclxuXHJcblxyXG5cclxuaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT10ZWxdLCBidXR0b24geyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7fVxyXG5cclxuLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmZvcm0ge1xyXG4gICAgJl9fcm93IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fcG9saWN5IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogOTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDRweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10IHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXNxIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luOiAzcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgICAgIC8vIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAmOmhvdmVyICYtc3Ege1xyXG4gICAgICAgICAgICAgICAgLy8gYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmIDpjaGVja2VkICsgJi1zcSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWJzLWFsbDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9jaGVjay5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJiBpbnB1dC5lcnJvciArICYtc3Ege1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1lcnJvcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJiBpbnB1dC5pcy1pbnZhbGlkIH4gJi10IHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1lcnJvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53cGNmNy1zcGlubmVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5pbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNjVweDtcclxuICAgIHBhZGRpbmc6IDAgMzVweDtcclxuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgICBmb250LXNpemU6IDIwcHg7IGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgIH1cclxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xyXG4gICAgICAgIC8vIGJvcmRlci1jb2xvcjogJGNvbG9yLWFjY2VudDtcclxuICAgIH1cclxuICAgICYuZXJyb3IsICYuaXMtaW52YWxpZCB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItZXJyb3I7XHJcbiAgICAgICAgLy8gY29sb3I6ICRjb2xvci1lcnJvcjtcclxuICAgICAgICBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlcignJicsICRjb2xvci1lcnJvciwgMSk7XHJcbiAgICB9XHJcbiAgICAmX19lcnJvciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTAwJTsgbGVmdDogMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZXJyb3I7XHJcbiAgICAgICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG4gICAgICAgIFtjbGFzcyo9J2NvbC0nXSA+ICYge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5lcnJvciB+ICZfX2Vycm9yIHtcclxuICAgICAgICBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAxNnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxufVxyXG50ZXh0YXJlYS5pbnB1dCB7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgcGFkZGluZy10b3A6IDE2cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuICAgIHJlc2l6ZTogbm9uZTtcclxuICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAmLmgtLXNtIHtcclxuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgfVxyXG4gICAgJi5oLS1tZCB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgIH1cclxuICAgICYuaC0tbGcge1xyXG4gICAgICAgIGhlaWdodDogMjQwcHg7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIHBhZGRpbmc6IDAgNDBweDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xyXG4gICAgZm9udC1zaXplOiAxOHB4OyBjb2xvcjogI2ZmZjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAmOjphZnRlciwgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzdhNTdlMSAwJSwgIzQ2OGFkZCAxMDAlKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7IHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzUzM2I5OSAwJSwgIzE3NWViNSAxMDAlKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLS1iZCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM3YTU3ZTEsICM0NjhhZGQpO1xyXG4gICAgICAgICAgICAtd2Via2l0LW1hc2s6IFxyXG4gICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCkgY29udGVudC1ib3gsIFxyXG4gICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7XHJcbiAgICAgICAgICAgIG1hc2s6IFxyXG4gICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCkgY29udGVudC1ib3gsIFxyXG4gICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7XHJcbiAgICAgICAgICAgIC13ZWJraXQtbWFzay1jb21wb3NpdGU6IHhvcjtcclxuICAgICAgICAgICAgbWFzay1jb21wb3NpdGU6IGV4Y2x1ZGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XHJcbiAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtLWJkOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLW1kIHtcclxuICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICB9XHJcbiAgICAmLS13YWxsIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgJi0tbWQge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDU4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgICAmLS12aWV3LW0ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgIC8vIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAvLyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlN2VhZmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLS1tZCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0td2FsbC1tIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbnBvcHVwXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ucG9wdXAge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwOyBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTUuNXB4KTtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxNS41cHgpO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgJi5vcGVuZWQge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgICAmX19iZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDY0MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICBib3gtc2hhZG93OiA4cHggOHB4IDhweCAwIHJnYmEoNDYsIDgzLCAxNTcsIDAuMSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgI2RjYzlmYiAwJSwgI2NlYzlmOSAzOS40NiUsIHJnYmEoMTgzLCAyMDcsIDI1MywgMC44KSA2Ni44MyUsICNjOWQ3ZjggMTAwJSk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWluLWhlaWdodDogNTAwcHg7XHJcbiAgICB9XHJcbiAgICAmX19jbG9zZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAyMHB4OyB0b3A6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGNvbG9yOiAjN0E1N0UxO1xyXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ib2R5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDY2JTsgaGVpZ2h0OiA2NiU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYm9keSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmX19oZWFkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wb2x5c2FucztcclxuICAgICAgICAucG9wdXAtLXRoYW5rICYge1xyXG4gICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIC5wb3B1cC0tdGhhbmsgJiB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLWxnKSB7XHJcbiAgICAgICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2hlYWQge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgICAgLy8gcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICAgICAgLy8gcGFkZGluZzogODBweCAkcGQtY29udGFpbmVyIDMwcHg7XHJcbiAgICAgICAgICAgIC8vIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgLy8gdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgLy8gaGVpZ2h0OiBjYWxjKHZhcigtLXZoKSAqIDEwMCk7XHJcbiAgICAgICAgICAgIC8vIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMnB4IDIwcHg7XHJcbiAgICAgICAgICAgIC5wb3B1cC0tdGhhbmsgJiB7XHJcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2Nsb3NlIHtcclxuICAgICAgICAgICAgdG9wOiAxM3B4OyByaWdodDogMTNweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbnRybyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIFxyXG59XHJcblxyXG5cclxuXHJcbi5jb29raWUge1xyXG4gICAgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBib3R0b206IDEwcHg7IHJpZ2h0OiAxMHB4O1xyXG4gICAgei1pbmRleDogOTk7XHJcbiAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxNS41cHgpO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE1LjVweCk7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICBtYXgtd2lkdGg6IDgyMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMjBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5vcGVuZWQge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgICAmX19idXR0b25zIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuLS1iZzpob3ZlciB7XHJcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICM1QTUzNEU7XHJcbiAgICAgICAgICAgIC8vIGJvcmRlci1jb2xvcjogIzVBNTM0RTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM1MnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBnYXA6IDE4cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDI4MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICAmX19idXR0b25zIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyAuYnRuIHtcclxuICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuaGVhZGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uaGVhZGVyIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlOyB0b3A6IDIzcHg7XHJcbiAgICB6LWluZGV4OiA5OTtcclxuICAgICZfX2lubmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDc4cHg7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhYnMtYWxsO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxNS41cHgpO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTUuNXB4KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDkwcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19zbmFtZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fbG9nbywgXHJcbiAgICAuY3VzdG9tLWxvZ28tbGluayB7XHJcbiAgICAgICAgLy8gbWF4LXdpZHRoOiAxNTBweDtcclxuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIC8vIG1heC1oZWlnaHQ6IDU4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX21lbnUge1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICAgICBcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDsgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAvLyB3aWR0aDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTs7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM3YTU3ZTEgMCUsICM0NjhhZGQgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM3YTU3ZTEgMCUsICM0NjhhZGQgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xyXG4gICAgICAgICAgICAgICAgPiBhOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDExcHg7IGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvZHJvcC1tZW51LnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmN1cnJlbnQtbWVudS1pdGVtIGE6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2Ryb3AtbWVudS1hY3RpdmUuc3ZnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc3ViLW1lbnUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAvLyB0b3A6IDEwMCU7XHJcbiAgICAgICAgICAgIHRvcDogNjBweDtcclxuICAgICAgICAgICAgbGVmdDogLTIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMmYyZjI7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE1LjVweCk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxNS41cHgpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICYgKyBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGk6aG92ZXIgLnN1Yi1tZW51IHtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJl9fbGFuZyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgJi1jdXJyZW50IHtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvcGxhbmV0LnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5vcGVuZWQgJi1jdXJyZW50IHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYub3BlbmVkICYtY3VycmVudCAuaWNvbiB7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtb3BlbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDsgdG9wOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1kcm9wIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDYwcHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTZweCAyNnB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxNS41cHgpO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTUuNXB4KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50IHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJiArIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGkgYSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAvLyBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMjBweCk7XHJcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHdpZHRoOiAwOyBcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOztcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGkuY3VycmVudCBhLFxyXG4gICAgICAgICAgICBsaS5jdXJyZW50LWxhbmcgYSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM3YTU3ZTEgMCUsICM0NjhhZGQgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciAmLWRyb3AsXHJcbiAgICAgICAgJi5vcGVuZWQgJi1kcm9wIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYnVyZ2VyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gJl9fbG9nbyxcclxuICAgICAgICAvLyAuY3VzdG9tLWxvZ28tbGluayB7XHJcbiAgICAgICAgLy8gICAgIGltZyB7XHJcbiAgICAgICAgLy8gICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAmX19tZW51IHtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19sYW5nIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyAmX19sb2dvIHtcclxuICAgICAgICAvLyAgICAgaW1nIHtcclxuICAgICAgICAvLyAgICAgICAgIG1heC1oZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAvLyB9XHJcbiAgICAgICAgJl9fbWVudSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2xhbmcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXJnZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29ucy9idXJnZXIuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMjBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbG9nbyxcclxuICAgICAgICAuY3VzdG9tLWxvZ28tbGluayB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzZweDtcclxuICAgICAgICAgICAgICAgIC8vIG1heC1oZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmF2Zml4JzsiLCIubmF2Zml4IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IGNhbGModmFyKC0tdmgpICogMTAwKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICNiNWM1ZmEgMCUsICNlYmNiZjcgMTAwJSk7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDAgNTBweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICYub3BlbmVkIHtcclxuICAgICAgICBvcGFjaXR5OiAxOyB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgJl9fYm94IHtcclxuICAgIFxyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgfVxyXG4gICAgJl9faGVhZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAmX19jbG9zZSB7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGNvbG9yOiAjN0E1N0UxO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJvZHk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogNzAlOyBoZWlnaHQ6IDcwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZGRkZGRjY2O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGdhcDogMCAxMHB4O1xyXG4gICAgICAgICAgICAmICsgbGkge1xyXG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm9wZW5lZCA+IGEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdWwgdWwge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGRkZGRkY2NjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDBweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgJi5vcGVuZWQge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRvZ2dsZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAvLyB0b3A6IDBweDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYm9keTtcclxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgbGVmdDogNXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICY6OmFmdGVyLCAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2Ryb3AtbWVudS5zdmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgaGVpZ2h0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMjtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9kcm9wLW1lbnUtYWN0aXZlLnN2Zyk7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGkub3BlbmVkID4gJiB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19sYW5nIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgIC5oZWFkZXJfX2xhbmctb3BlbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaGVhZGVyX19sYW5nLWRyb3B7XHJcbiAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLm9wZW5lZCAuaGVhZGVyX19sYW5nLWRyb3Age1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuXHJcbiAgICBcclxuICAgIH1cclxufSIsIlxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuZm9vdGVyXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZm9vdGVyIHtcclxuICAgICZfX3NiZyB7XHJcbiAgICAgICAgLy8gbWF4LXdpZHRoOiAkd2lkdGgtY29udGFpbmVyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggNTBweCAwIDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9mb290ZXItYmcuanBnKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMjRweCAyOHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGdhcDogMzBweDtcclxuICAgIH1cclxuICAgICZfX2xlZnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuICAgICZfX3NuYW1lIHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fbG9nbyxcclxuICAgIC5jdXN0b20tbG9nby1saW5rIHtcclxuICAgICAgICAvLyBtYXgtd2lkdGg6IDE1MHB4O1xyXG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDU4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgLy8gbWF4LWhlaWdodDogNThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19jb250YWN0cyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAmX190bmFtZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wb2x5c2FucztcclxuICAgICAgICBmb250LXNpemU6IDE2MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyAgICAgICAgXHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW1nIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDsgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMiUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgLy8gbWluLXdpZHRoOiAxNjdweDtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAyMHB4O1xyXG4gICAgICAgICAgICAmICsgbGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgICAgXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gd2lkdGg6IDA7IFxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXI6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvLyAmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xyXG4gICAgICAgICAgICAvLyAgICAgYTo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAvLyAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICAvLyAgICAgICAgIHdpZHRoOiAxMXB4OyBoZWlnaHQ6IDZweDtcclxuICAgICAgICAgICAgLy8gICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2Ryb3AtbWVudS5zdmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgICAgIC8vICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gICAgICAgICAgICAvLyAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgICAgICAvLyAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSBhOjphZnRlciB7XHJcbiAgICAgICAgICAgIC8vICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9kcm9wLW1lbnUtYWN0aXZlLnN2Zyk7XHJcbiAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdWItbWVudSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgIGNvbG9yOiAjNzU3NWFhO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxNXB4IDMwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIH1cclxuICAgICZfX2xhbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbnMvcGxhbmV0LTIuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19zYmcge1xyXG4gICAgICAgICAgICAvLyBtYXJnaW46IDAgMjRweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAzMHB4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29udGFjdHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZW51IHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAmICsgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdG5hbWUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBnYXA6IDE1cHg7XHJcbiAgICAgICAgICAgICYtaW1nIHtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICZfX3NiZyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvZm9vdGVyLWJnLXQuanBnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweCAyMHB4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY29udGFjdHMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWVudSB7XHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIGNvbHVtbnM6IDI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDI3cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgICAgICAgICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYTo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOHB4OyBoZWlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdG5hbWUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDc4cHg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgJi1pbWcge1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYm90dG9tIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX3NiZyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvZm9vdGVyLWJnLW0uanBnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAzMHB4IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgIFxyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2NvbnRhY3RzIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RuYW1lIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCJpbmMvY29yZVwiO1xyXG5cclxuQGltcG9ydCBcImZvbnRzXCI7XHJcbkBpbXBvcnQgXCJyZXNldFwiO1xyXG5AaW1wb3J0IFwiY29tbW9uXCI7XHJcbkBpbXBvcnQgXCJsaWJzXCI7XHJcbkBpbXBvcnQgXCJmb3Jtc1wiO1xyXG5AaW1wb3J0IFwicG9wdXBcIjtcclxuQGltcG9ydCBcImhlYWRlclwiO1xyXG5AaW1wb3J0IFwiZm9vdGVyXCI7XHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5oZXJvIHtcclxuICAgIC0tZGg6IDIyNHB4O1xyXG4gICAgLS1iZHI6IDUwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgcGFkZGluZzogMTUwcHggMCAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS1kaCkpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1iZHIpIHZhcigtLWJkcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI2I1YzVmYSAwJSwgI2ViY2JmNyAxMDAlKTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgIH1cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDcycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXBvbHlzYW5zO1xyXG4gICAgICAgIG1heC13aWR0aDogMTEwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICYuZnMtLW1kIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA2NHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ludHJvIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDcxNXB4O1xyXG4gICAgICAgIG1hcmdpbjogOHB4IGF1dG8gMDtcclxuICAgIH1cclxuICAgICZfX2J1dHRvbnMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYm90dG9tIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgICZfX3RhZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDhweCAxMHB4IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1OXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDIycHg7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIGFuaW1hdGlvbjogbW92ZV91cF9kb3duIDIuNXMgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgICAgICYudGFnLS1yaWdodCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDhweDtcclxuICAgICAgICAgICAgLnRhZy1tIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudGFnLW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMzlweDsgaGVpZ2h0OiAzOXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0Y0RjRGNDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIxcHg7IGhlaWdodDogMjFweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFicy1jZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Y2ZjZmNjtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzdhNTdlMSAwJSwgIzQ2OGFkZCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS0xIHtcclxuICAgICAgICAgICAgdG9wOiAyOSU7IHJpZ2h0OiA1NSU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS0yIHtcclxuICAgICAgICAgICAgdG9wOiA1JTsgbGVmdDogNTAlOyBhbmltYXRpb24tZGVsYXk6IDAuM3M7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS0zIHtcclxuICAgICAgICAgICAgdG9wOiA0MCU7IGxlZnQ6IDU4JTsgYW5pbWF0aW9uLWRlbGF5OiAwLjhzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnRhZy0tNCB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMjAlOyByaWdodDogNTIlOyBhbmltYXRpb24tZGVsYXk6IDAuNXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgICZfX3RuYW1lIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDsgYm90dG9tOiAyMzBweDtcclxuICAgICAgICBib3R0b206IHZhcigtLWRoKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcG9seXNhbnM7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAqOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faW1nIHtcclxuICAgICAgICB3aWR0aDogNTM4cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgXHJcbiAgICAgICAgYW5pbWF0aW9uOiBoZXJvX2ltZyA1LjVzIGluZmluaXRlIGxpbmVhcjtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHsgICAgICAgICAgICBcclxuICAgICAgICAtLWRoOiAxNjBweDtcclxuICAgICAgICAtLWJkcjogMzBweDtcclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjRweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA3OTJweDtcclxuICAgICAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1NnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ludHJvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDc1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RhZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCA2cHggOHB4IDE1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgICAgICAmLnRhZy0tcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHggOHB4IDZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGFnLW0ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7IGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RuYW1lIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMDBweDtcclxuICAgICAgICAgICAgbGVmdDogLTEwcHg7IHJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgIC0tZGg6IDU1cHg7XHJcbiAgICAgICAgLS1iZHI6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIyMHB4O1xyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU5MHB4O1xyXG4gICAgICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU5MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19ib3R0b20ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDM1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgLS1kaDogMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE0NHB4IDAgNzBweDtcclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDg1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RuYW1lIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAwcHg7IHJpZ2h0OiAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGFnIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggNHB4IDZweCA4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICYudGFnLS1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50YWctbSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTFweDsgaGVpZ2h0OiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50YWctLTEge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50YWctLTIge1xyXG4gICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87IHJpZ2h0OiAzMHB4OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnRhZy0tMyB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnRhZy0tNCB7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uc2VydmljZXMge1xyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICBncmlkLWdhcDogMzBweDtcclxuICAgICAgICAmLmdhcC0tbWQge1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogMjcwcHggMzhweCAzOHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgJi1pbWcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MyU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE1JSwgLTMwJSk7XHJcbiAgICAgICAgICAgIC8vIGxlZnQ6IDM4cHg7XHJcbiAgICAgICAgICAgIC8vIGhlaWdodDogMjU2cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAmOmhvdmVyICYtaW1nIGltZyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNWRlZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1ib3R0b20ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgdGV4dC13YXJwOiBiYWxhbmNlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyICYtYnRuYXJyIHtcclxuICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJl9faXRlbXNpYiB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAyNHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbWliIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDE4MHB4IDMwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwOyByaWdodDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDMyOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwNHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIHRleHQtd2FycDogYmFsYW5jZTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciAmLWJ0bmFyciB7XHJcbiAgICAgICAgICAgIC8vIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0M3B4IDAgMjBweCAyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4XHJcbiAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAmX19pdGVtaWIge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAxNjBweCAyMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWJ0bmFyciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDIwcHg7IHJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7IGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDExN3B4IDE2cHggMTZweCAxNnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0yNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYm90dG9tIHtcclxuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICZfX2l0ZW1zaWIge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbWliIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUzMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExNHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE3MHB4O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA5OHB4O1xyXG4gICAgICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIxMHB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtODBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgXHJcbiAgICAgICAgJl9faXRlbWliIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZnVydGhlciB7XHJcbiAgICAmX19zYmRyIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICB3aWR0aDogJHdpZHRoLWNvbnRhaW5lcjsgXHJcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwOyBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00OCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig1Ni41cHgpO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogODY0cHg7IFxyXG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDclLCAyOCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxMCwgMjIxLCAyNTEsIDAuOCk7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig1Ni41cHgpO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGdhcDogNTZweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogNTI4cHg7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNDBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkOm50aC1jaGlsZCg0bi0xKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLW51bWJlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0OHB4OyBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ib2R5O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faW1nYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHZpZGVvIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faWNvbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGFuaW1hdGlvbjogbW92ZV91cF9kb3duIDIuNXMgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgICAgIG1heC13aWR0aDogMTE1cHg7XHJcbiAgICAgICAgJi5pY29uLTEge1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmljb24tMiB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTcwcHg7XHJcbiAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjlzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmljb24tMyB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA1MCU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogNThweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNDBweDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmljb24tNCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgYm90dG9tOiAxMTVweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMzNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdhcDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzkycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZ2JnIHtcclxuICAgICAgICAgICAgLy8gYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pY29uIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDVweDtcclxuICAgICAgICAgICAgJi5pY29uLTEge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5pY29uLTIge1xyXG4gICAgICAgICAgICAgICAgdG9wOiA3NXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuaWNvbi0zIHtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5pY29uLTQge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMjVweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ2FwOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLW51bWJlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ljb24ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDZweDtcclxuICAgICAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbnVtYmVyIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7IGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLndlaGVscCB7XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDExMDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTk3ZGVnLCByZ2JhKDI0OCwgMjQ5LCAyNTMsIDAuMykgMzAlLCByZ2JhKDIzNiwgMjMzLCAyNTUsIDAuNikgNjAuNDYlLCByZ2JhKDIwMywgMjE3LCAyNTUsIDAuOCkgODAuNzYlLCAjZDFkNGZmIDEwMCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDMyMHB4OyBoZWlnaHQ6IDMyMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWluZm8ge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1idXR0b25zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZ2FwOiAyMHB4IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE5MHB4OyBoZWlnaHQ6IDE5MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgJi1idXR0b25zIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTZweDtcclxuICAgICAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTYwcHg7IGhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4udHJ1c3Qge1xyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDMwcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI4cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogNTJweDsgaGVpZ2h0OiA1MnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjZTdlYWZlIDAlLCAjZTZlOWZlIDEwMCUpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbmFtZSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wb2x5c2FucztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2l0ZW0tbG9nbyB7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IDIzM3B4O1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAmLW5hbWUge1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbS1sb2dvIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgJl9fY2Fyb3VzZWwge1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaW5pdGlhbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgJi1uYW1lIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtLWxvZ28ge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLndlb2ZmZXIge1xyXG4gICAgJl9fc2JkciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2U2ZTlmZTtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICB3aWR0aDogMTQ4MHB4OyBoZWlnaHQ6IDc0OHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNjAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDgsIDI0OSwgMjUzLCAwLjQpO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNTYuNXB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBnYXA6IDQwcHggNTZweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogNTI4cHg7XHJcbiAgICAgICAgcGFkZGluZzogNDBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgICAgICAmOm50aC1jaGlsZCgybikge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCg0biAtIDEpIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MHB4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE3MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1udW1iZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDsgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYm9keTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ltZ2JnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB2aWRlbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4NHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0biAtIDEpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTBweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBpbml0aWFsICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtbnVtYmVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbWdiZyB7XHJcbiAgICAgICAgICAgIC8vIGJvdHRvbTogMTI0cHg7XHJcbiAgICAgICAgICAgIC8vIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgLy8gaW1nIHtcclxuICAgICAgICAgICAgLy8gICAgIG1heC13aWR0aDogNzIwcHg7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uY29uc3VsdCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAmX19pbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMzA2cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE5NXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5wcm9tbyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4taGVpZ2h0OiA3MjBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMTAwcHggMCAxMDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICNiNWM1ZmEgMCUsICNlYmNiZjcgMTAwJSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDUwcHggNTBweDtcclxuICAgICYtLW5hdiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xyXG4gICAgfVxyXG4gICAgJi0tZGV0YWlsIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIH1cclxuICAgICYtLWJnaGVhZCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMjZweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHdpZHRoOiA4NjdweDsgaGVpZ2h0OiA4NjdweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDsgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTQ1JSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDE5OSwgMjA1LCAyMjYsIDAuNSk7XHJcbiAgICAgICAgZmlsdGVyOiBibHVyKDgxLjVweCk7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgd2lkdGg6IDM5MHB4OyBoZWlnaHQ6IDM5MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDsgdG9wOiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDMwJSwgLTQ1JSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZGFjN2ZhO1xyXG4gICAgICAgIGZpbHRlcjogYmx1cigzMDBweCk7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICB9XHJcbiAgICAmLS1kZXRhaWw6OmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IDE0MDBweDsgaGVpZ2h0OiAzODdweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjRDFDRUY5O1xyXG4gICAgICAgIGxlZnQ6IDUwJTsgdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgJl9fYmdpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbWctbGVmdCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDsgYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaW1nLXJpZ2h0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NTVweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDsgYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3RhZyB7XHJcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA4cHg7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgNDBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICYubWItLWxnIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi50YWctLWFib3V0IHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyNDZweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTQwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXBvbHlzYW5zO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNzJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAmLm13IHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA4NzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDY0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faW50cm8ge1xyXG4gICAgICAgIG1hcmdpbjogMTZweCBhdXRvIDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5NjNweDtcclxuICAgICAgICAmLm13IHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA3NjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19idXR0b25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgJl9fbnVtYmVycyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luOiA0NXB4IGF1dG8gMDtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDgsIDI0OSwgMjUzLCAwLjIpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRudW1iIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICYtdmFsIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXBvbHlzYW5zO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDcycHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uYXYge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiA1MCU7IGJvdHRvbTogNzBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gICAgICAgIG1heC13aWR0aDogMTE3N3B4O1xyXG4gICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjQ5LCAyNTMsIDAuMik7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggNTBweDtcclxuICAgICAgICBcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIC8vIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHdpZHRoOiAwOyBcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOztcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5jdXJyZW50IGEsXHJcbiAgICAgICAgICAgICYuY3VycmVudC1jYXQgYSB7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzdhNTdlMSAwJSwgIzQ2OGFkZCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAzMHB4IDMwcHg7XHJcbiAgICAgICAgJi0tZGV0YWlsIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMzgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtLWJnaGVhZCB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RhZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgJi50YWctLWFib3V0IHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA2NHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXR0b25zIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbnVtYmVycyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0bnVtYiB7XHJcbiAgICAgICAgICAgICYtdmFsIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19iZ2ltZyB7ICAgICAgICBcclxuICAgICAgICAgICAgLmltZy1sZWZ0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTUlLCAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaW1nLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNSUsIDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMjBweCAyMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDgyNXB4O1xyXG4gICAgICAgICYtLW5hdiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0tZGV0YWlsIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMzYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU5MHB4O1xyXG4gICAgICAgICAgICAmLmZzLS1tZCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW50cm8ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU5MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19idXR0b25zIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbnVtYmVycyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdG51bWIge1xyXG4gICAgICAgICAgICAmLXZhbCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbmF2IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgYm90dG9tOiAxMDBweDtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgIFxyXG4gICAgICAgICYtLW5hdiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbmF2IHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYmdpbWcgeyAgICAgICAgXHJcbiAgICAgICAgICAgIC5pbWctbGVmdCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE1JSwgMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmltZy1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUlLCAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNzAwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTQwcHggMDtcclxuICAgICAgICAmLS1kZXRhaWw6bm90KC5wcm9tby0tYmdoZWFkKSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTIwcHggMCAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaW5pdGlhbDtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLS1iZ2hlYWQge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmgtYXV0by1tIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wcm9tby0tYWJvdXQge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTQ0cHggMCAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19oYmcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogOTZweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI2I1YzVmYSAwJSwgI2ViY2JmNyAxMDAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDIwcHggMjBweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1OTBweDsgaGVpZ2h0OiAxNjBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogYXV0bzsgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgOTZweCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2QxY2VmOTtcclxuICAgICAgICAgICAgICAgIGZpbHRlcjogYmx1cigxMDBweCk7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGFnIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgJi5mcy0tbWQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ludHJvIHtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX251bWJlcnMge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRudW1iIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjQ4LCAyNDksIDI1MywgMC4yKTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTZweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMnB4O1xyXG4gICAgICAgICAgICAmLXZhbCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDc1cHg7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2JnaW1nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNjYycHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi52YWx1ZXMge1xyXG4gICAgJl9fc2JkciB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgd2lkdGg6ICR3aWR0aC1jb250YWluZXI7IFxyXG4gICAgICAgICAgICBoZWlnaHQ6IDM4M3B4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNDglKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNTYuNXB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ5MHB4OyBcclxuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7IHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMCUsIDI4JSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkYWM3ZmE7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cigzMHB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICBnYXA6IDQzcHg7XHJcbiAgICB9XHJcbiAgICAmX19pdGhlYWQge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICYuaXRlbS0tZW1wdHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBpbml0aWFsO1xyXG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGluaXRpYWw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZDpudGgtY2hpbGQoNG4tMSkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLW51bWJlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0OHB4OyBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ib2R5O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faW1nYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZ2JnIHtcclxuICAgICAgICAgICAgYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLW51bWJlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAyMHB4O1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICAmLW51bWJlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4udGVhbSB7XHJcbiAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDI0cHg7XHJcbiAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICZfX3dyYXAge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ0OHB4O1xyXG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwOyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTk3ZGVnLCByZ2JhKDI0OCwgMjQ5LCAyNTMsIDAuMykgMCUsIHJnYmEoMjM2LCAyMzMsIDI1NSwgMC42KSAzOS40NiUsIHJnYmEoMjAzLCAyMTcsIDI1NSwgMC44KSA2Ni43NiUsICNkMWQ0ZmYgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJydcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBob3RvLWNvdmVyO1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaW5mbyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcclxuICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgID4gKiArICoge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgICAgICAgICZfX3dyYXAge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzOTNweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaW5mbyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgID4gKiArICoge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICAgICAgJl9fd3JhcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE3MXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDsgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICZfX3dyYXAge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWluZm8ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwOHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAxNnB4IDE2cHggMTIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1idG5hcnIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDBweDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5vcGVuZWQgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEycHggMCAxNnB4XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1vcGVuIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFicy1hbGw7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLnN1cHBvcnRpbmcge1xyXG4gICAgJl9fc2JkciB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgd2lkdGg6ICR3aWR0aC1jb250YWluZXI7IFxyXG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMzAlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNTYuNXB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBnYXA6IDM2cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0NDhweDtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDgsIDI0OSwgMjUzLCAwLjQpO1xyXG4gICAgICAgICY6bnRoLWNoaWxkKDRuLTMpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDk3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDRuLTIpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA5N3B4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzOXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ltZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMyUpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHdpZHRoOiA2MTZweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYWJzLWNlbnRlcjtcclxuICAgICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2FkYzZmZjtcclxuICAgICAgICAgICAgZmlsdGVyOiBibHVyKDU2LjVweCk7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtNTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBnYXA6IDYwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xyXG4gICAgICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNSUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9fc2JkciB7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODE2cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDkyN3B4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTI1JSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICBnYXA6IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gMjVweCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzk0cHg7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX3NiZHIge1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMzUlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDI1cHg7XHJcbiAgICB9XHJcbiAgICAmX193ZWhlbHAge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmM2Y2ZmE7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwYWRkaW5nOiA1MHB4IDc4cHggNTBweCA1MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAmLnBkLS1tZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDVweCA1NXB4IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbnMge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pbWcge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4M3B4O1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWluZm8ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX21ldGhvZHMge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2NvbnN1bHRpbmcvbWV0aG9kcy1iZy5qcGcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxuICAgICZfX2l0bWV0aG9kIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDgsIDI0OSwgMjUzLCAwLjQpO1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX193ZWhlbHAge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19tZXRob2RzIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3dlaGVscCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgJi53ZWhlbHAtLWltZyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWljb25zIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pbWcge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fbWV0aG9kcyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0bWV0aG9kIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX193ZWhlbHAge1xyXG4gICAgICAgICAgICAmLndlaGVscC0taW1nIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29ucyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19tZXRob2RzIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xKiRwZC1jb250YWluZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0bWV0aG9kIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ud2VicmluZyB7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCA1MHB4O1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1oZWFkIHtcclxuICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICBmbGV4OiAgMCAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NyU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2dldGluIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAmOjphZnRlciwgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYWJzLWFsbDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM1MzNiOTkgMCUsICMxNzVlYjUgMTAwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY4MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19nZXRpbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fZ2V0aW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgJiArICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2dldGluIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uYXBwcm9hY2gge1xyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIG1heC13aWR0aDogMTE1NnB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMjRweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwOyB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICBsaW5lYXItZ3JhZGllbnQoMTk3ZGVnLCByZ2JhKDI0OCwgMjQ5LCAyNTMsIDAuMykgNTAlLCByZ2JhKDIzNiwgMjMzLCAyNTUsIDAuNikgNjUuNDYlLCByZ2JhKDIwMywgMjE3LCAyNTUsIDAuOCkgODAuNzYlLCAjZDFkNGZmIDEwMCUpO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB9XHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDI0cHg7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNjBweDsgaGVpZ2h0OiAxNjBweDtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ3JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDsgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUzJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4OyBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4OyBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10ZXh0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmVhcm4ge1xyXG4gICAgJl9faW5uZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzODBweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZ2FwOiA2MnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmLmdhcC0tbWQge1xyXG4gICAgICAgICAgICBnYXA6IDEwMHB4IDYycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzODBweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMTZweDtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDgsIDI0OSwgMjUzLCAwLjQpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDMycHg7XHJcbiAgICAgICAgJi5pdGVtLS1tZCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDgwcHg7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCg0bi0zKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCg0bi0yKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoNG4tMyk6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbnVtYiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDsgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ib2R5O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC00MHB4OyBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgd2lkdGg6IDQ1NHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgJi50b3AtLTAge1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaW1nLS1sZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogNzAlOyBoZWlnaHQ6IDcwJTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2FkYzZmZjtcclxuICAgICAgICAgICAgZmlsdGVyOiBibHVyKDU2LjVweCk7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtNTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5pbWctLWxnOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTczLCAxOTgsIDI1NSwgMC41KTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogNTUlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBnYXA6IDU0cHggNDBweDtcclxuICAgICAgICAgICAgJi5nYXAtLW1kIHtcclxuICAgICAgICAgICAgICAgIGdhcDogNTVweCA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICAmLml0ZW0tLW1kIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzgwcHg7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0bi0zKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0bi0yKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDM2MHB4O1xyXG4gICAgICAgICAgICAmLmltZy0tbGcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDY0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgZ2FwOiA0MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIGdhcDogMTZweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICYuaXRlbS0tbWQge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG4gICAgICAgICAgICB9ICAgIFxyXG4gICAgICAgICAgICAmLml0ZW0tLW1kOm50aC1jaGlsZCg0bi0zKTpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzk1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1udW1iIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE5NXB4O1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgICYuaW1nLS1sZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzkwcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAzMHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0LXNtKSB7XHJcbiAgICAgICAgJl9fc2JkciB7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0zNSUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ2FwOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICB0cmFuc2Zvcm06IGluaXRpYWwgIWltcG9ydGFudDs7XHJcbiAgICAgICAgICAgbGVmdDogYXV0bzsgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDEwcHg7XHJcbiAgICAgICAgICAgJi5pbWctLWxnIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmNvbnRhY3RzIHtcclxuICAgICZfX2NvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAyNHB4O1xyXG4gICAgfVxyXG4gICAgJl9faW5mbyB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwYWRkaW5nOiA1MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmM2Y2ZmE7XHJcbiAgICB9XHJcbiAgICAmX19pdGVtcyB7XHJcbiAgIFxyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4OyBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19mb3JtIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgI2RjYzlmYiAwJSwgI2NlYzlmOSAzOS40NiUsIHJnYmEoMTgzLCAyMDcsIDI1MywgMC44KSA2Ni44MyUsICNjOWQ3ZjggMTAwJSk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFicy1hbGw7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZm9ybS1pbWcucG5nKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDU1JTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19mb3JtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDVweDsgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDIwcHg7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAwIDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19mb3JtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgJi1pbnB1dHMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICAgICAgICAgIGdyaWQtZ2FwOiA2cHggMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudy1hbGwge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgJl9fY29scyB7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzZweDsgaGVpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2Zvcm0ge1xyXG4gICAgICAgICAgICAmLWlucHV0cyB7XHJcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICAgICAgICAgIGdyaWQtZ2FwOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC53LWFsbCB7XHJcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogaW5pdGlhbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5iaW5mbyB7XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCA1MHB4IDExMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQyNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMS4xZnI7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDUwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgJi5wZC0tbWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDYwcHggMTEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190ZXh0IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDU5MHB4O1xyXG4gICAgICAgID4gKiArICoge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2JnaW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDsgYm90dG9tOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogNzYwcHg7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAmLmltZy0tbGcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEzMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19pbm5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAxMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19iZ2ltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjc1cHg7XHJcbiAgICAgICAgICAgICYuaW1nLS1sZyB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEzMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faW5uZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fcmlnaHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19iZ2ltZyB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMSUpO1xyXG4gICAgICAgICAgICAmLmltZy0tbGcge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBpbml0aWFsO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2lubmVyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xKiRwZC1jb250YWluZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCA0MnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2JnaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEyMCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmFyZWFzIHtcclxuICAgICZfX2l0ZW1zaWIge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICBncmlkLWdhcDogMjRweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW1pYiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAxOTBweCAzMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDIwcHg7XHJcbiAgICAgICAgJi1pbWcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMjhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMDRweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLXRleHQge1xyXG4gICAgICAgICAgICB0ZXh0LXdhcnA6IGJhbGFuY2U7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIgJi1idG5hcnIge1xyXG4gICAgICAgICAgICAvLyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAmX19pdGVtaWIge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAxMjBweCAyMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICYtaW1nIHtcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNSUsIDM1JSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2l0ZW1zaWIge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbWliIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDM1cHg7XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IGluaXRpYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2l0ZW1pYiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxOTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZGVzaWduZWQge1xyXG4gICAgJl9fc2JkciB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgd2lkdGg6ICR3aWR0aC1jb250YWluZXI7IFxyXG4gICAgICAgICAgICBoZWlnaHQ6IDM4M3B4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDsgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNDglKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNTYuNXB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ5MHB4OyBcclxuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7IHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMCUsIDI4JSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkYWM3ZmE7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cigzMHB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgICAgICBnYXA6IDUwcHggNDBweDtcclxuICAgIH1cclxuICAgICZfX2l0aGVhZCB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogNDBweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMTBweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoNTBweCk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgJi5pdGVtLS1lbXB0eSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGluaXRpYWw7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogaW5pdGlhbDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDRuLTEpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87IFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1udW1iZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDsgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYm9keTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ltZ2JnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMjRweCAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMjYwcHg7XHJcbiAgICAgICAgICAgICYuaXRlbS0tZW1wdHkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWhlYWQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZ2JnIHtcclxuICAgICAgICAgICAgYm90dG9tOiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDI1cHggMjBweDtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgICAgICAudy1hbGwtbSB7XHJcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogIHNwYW4gMjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGhlYWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgJi53LWFsbC1tOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZ2JnIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEzNSU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMjQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAyMHB4O1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICAgICAgLnctYWxsLW0ge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGluaXRpYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0aGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMnB4O1xyXG4gICAgICAgICAgICAmLnctYWxsLW06bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5pdGVtLS1lbXB0eSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1udW1iZXIge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7IGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5jb3Vyc2VzIHtcclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDQwcHggMjRweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXI7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xyXG4gICAgICAgICAgICAmOmhvdmVyICYtcGhvdG8gaW1nIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNhdGVnb3J5IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgY29sb3I6ICM0NjhBREQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9faXRlbXMge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAyNHB4IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAgICAgICYtcGhvdG8ge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMyJTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWNhdGVnb3J5IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLWJ1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5kY291cnNlIHtcclxuICAgIC0tYmRyOiAzMHB4O1xyXG4gICAgJl9fY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBnYXA6IDI0cHg7XHJcbiAgICB9XHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1iZHIpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDUwcHg7XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1NnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICB9XHJcbiAgICAmX19hc2lkZSB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDQ0OHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJkcik7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG4gICAgJl9fcGhvdG8ge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJkcik7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXJcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbmZvIHtcclxuICAgICAgICBwYWRkaW5nOiAyNHB4IDMwcHggNDBweDtcclxuICAgIH1cclxuICAgICZfX2NhdGVnb3J5IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgIGNvbG9yOiAjNDY4YWRkO1xyXG4gICAgfVxyXG4gICAgJl9fcHJvcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAmICsgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19idXR0b25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtZGVza3RvcC1tZCkge1xyXG4gICAgICAgIFxyXG4gICAgICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19hc2lkZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMDlweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggMjBweCAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19wcm9wIHtcclxuICAgICAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgJl9fY29scyB7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYXNpZGUge1xyXG4gICAgICAgICAgICB3aWR0aDogMjU3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2luZm8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNHB4IDE2cHggMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fY2F0ZWdvcnkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19wcm9wIHtcclxuICAgICAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi1pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYXNpZGUge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgb3JkZXI6IC0xO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgbWFyZ2luOiAyNHB4IDA7XHJcbiAgICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMSokcGQtY29udGFpbmVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fYXNpZGUge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgLTEqJHBkLWNvbnRhaW5lcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9faW5mbyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggJHBkLWNvbnRhaW5lciAkcGQtY29udGFpbmVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uYmxvZyB7XHJcbiAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xyXG4gICAgICAgIGdyaWQtZ2FwOiAyNHB4O1xyXG4gICAgfVxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwaG90by1jb3ZlcjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIgJi1waG90byBpbWcge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtaGVhZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNhdGVnb3J5IHtcclxuICAgICAgICAgICAgY29sb3I6ICM0NjhBREQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtZGVzYyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtbGluayB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIC8vIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcclxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjN2E1N2UxIDAlLCAjNDY4YWRkIDEwMCUpO1xyXG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgIC8vIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgICAvLyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjN2E1N2UxO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJvZHk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICAgICAgZ3JpZC1nYXA6IDI0cHggMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzIlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtY2F0ZWdvcnkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYtYnV0dG9ucyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faXRsYXRlc3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi1waG90byB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTYwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBob3RvLWNvdmVyXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi1pbmZvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLXByb3BzIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGdhcDogNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWNhdGVnb3J5IHtcclxuICAgICAgICAgICAgY29sb3I6ICM0NjhBREQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19pdGxhdGVzdCB7XHJcbiAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICAmLXBob3RvIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLXByb3BzIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLmRibG9nIHtcclxuICAgICZfX2NvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZ2FwOiAyNHB4O1xyXG4gICAgfVxyXG4gICAgJl9fYXNpZGUge1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiA0NDhweDtcclxuICAgICAgICAvLyBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgIC8vIHRvcDogMTEwcHg7XHJcbiAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fYm9keSB7XHJcbiAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICB9XHJcbiAgICAmX19waG90byB7XHJcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvdG8tY292ZXJcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICAgICZfX3Byb3BzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuICAgIH1cclxuICAgICZfX2NhdGVnb3J5IHtcclxuICAgICAgICBjb2xvcjogIzQ2OEFERDtcclxuXHJcbiAgICB9XHJcbiAgICAmX19ib3R0b20ge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDQ4cHggLSAyNHB4KTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTdFQUZFO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1kZXNrdG9wLW1kKSB7XHJcbiAgICAgICAgJl9fY29scyB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGdhcDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fYXNpZGUge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI0cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTdFQUZFO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19ib3R0b20ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19waG90byB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3Byb3BzIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19hc2lkZSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgICYtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi5sZWFybmluZyB7XHJcbiAgICAmX19jb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGdhcDogMjhweDtcclxuICAgIH1cclxuICAgICZfX2luZm8ge1xyXG4gICAgICAgIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCAxNDBweCAyNTBweCA1MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fdGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAqICsgKiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faW1nYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7IHJpZ2h0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9faXRlbXMge1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiA1NjBweDtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XHJcbiAgICAgICAgZ3JpZC1nYXA6IDI0cHggMjBweDtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDE1MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjE0cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IC00MHB4OyBib3R0b206IC01MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZ2FwOiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDIxNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NzZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldCkge1xyXG4gICAgICAgICZfX2NvbHMge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQtc20pIHtcclxuICAgICAgICAmX19pbmZvIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDEyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMDVweCAyMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgICAgICYtaW1nIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwOyBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzNSUsIDUwJSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC1tb2JpbGUtbGcpIHtcclxuICAgICAgICAmX19jb2xzIHtcclxuICAgICAgICAgICAgZ2FwOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pdGVtcyB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgICBncmlkLWdhcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4uZ3VpZGUge1xyXG4gICAgJl9fcXVlc3Rpb25zIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XHJcbiAgICB9XHJcbiAgICAmX19xdWVzdCB7XHJcbiAgICAgICAgd2lkdGg6IDQ1JTtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDUwcHgpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1MHB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjQ5LCAyNTMsIDAuNCk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAmLWljb24ge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6IDY2cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX2ltZyB7XHJcbiAgICAgICAgd2lkdGg6IDY5M3B4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBoZWlnaHQ6IDM3MHB4O1xyXG4gICAgICAgIG1hcmdpbjogODBweCBhdXRvO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1OCU7IGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3RhZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDhweCAxMHB4IDIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1OXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDIycHg7XHJcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIGFuaW1hdGlvbjogbW92ZV91cF9kb3duIDIuNXMgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgICAgICYudGFnLS1yaWdodCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDhweDtcclxuICAgICAgICAgICAgLnRhZy1tIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudGFnLW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMzlweDsgaGVpZ2h0OiAzOXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0Y0RjRGNDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIxcHg7IGhlaWdodDogMjFweDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFicy1jZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Y2ZjZmNjtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhYnMtY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzdhNTdlMSAwJSwgIzQ2OGFkZCAxMDAlKTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS0xIHtcclxuICAgICAgICAgICAgdG9wOiAyOSU7IGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS0yIHtcclxuICAgICAgICAgICAgdG9wOiAwOyByaWdodDogMTUlOyBhbmltYXRpb24tZGVsYXk6IDAuM3M7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS0zIHtcclxuICAgICAgICAgICAgdG9wOiA1MCU7IHJpZ2h0OiAwOyBhbmltYXRpb24tZGVsYXk6IDAuOHM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGFnLS00IHtcclxuICAgICAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiAyMCU7IGFuaW1hdGlvbi1kZWxheTogMC41cztcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA3MjBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmX19iYnV0dG9ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAmX19xdWVzdCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3RhZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCA2cHggOHB4IDE1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgICAgICAgICAmLnRhZy0tcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHggOHB4IDZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGFnLW0ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7IGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICZfX2JvdHRvbSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZC10YWJsZXQpIHtcclxuICAgICAgICAmX19zYmRyIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX3F1ZXN0aW9ucyB7XHJcbiAgICAgICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fcXVlc3Qge1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICYtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190YWcge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgJi50YWctLTIge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLW1vYmlsZS1sZykge1xyXG4gICAgICAgICZfX3F1ZXN0aW9ucyB7XHJcbiAgICAgICAgICAgIGdhcDogMTNweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJl9fcXVlc3Qge1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDE4MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmX190YWcge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCA0cHggNnB4IDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgJi50YWctLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRhZy1tIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMXB4OyBoZWlnaHQ6IDExcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7IGhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnRhZy0tMSB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bzsgbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnRhZy0tMiB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudGFnLS0zIHtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudGFnLS00IHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDUlOyBib3R0b206IDEwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4ubWV0aG9kcyB7XHJcbiAgICAtLWdhcDogNDBweDtcclxuICAgICZfX2l0ZW1zIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDk4MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGdhcDogdmFyKC0tZ2FwKTtcclxuICAgIH1cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAyICogdmFyKC0tZ2FwKSkgLyAzKTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAxMzBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAmLWltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAzMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYm90dG9tIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDYyMHB4O1xyXG4gICAgICAgIG1hcmdpbjogNTBweCBhdXRvIDA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgJl9fYnRleHQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICB9XHJcbiAgICAmX19iYnV0dG9ucyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLWRlc2t0b3AtbWQpIHtcclxuICAgICAgICAtLWdhcDogMjRweDtcclxuICAgICAgICBcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtdGFibGV0KSB7XHJcbiAgICAgICAgLS1nYXA6IDIwcHg7XHJcbiAgICAgICAgJl9fYm90dG9tIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1kLXRhYmxldC1zbSkge1xyXG4gICAgICAgICZfX2l0ZW1zIHtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDE2cHggODBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgJi1pbWcge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWQtbW9iaWxlLWxnKSB7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuXHJcbiJdfQ== */
