/*======================================
  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
======================================*/
img {
  max-width: 100%;
  height: auto;
}

.wpcf7-spinner {
  display: none !important;
}

html {
  scroll-behavior: smooth;
}

.box-section {
  padding: 0 0;
}

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

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

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

.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: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 36px 0;
  z-index: 10;
}

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

header .grid {
  display: grid;
  grid-template-columns: 123px 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 .open-menu {
  width: 47px;
  height: 40px;
  background-color: #254073;
  position: absolute;
  top: 34px;
  right: 16px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}

header .grid .open-menu .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

header .grid .items {
  display: block;
  position: fixed;
  top: 0;
  left: -375px;
  width: 100%;
  max-width: 375px;
  height: 100vh;
  background-color: #0e2652;
  padding: 30px 16px;
  overflow: scroll;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

header .grid .items .logo-menu {
  width: 123px;
  height: 37px;
  display: block;
}

header .grid .items .close {
  width: 47px;
  height: 40px;
  background-color: #254073;
  position: absolute;
  top: 28px;
  right: 16px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}

header .grid .items .close .icon {
  width: 24px;
  height: 24px;
  fill: transparent;
  stroke: #356efc;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
}

header .grid .box-menu {
  padding-top: 40px;
}

header .grid .box-menu nav {
  width: 100%;
  display: block;
}

header .grid .box-menu nav ul {
  display: block;
  padding-bottom: 50px;
}

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;
  justify-content: space-between;
  gap: 8px;
  padding: 16px 0;
  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;
  transform: rotate(-90deg);
}

header .grid .box-menu nav ul li .sub-menu {
  display: none;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  opacity: 1;
  visibility: visible;
  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 .overlay {
  display: none;
}

header .grid .box-menu nav ul li .sub-menu:before {
  display: none;
}

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

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

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

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li {
  width: 100%;
  margin: 0 0 0 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .links ul li:last-child {
  border-bottom: 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;
  justify-content: 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;
  transform: rotate(0deg);
}

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 {
  display: none;
}

header .grid .box-menu nav ul li .sub-menu .grid-submenu .posts {
  display: none;
}

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: 0;
  display: block;
}

header .grid .others-link {
  display: block;
}

header .grid .others-link .langs {
  width: 83px;
  height: 51px;
  background-color: #142a55;
  border-radius: 10px;
  position: relative;
}

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

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: 100%;
  height: 51px;
  margin-top: 15px;
  margin-bottom: 15px;
}

header .grid .others-link .test-free {
  width: 100%;
  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;
  gap: 10px;
  align-items: center;
  grid-template-areas: "menu" "search";
}

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

header#blog .grid .box-search .box {
  width: 100%;
  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;
}

.menu-open header .grid .items {
  left: 0;
}

main section {
  overflow: hidden;
}

main section.functions-app {
  overflow: initial;
}

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

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

footer .grid .box-logo {
  padding: 10px 0 55px 0;
  margin-bottom: 55px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

footer .grid .box-logo .logo {
  width: 123px;
  height: 37px;
  display: block;
  margin: 0 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 33px 22px 33px;
}

footer .grid .box-logo .logos-footer {
  max-width: 100%;
  width: 445px;
  height: auto;
  margin: 0 auto;
  display: block;
}

footer .grid .box-logo .box-google {
  display: flex;
  align-items: center;
  justify-content: 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 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 10px;
  margin-bottom: 20px;
}

footer .grid .links.last {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

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

footer .grid .links ul li {
  text-align: center;
  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: 55px 0 55px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  align-items: start;
}

footer .grid-support .links {
  padding: 0 50px;
}

footer .grid-support .links ul li {
  padding: 0 0 2px 0;
  display: flex;
  align-items: start;
  gap: 16px;
}

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: center;
  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 .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: block;
  padding: 35px 0;
}

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

footer .copyright .back-top {
  display: flex;
  align-items: center;
  justify-content: 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: auto;
  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: 100%;
  gap: 0;
  align-items: stretch;
}

.box-modal .content-modal .grid-modal .text {
  padding: 85px 50px 50px 50px;
  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: 50px 50px 57px 50px;
}

.box-modal .content-modal .grid-modal .form .row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  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;
}

#player {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: -99;
}

/*======================================
  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: transparent;
  color: #356efc;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.pagination .pag-prev {
  width: 40px;
  height: 40px;
  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: 40px;
  height: 40px;
  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, 14px, 14px);
  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: 40px;
  height: 40px;
  background-color: #eef4ff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 10px;
}

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

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

.newsletter:after {
  display: none;
}

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

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

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

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

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

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

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

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

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

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

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

.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;
  gap: 20px;
  align-items: start;
  padding: 69px 0 58px 0;
}

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

.super-app .grid .text .subtitle {
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 14px, 14px);
  font-weight: 400;
  line-height: 120%;
  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, 24px, 24px);
  font-weight: 700;
  line-height: 120%;
  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 .image .box-image {
  margin: 0 auto;
  position: relative;
  width: 93.125vw;
  height: 91.875vw;
  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: 43.95833vw;
  height: 48.33333vw;
  position: absolute;
  top: 11.66667vw;
  right: 11.04167vw;
  border-radius: 3.33333vw;
  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: 9.29792vw;
  height: 9.29792vw;
  background-color: #22c55e;
  position: absolute;
  top: 21.875vw;
  right: 7.5vw;
  border: 0.41667vw 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: 4.58333vw;
  height: 4.58333vw;
  fill: #ffffff;
}

.super-app .grid .image .box-image .box-image-01 {
  width: 36.76042vw;
  position: absolute;
  top: 31.875vw;
  right: 43.54167vw;
  border-radius: 2.08333vw;
  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: 34.1vw;
  position: absolute;
  top: 51.04167vw;
  right: 46.04167vw;
  border-radius: 2.08333vw;
  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: 1.25vw;
  left: 31.875vw;
  font-family: "Inter", sans-serif;
  font-size: clamp(11px, 3.33333vw, 3.33333vw);
  font-weight: 500;
  line-height: 120%;
  text-align: left;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.70833vw;
}

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

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

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

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

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

.hero-slide.navy {
  background: #001f3f;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.hero-slide .grid .image .box-image.materials {
  padding: 6.11979vw 6.11979vw 7.03125vw 6.25vw;
  background: url(../images/box-image-materials.png) center center no-repeat;
  background-size: 100% 100%;
}

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

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

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

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

/*======================================
  Lists items
======================================*/
.list-items {
  padding: 98px 0 56px 0;
}

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

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

.list-items .flex-title {
  display: block;
  padding: 0 0 33px 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.banner-mobile {
  display: block;
  padding-bottom: 30px;
  position: relative;
}

.banner-mobile .banner {
  width: 100%;
  height: 434px;
  background: #001f3f url(../img/logo-white.png) center center no-repeat;
  border-radius: 16px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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