/*======================================
  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;
  gap: 12px;
}

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: 76px;
}

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

/*======================================
  Hero
======================================*/
.hero-case {
  overflow: hidden;
  padding: 167px 0 60px 0;
}

.hero-case .grid {
  display: grid;
  grid-template-columns: 1fr 597px;
  gap: 40px;
  align-items: center;
  padding: 0 0 0 0;
}

.hero-case .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 16px 0;
  display: block;
}

.hero-case .grid .text .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 41px, 41px);
  font-weight: 700;
  line-height: 140%;
  text-align: left;
  color: #ffffff;
  letter-spacing: -0.5px;
  padding: 0 0 26px 0;
}

.hero-case .grid .text p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 25.2px;
  text-align: left;
  color: rgba(255, 255, 255, 0.7);
  letter-spacing: 0.15px;
}

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

.hero-case .grid .text .btns a {
  width: 100%;
  height: 59px;
}

.hero-case .grid .posts {
  background: url(../img/image-cases-hero.png) center center no-repeat;
  background-size: contain;
  width: 100%;
  height: 578px;
  padding: 57px 30px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
}

.hero-case .grid .posts .post {
  width: 100%;
  height: 451px;
  display: block;
  display: flex;
  align-items: end;
  justify-content: start;
  gap: 10px;
  -webkit-clip-path: url(#svgMask1);
  clip-path: url(#svgMask1);
  position: relative;
}

.hero-case .grid .posts .post .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.hero-case .grid .posts .post .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-case .grid .posts .post .image::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 51.06%, #000000 117.12%);
}

.hero-case .grid .posts .post .text-post {
  position: relative;
  padding: 40px 28px;
}

.hero-case .grid .posts .post .text-post .logo-post {
  border-radius: 30px;
  background-color: #ffffff;
  display: inline-block;
}

.hero-case .grid .posts .post .text-post .logo-post img {
  margin: 4px 10px;
  width: 100%;
  max-width: 87px;
  height: auto;
}

.hero-case .grid .posts .post .text-post p {
  padding-top: 24px;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 700;
  line-height: 140%;
  text-align: left;
  color: #ffffff;
}

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

.frame-images {
  position: absolute;
  top: -1000000000px;
}

/*======================================
  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.inline {
  width: auto;
  display: inline-flex!important;
  padding: 0 16px;
  height: 51px;
}

.btn-border-blue.inline:hover {
  color:white!important;
}

.btn-border-blue.inline:hover svg{
  color:white!important;
  stroke:white!important;
}

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

/*======================================
  Clients
======================================*/
.clients {
  padding: 40px 0 40px 0;
}

.clients .grid {
  display: grid;
  grid-template-columns: 149px 1fr;
  gap: 29px;
  align-items: center;
  padding: 0 0 0 0;
}

.clients .grid .item {
  display: flex;
  align-items: center;
  gap: 50px;
}

.clients .grid .item .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 18px, 18px);
  font-weight: 400;
  line-height: 21.6px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  letter-spacing: 0.15px;
}

.clients .grid .item .btn-prev .icon,
.clients .grid .item .btn-next .icon {
  width: 20px;
  height: 16px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.clients .grid .item .btn-prev .icon {
  transform: rotate(90deg);
}

.clients .grid .item .btn-next .icon {
  transform: rotate(-90deg);
}

.clients .grid .item .slide {
  max-width: 906px;
}

.clients .grid .item .slide .logo {
  padding: 0;
  text-align: center;
}

.clients .grid .item .slide .logo img {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: inline-block;
  max-width: 80%;
  height: auto;
}

.clients .grid .item .slide .logo:hover img {
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
}

.clients .grid .item .pag {
  display: none;
}

/*======================================
  Lists
======================================*/
.box-list-case {
  width: 100%;
  border: 1px solid #a9c7d3;
  padding: 17px 24px 24px 24px;
  border-radius: 16px;
}

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

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

.box-list-case span {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: left;
  color: #667085;
  display: block;
  padding: 23px 0 0 0;
}

.box-list-case h3 {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 20px, 20px);
  font-weight: 700;
  line-height: 28px;
  text-align: left;
  color: #0c1f44;
  letter-spacing: 0.2px;
  padding: 16px 0 17px 0;
}

.box-list-case .date {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 19.2px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  padding: 0 0 23px 0;
  border-bottom: 1px solid #a9c7d3;
  margin: 0 0 23px 0;
}

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

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

.box-list-case .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);
}

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

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

/*======================================
  Case
======================================*/
.list-cases {
  padding: 0 0 101px 0;
}

.list-cases .grid {
  border-top: 1px solid rgba(112, 120, 140, 0.3);
  padding: 101px 0 46px 0;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 40px;
  align-items: end;
}

.list-cases .grid .item .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 24px 0;
  display: block;
}

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

.list-cases .grid .item .title b,
.list-cases .grid .item .title strong {
  color: #356efc;
}

.list-cases .list-cat {
  padding: 9px 38px 64px 38px;
  position: relative;
}

.list-cases .list-cat .slick-slide {
  padding: 0 2px;
}

.list-cases .list-cat .slide a {
  background-color: rgba(53, 110, 252, 0.1);
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 51px;
  border-radius: 10px;
  border: 2px solid rgba(53, 110, 252, 0);
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 600;
  line-height: 19.2px;
  text-align: center;
  color: #0c1f44;
}

.list-cases .list-cat .slide a.act {
  border: 2px solid #356efc;
  color: #356efc;
  background: transparent;
}

.list-cases .list-cat .slide a:hover {
  border: 2px solid #356efc;
}

.list-cases .list-cat .btn-prev,
.list-cases .list-cat .btn-next {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 9px;
  border-radius: 10px;
  width: 35px;
  height: 51px;
  background-color: rgba(53, 110, 252, 0.1);
  border: 2px solid rgba(53, 110, 252, 0);
}

.list-cases .list-cat .btn-prev .icon,
.list-cases .list-cat .btn-next .icon {
  width: 20px;
  height: 16px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.list-cases .list-cat .btn-prev.slick-disabled,
.list-cases .list-cat .btn-next.slick-disabled {
  opacity: 0.5;
}

.list-cases .list-cat .btn-prev:hover,
.list-cases .list-cat .btn-next:hover {
  border: 2px solid #356efc;
}

.list-cases .list-cat .btn-prev {
  left: 0;
}

.list-cases .list-cat .btn-prev .icon {
  transform: rotate(90deg);
}

.list-cases .list-cat .btn-next {
  right: 0;
}

.list-cases .list-cat .btn-next .icon {
  transform: rotate(-90deg);
}

.list-cases .grid-case {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  align-items: stretch;
  padding-bottom: 50px;
}

.list-cases .pagination {
  padding-top: 0;
}

.box-video-case {
  width: 1211px;
  height: 379px;
  padding: 17px 155px 19px 18px;
  display: grid;
  grid-template-columns: 514px 1fr;
  gap: 115px;
  align-items: start;
  border-radius: 24px;
  background: #eef4ff;
}

.box-video-case .image {
  width: 514px;
  height: 344px;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
}

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

.box-video-case .image img.play {
  width: 84px;
  height: 84px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -42px;
}

.box-video-case .text {
  padding: 45px 0 0 0;
}

.box-video-case .text .title {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 24px, 24px);
  font-weight: 700;
  line-height: 28.8px;
  text-align: left;
  color: #001f3f;
  letter-spacing: 0.4px;
  padding: 0 0 15px 0;
}

.box-video-case .text .title b,
.box-video-case .text .title strong {
  color: #356efc;
}

.box-video-case .text p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 400;
  line-height: 26px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  letter-spacing: 0.1px;
  padding: 0 0 70px 0;
}

.box-video-case .text a {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 16px, 16px);
  font-weight: 700;
  line-height: 25.6px;
  text-align: left;
  color: #356efc;
}

/*.hero-case {
  padding: 174px 0 211px 0;
  background: linear-gradient(47.99deg, #0c1f44 43.12%, #1f4eaa 153.5%);

  .grid {
    @include columns($quant: 1fr 1fr, $gutter: 0, $align: stretch, $template: "");
    padding: 0 0 0 32px;
    .text {
      .logo-case {
        padding: 18px;
        background-color: white;
        display: inline-block;
        border-radius: 50px;
        img {
          width: 152.86px;
          height: 42.17px;
        }
      }
      .title {
        @include font($size: 36px, $weight: 700, $height: 50.4px, $align: left, $color: $color-white);
        letter-spacing: 1.1px;
        padding: 27px 0 26px 0;
      }
    }
    .image {
      position: relative;
      .img {
        width: 302.85px;
        height: 555.02px;
        clip-path: path(
          "M114.604 0H25.3165H14.9647C6.69993 0 0 6.69994 0 14.9647V106.173C0 110.142 1.57664 113.948 4.38307 116.755L20.9335 133.305C23.7399 136.112 25.3165 139.918 25.3165 143.887V175.318C25.3165 179.287 23.7399 183.093 20.9335 185.9L4.38307 202.45C1.57664 205.256 0 209.063 0 213.032V540.052C0 548.317 6.69991 555.017 14.9647 555.017H287.887C296.152 555.017 302.852 548.317 302.852 540.052V473.939C302.852 469.971 301.275 466.164 298.469 463.358L281.343 446.232C278.537 443.426 276.96 439.619 276.96 435.65V408.116C276.96 404.147 278.537 400.34 281.343 397.534L298.469 380.408C301.275 377.602 302.852 373.795 302.852 369.826V14.9647C302.852 6.69993 296.152 0 287.887 0H200.092C196.123 0 192.317 1.57664 189.51 4.38307L182.166 11.7274C179.359 14.5339 175.553 16.1105 171.584 16.1105H143.111C139.142 16.1105 135.336 14.5339 132.53 11.7274L125.185 4.38307C122.379 1.57664 118.573 0 114.604 0Z"
        );
        position: absolute;
        top: 1px;
        right: 42px;
        z-index: 10;
        &::after {
          content: "";
          width: 100%;
          height: 100%;
          position: absolute;
          bottom: 0;
          left: 0;
          right: 0;
          background: linear-gradient(180deg, rgba(0, 0, 0, 0) 51.06%, #000000 117.12%);
        }
      }
      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }
  }
  &.navy {
    //background: $color-navy url(../images/bg-heronavy.png) bottom right no-repeat;
  }
}*/
.content-case {
  padding: 0;
}

.content-case .grid-case {
  padding: 70px 35px 101px;
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 160px;
  align-items: center;
  border-bottom: 0;
}

.content-case .grid-case .text p {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 20px, 20px);
  font-weight: 400;
  line-height: 32px;
  text-align: left;
  color: rgba(12, 31, 68, 0.7);
  letter-spacing: 0.3px;
  padding: 0 0 44px 0;
  position: relative;
}

.content-case .grid-case .text h1,
.content-case .grid-case .text h2,
.content-case .grid-case .text h3,
.content-case .grid-case .text h4,
.content-case .grid-case .text h5,
.content-case .grid-case .text h6 {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 32px, 32px);
  font-weight: 700;
  line-height: 160%;
  text-align: left;
  color: #001f3f;
  padding: 0 0 24px 0;
}

.content-case .grid-case .text h2 {
  font-size: 32px;
}

.content-case .grid-case .text h3 {
  font-size: 28px;
}

.content-case .grid-case .text h4 {
  font-size: 24px;
}

.content-case .grid-case .text h5 {
  font-size: 22px;
}

.content-case .grid-case .text h6 {
  font-size: 20px;
}

.content-case .box-video {
  margin: 0 auto;
}

.content-case .clients {
  padding: 149px 0 63px 0;
}

.content-case .case-list-slide {
  padding: 0 0 107px 0;
}

.content-case .case-list-slide .grid {
  border-top: 1px solid rgba(112, 120, 140, 0.3);
  padding: 150px 25px 63px 36px;
}

.content-case .case-list-slide .grid .item .subtitle {
  padding: 0 0 24px 0;
  display: block;
}

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

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

.header-scrolling .grid .others-link .login {
  display: none;
}

.header-scrolling .grid .others-link .test-demo {
  display: flex;
}

.header-scrolling .grid .others-link .test-free {
  width: 180px;
  height: 51px;
  border: 1px solid #204ff2;
  background: transparent;
}

.header-scrolling .grid .others-link .test-free:hover {
  background: #204ff2;
}

header .grid .others-link .test-demo {
  width: 225px;
  height: 51px;
  display: none;
}
