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

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

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

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

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

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

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

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

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

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

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

.slick-slide img {
  display: block;
}

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

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

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

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

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

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

.selectric-wrapper {
  position: relative;
  cursor: pointer;
}

.selectric-responsive {
  width: 100%;
}

.selectric {
  border: 1px solid #DDD;
  border-radius: 0px;
  background: #F8F8F8;
  position: relative;
  overflow: hidden;
}

.selectric .label {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 38px 0 10px;
  font-size: 12px;
  line-height: 38px;
  color: #444;
  height: 38px;
  user-select: none;
}

.selectric .button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  width: 38px;
  height: 38px;
  line-height: 38px;
  background-color: #F8f8f8;
  color: #BBB;
  text-align: center;
  font: 0/0 a;
  *font: 20px/38px Lucida Sans Unicode, Arial Unicode MS, Arial;
}

.selectric .button:after {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-top-color: #BBB;
  border-bottom: none;
}

.selectric-focus .selectric {
  border-color: #aaaaaa;
}

.selectric-hover .selectric {
  border-color: #c4c4c4;
}

.selectric-hover .selectric .button {
  color: #a2a2a2;
}

.selectric-hover .selectric .button:after {
  border-top-color: #a2a2a2;
}

.selectric-open {
  z-index: 9999;
}

.selectric-open .selectric {
  border-color: #c4c4c4;
}

.selectric-open .selectric-items {
  display: block;
}

.selectric-disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default;
  user-select: none;
}

.selectric-hide-select {
  position: relative;
  overflow: hidden;
  width: 0;
  height: 0;
}

.selectric-hide-select select {
  position: absolute;
  left: -100%;
}

.selectric-hide-select.selectric-is-native {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.selectric-hide-select.selectric-is-native select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  border: none;
  z-index: 1;
  box-sizing: border-box;
  opacity: 0;
}

.selectric-input {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 1px !important;
  height: 1px !important;
  outline: none !important;
  border: none !important;
  *font: 0/0 a !important;
  background: none !important;
}

.selectric-temp-show {
  position: absolute !important;
  visibility: hidden !important;
  display: block !important;
}

/* Items box */
.selectric-items {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #F8F8F8;
  border: 1px solid #c4c4c4;
  z-index: -1;
  box-shadow: 0 0 10px -6px;
}

.selectric-items .selectric-scroll {
  height: 100%;
  overflow: auto;
}

.selectric-above .selectric-items {
  top: auto;
  bottom: 100%;
}

.selectric-items ul, .selectric-items li {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 20px;
  min-height: 20px;
}

.selectric-items li {
  display: block;
  padding: 10px;
  color: #666;
  cursor: pointer;
}

.selectric-items li.selected {
  background: #E0E0E0;
  color: #444;
}

.selectric-items li.highlighted {
  background: #D0D0D0;
  color: #444;
}

.selectric-items li:hover {
  background: #D5D5D5;
  color: #444;
}

.selectric-items .disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default !important;
  background: none !important;
  color: #666 !important;
  user-select: none;
}

.selectric-items .selectric-group .selectric-group-label {
  font-weight: bold;
  padding-left: 10px;
  cursor: default;
  user-select: none;
  background: none;
  color: #444;
}

.selectric-items .selectric-group.disabled li {
  filter: alpha(opacity=100);
  opacity: 1;
}

.selectric-items .selectric-group li {
  padding-left: 25px;
}

/*======================================
  Global resets
======================================*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  outline: none;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*======================================
  Global styles
======================================*/
html {
  background: #ffffff;
  box-sizing: border-box;
}

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

html, button, input, select, textarea {
  color: #8c8c8c;
}

a {
  text-decoration: none;
  transition: color 0.2s;
  font: inherit;
  color: inherit;
}

a:hover {
  text-decoration: none;
}

button {
  cursor: pointer;
}

a:focus, button:focus,
a:active, button:active {
  outline: none;
}

ul, li {
  list-style: none;
}

ol, ul {
  padding: 0;
  margin: 0;
}

img, iframe, video {
  vertical-align: middle;
}

.ir {
  display: block;
  font: 0/0 a;
  text-shadow: none;
  color: transparent;
}

.cf:before, .cf:after {
  content: " ";
  display: table;
}

.clear, .cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

.valign i, .valign .center {
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
}

.valign i {
  height: 100%;
}

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

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

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

.hidden {
  display: none;
}

.hideText {
  display: block;
  text-indent: 101%;
  overflow: hidden;
  white-space: nowrap;
}

.fade {
  opacity: 0;
  transition: opacity .15s linear;
}

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition-duration: 0.35s;
  transition-timing-function: ease;
}

@keyframes tease {
  0%, 20%, 40% {
    transform: translate3d(0, 0, 0);
  }
  10%, 30% {
    transform: translate3d(0, 8px, 0);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* overlay at start */
.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.15s ease-out;
}

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all 0.15s ease-out;
}

/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

/*======================================
  Grid
======================================*/
@media (min-width: 1792px) {
  .hidden-fullhd {
    display: none !important;
  }
  .visible-fullhd {
    display: block !important;
  }
}

@media (min-width: 1326px) and (max-width: 1792px) {
  .hidden-fullDesktop {
    display: none !important;
  }
  .visible-fullDesktop {
    display: block !important;
  }
}

@media (min-width: 995px) and (max-width: 1325px) {
  .hidden-desktop {
    display: none !important;
  }
  .visible-desktop {
    display: block !important;
  }
}

@media (min-width: 769px) and (max-width: 994px) {
  .hidden-tablet {
    display: none !important;
  }
  .visible-tablet {
    display: block !important;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  .hidden-phablets {
    display: none !important;
  }
  .visible-phablets {
    display: block !important;
  }
}

@media (max-width: 480px) {
  .hidden-phone {
    display: none !important;
  }
  .visible-phone {
    display: block !important;
  }
}

.container {
  max-width: 1325px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

@media (max-width: 768px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.container-full {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

@media (max-width: 768px) {
  .container-full {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.mtop-5 {
  margin-top: 5px;
}

.mtop-10 {
  margin-top: 10px;
}

.mtop-15 {
  margin-top: 15px;
}

.mtop-20 {
  margin-top: 20px;
}

.mtop-25 {
  margin-top: 25px;
}

.mtop-30 {
  margin-top: 30px;
}

.mtop-35 {
  margin-top: 35px;
}

.mtop-40 {
  margin-top: 40px;
}

.mtop-45 {
  margin-top: 45px;
}

.mtop-50 {
  margin-top: 50px;
}

@media (min-width: 1326px) and (max-width: 1792px) {
  .mtop-5 {
    margin-top: 0.27902vw;
  }
  .mtop-10 {
    margin-top: 0.55804vw;
  }
  .mtop-15 {
    margin-top: 0.83705vw;
  }
  .mtop-20 {
    margin-top: 1.11607vw;
  }
  .mtop-25 {
    margin-top: 1.39509vw;
  }
  .mtop-30 {
    margin-top: 1.67411vw;
  }
  .mtop-35 {
    margin-top: 1.95312vw;
  }
  .mtop-40 {
    margin-top: 2.23214vw;
  }
  .mtop-45 {
    margin-top: 2.51116vw;
  }
  .mtop-50 {
    margin-top: 2.79018vw;
  }
}

@media (min-width: 995px) and (max-width: 1325px) {
  .mtop-5 {
    margin-top: 0.37736vw;
  }
  .mtop-10 {
    margin-top: 0.75472vw;
  }
  .mtop-15 {
    margin-top: 1.13208vw;
  }
  .mtop-20 {
    margin-top: 1.50943vw;
  }
  .mtop-25 {
    margin-top: 1.88679vw;
  }
  .mtop-30 {
    margin-top: 2.26415vw;
  }
  .mtop-35 {
    margin-top: 2.64151vw;
  }
  .mtop-40 {
    margin-top: 3.01887vw;
  }
  .mtop-45 {
    margin-top: 3.39623vw;
  }
  .mtop-50 {
    margin-top: 3.77358vw;
  }
}

@media (min-width: 769px) and (max-width: 994px) {
  .mtop-5 {
    margin-top: 0.50302vw;
  }
  .mtop-10 {
    margin-top: 1.00604vw;
  }
  .mtop-15 {
    margin-top: 1.50905vw;
  }
  .mtop-20 {
    margin-top: 2.01207vw;
  }
  .mtop-25 {
    margin-top: 2.51509vw;
  }
  .mtop-30 {
    margin-top: 3.01811vw;
  }
  .mtop-35 {
    margin-top: 3.52113vw;
  }
  .mtop-40 {
    margin-top: 4.02414vw;
  }
  .mtop-45 {
    margin-top: 4.52716vw;
  }
  .mtop-50 {
    margin-top: 5.03018vw;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  .mtop-5 {
    margin-top: 0.65104vw;
  }
  .mobile-mtop-5 {
    margin-top: 0.65104vw;
  }
  .mtop-10 {
    margin-top: 1.30208vw;
  }
  .mobile-mtop-10 {
    margin-top: 1.30208vw;
  }
  .mtop-15 {
    margin-top: 1.95313vw;
  }
  .mobile-mtop-15 {
    margin-top: 1.95313vw;
  }
  .mtop-20 {
    margin-top: 2.60417vw;
  }
  .mobile-mtop-20 {
    margin-top: 2.60417vw;
  }
  .mtop-25 {
    margin-top: 3.25521vw;
  }
  .mobile-mtop-25 {
    margin-top: 3.25521vw;
  }
  .mtop-30 {
    margin-top: 3.90625vw;
  }
  .mobile-mtop-30 {
    margin-top: 3.90625vw;
  }
  .mtop-35 {
    margin-top: 4.55729vw;
  }
  .mobile-mtop-35 {
    margin-top: 4.55729vw;
  }
  .mtop-40 {
    margin-top: 5.20833vw;
  }
  .mobile-mtop-40 {
    margin-top: 5.20833vw;
  }
  .mtop-45 {
    margin-top: 5.85938vw;
  }
  .mobile-mtop-45 {
    margin-top: 5.85938vw;
  }
  .mtop-50 {
    margin-top: 6.51042vw;
  }
  .mobile-mtop-50 {
    margin-top: 6.51042vw;
  }
}

@media (max-width: 480px) {
  .mtop-5 {
    margin-top: 1.04167vw;
  }
  .mobile-mtop-5 {
    margin-top: 1.04167vw;
  }
  .mtop-10 {
    margin-top: 2.08333vw;
  }
  .mobile-mtop-10 {
    margin-top: 2.08333vw;
  }
  .mtop-15 {
    margin-top: 3.125vw;
  }
  .mobile-mtop-15 {
    margin-top: 3.125vw;
  }
  .mtop-20 {
    margin-top: 4.16667vw;
  }
  .mobile-mtop-20 {
    margin-top: 4.16667vw;
  }
  .mtop-25 {
    margin-top: 5.20833vw;
  }
  .mobile-mtop-25 {
    margin-top: 5.20833vw;
  }
  .mtop-30 {
    margin-top: 6.25vw;
  }
  .mobile-mtop-30 {
    margin-top: 6.25vw;
  }
  .mtop-35 {
    margin-top: 7.29167vw;
  }
  .mobile-mtop-35 {
    margin-top: 7.29167vw;
  }
  .mtop-40 {
    margin-top: 8.33333vw;
  }
  .mobile-mtop-40 {
    margin-top: 8.33333vw;
  }
  .mtop-45 {
    margin-top: 9.375vw;
  }
  .mobile-mtop-45 {
    margin-top: 9.375vw;
  }
  .mtop-50 {
    margin-top: 10.41667vw;
  }
  .mobile-mtop-50 {
    margin-top: 10.41667vw;
  }
}

.ptop-5 {
  padding-top: 5px;
}

.ptop-10 {
  padding-top: 10px;
}

.ptop-15 {
  padding-top: 15px;
}

.ptop-20 {
  padding-top: 20px;
}

.ptop-25 {
  padding-top: 25px;
}

.ptop-30 {
  padding-top: 30px;
}

.ptop-35 {
  padding-top: 35px;
}

.ptop-40 {
  padding-top: 40px;
}

.ptop-45 {
  padding-top: 45px;
}

.ptop-50 {
  padding-top: 50px;
}

@media (min-width: 1326px) and (max-width: 1792px) {
  .ptop-5 {
    padding-top: 0.27902vw;
  }
  .ptop-10 {
    padding-top: 0.55804vw;
  }
  .ptop-15 {
    padding-top: 0.83705vw;
  }
  .ptop-20 {
    padding-top: 1.11607vw;
  }
  .ptop-25 {
    padding-top: 1.39509vw;
  }
  .ptop-30 {
    padding-top: 1.67411vw;
  }
  .ptop-35 {
    padding-top: 1.95312vw;
  }
  .ptop-40 {
    padding-top: 2.23214vw;
  }
  .ptop-45 {
    padding-top: 2.51116vw;
  }
  .ptop-50 {
    padding-top: 2.79018vw;
  }
}

@media (min-width: 995px) and (max-width: 1325px) {
  .ptop-5 {
    padding-top: 0.37736vw;
  }
  .ptop-10 {
    padding-top: 0.75472vw;
  }
  .ptop-15 {
    padding-top: 1.13208vw;
  }
  .ptop-20 {
    padding-top: 1.50943vw;
  }
  .ptop-25 {
    padding-top: 1.88679vw;
  }
  .ptop-30 {
    padding-top: 2.26415vw;
  }
  .ptop-35 {
    padding-top: 2.64151vw;
  }
  .ptop-40 {
    padding-top: 3.01887vw;
  }
  .ptop-45 {
    padding-top: 3.39623vw;
  }
  .ptop-50 {
    padding-top: 3.77358vw;
  }
}

@media (min-width: 769px) and (max-width: 994px) {
  .ptop-5 {
    padding-top: 0.50302vw;
  }
  .ptop-10 {
    padding-top: 1.00604vw;
  }
  .ptop-15 {
    padding-top: 1.50905vw;
  }
  .ptop-20 {
    padding-top: 2.01207vw;
  }
  .ptop-25 {
    padding-top: 2.51509vw;
  }
  .ptop-30 {
    padding-top: 3.01811vw;
  }
  .ptop-35 {
    padding-top: 3.52113vw;
  }
  .ptop-40 {
    padding-top: 4.02414vw;
  }
  .ptop-45 {
    padding-top: 4.52716vw;
  }
  .ptop-50 {
    padding-top: 5.03018vw;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  .ptop-5 {
    padding-top: 0.65104vw;
  }
  .mobile-ptop-5 {
    padding-top: 0.65104vw;
  }
  .ptop-10 {
    padding-top: 1.30208vw;
  }
  .mobile-ptop-10 {
    padding-top: 1.30208vw;
  }
  .ptop-15 {
    padding-top: 1.95313vw;
  }
  .mobile-ptop-15 {
    padding-top: 1.95313vw;
  }
  .ptop-20 {
    padding-top: 2.60417vw;
  }
  .mobile-ptop-20 {
    padding-top: 2.60417vw;
  }
  .ptop-25 {
    padding-top: 3.25521vw;
  }
  .mobile-ptop-25 {
    padding-top: 3.25521vw;
  }
  .ptop-30 {
    padding-top: 3.90625vw;
  }
  .mobile-ptop-30 {
    padding-top: 3.90625vw;
  }
  .ptop-35 {
    padding-top: 4.55729vw;
  }
  .mobile-ptop-35 {
    padding-top: 4.55729vw;
  }
  .ptop-40 {
    padding-top: 5.20833vw;
  }
  .mobile-ptop-40 {
    padding-top: 5.20833vw;
  }
  .ptop-45 {
    padding-top: 5.85938vw;
  }
  .mobile-ptop-45 {
    padding-top: 5.85938vw;
  }
  .ptop-50 {
    padding-top: 6.51042vw;
  }
  .mobile-ptop-50 {
    padding-top: 6.51042vw;
  }
}

@media (max-width: 480px) {
  .ptop-5 {
    padding-top: 1.04167vw;
  }
  .mobile-ptop-5 {
    padding-top: 1.04167vw;
  }
  .ptop-10 {
    padding-top: 2.08333vw;
  }
  .mobile-ptop-10 {
    padding-top: 2.08333vw;
  }
  .ptop-15 {
    padding-top: 3.125vw;
  }
  .mobile-ptop-15 {
    padding-top: 3.125vw;
  }
  .ptop-20 {
    padding-top: 4.16667vw;
  }
  .mobile-ptop-20 {
    padding-top: 4.16667vw;
  }
  .ptop-25 {
    padding-top: 5.20833vw;
  }
  .mobile-ptop-25 {
    padding-top: 5.20833vw;
  }
  .ptop-30 {
    padding-top: 6.25vw;
  }
  .mobile-ptop-30 {
    padding-top: 6.25vw;
  }
  .ptop-35 {
    padding-top: 7.29167vw;
  }
  .mobile-ptop-35 {
    padding-top: 7.29167vw;
  }
  .ptop-40 {
    padding-top: 8.33333vw;
  }
  .mobile-ptop-40 {
    padding-top: 8.33333vw;
  }
  .ptop-45 {
    padding-top: 9.375vw;
  }
  .mobile-ptop-45 {
    padding-top: 9.375vw;
  }
  .ptop-50 {
    padding-top: 10.41667vw;
  }
  .mobile-ptop-50 {
    padding-top: 10.41667vw;
  }
}

.mbottom-5 {
  margin-bottom: 5px;
}

.mbottom-10 {
  margin-bottom: 10px;
}

.mbottom-15 {
  margin-bottom: 15px;
}

.mbottom-20 {
  margin-bottom: 20px;
}

.mbottom-25 {
  margin-bottom: 25px;
}

.mbottom-30 {
  margin-bottom: 30px;
}

.mbottom-35 {
  margin-bottom: 35px;
}

.mbottom-40 {
  margin-bottom: 40px;
}

.mbottom-45 {
  margin-bottom: 45px;
}

.mbottom-50 {
  margin-bottom: 50px;
}

@media (min-width: 1326px) and (max-width: 1792px) {
  .mbottom-5 {
    margin-bottom: 0.27902vw;
  }
  .mbottom-10 {
    margin-bottom: 0.55804vw;
  }
  .mbottom-15 {
    margin-bottom: 0.83705vw;
  }
  .mbottom-20 {
    margin-bottom: 1.11607vw;
  }
  .mbottom-25 {
    margin-bottom: 1.39509vw;
  }
  .mbottom-30 {
    margin-bottom: 1.67411vw;
  }
  .mbottom-35 {
    margin-bottom: 1.95312vw;
  }
  .mbottom-40 {
    margin-bottom: 2.23214vw;
  }
  .mbottom-45 {
    margin-bottom: 2.51116vw;
  }
  .mbottom-50 {
    margin-bottom: 2.79018vw;
  }
}

@media (min-width: 995px) and (max-width: 1325px) {
  .mbottom-5 {
    margin-bottom: 0.37736vw;
  }
  .mbottom-10 {
    margin-bottom: 0.75472vw;
  }
  .mbottom-15 {
    margin-bottom: 1.13208vw;
  }
  .mbottom-20 {
    margin-bottom: 1.50943vw;
  }
  .mbottom-25 {
    margin-bottom: 1.88679vw;
  }
  .mbottom-30 {
    margin-bottom: 2.26415vw;
  }
  .mbottom-35 {
    margin-bottom: 2.64151vw;
  }
  .mbottom-40 {
    margin-bottom: 3.01887vw;
  }
  .mbottom-45 {
    margin-bottom: 3.39623vw;
  }
  .mbottom-50 {
    margin-bottom: 3.77358vw;
  }
}

@media (min-width: 769px) and (max-width: 994px) {
  .mbottom-5 {
    margin-bottom: 0.50302vw;
  }
  .mbottom-10 {
    margin-bottom: 1.00604vw;
  }
  .mbottom-15 {
    margin-bottom: 1.50905vw;
  }
  .mbottom-20 {
    margin-bottom: 2.01207vw;
  }
  .mbottom-25 {
    margin-bottom: 2.51509vw;
  }
  .mbottom-30 {
    margin-bottom: 3.01811vw;
  }
  .mbottom-35 {
    margin-bottom: 3.52113vw;
  }
  .mbottom-40 {
    margin-bottom: 4.02414vw;
  }
  .mbottom-45 {
    margin-bottom: 4.52716vw;
  }
  .mbottom-50 {
    margin-bottom: 5.03018vw;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  .mbottom-5 {
    margin-bottom: 0.65104vw;
  }
  .mobile-mbottom-5 {
    margin-bottom: 0.65104vw;
  }
  .mbottom-10 {
    margin-bottom: 1.30208vw;
  }
  .mobile-mbottom-10 {
    margin-bottom: 1.30208vw;
  }
  .mbottom-15 {
    margin-bottom: 1.95313vw;
  }
  .mobile-mbottom-15 {
    margin-bottom: 1.95313vw;
  }
  .mbottom-20 {
    margin-bottom: 2.60417vw;
  }
  .mobile-mbottom-20 {
    margin-bottom: 2.60417vw;
  }
  .mbottom-25 {
    margin-bottom: 3.25521vw;
  }
  .mobile-mbottom-25 {
    margin-bottom: 3.25521vw;
  }
  .mbottom-30 {
    margin-bottom: 3.90625vw;
  }
  .mobile-mbottom-30 {
    margin-bottom: 3.90625vw;
  }
  .mbottom-35 {
    margin-bottom: 4.55729vw;
  }
  .mobile-mbottom-35 {
    margin-bottom: 4.55729vw;
  }
  .mbottom-40 {
    margin-bottom: 5.20833vw;
  }
  .mobile-mbottom-40 {
    margin-bottom: 5.20833vw;
  }
  .mbottom-45 {
    margin-bottom: 5.85938vw;
  }
  .mobile-mbottom-45 {
    margin-bottom: 5.85938vw;
  }
  .mbottom-50 {
    margin-bottom: 6.51042vw;
  }
  .mobile-mbottom-50 {
    margin-bottom: 6.51042vw;
  }
}

@media (max-width: 480px) {
  .mbottom-5 {
    margin-bottom: 1.04167vw;
  }
  .mobile-mbottom-5 {
    margin-bottom: 1.04167vw;
  }
  .mbottom-10 {
    margin-bottom: 2.08333vw;
  }
  .mobile-mbottom-10 {
    margin-bottom: 2.08333vw;
  }
  .mbottom-15 {
    margin-bottom: 3.125vw;
  }
  .mobile-mbottom-15 {
    margin-bottom: 3.125vw;
  }
  .mbottom-20 {
    margin-bottom: 4.16667vw;
  }
  .mobile-mbottom-20 {
    margin-bottom: 4.16667vw;
  }
  .mbottom-25 {
    margin-bottom: 5.20833vw;
  }
  .mobile-mbottom-25 {
    margin-bottom: 5.20833vw;
  }
  .mbottom-30 {
    margin-bottom: 6.25vw;
  }
  .mobile-mbottom-30 {
    margin-bottom: 6.25vw;
  }
  .mbottom-35 {
    margin-bottom: 7.29167vw;
  }
  .mobile-mbottom-35 {
    margin-bottom: 7.29167vw;
  }
  .mbottom-40 {
    margin-bottom: 8.33333vw;
  }
  .mobile-mbottom-40 {
    margin-bottom: 8.33333vw;
  }
  .mbottom-45 {
    margin-bottom: 9.375vw;
  }
  .mobile-mbottom-45 {
    margin-bottom: 9.375vw;
  }
  .mbottom-50 {
    margin-bottom: 10.41667vw;
  }
  .mobile-mbottom-50 {
    margin-bottom: 10.41667vw;
  }
}

.pbottom-5 {
  padding-bottom: 5px;
}

.pbottom-10 {
  padding-bottom: 10px;
}

.pbottom-15 {
  padding-bottom: 15px;
}

.pbottom-20 {
  padding-bottom: 20px;
}

.pbottom-25 {
  padding-bottom: 25px;
}

.pbottom-30 {
  padding-bottom: 30px;
}

.pbottom-35 {
  padding-bottom: 35px;
}

.pbottom-40 {
  padding-bottom: 40px;
}

.pbottom-45 {
  padding-bottom: 45px;
}

.pbottom-50 {
  padding-bottom: 50px;
}

@media (min-width: 1326px) and (max-width: 1792px) {
  .pbottom-5 {
    padding-bottom: 0.27902vw;
  }
  .pbottom-10 {
    padding-bottom: 0.55804vw;
  }
  .pbottom-15 {
    padding-bottom: 0.83705vw;
  }
  .pbottom-20 {
    padding-bottom: 1.11607vw;
  }
  .pbottom-25 {
    padding-bottom: 1.39509vw;
  }
  .pbottom-30 {
    padding-bottom: 1.67411vw;
  }
  .pbottom-35 {
    padding-bottom: 1.95312vw;
  }
  .pbottom-40 {
    padding-bottom: 2.23214vw;
  }
  .pbottom-45 {
    padding-bottom: 2.51116vw;
  }
  .pbottom-50 {
    padding-bottom: 2.79018vw;
  }
}

@media (min-width: 995px) and (max-width: 1325px) {
  .pbottom-5 {
    padding-bottom: 0.37736vw;
  }
  .pbottom-10 {
    padding-bottom: 0.75472vw;
  }
  .pbottom-15 {
    padding-bottom: 1.13208vw;
  }
  .pbottom-20 {
    padding-bottom: 1.50943vw;
  }
  .pbottom-25 {
    padding-bottom: 1.88679vw;
  }
  .pbottom-30 {
    padding-bottom: 2.26415vw;
  }
  .pbottom-35 {
    padding-bottom: 2.64151vw;
  }
  .pbottom-40 {
    padding-bottom: 3.01887vw;
  }
  .pbottom-45 {
    padding-bottom: 3.39623vw;
  }
  .pbottom-50 {
    padding-bottom: 3.77358vw;
  }
}

@media (min-width: 769px) and (max-width: 994px) {
  .pbottom-5 {
    padding-bottom: 0.50302vw;
  }
  .pbottom-10 {
    padding-bottom: 1.00604vw;
  }
  .pbottom-15 {
    padding-bottom: 1.50905vw;
  }
  .pbottom-20 {
    padding-bottom: 2.01207vw;
  }
  .pbottom-25 {
    padding-bottom: 2.51509vw;
  }
  .pbottom-30 {
    padding-bottom: 3.01811vw;
  }
  .pbottom-35 {
    padding-bottom: 3.52113vw;
  }
  .pbottom-40 {
    padding-bottom: 4.02414vw;
  }
  .pbottom-45 {
    padding-bottom: 4.52716vw;
  }
  .pbottom-50 {
    padding-bottom: 5.03018vw;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  .pbottom-5 {
    padding-bottom: 0.65104vw;
  }
  .mobile-pbottom-5 {
    padding-bottom: 0.65104vw;
  }
  .pbottom-10 {
    padding-bottom: 1.30208vw;
  }
  .mobile-pbottom-10 {
    padding-bottom: 1.30208vw;
  }
  .pbottom-15 {
    padding-bottom: 1.95313vw;
  }
  .mobile-pbottom-15 {
    padding-bottom: 1.95313vw;
  }
  .pbottom-20 {
    padding-bottom: 2.60417vw;
  }
  .mobile-pbottom-20 {
    padding-bottom: 2.60417vw;
  }
  .pbottom-25 {
    padding-bottom: 3.25521vw;
  }
  .mobile-pbottom-25 {
    padding-bottom: 3.25521vw;
  }
  .pbottom-30 {
    padding-bottom: 3.90625vw;
  }
  .mobile-pbottom-30 {
    padding-bottom: 3.90625vw;
  }
  .pbottom-35 {
    padding-bottom: 4.55729vw;
  }
  .mobile-pbottom-35 {
    padding-bottom: 4.55729vw;
  }
  .pbottom-40 {
    padding-bottom: 5.20833vw;
  }
  .mobile-pbottom-40 {
    padding-bottom: 5.20833vw;
  }
  .pbottom-45 {
    padding-bottom: 5.85938vw;
  }
  .mobile-pbottom-45 {
    padding-bottom: 5.85938vw;
  }
  .pbottom-50 {
    padding-bottom: 6.51042vw;
  }
  .mobile-pbottom-50 {
    padding-bottom: 6.51042vw;
  }
}

@media (max-width: 480px) {
  .pbottom-5 {
    padding-bottom: 1.04167vw;
  }
  .mobile-pbottom-5 {
    padding-bottom: 1.04167vw;
  }
  .pbottom-10 {
    padding-bottom: 2.08333vw;
  }
  .mobile-pbottom-10 {
    padding-bottom: 2.08333vw;
  }
  .pbottom-15 {
    padding-bottom: 3.125vw;
  }
  .mobile-pbottom-15 {
    padding-bottom: 3.125vw;
  }
  .pbottom-20 {
    padding-bottom: 4.16667vw;
  }
  .mobile-pbottom-20 {
    padding-bottom: 4.16667vw;
  }
  .pbottom-25 {
    padding-bottom: 5.20833vw;
  }
  .mobile-pbottom-25 {
    padding-bottom: 5.20833vw;
  }
  .pbottom-30 {
    padding-bottom: 6.25vw;
  }
  .mobile-pbottom-30 {
    padding-bottom: 6.25vw;
  }
  .pbottom-35 {
    padding-bottom: 7.29167vw;
  }
  .mobile-pbottom-35 {
    padding-bottom: 7.29167vw;
  }
  .pbottom-40 {
    padding-bottom: 8.33333vw;
  }
  .mobile-pbottom-40 {
    padding-bottom: 8.33333vw;
  }
  .pbottom-45 {
    padding-bottom: 9.375vw;
  }
  .mobile-pbottom-45 {
    padding-bottom: 9.375vw;
  }
  .pbottom-50 {
    padding-bottom: 10.41667vw;
  }
  .mobile-pbottom-50 {
    padding-bottom: 10.41667vw;
  }
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.center-block {
  margin-left: auto;
  margin-right: auto;
  float: none;
}

/*======================================
  Fonts
======================================*/
/*@font-face {
  font-family: 'fonte name';
  src: url('../fonts/fonte-name.eot');
  src: url('../fonts/fonte-name.eot?#iefix') format('embedded-opentype'),
       url('../fonts/fonte-name.woff') format('woff'),
       url('../fonts/fonte-name.ttf') format('truetype'),
       url('../fonts/fonte-name.svg#fonte-name') format('svg');
  font-weight: normal;
  font-style: normal;
}*/
/* latin-ext */
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(../fonts/Inter-italic-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(../fonts/Inter-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../fonts/Inter-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../fonts/Inter.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body {
  font-family: "Inter", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Inter", sans-serif;
  font-weight: normal;
  margin: 0;
}

p {
  margin: 0;
}

/*======================================
  Main structure
======================================*/
html {
  scroll-behavior: smooth;
}

.mb_YTPBar.inlinePlayer.compact {
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

.header-scrolling header {
  background-color: #001f3f;
}

.box-section {
  padding: 0 12px;
}

.box-section.navy {
  background-color: #001f3f;
}

.box-section .box-area {
  width: 100%;
  background-color: #ffffff;
  border-radius: 16px;
}

.box-section .box-area.overflow {
  overflow: hidden;
}

.box-section.margin-bottom .box-area {
  position: relative;
  margin-bottom: -40px;
}

.box-section.margin-top-default .box-area {
  position: relative;
  margin-top: -40px;
}

.box-section.margin-top .box-area {
  position: relative;
  margin-top: -187px;
}

.box-section.margin-top-partners .box-area {
  position: relative;
  margin-top: -290px;
}

.box-section.margin-top-blog .box-area {
  position: relative;
  margin-top: -487px;
  margin-bottom: -45px;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 30px 0;
  z-index: 10;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

header .container {
  max-width: 1792px;
}

header .grid {
  display: grid;
  grid-template-columns: 149px 1fr;
  gap: 10px;
  align-items: center;
  grid-template-areas: "logo menu";
}

header .grid .logo a {
  display: block;
}

header .grid .logo a img {
  width: 100%;
  height: auto;
}

header .grid .ico {
  display: none;
}

header .grid .items {
  display: grid;
  grid-template-columns: 1fr 376px;
  gap: 10px;
  align-items: center;
  grid-template-areas: "menu links";
}

header .grid .items .logo-menu {
  display: none;
}

header .grid .items .close {
  display: none;
}

header .grid .box-menu nav {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

header .grid .box-menu nav ul {
  display: flex;
  align-items: center;
  gap: 27px;
}

header .grid .box-menu nav ul li {
  position: relative;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

header .grid .box-menu nav ul li a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 19.2px;
  text-align: left;
  color: #ffffff;
}

header .grid .box-menu nav ul li a .icon {
  width: 14px;
  height: 8px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

header .grid .box-menu nav ul li .sub-menu {
  position: absolute;
  top: calc(90% + 28px);
  left: 0;
  width: 800px;
  padding: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

header .grid .box-menu nav ul li .sub-menu:before {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 12.5px 13px 12.5px;
  border-color: transparent transparent #0e2652 transparent;
  transform: rotate(0deg);
  position: absolute;
  top: -9px;
  left: 45px;
}

header .grid .box-menu nav ul li .sub-menu .overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu {
  border-radius: 16px;
  overflow: hidden;
  background: #0e2652;
  display: grid;
  grid-template-columns: 1.12fr 1fr;
  gap: 0;
  align-items: stretch;
  padding: 0;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links {
  padding: 39px 36px 37px 35px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul {
  width: 100%;
  display: block;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li {
  width: 100%;
  margin: 0 0 11px 0;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li a {
  width: 100%;
  display: block;
  display: flex;
  align-items: start;
  gap: 11px;
  padding: 8px 8.5px;
  border-radius: 8px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li a .icon {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  fill: transparent;
  stroke: #22c55e;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li a .content .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 19.2px;
  text-align: left;
  color: #ffffff;
  display: block;
  padding: 0 0 3px 0;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li a .content .text {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 12px, 12px);
  font-weight: 400;
  line-height: 16.8px;
  text-align: left;
  color: rgba(255, 255, 255, 0.7);
  display: block;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li:last-child {
  margin: 0;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li:hover a {
  background-color: #0d2148;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image {
  padding: 47px 50px 37px 74px;
  background: #0d2148 url(../images/bg-submenu.png) bottom right no-repeat;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image .title-sidebar {
  display: block;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 19.2px;
  text-align: left;
  color: #ffffff;
  padding: 0 0 8px 4px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 12px, 12px);
  font-weight: 400;
  line-height: 16.8px;
  text-align: left;
  color: rgba(255, 255, 255, 0.7);
  padding: 0 0 20px 4px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image img {
  width: 241px;
  height: auto;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image a {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 600;
  line-height: 16.8px;
  text-align: left;
  color: #356efc;
  margin: 25px 0 0 6px;
  padding: 0;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image a .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(135deg);
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image .box .box-list-post-menu {
  background-color: red;
  padding: 16px;
  display: grid;
  grid-template-columns: 95px 1fr;
  gap: 16px;
  align-items: start;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image .box .box-list-post-menu .images {
  width: 95px;
  height: 60px;
  overflow: hidden;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .image .box .box-list-post-menu .images img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts {
  padding: 47px 35px 37px 35px;
  background: #0d2148 url(../images/bg-submenu.png) bottom right no-repeat;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts .title-sidebar {
  display: block;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 19.2px;
  text-align: left;
  color: #ffffff;
  padding: 0 0 8px 4px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 12px, 12px);
  font-weight: 400;
  line-height: 16.8px;
  text-align: left;
  color: rgba(255, 255, 255, 0.7);
  padding: 0 0 20px 4px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts a.link {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 600;
  line-height: 16.8px;
  text-align: left;
  color: #356efc;
  margin: 25px 0 0 6px;
  padding: 0;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts a.link .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(135deg);
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts .box .box-list-post-menu {
  background-color: #ffffff;
  padding: 16px;
  margin-bottom: 16px;
  border-radius: 8px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 95px 1fr;
  gap: 16px;
  align-items: center;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts .box .box-list-post-menu .images {
  width: 95px;
  height: 60px;
  overflow: hidden;
  border-radius: 4px;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts .box .box-list-post-menu .images img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts .box .box-list-post-menu .title-blog {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 12px, 12px);
  font-weight: 700;
  line-height: 16.8px;
  text-align: left;
  color: #001f3f;
}

header .grid .box-menu nav ul li:hover {
  background-color: #0e2652;
  border-radius: 8px;
}

header .grid .box-menu nav ul li.act {
  background-color: #0e2652;
  border-radius: 8px;
}

header .grid .box-menu nav ul li.act .sub-menu {
  top: calc(100% + 28px);
  opacity: 1;
  visibility: visible;
}

header .grid .others-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

header .grid .others-link .langs {
  width: 83px;
  height: 51px;
  background-color: #142a55;
  border-radius: 10px;
  position: relative;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

header .grid .others-link .langs .selected {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 12px;
  cursor: pointer;
}

header .grid .others-link .langs .selected .flag {
  width: 29px;
  height: 29px;
  overflow: hidden;
  border-radius: 50%;
}

header .grid .others-link .langs .selected .flag img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

header .grid .others-link .langs .selected .icon {
  width: 16px;
  height: 9px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

header .grid .others-link .langs .select-flag {
  width: 83px;
  background-color: #142a55;
  position: absolute;
  top: 80%;
  left: 0;
  padding: 0px 12px 12px 12px;
  border-radius: 0 0 10px 10px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

header .grid .others-link .langs .select-flag ul li {
  padding-bottom: 5px;
}

header .grid .others-link .langs .select-flag ul li a {
  display: block;
  width: 29px;
  height: 29px;
  overflow: hidden;
  border-radius: 50%;
}

header .grid .others-link .langs .select-flag ul li a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

header .grid .others-link .langs .select-flag ul li:last-child {
  padding-bottom: 0;
}

header .grid .others-link .langs.open-lang {
  border-radius: 10px 10px 0 0;
}

header .grid .others-link .langs.open-lang .select-flag {
  top: 100%;
  opacity: 1;
  visibility: visible;
}

header .grid .others-link .login {
  width: 83px;
  height: 51px;
}

header .grid .others-link .test-free {
  width: 180px;
  height: 51px;
}

header#blog .container {
  max-width: 1262px;
}

header#blog .grid {
  display: grid;
  grid-template-columns: 149px 1fr;
  gap: 10px;
  align-items: center;
  grid-template-areas: "logo menu";
}

header#blog .grid .items {
  display: grid;
  grid-template-columns: 1fr 230px;
  gap: 10px;
  align-items: center;
  grid-template-areas: "menu search";
}

header#blog .grid .box-search {
  width: 230px;
  height: 44px;
}

header#blog .grid .box-search .box {
  width: 230px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}

header#blog .grid .box-search .box input {
  width: 100%;
  height: 100%;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 19.2px;
  text-align: left;
  color: #ffffff;
  padding: 0 60px 0 18px;
  border: none;
  outline: none;
  background: transparent;
}

header#blog .grid .box-search .box button {
  width: 34px;
  height: 34px;
  background-color: #356efc;
  position: absolute;
  top: 4px;
  right: 6px;
  border: none;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

header#blog .grid .box-search .box button .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #ffffff;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (min-width: 1326px) and (max-width: 1792px) {
  header .grid .box-menu nav ul {
    gap: 1.5067vw !important;
  }
}

footer {
  background: linear-gradient(47.99deg, #0c1f44 43.12%, #1f4eaa 153.5%);
}

footer .grid {
  padding: 94px 0 28px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: grid;
  grid-template-columns: 555px 1.72fr 1.5fr 1fr;
  gap: 20px;
  align-items: start;
}

footer .grid .box-logo {
  padding: 10px 0 0 0;
}

footer .grid .box-logo .logo {
  width: 222px;
  height: 67px;
  display: block;
}

footer .grid .box-logo .logo img {
  width: 100%;
  height: auto;
}

footer .grid .box-logo p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  color: rgba(255, 255, 255, 0.7);
  padding: 27px 0 22px 0;
}

footer .grid .box-logo .logos-footer {
  width: 445px;
  height: 36px;
}

footer .grid .box-logo .box-google {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 25px 0 0 4px;
}

footer .grid .box-logo .box-google .logo-google {
  width: 21.25px;
  height: 21.52px;
}

footer .grid .box-logo .box-google span {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 13px, 13px);
  font-weight: 500;
  line-height: 15.73px;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.7px;
}

footer .grid .box-logo .box-google span.rate {
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 13px, 13px);
  font-weight: 700;
  line-height: 15.73px;
  text-align: left;
  color: #ffb800;
}

footer .grid .box-logo .box-google span.rate .stars {
  width: 84.67px;
  height: 16px;
}

footer .grid .links h5 {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 700;
  line-height: 24px;
  text-align: left;
  color: #ffffff;
  padding: 0 0 12px 0;
}

footer .grid .links ul li {
  padding: 0 0 12px 0;
}

footer .grid .links ul li a {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  color: #ffffff;
}

footer .grid .links ul li a:hover {
  text-decoration: underline;
}

footer .grid-support {
  padding: 30px 0 28px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: grid;
  grid-template-columns: 0.9fr 0.9fr 0.9fr 1fr;
  gap: 20px;
  align-items: start;
}

footer .grid-support .links ul li {
  padding: 0 0 2px 0;
  display: flex;
  align-items: start;
  gap: 16px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 400;
  line-height: 19.6px;
  text-align: left;
  color: #ffffff;
}

footer .grid-support .links ul li .icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #ffffff;
  stroke-width: 1.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

footer .grid-support .links ul li a {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 400;
  line-height: 19.6px;
  text-align: left;
  color: #ffffff;
}

footer .grid-support .links ul li a:hover {
  text-decoration: underline;
}

footer .grid-support .social-media ul {
  display: flex;
  align-items: start;
  justify-content: end;
  gap: 14.2px;
}

footer .grid-support .social-media ul li a {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 37.87px;
  height: 37.87px;
  background-color: #356efc;
  border-radius: 50%;
}

footer .grid-support .social-media ul li a img {
  max-width: 80%;
  max-height: 80%;
  object-fit: contain;
}

footer .grid-support .social-media ul li a .icon {
  width: 37.87px;
  height: 37.87px;
  fill: #ffffff;
}

footer .grid-support .social-media ul li a .icon.stroke {
  fill: transparent;
  stroke: #ffffff;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

footer .grid-support .social-media ul li a:hover {
  opacity: 0.5;
}

footer .copyright {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 30px 0 56px 0;
}

footer .copyright p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  color: #70788c;
}

footer .copyright .back-top {
  display: flex;
  align-items: center;
  gap: 16px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 12px, 12px);
  font-weight: 400;
  line-height: 14.4px;
  text-align: left;
  color: #ffffff;
}

footer .copyright .back-top .icon {
  transform: rotate(90deg);
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

footer .copyright .back-top:hover {
  text-decoration: underline;
}

.modal-block {
  width: 100%;
  height: 100vh;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  display: none;
}

.box-modal {
  background: rgba(0, 0, 0, 0.7);
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  min-height: 700px;
}

.box-modal .modal-overlay {
  width: 100%;
  height: 100vh;
  position: fixed;
}

.box-modal .content-modal {
  position: relative;
  background: #ffffff;
  border-radius: 16px;
  width: 1216px;
  overflow: hidden;
}

.box-modal .content-modal .close {
  width: 40px;
  height: 40px;
  background-color: #356efc;
  position: absolute;
  top: 10px;
  right: 10px;
  border-radius: 8px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 20px, 20px);
  font-weight: 700;
  line-height: 120%;
  text-align: left;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.box-modal .content-modal .grid-modal {
  display: grid;
  grid-template-columns: 48.5% 51.5%;
  gap: 0;
  align-items: stretch;
}

.box-modal .content-modal .grid-modal .text {
  padding: 85px 103px 85px 68px;
  background-color: #eef4ff;
}

.box-modal .content-modal .grid-modal .text .subtitle {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 21.6px;
  text-align: left;
  color: #356efc;
  letter-spacing: 0.2px;
  padding: 0 0 25px 0;
  display: block;
}

.box-modal .content-modal .grid-modal .text .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 28px, 28px);
  font-weight: 700;
  line-height: 120%;
  text-align: left;
  color: #0c1f44;
  letter-spacing: 0.6px;
  padding: 0 0 25px 0;
}

.box-modal .content-modal .grid-modal .text .title b,
.box-modal .content-modal .grid-modal .text .title strong {
  color: #356efc;
}

.box-modal .content-modal .grid-modal .text p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 25.6px;
  text-align: left;
  color: rgba(0, 0, 0, 0.7);
  letter-spacing: 0.1px;
  padding: 0 0 48px 0;
}

.box-modal .content-modal .grid-modal .text .box-video-modal {
  width: 100%;
  height: 230px;
  border-radius: 8px;
  overflow: hidden;
}

.box-modal .content-modal .grid-modal .text .box-video-modal iframe {
  width: 100%;
  height: 100%;
}

.box-modal .content-modal .grid-modal .form {
  padding: 76px 103px 57px 103px;
}

.box-modal .content-modal .grid-modal .form .row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: start;
}

.box-modal .content-modal .grid-modal .form input {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  background: transparent;
  width: 100%;
  height: 48px;
  border: 1px solid #a9c7d3;
  border-radius: 6px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 22.4px;
  text-align: left;
  color: #000000;
  padding: 0 22px;
  margin-bottom: 20px;
  outline: none;
}

.box-modal .content-modal .grid-modal .form input:hover, .box-modal .content-modal .grid-modal .form input:focus {
  border: 1px solid #356efc;
}

.box-modal .content-modal .grid-modal .form input[type="submit"] {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 22.4px;
  text-align: center;
  color: #ffffff;
  background: #356efc;
  border: 1px solid #356efc;
  height: 51px;
  border-radius: 10px;
  margin-bottom: 33px;
  cursor: pointer;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

.box-modal .content-modal .grid-modal .form input[type="submit"]:hover {
  background: transparent;
  color: #356efc;
}

.box-modal .content-modal .grid-modal .form .selectric-wrapper {
  margin-bottom: 20px;
}

.box-modal .content-modal .grid-modal .form .selectric-wrapper .selectric {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  background: transparent;
  border: 1px solid #a9c7d3;
  border-radius: 6px;
}

.box-modal .content-modal .grid-modal .form .selectric-wrapper .selectric .label {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 46px;
  text-align: left;
  color: #000000;
  height: 46px;
  margin: 0 38px 0 22px;
}

.box-modal .content-modal .grid-modal .form .selectric-wrapper .selectric .button {
  background: transparent;
  height: 46px;
}

.box-modal .content-modal .grid-modal .form .selectric-wrapper .selectric .button:after {
  border: 0;
  border-top: 2px solid #356efc;
  border-right: 2px solid #356efc;
  width: 10px;
  height: 10px;
  transform: rotate(135deg);
}

.box-modal .content-modal .grid-modal .form .selectric-wrapper.selectric-hover .selectric {
  border: 1px solid #356efc;
}

.box-modal .content-modal .grid-modal .form .wpcf7-list-item {
  margin: 7px 0 31px 0;
}

.box-modal .content-modal .grid-modal .form .wpcf7-list-item .wpcf7-list-item-label {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 500;
  line-height: 22.4px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  padding: 4px 0 0 26px;
  display: block;
  position: relative;
}

.box-modal .content-modal .grid-modal .form .wpcf7-list-item .wpcf7-list-item-label:before {
  content: "";
  width: 14px;
  height: 14px;
  background: rgba(59, 58, 89, 0.1);
  position: absolute;
  top: 11px;
  left: 0;
  border-radius: 4px;
}

.box-modal .content-modal .grid-modal .form .wpcf7-list-item .wpcf7-list-item-label:after {
  content: "";
  width: 8px;
  height: 6px;
  border-top: 2px solid #356efc;
  border-right: 2px solid #356efc;
  position: absolute;
  top: 14px;
  left: 3px;
  transform: rotate(135deg);
  opacity: 0;
}

.box-modal .content-modal .grid-modal .form .wpcf7-list-item input[type="checkbox"] {
  position: absolute;
  width: 5px;
  height: 5px;
  opacity: 0;
}

.box-modal .content-modal .grid-modal .form .wpcf7-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label:after {
  opacity: 1;
}

.box-modal .content-modal .grid-modal .form p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 12px, 12px);
  font-weight: 400;
  line-height: 140%;
  text-align: center;
  color: rgba(0, 31, 63, 0.7);
  letter-spacing: 0.1px;
  padding: 0 0 0 0;
}

body.loading:after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2000;
  background-color: rgba(0, 31, 63, 0.7);
}

#player {
  width: 100%;
  height: 100%;
}

/*======================================
  Buttons
======================================*/
.btn {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
}

.btn-full {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #356efc;
  border-radius: 10px;
  background-color: #356efc;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: left;
  color: #ffffff;
}

.btn-full:hover {
  background: #1f4df1;
  border: 1px solid #1f4df1;
}

.btn-border {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dde1e6;
  border-radius: 10px;
  background: #ffffff;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: left;
  color: #646c78;
}

.btn-border:hover {
  background: transparent;
}

.btn-border-blue {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #356efc;
  border-radius: 10px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: left;
  color: #356efc;
}

.btn-border-blue:hover {
  background: #356efc;
  color: #ffffff;
}

/*======================================
  Lists
======================================*/
.box-list-materials {
  width: 383px;
  border: 1px solid rgba(169, 199, 211, 0.3);
  border-radius: 16px;
  padding: 17px 22px 22px 26px;
  background-color: #ffffff;
}

.box-list-materials .image {
  width: 100%;
  height: 209px;
  background-color: #eef4ff;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
}

.box-list-materials .image .tag {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 600;
  line-height: 16.8px;
  text-align: left;
  color: #667085;
  padding: 8px 10px;
  position: absolute;
  bottom: 9px;
  left: 9px;
  background-color: #f7f9ff;
  border-radius: 8px;
}

.box-list-materials .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.box-list-materials h3 {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 700;
  line-height: 25.2px;
  text-align: left;
  color: #001f3f;
  letter-spacing: 0.2px;
  padding: 16px 0 15px 0;
}

.box-list-materials p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 22.4px;
  text-align: left;
  color: #667085;
  letter-spacing: 0.15px;
  margin: 0 0 23px 0;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.box-list-materials .link {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 8px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: left;
  color: #356efc;
  overflow: hidden;
  margin: 0 0 0 0;
}

.box-list-materials .link .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(270deg);
}

.box-list-materials .link:hover {
  text-decoration: underline;
}

/*======================================
  Paginations
======================================*/
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 46px 0 99px 0;
}

.pagination .pag-prev {
  width: 58px;
  height: 51px;
  background-color: #eef4ff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 10px;
}

.pagination .pag-prev .icon {
  width: 14px;
  height: 8px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(90deg);
}

.pagination .pag {
  width: 58px;
  height: 51px;
  border: 1px solid #356efc;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 10px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: center;
  color: #356efc;
}

.pagination .pag:hover {
  background-color: #eef4ff;
}

.pagination .pag.act {
  background-color: #356efc;
  color: #ffffff;
}

.pagination .pag-next {
  width: 58px;
  height: 51px;
  background-color: #eef4ff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 10px;
}

.pagination .pag-next .icon {
  width: 14px;
  height: 8px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(-90deg);
}

/*======================================
  Newsletter
======================================*/
.newsletter {
  width: 100%;
  height: 128px;
  padding: 28px 0 0 0;
  background-color: #eef4ff;
  position: relative;
}

.newsletter:after {
  content: "";
  height: 38px;
  background-color: #eef4ff;
  position: absolute;
  bottom: -36px;
  left: 15px;
  right: 15px;
  border-radius: 0 0 16px 16px;
}

.newsletter .grid-newsletter {
  display: grid;
  grid-template-columns: 1.21fr 1fr;
  gap: 20px;
  align-items: start;
}

.newsletter .grid-newsletter .text {
  display: flex;
  align-items: center;
  gap: 32px;
}

.newsletter .grid-newsletter .text .box-icon {
  width: 72px;
  height: 72px;
  border: 1px solid rgba(0, 31, 63, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.newsletter .grid-newsletter .text .box-icon .icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  fill: transparent;
  stroke: #001f3f;
  stroke-width: 1.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.newsletter .grid-newsletter .text .block-text h3 {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 24px, 24px);
  font-weight: 700;
  line-height: 28.8px;
  text-align: left;
  color: #001f3f;
  padding: 5px 0 6px 0;
  letter-spacing: 0.3px;
}

.newsletter .grid-newsletter .text .block-text p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  padding: 0;
}

.newsletter .grid-newsletter .form {
  padding: 0 22px 0 0;
}

.newsletter .grid-newsletter .form .grid-form {
  display: grid;
  grid-template-columns: 1fr 141px;
  gap: 18px;
  align-items: stretch;
}

.newsletter .grid-newsletter .form .grid-form input {
  width: 100%;
  height: 50px;
  border: 1px solid #356efc;
  border-radius: 8px;
  background: transparent;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  padding: 0 24px;
}

.newsletter .grid-newsletter .form .grid-form input[type="submit"] {
  width: 100%;
  height: 50px;
  background-color: #356efc;
  border: none;
  border-radius: 8px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 22.4px;
  text-align: center;
  color: #ffffff;
  cursor: pointer;
}

/*======================================
  Super app
======================================*/
.super-app {
  position: relative;
  overflow: hidden;
}

.super-app .bg-box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #0d2045;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.super-app .bg-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.super-app .bg-box video {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

.super-app .grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 320px;
  align-items: start;
  padding: 100px 0 60px 0;
}

.super-app .grid .text {
  padding: 24px 0 0 0;
}

.super-app .grid .text .subtitle {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 21.6px;
  text-align: left;
  color: #ffffff;
  padding: 0 0 16px 0;
  display: block;
}

.super-app .grid .text .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 36px, 36px);
  font-weight: 700;
  line-height: 43.2px;
  text-align: left;
  color: #ffffff;
  letter-spacing: 1px;
  padding: 0 0 64px 0;
}

.super-app .grid .text .title b,
.super-app .grid .text .title strong {
  color: #356efc;
}

.super-app .grid .text a {
  display: block;
  width: 417px;
  height: 166px;
}

.super-app .grid .text a img {
  width: 100%;
  height: auto;
}

.super-app .grid .image .box-image {
  position: relative;
  width: 447px;
  height: 441px;
  background: url(../img/sistema-de-gestao-de-frota-04.png) top left no-repeat;
  background-size: contain;
}

.super-app .grid .image .box-image .box-video-side {
  width: 211px;
  height: 232px;
  position: absolute;
  top: 56px;
  right: 53px;
  border-radius: 16px;
  overflow: hidden;
  z-index: 1;
}

.super-app .grid .image .box-image .box-video-side video {
  width: auto;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.super-app .grid .image .box-image .box-video-side img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.super-app .grid .image .box-image .box-icon {
  width: 44.63px;
  height: 44.63px;
  background-color: #22c55e;
  position: absolute;
  top: 105px;
  right: 36px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 4;
}

.super-app .grid .image .box-image .box-icon .icon {
  width: 22px;
  height: 22px;
  fill: #ffffff;
}

.super-app .grid .image .box-image .box-image-01 {
  width: 176.45px;
  position: absolute;
  top: 153px;
  right: 209px;
  border-radius: 10px;
  z-index: 4;
}

.super-app .grid .image .box-image .box-image-01 img {
  width: 100%;
  height: auto;
}

.super-app .grid .image .box-image .box-image-02 {
  width: 163.68px;
  position: absolute;
  top: 245px;
  right: 221px;
  border-radius: 10px;
  z-index: 4;
}

.super-app .grid .image .box-image .box-image-02 img {
  width: 100%;
  height: auto;
}

.super-app .grid .image .box-image .link-video {
  transform: scale(1.2);
  position: absolute;
  bottom: 6px;
  left: 153px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 500;
  line-height: 120%;
  text-align: left;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
}

.super-app .grid .image .box-image .link-video .box-icon-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #356efc;
  box-shadow: 0 0 0 5px rgba(53, 110, 252, 0.3);
}

.super-app .grid .image .box-image .link-video .box-icon-link .icon {
  width: 15px;
  height: 15px;
  fill: #ffffff;
}

.super-app .grid .image img {
  width: 100%;
  height: auto;
}

/*======================================
  Hero slide
======================================*/
.hero-slide {
  padding: 159px 0 524px 0;
}

.hero-slide .container {
  position: relative;
}

.hero-slide.navy {
  background: #001f3f url(../images/bg-heronavy.png) bottom right no-repeat;
}

.hero-slide .grid {
  display: grid;
  grid-template-columns: 1fr 1.13fr;
  gap: 60px;
  align-items: center;
  padding: 0 0 0 32px;
}

.hero-slide .grid .text {
  padding: 0 0 0 0;
  position: relative;
}

.hero-slide .grid .text .subtitle {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 21.6px;
  text-align: left;
  color: #356efc;
  padding: 0 0 11px 0;
  display: block;
}

.hero-slide .grid .text .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 48px, 48px);
  font-weight: 700;
  line-height: 57.6px;
  text-align: left;
  color: #ffffff;
  letter-spacing: 1.4px;
  padding: 0 0 16px 0;
}

.hero-slide .grid .text p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 300;
  line-height: 24px;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.4px;
  padding: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0 0 30px 0;
}

.hero-slide .grid .text .link {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 17px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 600;
  line-height: 21.6px;
  text-align: left;
  color: #356efc;
  margin: 0 0 40px 0;
}

.hero-slide .grid .text .link .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(135deg);
}

.hero-slide .grid .text .link:hover {
  text-decoration: underline;
}

.hero-slide .grid .text .btns {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22.7px;
  align-items: stretch;
  padding: 0 18px 0 0;
}

.hero-slide .grid .text .btns a {
  width: 100%;
  height: 59px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.hero-slide .grid .text .btns a .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #ffffff;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(135deg);
}

.hero-slide .grid .image {
  position: relative;
  padding: 0 34px 0 0;
}

.hero-slide .grid .image .box-image {
  padding: 47px 75px 54px 76px;
  background: url(../images/box-image.png) center center no-repeat;
  background-size: 100% 100%;
}

.hero-slide .grid .image .box-image img {
  width: 100%;
  height: auto;
}

.hero-slide .grid .image .box-image .frame-images {
  position: absolute;
  top: -1000px;
  left: 0;
}

.hero-slide .grid .image .box-image .mask img {
  -webkit-clip-path: url(#svgMask1);
  clip-path: url(#svgMask1);
}

.hero-slide .grid .image .box-image.materials {
  padding: 47px 47px 54px 48px;
  background: url(../images/box-image-materials.png) center center no-repeat;
  background-size: 100% 100%;
}

.hero-slide .dots {
  position: absolute;
  left: 51px;
  bottom: 8px;
}

.hero-slide .dots ul {
  display: flex;
  align-items: center;
  gap: 8px;
}

.hero-slide .dots ul li button {
  font-size: 0;
  width: 33px;
  height: 0;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 0;
}

.hero-slide .dots ul li.slick-active button {
  border: 1px solid white;
}

/*======================================
  Lists items
======================================*/
.box-section .box-area {
  overflow: inherit;
}

.list-items {
  padding: 98px 0 56px 0;
}

.list-items .subtitle-list {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 21.6px;
  text-align: left;
  color: #356efc;
  padding: 0 0 6px 0;
  display: block;
}

.list-items .title-list {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 36px, 36px);
  font-weight: 700;
  line-height: 50.4px;
  text-align: left;
  color: #001f3f;
  letter-spacing: 1.2px;
  padding: 0 0 30px 0;
}

.list-items .flex-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 0 33px 0;
}

.list-items .flex-title .title-list {
  padding: 0;
}

.list-items .box-search {
  width: 377px;
  height: 56px;
}

.list-items .box-search .box {
  width: 377px;
  height: 56px;
  border: 1px solid #a9c7d3;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}

.list-items .box-search .box input {
  width: 100%;
  height: 100%;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 19.2px;
  text-align: left;
  color: #474747;
  padding: 0 60px 0 28px;
  border: none;
  outline: none;
}

.list-items .box-search .box .button,
.list-items .box-search .box button {
  width: 42px;
  height: 42px;
  background-color: #356efc;
  position: absolute;
  top: 6px;
  right: 8px;
  border: none;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.list-items .box-search .box .button .icon,
.list-items .box-search .box button .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #ffffff;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.list-items .grid-items {
  display: grid;
  grid-template-columns: 282px 1fr;
  gap: 135px;
  align-items: stretch;
}

.list-items .grid-items .sidebar .box-cats {
  padding: 32px 32px 19px 32px;
  background-color: #eef4ff;
  border-radius: 16px;
  margin: 0 0 32px 0;
}

.list-items .grid-items .sidebar .box-cats h4 {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 24px, 24px);
  font-weight: 700;
  line-height: 33.6px;
  text-align: left;
  color: #001f3f;
  letter-spacing: 0.2px;
  padding: 0 0 39px 0;
}

.list-items .grid-items .sidebar .box-cats ul li {
  padding: 12px 0;
}

.list-items .grid-items .sidebar .box-cats ul li a {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 10px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 25.2px;
  text-align: left;
  color: #001f3f;
  letter-spacing: 0.2px;
}

.list-items .grid-items .sidebar .box-cats ul li a .icon {
  width: 12px;
  height: 8px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: rotate(270deg);
}

.list-items .grid-items .sidebar .banner {
  width: 100%;
  height: 434px;
  background: #001f3f url(../img/logo-white.png) center center no-repeat;
  border-radius: 16px;
  position: sticky;
  top: 120px;
}

.list-items .grid-items .list .grid-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: stretch;
}

.banner-mobile {
  display: none;
}

/*======================================
  Slide item
======================================*/
.slide-item {
  padding: 102px 0 0 0;
}

.slide-item.featured {
  padding: 102px 0 0 0;
}

.slide-item.others {
  padding: 102px 0 114px 0;
}

.slide-item .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 36px, 36px);
  font-weight: 700;
  line-height: 43.2px;
  text-align: left;
  color: #001f3f;
  letter-spacing: 1.1px;
  padding: 0 0 37px 0;
}

.slide-item .title b,
.slide-item .title strong {
  color: #356efc;
}

.slide-item .slide {
  margin: 0 -12px;
}

.slide-item .slide .slick-slide {
  padding: 0 12px;
}

.slide-item .btn-slide {
  display: grid;
  grid-template-columns: 24px 1fr 24px;
  gap: 14px;
  align-items: stretch;
  padding: 47px 3px 0 1px;
}

.slide-item .btn-slide .btn-prev .icon,
.slide-item .btn-slide .btn-next .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.slide-item .btn-slide .btn-next .icon {
  transform: rotate(-180deg);
}

.slide-item .btn-slide .dots ul {
  display: flex;
  align-items: center;
  gap: 0;
  padding: 11px 0 0 0;
}

.slide-item .btn-slide .dots ul li {
  font-size: 0;
  width: 100%;
}

.slide-item .btn-slide .dots ul li button {
  font-size: 0;
  border: none;
  background: #d6d6d6;
  width: 100%;
}

.slide-item .btn-slide .dots ul li.slick-active button {
  background-color: #356efc;
}

/*======================================
  Ebook
======================================*/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWJvb2suY3NzIiwic291cmNlcyI6WyJlYm9vay5zY3NzIiwiY29yZS9fc2V0dGluZ3Muc2NzcyIsImNvcmUvX3V0aWxzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zZWxlY3RyaWMvc3JjL3NlbGVjdHJpYy5zY3NzIiwiY29yZS9fZ2xvYmFsLnNjc3MiLCJjb3JlL19ncmlkLnNjc3MiLCJjb3JlL19mb250cy5zY3NzIiwiY29yZS9fc3RydWN0dXJlLnNjc3MiLCJtb2R1bGVzL19idXR0b25zLnNjc3MiLCJtb2R1bGVzL19ib3gtbGlzdC1tYXRlcmlhbHMuc2NzcyIsIm1vZHVsZXMvX3BhZ2luYXRpb24uc2NzcyIsIm1vZHVsZXMvX25ld3NsZXR0ZXIuc2NzcyIsIm1vZHVsZXMvX3N1cGVyLWFwcC5zY3NzIiwibW9kdWxlcy9faGVyby1zbGlkZS5zY3NzIiwibW9kdWxlcy9fbGlzdC1pdGVtcy5zY3NzIiwibW9kdWxlcy9fc2xpZGUtaXRlbS5zY3NzIiwicGFnZXMvX2Vib29rLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29uZmlnXG5AaW1wb3J0IFwiY29yZS9zZXR0aW5nc1wiO1xuQGltcG9ydCBcImNvcmUvdXRpbHNcIjtcblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwic2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2Nzc1wiO1xuQGltcG9ydCBcInNlbGVjdHJpYy9zcmMvc2VsZWN0cmljLnNjc3NcIjtcblxuLy8gRGVmYXVsdHNcbkBpbXBvcnQgXCJjb3JlL2dsb2JhbFwiO1xuQGltcG9ydCBcImNvcmUvZ3JpZFwiO1xuQGltcG9ydCBcImNvcmUvZm9udHNcIjtcblxuLy8gU3RydWN0dXJhbFxuQGltcG9ydCBcImNvcmUvc3RydWN0dXJlXCI7XG5cbi8vIE1vZHVsZXNcbkBpbXBvcnQgXCJtb2R1bGVzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2JveC1saXN0LW1hdGVyaWFsc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1vZHVsZXMvbmV3c2xldHRlclwiO1xuQGltcG9ydCBcIm1vZHVsZXMvc3VwZXItYXBwXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9oZXJvLXNsaWRlXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9saXN0LWl0ZW1zXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9zbGlkZS1pdGVtXCI7XG5cbi8vIFBhZ2VzXG5AaW1wb3J0IFwicGFnZXMvZWJvb2tcIjtcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2V0dGluZ3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLy8gR3JpZFxuJGdyaWQtY29udGFpbmVyOiAxMzI1cHg7XG4kZ3JpZC1ndXR0ZXI6IDQwcHg7XG5cbi8vIE1lZGlhIHF1ZXJ5IGJyZWFrcG9pbnRzXG4kYnJlYWtwb2ludHM6IChcbiAgeHM6IDQ4MHB4LFxuICBzbTogNzY4cHgsXG4gIG1kOiA5OTRweCxcbiAgbGc6IDEzMjVweCxcbiAgeGw6IDE3OTJweFxuKTtcblxuLy8gRm9udHNcbiRmb250LW1haW46IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiRmb250LWFsdDogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtYXdlc29tZTogXCJGb250QXdlc29tZVwiO1xuJGZvbnQtc2l6ZTogMTZweDtcbiRmb250LWNvbG9yOiAjOGM4YzhjO1xuXG4vLyBDb2xvcnNcbiRjb2xvci1ibGFjazogIzAwMDAwMDtcbiRjb2xvci13aGl0ZTogI2ZmZmZmZjtcbiRjb2xvci1ncmF5OiAjYjViNWI1O1xuJGNvbG9yLWRhcmstZ3JheTogIzMzMzMzMztcblxuJGNvbG9yLWFxdWE6ICM3ZmRiZmY7XG4kY29sb3ItYmx1ZTogIzM1NmVmYztcbiRjb2xvci1kYXJrYmx1ZTogIzBjMWY0NDtcbiRjb2xvci1mdWNoc2lhOiAjZjAxMmJlO1xuJGNvbG9yLWdyZWVuOiAjMjJjNTVlO1xuJGNvbG9yLWxpbWU6ICMwMWZmNzA7XG4kY29sb3ItbWFyb29uOiAjODUxNDRiO1xuJGNvbG9yLW5hdnk6ICMwMDFmM2Y7XG4kY29sb3Itb2xpdmU6ICMzZDk5NzA7XG4kY29sb3Itb3JhbmdlOiAjZmY1NDFkO1xuJGNvbG9yLXB1cnBsZTogIzJmMTkyZTtcbiRjb2xvci1yZWQ6ICNmZTAwMDA7XG4kY29sb3Itc2lsdmVyOiAjZGRkZGRkO1xuJGNvbG9yLXRlYWw6ICMzOWNjY2M7XG4kY29sb3IteWVsbG93OiAjZmZjODAxO1xuXG4kY29sb3ItZXJyb3I6ICRjb2xvci1yZWQ7XG4kY29sb3Itc3VjY2VzczogJGNvbG9yLWdyZWVuO1xuJGNvbG9yLWJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcblxuLy8gTWFnbmlmaWMgUG9wdXBcbiRtZnAtaWZyYW1lLW1heC13aWR0aDogMTI4MHB4O1xuJG1mcC1pbmNsdWRlLWFycm93czogZmFsc2U7XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgU2FzcyBNaXhpbnMgYW5kIEZ1bmN0aW9uc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4vLyBDYWxjdWxhdGUgZW0gZnJvbSBmb250LXNpemVcclxuQGZ1bmN0aW9uIGVtKCRwaXhlbHMsICRjb250ZXh0OiAkZm9udC1zaXplKSB7XHJcbiAgQGlmICh1bml0bGVzcygkcGl4ZWxzKSkge1xyXG4gICAgJHBpeGVsczogJHBpeGVscyAqIDFweDtcclxuICB9XHJcbiAgQGlmICh1bml0bGVzcygkY29udGV4dCkpIHtcclxuICAgICRjb250ZXh0OiAkY29udGV4dCAqIDFweDtcclxuICB9XHJcbiAgQHJldHVybiAoJHBpeGVscyAvICRjb250ZXh0KSAqIDFlbTtcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlICUgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBjYWxjLXBlcmNlbnQoJHRhcmdldCwgJGNvbnRhaW5lcikge1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkY29udGFpbmVyKSAqIDEwMCU7XHJcbn1cclxuXHJcbi8vIFNob3J0Y3V0IGZvciBjYWxjLXBlcmNlbnQoKVxyXG5AZnVuY3Rpb24gY3AoJHRhcmdldCwgJGNvbnRhaW5lcikge1xyXG4gIEByZXR1cm4gY2FsYy1wZXJjZW50KCR0YXJnZXQsICRjb250YWluZXIpO1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdncteHMoJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIHhzKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dy1zbSgkdGFyZ2V0KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgc20pIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxcHg7XHJcbiAgQHJldHVybiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3LW1kKCR0YXJnZXQpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBtZCkgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDFweDtcclxuICBAcmV0dXJuICgkdGFyZ2V0IC8gJHZ3LWNvbnRleHQpICogMXZ3O1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdnctbGcoJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIGxnKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuQGZ1bmN0aW9uIGdldC12dy1sZy12YXIoJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIGxnKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gICR2YXI6IDIwMHB4O1xyXG4gIEByZXR1cm4gKCR2YXIgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dy14bCgkdGFyZ2V0KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgeGwpIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxcHg7XHJcbiAgQHJldHVybiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcclxufVxyXG5cclxuLy8gRnVuY3Rpb24gdG8gcmVtb3ZlIHVuaXQgZnJvbSBudW1iZXJcclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCRudW1iZXIpIHtcclxuICBAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3KCRicmVha3BvaW50LCAkaW5kZXgpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDE7XHJcbiAgJG51bWI6ICRpbmRleCAqIDU7XHJcbiAgQHJldHVybiAoJG51bWIvJHZ3LWNvbnRleHQpICogMTtcclxufVxyXG5cclxuQG1peGluIGNvcigkY29sb3IsICRvcGFjaXR5OiAwLjMpIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3I7XHJcbiAgLyogVGhlIEZhbGxiYWNrICovXHJcbiAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsICRvcGFjaXR5KTtcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3LWNhbGMoJGJyZWFrcG9pbnQsICRpbmRleCwgJHR5cGUsICR0YXJnZXQpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDFweDtcclxuICAkdmFsOiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcclxuICBAcmV0dXJuIGNhbGMoI3skaW5kZXh9ICN7JHR5cGV9ICN7JHZhbH0pO1xyXG59XHJcbkBmdW5jdGlvbiBnZXQtdnctY2FsYzIoJGJyZWFrcG9pbnQsICRpbmRleCwgJHR5cGUsICR0YXJnZXQpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDFweDtcclxuICAkaW5kZXh2YWw6ICgkdGFyZ2V0IC8gJHZ3LWNvbnRleHQpICogMXZ3O1xyXG4gIEByZXR1cm4gY2FsYygjeyRpbmRleH0gI3skdHlwZX0gI3skdGFyZ2V0fSk7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBjcm9zcy1icm93c2VyIGlubGluZS1ibG9ja1xyXG5AbWl4aW4gaW5saW5lLWJsb2NrKCRhbGlnbjogXCJ0b3BcIikge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogI3skYWxpZ259O1xyXG4gIHpvb206IDE7XHJcbiAgKmRpc3BsYXk6IGlubGluZTtcclxufVxyXG5cclxuQG1peGluIGZsZXgoJHR5cGU6IFwiXCIsICRkaXJlY3Rpb246IFwiXCIsICRhbGlnbjogXCJjZW50ZXJcIiwgJGp1c3RpZnk6IFwiXCIsICRnYXA6IFwiXCIpIHtcclxuICBAaWYgKCR0eXBlIT0gXCJcIikge1xyXG4gICAgZGlzcGxheTogJHR5cGUgKyBcIi1mbGV4XCI7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH1cclxuICBhbGlnbi1pdGVtczogJGFsaWduO1xyXG4gIEBpZiAoJGRpcmVjdGlvbiE9IFwiXCIpIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG4gIH1cclxuICBAaWYgKCRqdXN0aWZ5IT0gXCJcIikge1xyXG4gICAganVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcclxuICB9XHJcbiAgQGlmICgkZ2FwIT0gXCJcIikge1xyXG4gICAgZ2FwOiAkZ2FwO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGZvbnQoJGZhbWlseTogJGZvbnQtbWFpbiwgJHNpemU6ICRmb250LXNpemUsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMTIwJSwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1ibGFjaykge1xyXG4gIGZvbnQtZmFtaWx5OiAkZmFtaWx5O1xyXG4gIGZvbnQtc2l6ZTogY2xhbXAoMTFweCwgJHNpemUsICRzaXplKTtcclxuICBmb250LXdlaWdodDogJHdlaWdodDtcclxuICBsaW5lLWhlaWdodDogJGhlaWdodDtcclxuICB0ZXh0LWFsaWduOiAkYWxpZ247XHJcbiAgY29sb3I6ICRjb2xvcjtcclxufVxyXG5cclxuLy8gTWl4aW4gdG8gY3JlYXRlIGEgZ3JpZFxyXG5AbWl4aW4gY29sdW1ucygkcXVhbnQ6IHJlcGVhdCgxMiwgMWZyKSwgJGd1dHRlcjogMjAsICRhbGlnbjogdG9wLCAkdGVtcGxhdGU6IFwiXCIpIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogJHF1YW50O1xyXG4gIGdhcDogJGd1dHRlcjtcclxuICBhbGlnbi1pdGVtczogJGFsaWduO1xyXG4gIEBpZiAoJHRlbXBsYXRlIT0gXCJcIikge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogJHRlbXBsYXRlO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gdG8gY3JlYXRlIGEgZ3JpZCBjb250YWluZXJcclxuQG1peGluIGNvbnRhaW5lciB7XHJcbiAgbWF4LXdpZHRoOiAkZ3JpZC1jb250YWluZXI7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXIgLyAyKTtcclxufVxyXG5cclxuLy8gTWl4aW4gdG8gY3JlYXRlIGEgZ3JpZCBjb250YWluZXJcclxuQG1peGluIGNvbnRhaW5lci1mdWxsIHtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXIgLyAyKTtcclxufVxyXG5cclxuLy8gYW5pbWF0ZVxyXG5AbWl4aW4gYW5pbWF0ZSgkdGltZTogMC41cywgJGVhc2U6IGVhc2UsICRkZWxheTogMHMpIHtcclxuICB0cmFuc2l0aW9uOiBhbGwgJHRpbWUgJGVhc2UgJGRlbGF5O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsICR0aW1lICRlYXNlICRkZWxheTtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAkdGltZSAkZWFzZSAkZGVsYXk7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBtZWRpYSBxdWVyaWVzXHJcbkBtaXhpbiBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBcIlwiKSB7XHJcbiAgQGlmIChtYXAtZ2V0KCRicmVha3BvaW50cywgJG1pbikgYW5kIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWF4KSkge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWluKSArIDFweCkgYW5kIChtYXgtd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWF4KSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtaW49PSBcIlwiIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1heCkpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWF4PT0gXCJcIiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRtaW4pKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtaW4pIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNaXhpbiB0byBjcmVhdGUgYSBkZWZhdWx0IG1hcmdpblxyXG5AbWl4aW4gbWFrZS1kZWZhdWx0LW1hcmdpbigkcHJlZml4OiBcIm10b3BcIiwgJGxpbWl0OiAxMCwgJGRpcmVjdGlvbjogXCJ0b3BcIikge1xyXG4gIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JGluZGV4ICogNX1weDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogbGcsICRtYXg6IHhsKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KHhsLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBtZCwgJG1heDogbGcpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncobGcsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHNtLCAkbWF4OiBtZCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhtZCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogeHMsICRtYXg6IHNtKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KHNtLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgICAubW9iaWxlLSN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogeHMpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncoeHMsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICAgIC5tb2JpbGUtI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBwYWRkaW5nXHJcbkBtaXhpbiBtYWtlLWRlZmF1bHQtcGFkZGluZygkcHJlZml4OiBcIm10b3BcIiwgJGxpbWl0OiAxMCwgJGRpcmVjdGlvbjogXCJ0b3BcIikge1xyXG4gIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRpbmRleCAqIDV9cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IGxnLCAkbWF4OiB4bCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyh4bCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IG1kLCAkbWF4OiBsZykge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhsZywgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHNtLCAkbWF4OiBtZCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhtZCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHhzLCAkbWF4OiBzbSkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhzbSwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICAgIC5tb2JpbGUtI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBwYWRkaW5nLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogeHMpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncoeHMsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgICAubW9iaWxlLSN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGVhc2lseSB1c2UgYW4gU1ZHIGlubGluZSBpbiBDU1NcclxuLy8vIHdpdGhvdXQgZW5jb2RpbmcgaXQgdG8gYmFzZTY0LCBzYXZpbmcgYnl0ZXMuXHJcbi8vLyBJdCBhbHNvIGhlbHBzIHdpdGggYnJvd3NlciBzdXBwb3J0LlxyXG4vLy8gQSBzbWFsbCBmdW5jdGlvbiBhbGxvd2luZyBza2lwcGluZyBiYXNlNjQgZW5jb2RpbmdcclxuLy8vIGFuZCBzaW1wbHkgcGFzdGluZyB0aGUgU1ZHIG1hcmt1cCByaWdodCBpbiB0aGUgQ1NTLlxyXG4vLy8gQGF1dGhvciBKYWtvYiBFcmlrc2VuXHJcbi8vLyBAbGluayBodHRwOi8vY29kZXBlbi5pby9qYWtvYi1lL3Blbi9kb01vTUxcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3ZnIC0gU1ZHIGltYWdlIHRvIGVuY29kZVxyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEVuY29kZWQgU1ZHIGRhdGEgdXJpXHJcbkBmdW5jdGlvbiBzdmctdXJpKCRzdmcpIHtcclxuICAkZW5jb2RlZDogXCJcIjtcclxuICAkc2xpY2U6IDIwMDA7XHJcbiAgJGluZGV4OiAwO1xyXG4gICRsb29wczogY2VpbChzdHItbGVuZ3RoKCRzdmcpIC8gJHNsaWNlKTtcclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsb29wcyB7XHJcbiAgICAkY2h1bms6IHN0ci1zbGljZSgkc3ZnLCAkaW5kZXgsICRpbmRleCArICRzbGljZSAtIDEpO1xyXG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssICdcIicsIFwiJ1wiKTtcclxuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCBcIjxcIiwgXCIlM0NcIik7XHJcbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgXCI+XCIsIFwiJTNFXCIpO1xyXG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssIFwiJlwiLCBcIiUyNlwiKTtcclxuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCBcIiNcIiwgXCIlMjNcIik7XHJcbiAgICAkZW5jb2RlZDogI3skZW5jb2RlZH0jeyRjaHVua307XHJcbiAgICAkaW5kZXg6ICRpbmRleCArICRzbGljZTtcclxuICB9XHJcbiAgQHJldHVybiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCN7JGVuY29kZWR9XCIpO1xyXG59XHJcblxyXG4vLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXHJcbi8vLyBAbGluayBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvMWI0ZjJkYTU1Mjc4MzAwODhlNGRcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2VcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcclxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XHJcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XHJcbiAgQGlmICRpbmRleCB7XHJcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICtcclxuICAgICAgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XHJcbiAgfVxyXG4gIEByZXR1cm4gJHN0cmluZztcclxufVxyXG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIkc2VsZWN0cmljLW1haW4tY29sb3I6ICAgICAgI0RERCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ29sb3IgdXNlZCBpbiBib3JkZXJcbiRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yOiAjQkJCICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciB1c2VkIGluIGJ1dHRvblxuJHNlbGVjdHJpYy10ZXh0LWNvbG9yOiAgICAgICM0NDQgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIHVzZWQgaW4gbGFiZWxcbiRzZWxlY3RyaWMtYmctY29sb3I6ICAgICAgICAjRjhGOEY4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBCYWNrZ3JvdW5kIGNvbG9yXG4kc2VsZWN0cmljLWJ0bi1iZy1jb2xvcjogICAgI0Y4ZjhmOCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQnV0dG9uIGJhY2tncm91bmQgY29sb3JcbiRzZWxlY3RyaWMtaGVpZ2h0OiAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPdXRlciBoZWlnaHRcbiRzZWxlY3RyaWMtc3BhY2luZzogICAgICAgICAxMHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBMYWJlbCBsZWZ0IHBhZGRpbmdcbiRzZWxlY3RyaWMtYm9yZGVyLXdpZHRoOiAgICAxcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPdXRlciBib3JkZXIgd2lkdGhcbiRzZWxlY3RyaWMtYm9yZGVyLXJhZGl1czogICAwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBCb3JkZXIgcmFkaXVzXG4kc2VsZWN0cmljLWlubmVyLWhlaWdodDogICAgJHNlbGVjdHJpYy1oZWlnaHQgLSAoJHNlbGVjdHJpYy1ib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDsgLy8gSW5uZXIgaGVpZ2h0XG4kc2VsZWN0cmljLWZvbnQtc2l6ZTogICAgICAgMTJweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRm9udCBzaXplXG5cbi5zZWxlY3RyaWMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc2VsZWN0cmljLXJlc3BvbnNpdmUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlbGVjdHJpYyB7XG4gIGJvcmRlcjogJHNlbGVjdHJpYy1ib3JkZXItd2lkdGggc29saWQgJHNlbGVjdHJpYy1tYWluLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0cmljLWJvcmRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQ6ICRzZWxlY3RyaWMtYmctY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBtYXJnaW46IDAgJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQgMCAkc2VsZWN0cmljLXNwYWNpbmc7XG4gICAgZm9udC1zaXplOiAkc2VsZWN0cmljLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgY29sb3I6ICRzZWxlY3RyaWMtdGV4dC1jb2xvcjtcbiAgICBoZWlnaHQ6ICRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2VsZWN0cmljLWlubmVyLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdHJpYy1idG4tYmctY29sb3I7XG4gICAgY29sb3I6ICRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250OiAwLzAgYTtcbiAgICAqZm9udDogMjBweC8jeyRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0fSBMdWNpZGEgU2FucyBVbmljb2RlLCBBcmlhbCBVbmljb2RlIE1TLCBBcmlhbDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHNlbGVjdHJpYy1zZWNvbmRhcnktY29sb3I7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc2VsZWN0cmljLWZvY3VzIC5zZWxlY3RyaWMge1xuICBib3JkZXItY29sb3I6IGRhcmtlbigkc2VsZWN0cmljLW1haW4tY29sb3IsIDIwJSk7XG59XG5cbi5zZWxlY3RyaWMtaG92ZXIgLnNlbGVjdHJpYyB7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRzZWxlY3RyaWMtbWFpbi1jb2xvciwgMTAlKTtcblxuICAuYnV0dG9uIHtcbiAgICBjb2xvcjogZGFya2VuKCRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yLCAxMCUpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJHNlbGVjdHJpYy1zZWNvbmRhcnktY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3RyaWMtb3BlbiB7XG4gIHotaW5kZXg6IDk5OTk7XG5cbiAgLnNlbGVjdHJpYyB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHNlbGVjdHJpYy1tYWluLWNvbG9yLCAxMCUpO1xuICB9XG5cbiAgLnNlbGVjdHJpYy1pdGVtcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnNlbGVjdHJpYy1kaXNhYmxlZCB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNlbGVjdHJpYy1oaWRlLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBzZWxlY3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuXG4gICYuc2VsZWN0cmljLWlzLW5hdGl2ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIHNlbGVjdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdHJpYy1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAqZm9udDogMC8wIGEgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0cmljLXRlbXAtc2hvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLyogSXRlbXMgYm94ICovXG4uc2VsZWN0cmljLWl0ZW1zIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICRzZWxlY3RyaWMtYmctY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkc2VsZWN0cmljLW1haW4tY29sb3IsIDEwJSk7XG4gIHotaW5kZXg6IC0xO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAtNnB4O1xuXG4gIC5zZWxlY3RyaWMtc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAuc2VsZWN0cmljLWFib3ZlICYge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gIH1cblxuICB1bCwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAkc2VsZWN0cmljLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBtaW4taGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuXG4gICAgJi5oaWdobGlnaHRlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRDBEMEQwO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRDVENUQ1O1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuICB9XG5cbiAgLmRpc2FibGVkIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM2NjYgIWltcG9ydGFudDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC5zZWxlY3RyaWMtZ3JvdXAge1xuICAgIC5zZWxlY3RyaWMtZ3JvdXAtbGFiZWwge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogIzQ0NDtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIGxpIHtcbiAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgfVxuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2xvYmFsIHJlc2V0c1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcclxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxyXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXHJcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXHJcbmIsIHUsIGksIGNlbnRlcixcclxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcclxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXHJcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxyXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcclxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxyXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcclxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgZm9udC1zaXplOiAxMDAlO1xyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xyXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxyXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbmJvZHkge1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcbm9sLCB1bCB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5ibG9ja3F1b3RlLCBxIHtcclxuICBxdW90ZXM6IG5vbmU7XHJcbn1cclxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXHJcbnE6YmVmb3JlLCBxOmFmdGVyIHtcclxuICBjb250ZW50OiAnJztcclxuICBjb250ZW50OiBub25lO1xyXG59XHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2xvYmFsIHN0eWxlc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbmh0bWwge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1iYWNrZ3JvdW5kO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcclxuICBib3gtc2l6aW5nOiBpbmhlcml0O1xyXG59XHJcblxyXG5odG1sLCBidXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHtcclxuICBjb2xvcjogJGZvbnQtY29sb3I7XHJcbn1cclxuXHJcbmEge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuYnV0dG9uIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmE6Zm9jdXMsIGJ1dHRvbjpmb2N1cyxcclxuYTphY3RpdmUsIGJ1dHRvbjphY3RpdmUge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbnVsLCBsaSB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxub2wsIHVsIHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuaW1nLCBpZnJhbWUsIHZpZGVvIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4uaXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQ6IDAvMCBhO1xyXG4gIHRleHQtc2hhZG93OiBub25lO1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmNmOmJlZm9yZSwgLmNmOmFmdGVyIHtcclxuICBjb250ZW50OiBcIiBcIjtcclxuICBkaXNwbGF5OiB0YWJsZTtcclxufVxyXG5cclxuLmNsZWFyLCAuY2Y6YWZ0ZXIge1xyXG4gIGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4uY2Yge1xyXG4gIHpvb206IDE7XHJcbn1cclxuXHJcbi52YWxpZ24ge1xyXG4gIGksIC5jZW50ZXIge1xyXG4gICAgQGluY2x1ZGUgaW5saW5lLWJsb2NrKG1pZGRsZSk7XHJcbiAgfVxyXG5cclxuICBpIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi5hbGlnbi1sZWZ0IHtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4uYWxpZ24tcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4uYWxpZ24tY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmhpZGVUZXh0e1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRleHQtaW5kZW50OiAxMDElO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmZhZGUge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGxpbmVhcjtcclxuXHJcbiAgJi5pbiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbGxhcHNlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAmLmluIHsgZGlzcGxheTogYmxvY2s7IH1cclxufVxyXG5cclxuLmNvbGxhcHNpbmcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBoZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIHZpc2liaWxpdHk7XHJcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XHJcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGVhc2Uge1xyXG4gIDAlLCAyMCUsIDQwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cclxuICAxMCUsIDMwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgOHB4LCAwKTsgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW4ge1xyXG4gIDAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbn1cclxuXHJcbi8qIG92ZXJsYXkgYXQgc3RhcnQgKi9cclxuLm1mcC1mYWRlLm1mcC1iZyB7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQ7XHJcbn1cclxuLyogb3ZlcmxheSBhbmltYXRlIGluICovXHJcbi5tZnAtZmFkZS5tZnAtYmcubWZwLXJlYWR5IHtcclxuICBvcGFjaXR5OiAwLjg7XHJcbn1cclxuLyogb3ZlcmxheSBhbmltYXRlIG91dCAqL1xyXG4ubWZwLWZhZGUubWZwLWJnLm1mcC1yZW1vdmluZyB7XHJcbiAgb3BhY2l0eTogMDtcclxufVxyXG5cclxuLyogY29udGVudCBhdCBzdGFydCAqL1xyXG4ubWZwLWZhZGUubWZwLXdyYXAgLm1mcC1jb250ZW50IHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcclxufVxyXG4vKiBjb250ZW50IGFuaW1hdGUgaXQgKi9cclxuLm1mcC1mYWRlLm1mcC13cmFwLm1mcC1yZWFkeSAubWZwLWNvbnRlbnQge1xyXG4gIG9wYWNpdHk6IDE7XHJcbn1cclxuLyogY29udGVudCBhbmltYXRlIG91dCAqL1xyXG4ubWZwLWZhZGUubWZwLXdyYXAubWZwLXJlbW92aW5nIC5tZnAtY29udGVudCB7XHJcbiAgb3BhY2l0eTogMDtcclxufVxyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEdyaWRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46eGwsICRtYXg6JycpIHtcbiAgLmhpZGRlbi1mdWxsaGQge2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XG4gIC52aXNpYmxlLWZ1bGxoZCB7ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDt9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOmxnLCAkbWF4OnhsKSB7XG4gIC5oaWRkZW4tZnVsbERlc2t0b3Age2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XG4gIC52aXNpYmxlLWZ1bGxEZXNrdG9wIHtkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O31cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46bWQsICRtYXg6bGcpIHtcbiAgLmhpZGRlbi1kZXNrdG9wIHtkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7fVxuICAudmlzaWJsZS1kZXNrdG9wIHtkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O31cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46c20sICRtYXg6bWQpIHtcbiAgLmhpZGRlbi10YWJsZXQge2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XG4gIC52aXNpYmxlLXRhYmxldCB7ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDt9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOnhzLCAkbWF4OnNtKSB7XG4gIC5oaWRkZW4tcGhhYmxldHMge2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDt9XG4gIC52aXNpYmxlLXBoYWJsZXRzIHtkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O31cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46JycsICRtYXg6eHMpIHtcbiAgLmhpZGRlbi1waG9uZSB7ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O31cbiAgLnZpc2libGUtcGhvbmUge2Rpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7fVxufVxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46JycsICRtYXg6c20pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuLmNvbnRhaW5lci1mdWxsIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZ1bGw7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjonJywgJG1heDpzbSkge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG59XG5cbkBpbmNsdWRlIG1ha2UtZGVmYXVsdC1tYXJnaW4obXRvcCwxMCx0b3ApO1xuQGluY2x1ZGUgbWFrZS1kZWZhdWx0LXBhZGRpbmcocHRvcCwxMCx0b3ApO1xuXG5AaW5jbHVkZSBtYWtlLWRlZmF1bHQtbWFyZ2luKG1ib3R0b20sMTAsYm90dG9tKTtcbkBpbmNsdWRlIG1ha2UtZGVmYXVsdC1wYWRkaW5nKHBib3R0b20sMTAsYm90dG9tKTtcblxuLmZsIHsgZmxvYXQ6IGxlZnQ7IH1cbi5mciB7IGZsb2F0OiByaWdodDsgfVxuXG4uY2VudGVyLWJsb2NrIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgZmxvYXQ6IG5vbmU7XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEZvbnRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vKkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ZvbnRlIG5hbWUnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGUtbmFtZS5lb3QnKTtcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL2ZvbnRlLW5hbWUuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlLW5hbWUud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnLi4vZm9udHMvZm9udGUtbmFtZS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mb250ZS1uYW1lLnN2ZyNmb250ZS1uYW1lJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufSovXG5cbi8qIGxhdGluLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDEwMCA5MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvSW50ZXItaXRhbGljLWV4dC53b2ZmMikgZm9ybWF0KFwid29mZjJcIik7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsXG4gICAgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG59XG4vKiBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDEwMCA5MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvSW50ZXItaXRhbGljLndvZmYyKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LFxuICAgIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbn1cbi8qIGxhdGluLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMCA5MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvSW50ZXItZXh0LndvZmYyKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRixcbiAgICBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMTAwIDkwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybCguLi9mb250cy9JbnRlci53b2ZmMikgZm9ybWF0KFwid29mZjJcIik7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSxcbiAgICBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnQtbWFpbjtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWFsdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwO1xufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBNYWluIHN0cnVjdHVyZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuaHRtbCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG5ib2R5IHtcbiAgLy9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JnLnBuZykgdG9wIGNlbnRlciBuby1yZXBlYXQ7XG59XG5cbi5tYl9ZVFBCYXIuaW5saW5lUGxheWVyLmNvbXBhY3Qge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uaGVhZGVyLXNjcm9sbGluZyB7XG4gIGhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW5hdnk7XG4gIH1cbn1cblxuLmJveC1zZWN0aW9uIHtcbiAgcGFkZGluZzogMCAxMnB4O1xuICAmLm5hdnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1uYXZ5O1xuICB9XG4gIC5ib3gtYXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgJi5vdmVyZmxvdyB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuICAmLm1hcmdpbi1ib3R0b20ge1xuICAgIC5ib3gtYXJlYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNDBweDtcbiAgICB9XG4gIH1cbiAgJi5tYXJnaW4tdG9wLWRlZmF1bHQge1xuICAgIC5ib3gtYXJlYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICB9XG4gIH1cbiAgJi5tYXJnaW4tdG9wIHtcbiAgICAuYm94LWFyZWEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogLTE4N3B4O1xuICAgIH1cbiAgfVxuICAmLm1hcmdpbi10b3AtcGFydG5lcnMge1xuICAgIC5ib3gtYXJlYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiAtMjkwcHg7XG4gICAgfVxuICB9XG4gICYubWFyZ2luLXRvcC1ibG9nIHtcbiAgICAuYm94LWFyZWEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogLTQ4N3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTQ1cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIGhlYWRlclxuaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAzMHB4IDA7XG4gIHotaW5kZXg6IDEwO1xuICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNzkycHg7XG4gIH1cbiAgLmdyaWQge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxNDlweCAxZnIsICRndXR0ZXI6IDEwcHgsICRhbGlnbjogY2VudGVyLCAkdGVtcGxhdGU6IFwibG9nbyBtZW51XCIpO1xuICAgIC5sb2dvIHtcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmljbyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaXRlbXMge1xuICAgICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDFmciAzNzZweCwgJGd1dHRlcjogMTBweCwgJGFsaWduOiBjZW50ZXIsICR0ZW1wbGF0ZTogXCJtZW51IGxpbmtzXCIpO1xuICAgICAgLmxvZ28tbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAuY2xvc2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuYm94LW1lbnUge1xuICAgICAgbmF2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGdhcDogMjdweCk7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgkdGltZTogMC4zcyk7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGdhcDogOHB4KTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNTAwLCAkaGVpZ2h0OiAxOS4ycHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IGNhbGMoOTAlICsgMjhweCk7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiA4MDBweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxMi41cHggMTNweCAxMi41cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGUyNjUyIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC05cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAub3ZlcmxheSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuZ3JpZC1zdWJtZW51IHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzBlMjY1MjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogMS4xMmZyIDFmciwgJGd1dHRlcjogMCwgJGFsaWduOiBzdHJldGNoLCAkdGVtcGxhdGU6IFwiXCIpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgLmxpbmtzIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDM5cHggMzZweCAzN3B4IDM1cHg7XG4gICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDExcHggMDtcbiAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogc3RhcnQsICRnYXA6IDExcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDguNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJGNvbG9yLWdyZWVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3ZWlnaHQ6IDUwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRoZWlnaHQ6IDE5LjJweCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgM3B4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2l6ZTogMTJweCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRoZWlnaHQ6IDE2LjhweCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb2xvcjogcmdiYSgkY29sb3Itd2hpdGUsIDAuNylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQyMTQ4O1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogNDdweCA1MHB4IDM3cHggNzRweDtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwZDIxNDggdXJsKC4uL2ltYWdlcy9iZy1zdWJtZW51LnBuZykgYm90dG9tIHJpZ2h0IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgIC50aXRsZS1zaWRlYmFyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDUwMCwgJGhlaWdodDogMTkuMnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDhweCA0cHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAgICAgICAgICAgICAkc2l6ZTogMTJweCxcbiAgICAgICAgICAgICAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgICAgICAgICAgICAgJGhlaWdodDogMTYuOHB4LFxuICAgICAgICAgICAgICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAgICAgICAgICAgICAkY29sb3I6IHJnYmEoJGNvbG9yLXdoaXRlLCAwLjcpXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4IDRweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNDFweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRnYXA6IDRweCk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE0cHgsICR3ZWlnaHQ6IDYwMCwgJGhlaWdodDogMTYuOHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLWJsdWUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDI1cHggMCAwIDZweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRjb2xvci1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5ib3gge1xuICAgICAgICAgICAgICAgICAgICAuYm94LWxpc3QtcG9zdC1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogOTVweCAxZnIsICRndXR0ZXI6IDE2cHgsICRhbGlnbjogc3RhcnQsICR0ZW1wbGF0ZTogXCJcIik7XG4gICAgICAgICAgICAgICAgICAgICAgLmltYWdlcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnBvc3RzIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQ3cHggMzVweCAzN3B4IDM1cHg7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGQyMTQ4IHVybCguLi9pbWFnZXMvYmctc3VibWVudS5wbmcpIGJvdHRvbSByaWdodCBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAudGl0bGUtc2lkZWJhciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA1MDAsICRoZWlnaHQ6IDE5LjJweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci13aGl0ZSk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCA4cHggNHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAgICAgICAgICAgJHNpemU6IDEycHgsXG4gICAgICAgICAgICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgICAgICAgICAgICRoZWlnaHQ6IDE2LjhweCxcbiAgICAgICAgICAgICAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgICAgICAgICAgICAgJGNvbG9yOiByZ2JhKCRjb2xvci13aGl0ZSwgMC43KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweCA0cHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBhLmxpbmsge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkZ2FwOiA0cHgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNHB4LCAkd2VpZ2h0OiA2MDAsICRoZWlnaHQ6IDE2LjhweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1ibHVlKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDAgMCA2cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAuYm94IHtcbiAgICAgICAgICAgICAgICAgICAgLmJveC1saXN0LXBvc3QtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogOTVweCAxZnIsICRndXR0ZXI6IDE2cHgsICRhbGlnbjogY2VudGVyLCAkdGVtcGxhdGU6IFwiXCIpO1xuICAgICAgICAgICAgICAgICAgICAgIC5pbWFnZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIC50aXRsZS1ibG9nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDEycHgsICR3ZWlnaHQ6IDcwMCwgJGhlaWdodDogMTYuOHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLW5hdnkpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZTI2NTI7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0IHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBlMjY1MjtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgMjhweCk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5vdGhlcnMtbGluayB7XG4gICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogc3BhY2UtYmV0d2Vlbik7XG4gICAgICAubGFuZ3Mge1xuICAgICAgICB3aWR0aDogODNweDtcbiAgICAgICAgaGVpZ2h0OiA1MXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYTU1O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuICAgICAgICAuc2VsZWN0ZWQge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuLCAkZ2FwOiA4cHgpO1xuICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIC5mbGFnIHtcbiAgICAgICAgICAgIHdpZHRoOiAyOXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyOXB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDlweDtcbiAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNlbGVjdC1mbGFnIHtcbiAgICAgICAgICB3aWR0aDogODNweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYTU1O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDgwJTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDBweCAxMnB4IDEycHggMTJweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyOXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5vcGVuLWxhbmcge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XG4gICAgICAgICAgLnNlbGVjdGVkIHtcbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnNlbGVjdC1mbGFnIHtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxvZ2luIHtcbiAgICAgICAgd2lkdGg6IDgzcHg7XG4gICAgICAgIGhlaWdodDogNTFweDtcbiAgICAgIH1cbiAgICAgIC50ZXN0LWZyZWUge1xuICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgIGhlaWdodDogNTFweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJiNibG9nIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTI2MnB4O1xuICAgIH1cbiAgICAuZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogMTQ5cHggMWZyLCAkZ3V0dGVyOiAxMHB4LCAkYWxpZ246IGNlbnRlciwgJHRlbXBsYXRlOiBcImxvZ28gbWVudVwiKTtcbiAgICAgIC5pdGVtcyB7XG4gICAgICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIgMjMwcHgsICRndXR0ZXI6IDEwcHgsICRhbGlnbjogY2VudGVyLCAkdGVtcGxhdGU6IFwibWVudSBzZWFyY2hcIik7XG4gICAgICB9XG4gICAgICAuYm94LXNlYXJjaCB7XG4gICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgICAgICAuYm94IHtcbiAgICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGNvbG9yLXdoaXRlLCAwLjIpO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMTkuMnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNjBweCAwIDE4cHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICByaWdodDogNnB4O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XG4gICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBzdHJva2U6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IGxnLCAkbWF4OiB4bCkge1xuICBoZWFkZXIgLmdyaWQgLmJveC1tZW51IG5hdiB1bCB7XG4gICAgZ2FwOiBnZXQtdncteGwoMjdweCkgIWltcG9ydGFudDtcbiAgfVxufVxuLy8gZW5kIGhlYWRlclxuLy8gbWFpblxubWFpbiB7XG59XG4vLyBlbmQgbWFpblxuLy8gZm9vdGVyXG5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDcuOTlkZWcsICMwYzFmNDQgNDMuMTIlLCAjMWY0ZWFhIDE1My41JSk7XG4gIC5ncmlkIHtcbiAgICBwYWRkaW5nOiA5NHB4IDAgMjhweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRjb2xvci13aGl0ZSwgMC4xKTtcbiAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogNTU1cHggMS43MmZyIDEuNWZyIDFmciwgJGd1dHRlcjogMjBweCwgJGFsaWduOiBzdGFydCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAuYm94LWxvZ28ge1xuICAgICAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgICAgIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDIyMnB4O1xuICAgICAgICBoZWlnaHQ6IDY3cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMjRweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6IHJnYmEoJGNvbG9yLXdoaXRlLCAwLjcpKTtcbiAgICAgICAgcGFkZGluZzogMjdweCAwIDIycHggMDtcbiAgICAgIH1cbiAgICAgIC5sb2dvcy1mb290ZXIge1xuICAgICAgICB3aWR0aDogNDQ1cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIH1cbiAgICAgIC5ib3gtZ29vZ2xlIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGdhcDogMTNweCk7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAwIDRweDtcbiAgICAgICAgLmxvZ28tZ29vZ2xlIHtcbiAgICAgICAgICB3aWR0aDogMjEuMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDIxLjUycHg7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTNweCwgJHdlaWdodDogNTAwLCAkaGVpZ2h0OiAxNS43M3B4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgJi5yYXRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRnYXA6IDRweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxM3B4LCAkd2VpZ2h0OiA3MDAsICRoZWlnaHQ6IDE1LjczcHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAjZmZiODAwKTtcbiAgICAgICAgICAgIC5zdGFycyB7XG4gICAgICAgICAgICAgIHdpZHRoOiA4NC42N3B4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5saW5rcyB7XG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDcwMCwgJGhlaWdodDogMjRweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci13aGl0ZSk7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMnB4IDA7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMTJweCAwO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAyNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdyaWQtc3VwcG9ydCB7XG4gICAgcGFkZGluZzogMzBweCAwIDI4cHggMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkY29sb3Itd2hpdGUsIDAuMSk7XG4gICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDAuOWZyIDAuOWZyIDAuOWZyIDFmciwgJGd1dHRlcjogMjBweCwgJGFsaWduOiBzdGFydCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAubGlua3Mge1xuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDJweCAwO1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBzdGFydCwgJGdhcDogMTZweCk7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTRweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAxOS42cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3Itd2hpdGUpO1xuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHN0cm9rZTogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTRweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAxOS42cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc29jaWFsLW1lZGlhIHtcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IHN0YXJ0LCAkanVzdGlmeTogZW5kLCAkZ2FwOiAxNC4ycHgpO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgICAgICAgICAgd2lkdGg6IDM3Ljg3cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM3Ljg3cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzU2ZWZjO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDgwJTtcbiAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDM3Ljg3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzcuODdweDtcbiAgICAgICAgICAgICAgZmlsbDogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICAmLnN0cm9rZSB7XG4gICAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb3B5cmlnaHQge1xuICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuLCAkZ2FwOiAxNnB4KTtcbiAgICBwYWRkaW5nOiAzMHB4IDAgNTZweCAwO1xuICAgIHAge1xuICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAyNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogIzcwNzg4Yyk7XG4gICAgfVxuICAgIC5iYWNrLXRvcCB7XG4gICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkZ2FwOiAxNnB4KTtcbiAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDEycHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMTQuNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgIC5pY29uIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHN0cm9rZTogJGNvbG9yLWJsdWU7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBlbmQgZm9vdGVyXG5cbi5tb2RhbC1ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYm94LW1vZGFsIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkY29sb3ItYmxhY2ssIDAuNyk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgcGFkZGluZzogMjBweDtcbiAgbWluLWhlaWdodDogNzAwcHg7XG4gIC5tb2RhbC1vdmVybGF5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICAuY29udGVudC1tb2RhbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIHdpZHRoOiAxMjE2cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAuY2xvc2Uge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMjBweCwgJHdlaWdodDogNzAwLCAkaGVpZ2h0OiAxMjAlLCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgIH1cbiAgICAuZ3JpZC1tb2RhbCB7XG4gICAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogNDguNSUgNTEuNSUsICRndXR0ZXI6IDAsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAgIC50ZXh0IHtcbiAgICAgICAgcGFkZGluZzogODVweCAxMDNweCA4NXB4IDY4cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWY0ZmY7XG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMThweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAyMS42cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3ItYmx1ZSk7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAyNXB4IDA7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAyOHB4LCAkd2VpZ2h0OiA3MDAsICRoZWlnaHQ6IDEyMCUsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3ItZGFya2JsdWUpO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMjVweCAwO1xuICAgICAgICAgIGIsXG4gICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAyNS42cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiByZ2JhKCRjb2xvci1ibGFjaywgMC43KSk7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCA0OHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJveC12aWRlby1tb2RhbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybSB7XG4gICAgICAgIHBhZGRpbmc6IDc2cHggMTAzcHggNTdweCAxMDNweDtcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDFmciAxZnIsICRndXR0ZXI6IDIwcHgsICRhbGlnbjogc3RhcnQsICR0ZW1wbGF0ZTogXCJcIik7XG4gICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2E5YzdkMztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNTAwLCAkaGVpZ2h0OiAyMi40cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3ItYmxhY2spO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjJweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA1MDAsICRoZWlnaHQ6IDIyLjRweCwgJGFsaWduOiBjZW50ZXIsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmx1ZTtcbiAgICAgICAgICBoZWlnaHQ6IDUxcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzM3B4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2VsZWN0cmljLXdyYXBwZXIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgLnNlbGVjdHJpYyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2E5YzdkMztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDUwMCwgJGhlaWdodDogNDZweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgIGhlaWdodDogNDZweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDM4cHggMCAyMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGNvbG9yLWJsdWU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGNvbG9yLWJsdWU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5zZWxlY3RyaWMtaG92ZXIge1xuICAgICAgICAgICAgLnNlbGVjdHJpYyB7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAud3BjZjctbGlzdC1pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDdweCAwIDMxcHggMDtcbiAgICAgICAgICAud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE0cHgsICR3ZWlnaHQ6IDUwMCwgJGhlaWdodDogMjIuNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogcmdiYSgxMiwgMzEsIDY4LCAwLjcpKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwIDAgMjZweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDU5LCA1OCwgODksIDAuMSk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3ItYmx1ZTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGNvbG9yLWJsdWU7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAxNHB4O1xuICAgICAgICAgICAgICBsZWZ0OiAzcHg7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC53cGNmNy1saXN0LWl0ZW0tbGFiZWwge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDEycHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMTQwJSwgJGFsaWduOiBjZW50ZXIsICRjb2xvcjogcmdiYSgkY29sb3ItbmF2eSwgMC43KSk7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYm9keS5sb2FkaW5nIHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDIwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItbmF2eSwgMC43KTtcbiAgfVxufVxuXG4jcGxheWVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQnV0dG9uc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmJ0biB7XG5cdEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuXHRAaW5jbHVkZSBpbmxpbmUtYmxvY2soJGFsaWduOiBtaWRkbGUpO1xufVxuLmJ0bi1mdWxsIHtcblx0QGluY2x1ZGUgYW5pbWF0ZSgkdGltZTogMC4zcyk7XG5cdEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmx1ZTtcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XG5cdEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDYwMCwgJGhlaWdodDogMTkuMnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogIzFmNGRmMTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjMWY0ZGYxO1xuXHR9XG59XG4uYnRuLWJvcmRlciB7XG5cdEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuXHRAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcblx0Ym9yZGVyOiAxcHggc29saWQgI2RkZTFlNjtcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcblx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuXHRAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA2MDAsICRoZWlnaHQ6IDE5LjJweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICM2NDZjNzgpO1xuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0fVxufVxuLmJ0bi1ib3JkZXItYmx1ZSB7XG5cdEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuXHRAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsdWU7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDYwMCwgJGhlaWdodDogMTkuMnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLWJsdWUpO1xuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcblx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHR9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHhsLCAkbWF4OiBcIlwiKSB7XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBsZywgJG1heDogeGwpIHtcbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IG1kLCAkbWF4OiBsZykge1xufVxuQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogc20sICRtYXg6IG1kKSB7XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiB4cywgJG1heDogc20pIHtcbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHhzKSB7XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgTGlzdHNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuLmJveC1saXN0LW1hdGVyaWFscyB7XHJcbiAgd2lkdGg6IDM4M3B4O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoI2E5YzdkMywgMC4zKTtcclxuICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gIHBhZGRpbmc6IDE3cHggMjJweCAyMnB4IDI2cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIC5pbWFnZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMjA5cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmNGZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIC50YWcge1xyXG4gICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNHB4LCAkd2VpZ2h0OiA2MDAsICRoZWlnaHQ6IDE2LjhweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICM2NjcwODUpO1xyXG4gICAgICBwYWRkaW5nOiA4cHggMTBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDlweDtcclxuICAgICAgbGVmdDogOXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmOWZmO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIH1cclxuICB9XHJcbiAgaDMge1xyXG4gICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMThweCwgJHdlaWdodDogNzAwLCAkaGVpZ2h0OiAyNS4ycHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3ItbmF2eSk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDAgMTVweCAwO1xyXG4gIH1cclxuICBwIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMjIuNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogIzY2NzA4NSk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xNXB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMjNweCAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XHJcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gIH1cclxuICAubGluayB7XHJcbiAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogc3RhcnQsICRnYXA6IDhweCk7XHJcbiAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA2MDAsICRoZWlnaHQ6IDE5LjJweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1ibHVlKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXJnaW46IDAgMCAwIDA7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xyXG4gICAgICBzdHJva2U6ICRjb2xvci1ibHVlO1xyXG4gICAgICBzdHJva2Utd2lkdGg6IDJweDtcclxuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgUGFnaW5hdGlvbnNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuLnBhZ2luYXRpb24ge1xyXG4gIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDE2cHgpO1xyXG4gIHBhZGRpbmc6IDQ2cHggMCA5OXB4IDA7XHJcbiAgLnBhZy1wcmV2IHtcclxuICAgIHdpZHRoOiA1OHB4O1xyXG4gICAgaGVpZ2h0OiA1MXB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZjRmZjtcclxuICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDApO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIC5pY29uIHtcclxuICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICBmaWxsOiB0cmFuc3BhcmVudDtcclxuICAgICAgc3Ryb2tlOiAkY29sb3ItYmx1ZTtcclxuICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XHJcbiAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxuICAucGFnIHtcclxuICAgIHdpZHRoOiA1OHB4O1xyXG4gICAgaGVpZ2h0OiA1MXB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsdWU7XHJcbiAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyLCAkZ2FwOiAwKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA2MDAsICRoZWlnaHQ6IDE5LjJweCwgJGFsaWduOiBjZW50ZXIsICRjb2xvcjogJGNvbG9yLWJsdWUpO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWY0ZmY7XHJcbiAgICB9XHJcbiAgICAmLmFjdCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxuICAucGFnLW5leHQge1xyXG4gICAgd2lkdGg6IDU4cHg7XHJcbiAgICBoZWlnaHQ6IDUxcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVmNGZmO1xyXG4gICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgLmljb24ge1xyXG4gICAgICB3aWR0aDogMTRweDtcclxuICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xyXG4gICAgICBzdHJva2U6ICRjb2xvci1ibHVlO1xyXG4gICAgICBzdHJva2Utd2lkdGg6IDJweDtcclxuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgTmV3c2xldHRlclxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4ubmV3c2xldHRlciB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMjhweDtcclxuICBwYWRkaW5nOiAyOHB4IDAgMCAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWY0ZmY7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGhlaWdodDogMzhweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWY0ZmY7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IC0zNnB4O1xyXG4gICAgbGVmdDogMTVweDtcclxuICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDE2cHggMTZweDtcclxuICB9XHJcbiAgLmdyaWQtbmV3c2xldHRlciB7XHJcbiAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogMS4yMWZyIDFmciwgJGd1dHRlcjogMjBweCwgJGFsaWduOiBzdGFydCwgJHRlbXBsYXRlOiBcIlwiKTtcclxuICAgIC50ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGdhcDogMzJweCk7XHJcbiAgICAgIC5ib3gtaWNvbiB7XHJcbiAgICAgICAgd2lkdGg6IDcycHg7XHJcbiAgICAgICAgaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGNvbG9yLW5hdnksIDAuMSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIHN0cm9rZTogJGNvbG9yLW5hdnk7XHJcbiAgICAgICAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xyXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmJsb2NrLXRleHQge1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDI0cHgsICR3ZWlnaHQ6IDcwMCwgJGhlaWdodDogMjguOHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLW5hdnkpO1xyXG4gICAgICAgICAgcGFkZGluZzogNXB4IDAgNnB4IDA7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAyNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogcmdiYSgjMGMxZjQ0LCAwLjcpKTtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybSB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMjJweCAwIDA7XHJcbiAgICAgIC5ncmlkLWZvcm0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIgMTQxcHgsICRndXR0ZXI6IDE4cHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibHVlO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA0MDAsICRoZWlnaHQ6IDI0cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiByZ2JhKCMwYzFmNDQsIDAuNykpO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxNnB4LCAkd2VpZ2h0OiA0MDAsICRoZWlnaHQ6IDIyLjRweCwgJGFsaWduOiBjZW50ZXIsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFN1cGVyIGFwcFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4uc3VwZXItYXBwIHtcclxuICAvL2JhY2tncm91bmQ6ICB1cmwoLi4vaW1hZ2VzL2JnLXN1cGVyLWFwcC5wbmcpICA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgLmJnLWJveCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQyMDQ1O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgdmlkZW8ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbiAgLmdyaWQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDFmciAxZnIsICRndXR0ZXI6IDMyMHB4LCAkYWxpZ246IHN0YXJ0LCAkdGVtcGxhdGU6IFwiXCIpO1xyXG4gICAgcGFkZGluZzogMTAwcHggMCA2MHB4IDA7XHJcbiAgICAudGV4dCB7XHJcbiAgICAgIHBhZGRpbmc6IDI0cHggMCAwIDA7XHJcbiAgICAgIC5zdWJ0aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMThweCwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAyMS42cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3Itd2hpdGUpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxNnB4IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAzNnB4LCAkd2VpZ2h0OiA3MDAsICRoZWlnaHQ6IDQzLjJweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci13aGl0ZSk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgNjRweCAwO1xyXG4gICAgICAgIGIsXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDQxN3B4O1xyXG4gICAgICAgIGhlaWdodDogMTY2cHg7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmltYWdlIHtcclxuICAgICAgLmJveC1pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiA0NDdweDtcclxuICAgICAgICBoZWlnaHQ6IDQ0MXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvc2lzdGVtYS1kZS1nZXN0YW8tZGUtZnJvdGEtMDQucG5nKSB0b3AgbGVmdCBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIC5ib3gtdmlkZW8tc2lkZSB7XHJcbiAgICAgICAgICB3aWR0aDogMjExcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDIzMnB4O1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1NnB4O1xyXG4gICAgICAgICAgcmlnaHQ6IDUzcHg7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICB2aWRlbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYm94LWljb24ge1xyXG4gICAgICAgICAgd2lkdGg6IDQ0LjYzcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQ0LjYzcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJjNTVlO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAxMDVweDtcclxuICAgICAgICAgIHJpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XHJcbiAgICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogMjJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgICAgICBmaWxsOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ib3gtaW1hZ2UtMDEge1xyXG4gICAgICAgICAgd2lkdGg6IDE3Ni40NXB4O1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAxNTNweDtcclxuICAgICAgICAgIHJpZ2h0OiAyMDlweDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1pbWFnZS0wMiB7XHJcbiAgICAgICAgICB3aWR0aDogMTYzLjY4cHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDI0NXB4O1xyXG4gICAgICAgICAgcmlnaHQ6IDIyMXB4O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubGluay12aWRlbyB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBib3R0b206IDZweDtcclxuICAgICAgICAgIGxlZnQ6IDE1M3B4O1xyXG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMTZweCwgJHdlaWdodDogNTAwLCAkaGVpZ2h0OiAxMjAlLCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDEzcHgpO1xyXG4gICAgICAgICAgLmJveC1pY29uLWxpbmsge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcclxuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoJGNvbG9yLWJsdWUsIDAuMyk7XHJcbiAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTVweDtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgZmlsbDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBIZXJvIHNsaWRlXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuXHJcbi5oZXJvLXNsaWRlIHtcclxuICBwYWRkaW5nOiAxNTlweCAwIDUyNHB4IDA7XHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG4gICYubmF2eSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItbmF2eSB1cmwoLi4vaW1hZ2VzL2JnLWhlcm9uYXZ5LnBuZykgYm90dG9tIHJpZ2h0IG5vLXJlcGVhdDtcclxuICB9XHJcbiAgLmdyaWQge1xyXG4gICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDFmciAxLjEzZnIsICRndXR0ZXI6IDYwcHgsICRhbGlnbjogY2VudGVyLCAkdGVtcGxhdGU6IFwiXCIpO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMzJweDtcclxuICAgIC50ZXh0IHtcclxuICAgICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAuc3VidGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE4cHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMjEuNnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLWJsdWUpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMXB4IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiA0OHB4LCAkd2VpZ2h0OiA3MDAsICRoZWlnaHQ6IDU3LjZweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci13aGl0ZSk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxNnB4IDA7XHJcbiAgICAgIH1cclxuICAgICAgcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMThweCwgJHdlaWdodDogMzAwLCAkaGVpZ2h0OiAyNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLXdoaXRlKTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC40cHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcclxuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcclxuICAgICAgfVxyXG4gICAgICAubGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHN0YXJ0LCAkZ2FwOiAxN3B4KTtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxOHB4LCAkd2VpZ2h0OiA2MDAsICRoZWlnaHQ6IDIxLjZweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1ibHVlKTtcclxuICAgICAgICBtYXJnaW46IDAgMCA0MHB4IDA7XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIHN0cm9rZTogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcclxuICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuYnRucyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDFmciAxZnIsICRndXR0ZXI6IDIyLjdweCwgJGFsaWduOiBzdHJldGNoLCAkdGVtcGxhdGU6IFwiXCIpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMThweCAwIDA7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogNTlweDtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDhweCk7XHJcbiAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBzdHJva2U6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgcGFkZGluZzogMCAzNHB4IDAgMDtcclxuICAgICAgLmJveC1pbWFnZSB7XHJcbiAgICAgICAgcGFkZGluZzogNDdweCA3NXB4IDU0cHggNzZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JveC1pbWFnZS5wbmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZyYW1lLWltYWdlcyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IC0xMDAwcHg7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWFzayBpbWcge1xyXG4gICAgICAgICAgLXdlYmtpdC1jbGlwLXBhdGg6IHVybCgjc3ZnTWFzazEpO1xyXG4gICAgICAgICAgY2xpcC1wYXRoOiB1cmwoI3N2Z01hc2sxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5tYXRlcmlhbHMge1xyXG4gICAgICAgICAgcGFkZGluZzogNDdweCA0N3B4IDU0cHggNDhweDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYm94LWltYWdlLW1hdGVyaWFscy5wbmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5kb3RzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUxcHg7XHJcbiAgICBib3R0b206IDhweDtcclxuICAgIHVsIHtcclxuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGdhcDogOHB4KTtcclxuICAgICAgbGkge1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMzNweDtcclxuICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkY29sb3Itd2hpdGUsIDAuMyk7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRjb2xvci13aGl0ZSwgMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBMaXN0cyBpdGVtc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbi5ib3gtc2VjdGlvbiAuYm94LWFyZWEge1xyXG4gIG92ZXJmbG93OiBpbmhlcml0O1xyXG59XHJcbi5saXN0LWl0ZW1zIHtcclxuICBwYWRkaW5nOiA5OHB4IDAgNTZweCAwO1xyXG4gIC5zdWJ0aXRsZS1saXN0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE4cHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMjEuNnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLWJsdWUpO1xyXG4gICAgcGFkZGluZzogMCAwIDZweCAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC50aXRsZS1saXN0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDM2cHgsICR3ZWlnaHQ6IDcwMCwgJGhlaWdodDogNTAuNHB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLW5hdnkpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xyXG4gICAgcGFkZGluZzogMCAwIDMwcHggMDtcclxuICB9XHJcbiAgLmZsZXgtdGl0bGUge1xyXG4gICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sICRnYXA6IDhweCk7XHJcbiAgICBwYWRkaW5nOiAwIDAgMzNweCAwO1xyXG4gICAgLnRpdGxlLWxpc3Qge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYm94LXNlYXJjaCB7XHJcbiAgICB3aWR0aDogMzc3cHg7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAuYm94IHtcclxuICAgICAgd2lkdGg6IDM3N3B4O1xyXG4gICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhOWM3ZDM7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBpbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDE2cHgsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMTkuMnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogIzQ3NDc0Nyk7XHJcbiAgICAgICAgcGFkZGluZzogMCA2MHB4IDAgMjhweDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgICAuYnV0dG9uLFxyXG4gICAgICBidXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgICAgIGhlaWdodDogNDJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA2cHg7XHJcbiAgICAgICAgcmlnaHQ6IDhweDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBzdHJva2U6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xyXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmdyaWQtaXRlbXMge1xyXG4gICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDI4MnB4IDFmciwgJGd1dHRlcjogMTM1cHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcclxuICAgIC5zaWRlYmFyIHtcclxuICAgICAgLmJveC1jYXRzIHtcclxuICAgICAgICBwYWRkaW5nOiAzMnB4IDMycHggMTlweCAzMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWY0ZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgICAgICBtYXJnaW46IDAgMCAzMnB4IDA7XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgkc2l6ZTogMjRweCwgJHdlaWdodDogNzAwLCAkaGVpZ2h0OiAzMy42cHgsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3ItbmF2eSk7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMzlweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMDtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHN0YXJ0LCAkZ2FwOiAxMHB4KTtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCRzaXplOiAxOHB4LCAkd2VpZ2h0OiA0MDAsICRoZWlnaHQ6IDI1LjJweCwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1uYXZ5KTtcclxuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XHJcbiAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDhweDtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5iYW5uZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogNDM0cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLW5hdnkgdXJsKC4uL2ltZy9sb2dvLXdoaXRlLnBuZykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgIHRvcDogMTIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5saXN0IHtcclxuICAgICAgLmdyaWQtbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDFmciAxZnIsICRndXR0ZXI6IDMycHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYmFubmVyLW1vYmlsZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgU2xpZGUgaXRlbVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4uc2xpZGUtaXRlbSB7XHJcbiAgcGFkZGluZzogMTAycHggMCAwIDA7XHJcblxyXG4gICYuZmVhdHVyZWQge1xyXG4gICAgcGFkZGluZzogMTAycHggMCAwIDA7XHJcbiAgfVxyXG4gICYub3RoZXJzIHtcclxuICAgIHBhZGRpbmc6IDEwMnB4IDAgMTE0cHggMDtcclxuICB9XHJcbiAgLnRpdGxlIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJHNpemU6IDM2cHgsICR3ZWlnaHQ6IDcwMCwgJGhlaWdodDogNDMuMnB4LCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLW5hdnkpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4O1xyXG4gICAgcGFkZGluZzogMCAwIDM3cHggMDtcclxuICAgIGIsXHJcbiAgICBzdHJvbmcge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zbGlkZSB7XHJcbiAgICBtYXJnaW46IDAgLTEycHg7XHJcbiAgICAuc2xpY2stc2xpZGUge1xyXG4gICAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5idG4tc2xpZGUge1xyXG4gICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IDI0cHggMWZyIDI0cHgsICRndXR0ZXI6IDE0cHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcclxuICAgIHBhZGRpbmc6IDQ3cHggM3B4IDAgMXB4O1xyXG4gICAgLmJ0bi1wcmV2LFxyXG4gICAgLmJ0bi1uZXh0IHtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBzdHJva2U6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogMnB4O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuLW5leHQge1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5kb3RzIHtcclxuICAgICAgdWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRnYXA6IDApO1xyXG4gICAgICAgIHBhZGRpbmc6IDExcHggMCAwIDA7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Q2ZDZkNjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBFYm9va1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0FBOzt3Q0FFd0M7QUNGeEM7O3dDQUV3QztBQ0Z4QyxZQUFZO0FBRVosQUFBQSxhQUFhLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUs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 */
