/*
Theme Name:     Jupiter Child Theme
Theme URI: 		http://themeforest.net/user/artbees
Description:    Child theme for the Jupiter theme 
Author:         Your name here
Theme URI: 		http://themeforest.net/user/artbees
Template:       jupiter
Version:        1.1
*/
/* ==========================================================================
   Mixins
   ========================================================================== */
/* ====================================================================================================================
   Mixin : Linear-gradient
   Usage :
		@include linear-gradient(#31B7D7, #EDAC7D);
  		@include linear-gradient(to right, #E47D7D 0%, #C195D3 50%, #4FB4E8 100%);
  		@include linear-gradient(42deg, #B58234 0%, #D2B545 50%, #D7C04D 50.01%, #FFFFFF 100%);
   ==================================================================================================================== */


/* CF7 Custom Form Style Start */

.cf7-custom-form input:focus,
.wpcf7-validates-as-tel:focus,
.cf7-custom-form textarea:focus {
    border: 0 !important;
    outline: none !important;
    background-color: #d5d5d5 !important;
    box-shadow: none !important;
	    width: 100% !important;
    margin: 0px !important;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.cf7-send:focus{
    background-color: #707070 !important;
	    width: 100% !important;
    margin: 0px !important;
}
.wpcf7-form p {
    margin-bottom: 0px !important;
}
.cf7-custom-form {
  border: 2px solid #2b2b2b;
  padding: 0;
}
span.wpcf7-spinner {
    position: absolute;
    right: 40px;
    bottom: 57px;
}
.cf7-row {
  display: flex;
  width: 100%;
  border-bottom: 2px solid #2b2b2b;
}

.cf7-row:last-child {
  border-bottom: none;
}

.cf7-col {
  flex: 1;
  border-right: 2px solid #2b2b2b;
}

.cf7-col:last-child {
  border-right: none;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.cf7-send {
    font-size: 14px !important;
}
.cf7-col-full {
  width: 100%;
}

.cf7-custom-form input,
.cf7-custom-form textarea {
  width: 100%;
  border: none;
  padding: 18px 20px;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  background: transparent;
  outline: none;
  color: #2b2b2b;
	margin: 0px !important;
}

.cf7-custom-form textarea {
  height: 220px;
  resize: none;
}

.cf7-custom-form input::placeholder,
.cf7-custom-form textarea::placeholder {
  color: #000;
}

/* Submit Button */
.cf7-send {
  width: 100%;
  border: none;
  background: transparent;
  padding: 20px;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  cursor: pointer;
}

@media (max-width: 768px) {
  .cf7-row {
    flex-direction: column;
  }

  .cf7-col {
    border-right: none;
    border-bottom: 2px solid #2b2b2b;
  }

  .cf7-col:last-child {
    border-bottom: none;
  }
}

/* End  */


/* Css Start for blog page */

.custom-blog-list .vc_gitem-col {
    padding-left: 0px !important;
    padding-right: 0px !important;
}
.custom-blog-list h4 {
    font-size: 24px !important;
    color: #de6a2e;
    font-weight: 600;
    margin-top: 20px;
    margin-bottom: -10px;
	text-transform: capitalize !important;
}
.custom-blog-list p a:hover {
    color: #0080bc;
}
.custom-blog-list .vc_gitem-zone.vc_gitem-zone-a.vc-gitem-zone-height-mode-auto.vc-gitem-zone-height-mode-auto-1-1.vc_gitem-is-link {
    max-height: 200px !important;
}
.custom-blog-list p { 
color: #06303a !important;
line-height: 1.5 !important;
	font-size: 14px !important;
}
.custom-blog-list a.vc_btn3-style-flat {
    background: transparent !important;
    color: #de6a2e !important;
    padding: 0px !important;
}
.custom-blog-list a.vc_btn3-style-flat:hover {
    color: #0080bc !important;
}

/* Css end for blog page */


@media (max-width: 768px) {
  h1 {
    font-size: 22px !important; } }

h2 {
  margin: 0 0 20px 0; }
  @media (max-width: 768px) {
    h2 {
      margin: 0 0 15px 0;
      font-size: 20px !important; } }

h3 {
  font-style: italic; }
  @media (max-width: 768px) {
    h3 {
      font-size: 20px !important; } }

@media (max-width: 768px) {
  p {
    font-size: 14px !important; } }

a {
  font-weight: bold; }

.bigger-p {
  font-size: 24px !important; }
  @media (max-width: 768px) {
    .bigger-p {
      font-size: 15px !important; } }

.grey-text p {
  color: #666 !important; }

.dark-text strong, .dark-text p, .dark-text h4, .dark-text h1, .dark-text ul, .dark-text li {
  color: #06303a !important; }

@media (max-width: 768px) {
  .specs .mk-padding-wrapper {
    padding: 0 !important; } }

@media (max-width: 768px) {
  .specs .mk-padding-wrapper .vc_col-sm-6 {
    padding: 0 !important; } }

.mk-main-navigation {
  padding-right: 170px; }

.header-style-1.header-align-left .mk-nav-responsive-link {
  right: 27px !important; }

.mk-header-toolbar {
  height: 22px !important;
  -webkit-transition: height 0.3s ease-in-out;
  -moz-transition: height 0.3s ease-in-out;
  -ms-transition: height 0.3s ease-in-out;
  -o-transition: height 0.3s ease-in-out;
  transition: height 0.3s ease-in-out; }
  @media (max-width: 768px) {
    .mk-header-toolbar {
      height: auto !important;
      border-bottom: none; } }

.mk-header-toolbar-holder {
  position: absolute;
  right: 0;
  text-align: right; }
  @media (max-width: 768px) {
    .mk-header-toolbar-holder {
      position: relative;
      right: auto; } }

.mk-toolbar-navigation {
  height: auto !important;
  margin-right: 0 !important;
  margin-top: 5px;
  text-align: center;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  @media (max-width: 768px) {
    .mk-toolbar-navigation {
      text-align: right;
      margin-top: 0; } }
  .mk-toolbar-navigation li a {
    padding: 0 10px !important; }
  .mk-toolbar-navigation li:first-child {
    display: block;
    width: 100%;
    background-color: #0080bc;
    padding: 0 25px 4px 25px;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .mk-toolbar-navigation li:first-child {
        padding: 0 9px 4px 25px !important; } }
    .mk-toolbar-navigation li:first-child a {
      font-size: 14px !important;
      text-transform: uppercase; }
      @media (max-width: 768px) {
        .mk-toolbar-navigation li:first-child a {
          padding: 0 0 10px 0 !important; } }
  .mk-toolbar-navigation li:nth-child(2), .mk-toolbar-navigation li:nth-child(3), .mk-toolbar-navigation li:nth-child(4), .mk-toolbar-navigation li:nth-child(5) {
    position: relative;
    top: 0;
    z-index: 1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .mk-toolbar-navigation li:nth-child(2) a, .mk-toolbar-navigation li:nth-child(3) a, .mk-toolbar-navigation li:nth-child(4) a, .mk-toolbar-navigation li:nth-child(5) a {
      border-right: 0; }
    .mk-toolbar-navigation li:nth-child(2) a span.meni-item-text, .mk-toolbar-navigation li:nth-child(3) a span.meni-item-text, .mk-toolbar-navigation li:nth-child(4) a span.meni-item-text, .mk-toolbar-navigation li:nth-child(5) a span.meni-item-text {
      display: inline-block;
      overflow: hidden;
      text-indent: -10000px; }
  .mk-toolbar-navigation .mk-svg-icon {
    fill: #06303a; }
    @media (max-width: 768px) {
      .mk-toolbar-navigation .mk-svg-icon {
        fill: #fff; } }

.a-sticky .mk-toolbar-navigation {
  margin-top: 32px; }
  .a-sticky .mk-toolbar-navigation li:nth-child(2), .a-sticky .mk-toolbar-navigation li:nth-child(3), .a-sticky .mk-toolbar-navigation li:nth-child(4), .a-sticky .mk-toolbar-navigation li:nth-child(5) {
    top: -25px;
    z-index: -1; }

.a-sticky .mk-header-toolbar {
  height: 35px !important; }

.ms-skin-minimal .ms-nav-next, .ms-skin-minimal .ms-nav-prev {
  background-image: url("/wp-content/themes/jupiter-child/images/minimal.svg");
  background-color: transparent;
  border-color: #fff; }

.blue-btn a {
  font-weight: 400;
  letter-spacing: 4px; }

.white-border-bottom {
  border-bottom: solid 1px #fff; }

.with-arrow-left h3 {
  font-size: 24px !important; }
  @media (max-width: 768px) {
    .with-arrow-left h3 {
      font-size: 20px !important; } }
  .with-arrow-left h3::before {
    content: "";
    display: inline-block;
    width: 25px;
    height: 17px;
    background: url(/wp-content/uploads/2019/06/arrow.png) top left no-repeat;
    background-size: contain;
    margin-right: 10px; }
    @media (max-width: 768px) {
      .with-arrow-left h3::before {
        width: 14px;
        vertical-align: -6px; } }

.header-section {
  padding-top: 132px;
  min-height: 700px !important; }
  @media (max-width: 768px) {
    .header-section {
      padding-top: 0;
      min-height: 200px !important; } }
  .header-section h1 {
    font-size: 60px !important; }
    @media (max-width: 768px) {
      .header-section h1 {
        font-size: 26px !important; } }

.detaillants.row-content {
  padding-bottom: 20px !important; }

.detaillants .mk-gallery {
  margin-top: 20px !important; }

.mosaic .mk-padding-wrapper {
  padding: 0 !important; }

.mosaic .mk-imagebox-item {
  margin-bottom: 0 !important; }

.mk-gallery-lazyload .mk-gallery-image {
  background-color: #f0f0f0 !important; }

#gallery-loop-32 .item-holder {
  margin-bottom: 30; }

.info-bar {
  padding: 30px 0 !important; }
  .info-bar p {
    font-size: 22px !important;
    font-weight: 900 !important;
    margin-bottom: 0 !important; }
    @media (max-width: 768px) {
      .info-bar p {
        font-size: 18px !important;
        text-align: left !important; } }
  .info-bar a {
    color: #fff;
    font-weight: normal; }
    @media (max-width: 768px) {
      .info-bar a {
        font-size: 14px !important; } }
  .info-bar strong {
    color: #e16a2c;
    font-weight: 900; }

.apropos-title h1 {
  margin-top: 150px; }

.equipement-btn .item-holder .item-wrapper {
  position: relative; }

.equipement-btn .item-button {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%; }

.equipement-btn a {
  position: absolute;
  bottom: 0;
  width: 100%;
  font-size: 24px !important;
  font-weight: 900 !important;
  text-transform: uppercase;
  box-sizing: border-box; }
  .equipement-btn a::before {
    content: "";
    display: block; }
  @media (max-width: 768px) {
    .equipement-btn a {
      font-size: 15px !important; } }

.equipement-btn a.link-hitzone {
  position: absolute;
  height: 100%;
  width: 100%;
  opacity: 0;
  box-sizing: border-box; }

@media (max-width: 768px) {
  .img-pieces .mk-gallery {
    margin-top: 20px !important;
    margin-bottom: 20px !important; } }

.img-pieces .mk-gallery-item {
  width: 11.11111111% !important; }
  @media (max-width: 768px) {
    .img-pieces .mk-gallery-item {
      width: 50% !important; } }

.realisations .gallery-desc {
  display: none !important; }

.contact-info {
  color: #fff;
  font-size: 18px; }
  @media (max-width: 768px) {
    .contact-info {
      color: #06303a !important;
      font-size: 13px; } }
  .contact-info ul li {
    line-height: 1.6em; }
  .contact-info svg {
    fill: #e16a2c;
    top: 6px !important; }

.contact-heures table td {
  text-align: left; }
  @media (max-width: 768px) {
    .contact-heures table td {
      font-size: 13px !important; } }

@media (max-width: 768px) {
  .contact-heures .background-layer {
    background-image: none !important;
    background-color: #f0f0f0 !important; } }

@media (max-width: 768px) {
  .contact-heures .mk-text-block h1 {
    color: #06303a !important; } }

@media (max-width: 768px) {
  .mk-advanced-gmaps {
    height: 300px !important; } }

.specs h4 {
  margin-bottom: 20px; }

.specs ul {
  margin-left: 0;
  padding-left: 0; }

.specs ul li {
  position: relative;
  margin-left: 0;
  padding-left: 23px;
  list-style-type: none; }
  .specs ul li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 12px;
    height: 11px;
    background: url(/wp-content/uploads/2019/07/arrow-right.png) top left no-repeat;
    background-size: cover; }

.specs hr {
  height: 7px;
  background-color: #cfd5dd;
  border: none;
  margin: 0 !important; }
  @media (max-width: 768px) {
    .specs hr {
      margin: 0 !important; } }

h5 {
  position: relative;
  margin-left: 0;
  padding-left: 23px;
  list-style-type: none; }
  @media (max-width: 768px) {
    h5 {
      font-size: 21px !important; } }
  h5::before {
    content: "";
    position: absolute;
    top: 13px;
    left: 0;
    width: 16px;
    height: 15px;
    background: url(/wp-content/uploads/2019/07/arrow-right.png) top left no-repeat;
    background-size: cover; }
    @media (max-width: 768px) {
      h5::before {
        top: 6px; } }
.mk-about-author-wrapper{display:none;}
.team h2 {
  font-size: 30px !important;
  position: relative;
  margin-left: 0;
  padding-left: 23px;
  list-style-type: none; }
  @media (max-width: 768px) {
    .team h2 {
      font-size: 19px !important; } }
  .team h2::before {
    content: "";
    position: absolute;
    top: 13px;
    left: 0;
    width: 16px;
    height: 15px;
    background: url(/wp-content/uploads/2019/07/arrow-right.png) top left no-repeat;
    background-size: cover; }

.team p {
  margin-bottom: 40px; }

@media (max-width: 768px) {
  .no-padding-mobile .mk-padding-wrapper, .no-padding-mobile .wpb_column, .no-padding-mobile .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important; } }

.orange-no-arrow {
  color: #e16a2c !important;
  padding-left: 0;
  font-weight: 900 !important;
  margin-bottom: 60px; }
  @media (max-width: 768px) {
    .orange-no-arrow {
      font-size: 18px !important;
      margin-bottom: 30px; } }
  .orange-no-arrow::before {
    display: none; }

#mk-footer .mk-padding-wrapper {
  padding-left: 0 !important;
  padding-right: 0 !important; }
  @media (max-width: 768px) {
    #mk-footer .mk-padding-wrapper {
      padding-left: 15px !important;
      padding-right: 15px !important; } }

#mk-footer .widgettitle {
  letter-spacing: 2px;
  white-space: nowrap; }

#mk-footer a {
  padding: 8px 15px 8px 0px !important;
  letter-spacing: 1px; }

#mk-footer a svg {
  display: none; }

@media (max-width: 768px) {
  #mk-footer .mk-col-1-5:nth-child(2), #mk-footer .mk-col-1-5:nth-child(4) {
    margin-bottom: 0 !important; } }

@media (max-width: 768px) {
  #mk-footer .mk-col-1-5:nth-child(2) section, #mk-footer .mk-col-1-5:nth-child(4) section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important; } }

@media (max-width: 768px) {
  #mk-footer .mk-col-1-5:nth-child(3) .widgettitle, #mk-footer .mk-col-1-5:nth-child(5) .widgettitle {
    display: none; } }

@media (max-width: 768px) {
  #mk-footer .mk-col-1-5:nth-child(3) section, #mk-footer .mk-col-1-5:nth-child(5) section {
    padding-top: 0 !important; } }

#sub-footer .mk-footer-copyright {
  position: relative;
  border-top: solid 1px #284e7f;
  padding: 40px 2% 60px 2% !important;
  font-weight: normal !important; }
  @media (max-width: 768px) {
    #sub-footer .mk-footer-copyright {
      padding: 40px 15px !important; } }
  #sub-footer .mk-footer-copyright::before {
    content: "";
    display: block;
    width: 128px;
    height: 99px;
    background: url(/wp-content/uploads/2019/07/logo-footer.png) top left no-repeat;
    background-size: cover;
    float: left;
    margin-right: 30px; }
    @media (max-width: 768px) {
      #sub-footer .mk-footer-copyright::before {
        display: inline-block;
        float: none;
        margin-right: 0;
        margin-bottom: 30px; } }

.row-img {
  min-height: 700px !important; }
  @media (max-width: 768px) {
    .row-img {
      min-height: 200px !important; } }

.column-content {
  padding: 80px 30px; }
  @media (max-width: 768px) {
    .column-content {
      padding: 40px 15px; } }

.row-content {
  padding: 80px 0; }
  @media (max-width: 768px) {
    .row-content {
      padding: 40px 15px; } }
  .row-content.no-bottom-padding {
    padding-bottom: 0 !important; }
  .row-content.no-top-padding {
    padding-top: 0 !important; }

.vtable {
  display: table;
  height: 100%;
  width: 100%; }
  .vtable > div {
    display: table-cell;
    height: 100%;
    width: 100%;
    text-align: center;
    vertical-align: middle; }

.vcell {
  display: table-cell;
  height: 100%;
  width: 100%;
  text-align: center;
  vertical-align: middle; }

.group:after {
  content: "";
  display: table;
  clear: both; }
.blog-single-meta{display:none!important;}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX21peGlucy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5UaGVtZSBOYW1lOiAgICAgSnVwaXRlciBDaGlsZCBUaGVtZVxuVGhlbWUgVVJJOiBcdFx0aHR0cDovL3RoZW1lZm9yZXN0Lm5ldC91c2VyL2FydGJlZXNcbkRlc2NyaXB0aW9uOiAgICBDaGlsZCB0aGVtZSBmb3IgdGhlIEp1cGl0ZXIgdGhlbWUgXG5BdXRob3I6ICAgICAgICAgWW91ciBuYW1lIGhlcmVcblRoZW1lIFVSSTogXHRcdGh0dHA6Ly90aGVtZWZvcmVzdC5uZXQvdXNlci9hcnRiZWVzXG5UZW1wbGF0ZTogICAgICAganVwaXRlclxuVmVyc2lvbjogICAgICAgIDEuMFxuKi9cblxuXG5AaW1wb3J0ICdtaXhpbnMnO1xuXG4vL0BpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge31cbi8vQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO31cblxuXG4kbGlnaHRCbHVlIDogIzAwODBiYztcbiRncmV5IDogI2I0YmJjZjtcbiRkYXJrIDogIzA2MzAzYTtcbiRvcmFuZ2UgOiAjZTE2YTJjO1xuXG5cbmgxIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Zm9udC1zaXplOjIycHggIWltcG9ydGFudDt9XG59XG5cblxuaDIge1xuXHRtYXJnaW46IDAgMCAyMHB4IDA7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge21hcmdpbjogMCAwIDE1cHggMDsgZm9udC1zaXplOjIwcHggIWltcG9ydGFudDt9XG59XG5cbmgzIHtcblx0Zm9udC1zdHlsZTppdGFsaWM7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2ZvbnQtc2l6ZToyMHB4ICFpbXBvcnRhbnQ7fVxufVxuXG5wIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Zm9udC1zaXplOjE0cHggIWltcG9ydGFudDt9XG59XG5cbmEge2ZvbnQtd2VpZ2h0OmJvbGQ7fVxuXG4uYmlnZ2VyLXAge1xuXHRmb250LXNpemU6MjRweCAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtmb250LXNpemU6MTVweCAhaW1wb3J0YW50O31cbn1cblxuLmdyZXktdGV4dCB7XG5cdHAge2NvbG9yOiM2NjYgIWltcG9ydGFudDt9XG59XG5cbi5kYXJrLXRleHQge1xuXHRzdHJvbmcsIHAsIGg0LCBoMSwgdWwsIGxpIHtjb2xvcjojMDYzMDNhICFpbXBvcnRhbnQ7fVxufVxuXG4uc3BlY3MgLm1rLXBhZGRpbmctd3JhcHBlciB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge3BhZGRpbmc6MCAhaW1wb3J0YW50O31cblx0LnZjX2NvbC1zbS02IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtwYWRkaW5nOjAgIWltcG9ydGFudDt9XG5cdH1cbn1cblxuLm1rLW1haW4tbmF2aWdhdGlvbiB7cGFkZGluZy1yaWdodDoxNzBweDt9XG4uaGVhZGVyLXN0eWxlLTEuaGVhZGVyLWFsaWduLWxlZnQgLm1rLW5hdi1yZXNwb25zaXZlLWxpbmsge3JpZ2h0OjI3cHggIWltcG9ydGFudDt9XG5cbi5tay1oZWFkZXItdG9vbGJhciB7XG5cdGhlaWdodDoyMnB4ICFpbXBvcnRhbnQ7IEBpbmNsdWRlIHRyYW5zaXRpb24oaGVpZ2h0IC4zcyBlYXNlLWluLW91dCk7XG5cdC8vIGJvcmRlci1ib3R0b206c29saWQgMTNweCByZ2JhKCNmMGY1ZmMsIDAuNyk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2hlaWdodDphdXRvICFpbXBvcnRhbnQ7IGJvcmRlci1ib3R0b206bm9uZTt9XG59XG4ubWstaGVhZGVyLXRvb2xiYXItaG9sZGVyIHtcblx0cG9zaXRpb246YWJzb2x1dGU7IHJpZ2h0OjA7IHRleHQtYWxpZ246cmlnaHQ7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge3Bvc2l0aW9uOnJlbGF0aXZlOyByaWdodDphdXRvO31cbn1cbi5tay10b29sYmFyLW5hdmlnYXRpb24ge1xuXHRoZWlnaHQ6YXV0byAhaW1wb3J0YW50OyBtYXJnaW4tcmlnaHQ6MCAhaW1wb3J0YW50OyBtYXJnaW4tdG9wOjVweDsgdGV4dC1hbGlnbjpjZW50ZXI7IEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4zcyBlYXNlLWluLW91dCk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge3RleHQtYWxpZ246cmlnaHQ7IG1hcmdpbi10b3A6MDt9XG5cdGxpIGEge3BhZGRpbmc6MCAxMHB4ICFpbXBvcnRhbnQ7fVxuXHRsaTpmaXJzdC1jaGlsZCB7XG5cdFx0ZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTsgIGJhY2tncm91bmQtY29sb3I6JGxpZ2h0Qmx1ZTsgcGFkZGluZzowIDI1cHggNHB4IDI1cHg7IGJveC1zaXppbmc6Ym9yZGVyLWJveDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtwYWRkaW5nOjAgOXB4IDRweCAyNXB4ICFpbXBvcnRhbnQ7fVxuXHRcdGEge1xuXHRcdFx0Zm9udC1zaXplOjE0cHggIWltcG9ydGFudDsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7cGFkZGluZzowIDAgMTBweCAwICFpbXBvcnRhbnQ7fVxuXHRcdH1cblx0fVxuXHRsaTpudGgtY2hpbGQoMiksIGxpOm50aC1jaGlsZCgzKSwgbGk6bnRoLWNoaWxkKDQpLCBsaTpudGgtY2hpbGQoNSkge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlOyB0b3A6MDsgIHotaW5kZXg6MTsgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UpOyBcblx0XHRhIHtib3JkZXItcmlnaHQ6MDt9XG5cdFx0YSBzcGFuLm1lbmktaXRlbS10ZXh0IHtkaXNwbGF5OmlubGluZS1ibG9jazsgb3ZlcmZsb3c6aGlkZGVuOyB0ZXh0LWluZGVudDotMTAwMDBweDt9XG5cdH1cblx0Lm1rLXN2Zy1pY29uIHtcblx0XHRmaWxsOiRkYXJrO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2ZpbGw6I2ZmZjt9XG5cdH1cbn1cblxuLmEtc3RpY2t5IHtcblx0Lm1rLXRvb2xiYXItbmF2aWdhdGlvbiB7XG5cdFx0bWFyZ2luLXRvcDozMnB4O1xuXHRcdGxpOm50aC1jaGlsZCgyKSwgbGk6bnRoLWNoaWxkKDMpLCBsaTpudGgtY2hpbGQoNCksIGxpOm50aC1jaGlsZCg1KSB7dG9wOi0yNXB4OyB6LWluZGV4Oi0xO31cblx0fVxuXHQubWstaGVhZGVyLXRvb2xiYXIge2hlaWdodDozNXB4ICFpbXBvcnRhbnQ7fVxufVxuXG4ubXMtc2tpbi1taW5pbWFsIC5tcy1uYXYtbmV4dCwgLm1zLXNraW4tbWluaW1hbCAubXMtbmF2LXByZXYge1xuXHRiYWNrZ3JvdW5kLWltYWdlOnVybCgnL3dwLWNvbnRlbnQvdGhlbWVzL2p1cGl0ZXItY2hpbGQvaW1hZ2VzL21pbmltYWwuc3ZnJyk7XG5cdGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7IGJvcmRlci1jb2xvcjojZmZmO1xufVxuXG4uYmx1ZS1idG4gYSB7Zm9udC13ZWlnaHQ6IDQwMDsgbGV0dGVyLXNwYWNpbmc6IDRweDt9XG4ud2hpdGUtYm9yZGVyLWJvdHRvbSB7Ym9yZGVyLWJvdHRvbTpzb2xpZCAxcHggI2ZmZjt9XG5cbi53aXRoLWFycm93LWxlZnQgaDMge1xuXHRmb250LXNpemU6MjRweCAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtmb250LXNpemU6MjBweCAhaW1wb3J0YW50O31cblx0Jjo6YmVmb3JlIHtcblx0XHRjb250ZW50OlwiXCI7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyB3aWR0aDoyNXB4OyBoZWlnaHQ6MTdweDsgYmFja2dyb3VuZDp1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE5LzA2L2Fycm93LnBuZykgdG9wIGxlZnQgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjsgbWFyZ2luLXJpZ2h0OjEwcHg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7d2lkdGg6MTRweDsgdmVydGljYWwtYWxpZ246LTZweDt9XG5cdH1cbn1cblxuLmhlYWRlci1zZWN0aW9uIHtcblx0cGFkZGluZy10b3A6MTMycHg7IG1pbi1oZWlnaHQ6NzAwcHggIWltcG9ydGFudDtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7cGFkZGluZy10b3A6MDsgbWluLWhlaWdodDoyMDBweCAhaW1wb3J0YW50O31cblx0aDEge1xuXHRcdGZvbnQtc2l6ZTo2MHB4ICFpbXBvcnRhbnQ7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Zm9udC1zaXplOjI2cHggIWltcG9ydGFudDt9XG5cdH1cbn1cblxuLmRldGFpbGxhbnRzIHtcblx0Ji5yb3ctY29udGVudCB7cGFkZGluZy1ib3R0b206MjBweCAhaW1wb3J0YW50O31cblx0Lm1rLWdhbGxlcnkge21hcmdpbi10b3A6MjBweCAhaW1wb3J0YW50O31cbn1cblxuLm1vc2FpYyB7XG5cdC5tay1wYWRkaW5nLXdyYXBwZXIge3BhZGRpbmc6MCAhaW1wb3J0YW50O31cblx0Lm1rLWltYWdlYm94LWl0ZW0ge21hcmdpbi1ib3R0b206MCAhaW1wb3J0YW50O31cbn1cblxuXG4ubWstZ2FsbGVyeS1sYXp5bG9hZCAubWstZ2FsbGVyeS1pbWFnZSB7YmFja2dyb3VuZC1jb2xvcjojZjBmMGYwICFpbXBvcnRhbnQ7fVxuI2dhbGxlcnktbG9vcC0zMiAuaXRlbS1ob2xkZXIge21hcmdpbi1ib3R0b206MzB9XG5cbi5pbmZvLWJhciB7XG5cdHBhZGRpbmc6MzBweCAwICFpbXBvcnRhbnQ7XG5cdHAge1xuXHRcdGZvbnQtc2l6ZToyMnB4ICFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OjkwMCAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOjAgIWltcG9ydGFudDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtmb250LXNpemU6MThweCAhaW1wb3J0YW50OyB0ZXh0LWFsaWduOmxlZnQgIWltcG9ydGFudDt9XG5cdH1cblx0YSB7XG5cdFx0Y29sb3I6I2ZmZjsgZm9udC13ZWlnaHQ6bm9ybWFsO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2ZvbnQtc2l6ZToxNHB4ICFpbXBvcnRhbnQ7fVxuXHR9XG5cdHN0cm9uZyB7Y29sb3I6JG9yYW5nZTsgZm9udC13ZWlnaHQ6OTAwO31cbn1cblxuLmFwcm9wb3MtdGl0bGUgaDEge21hcmdpbi10b3A6MTUwcHg7fVxuXG4uZXF1aXBlbWVudC1idG4ge1xuXHQuaXRlbS1ob2xkZXIgLml0ZW0td3JhcHBlciB7cG9zaXRpb246cmVsYXRpdmU7fVxuXHQuaXRlbS1idXR0b24ge3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgYm90dG9tOjA7IHdpZHRoOjEwMCU7fVxuXHRhIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgd2lkdGg6IDEwMCU7IGZvbnQtc2l6ZToyNHB4ICFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OjkwMCAhaW1wb3J0YW50OyB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG5cdFx0Jjo6YmVmb3JlIHtjb250ZW50OlwiXCI7IGRpc3BsYXk6YmxvY2s7fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2ZvbnQtc2l6ZToxNXB4ICFpbXBvcnRhbnQ7fVxuXHR9XG5cdGEubGluay1oaXR6b25lIHtwb3NpdGlvbjogYWJzb2x1dGU7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IG9wYWNpdHk6MDsgYm94LXNpemluZzpib3JkZXItYm94O31cbn1cblxuLmltZy1waWVjZXMgLm1rLWdhbGxlcnkge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHttYXJnaW4tdG9wOjIwcHggIWltcG9ydGFudDsgbWFyZ2luLWJvdHRvbToyMHB4ICFpbXBvcnRhbnQ7fVxufVxuLmltZy1waWVjZXMgLm1rLWdhbGxlcnktaXRlbSB7XG5cdHdpZHRoOjExLjExMTExMTExJSAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHt3aWR0aDo1MCUgIWltcG9ydGFudDt9XG5cdFxuXHQvLyY6bGFzdC1vZi10eXBlIHt3aWR0aDoxMS4yJSAhaW1wb3J0YW50O31cbn1cbi5yZWFsaXNhdGlvbnMgLmdhbGxlcnktZGVzYyB7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fVxuXG4uY29udGFjdC1pbmZvIHtcblx0Y29sb3I6I2ZmZjsgZm9udC1zaXplOjE4cHg7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2NvbG9yOiRkYXJrICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZToxM3B4O31cblx0dWwgbGkge2xpbmUtaGVpZ2h0OjEuNmVtO31cblx0c3ZnIHtmaWxsOiRvcmFuZ2U7IHRvcDo2cHggIWltcG9ydGFudDt9XG59XG5cbi5jb250YWN0LWhldXJlcyB7XG5cdHRhYmxlIHRkIHtcblx0XHR0ZXh0LWFsaWduOmxlZnQ7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Zm9udC1zaXplOjEzcHggIWltcG9ydGFudDt9XG5cdH1cblxuXHQuYmFja2dyb3VuZC1sYXllciB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7YmFja2dyb3VuZC1pbWFnZTpub25lICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtY29sb3I6I2YwZjBmMCAhaW1wb3J0YW50O31cblx0fVxuXG5cdC5tay10ZXh0LWJsb2NrIHtcblx0XHRoMSB7QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Y29sb3I6JGRhcmsgIWltcG9ydGFudDt9fVxuXHR9XG59XG5cbi5tay1hZHZhbmNlZC1nbWFwcyB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2hlaWdodDozMDBweCAhaW1wb3J0YW50O31cbn1cblxuLnNwZWNzIHtcblx0aDQge21hcmdpbi1ib3R0b206MjBweDt9XG5cdHVsIHttYXJnaW4tbGVmdDowOyBwYWRkaW5nLWxlZnQ6MDt9XG5cdHVsIGxpIHtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTsgbWFyZ2luLWxlZnQ6MDsgcGFkZGluZy1sZWZ0OjIzcHg7IGxpc3Qtc3R5bGUtdHlwZTpub25lO1xuXHRcdCY6OmJlZm9yZSB7Y29udGVudDpcIlwiOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjVweDsgbGVmdDowOyB3aWR0aDoxMnB4OyBoZWlnaHQ6MTFweDsgYmFja2dyb3VuZDp1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE5LzA3L2Fycm93LXJpZ2h0LnBuZykgdG9wIGxlZnQgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7fVxuXHR9XG5cdGhyIHtcblx0XHRoZWlnaHQ6N3B4OyBiYWNrZ3JvdW5kLWNvbG9yOiNjZmQ1ZGQ7IGJvcmRlcjpub25lOyBtYXJnaW46MCAhaW1wb3J0YW50O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge21hcmdpbjowICFpbXBvcnRhbnQ7fVxuXHR9XG59XG5cbmg1IHtcblx0cG9zaXRpb246cmVsYXRpdmU7IG1hcmdpbi1sZWZ0OjA7IHBhZGRpbmctbGVmdDoyM3B4OyBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Zm9udC1zaXplOjIxcHggIWltcG9ydGFudDt9XG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDpcIlwiOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjEzcHg7IGxlZnQ6MDsgd2lkdGg6MTZweDsgaGVpZ2h0OjE1cHg7IGJhY2tncm91bmQ6dXJsKC93cC1jb250ZW50L3VwbG9hZHMvMjAxOS8wNy9hcnJvdy1yaWdodC5wbmcpIHRvcCBsZWZ0IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge3RvcDo2cHg7fVxuXHR9XG59XG5cbi50ZWFtIHtcblx0aDIge1xuXHRcdGZvbnQtc2l6ZTozMHB4ICFpbXBvcnRhbnQ7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW4tbGVmdDowOyBwYWRkaW5nLWxlZnQ6MjNweDsgbGlzdC1zdHlsZS10eXBlOm5vbmU7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7Zm9udC1zaXplOjE5cHggIWltcG9ydGFudDt9XG5cblx0XHQmOjpiZWZvcmUge2NvbnRlbnQ6XCJcIjsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDoxM3B4OyBsZWZ0OjA7IHdpZHRoOjE2cHg7IGhlaWdodDoxNXB4OyBiYWNrZ3JvdW5kOnVybCgvd3AtY29udGVudC91cGxvYWRzLzIwMTkvMDcvYXJyb3ctcmlnaHQucG5nKSB0b3AgbGVmdCBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTpjb3Zlcjt9XG5cdH1cblx0cCB7bWFyZ2luLWJvdHRvbTo0MHB4O31cbn1cblxuLm5vLXBhZGRpbmctbW9iaWxlIHtcblx0Lm1rLXBhZGRpbmctd3JhcHBlciwgLndwYl9jb2x1bW4sIC52Y19jb2x1bW4taW5uZXIge0BpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge3BhZGRpbmctbGVmdDowICFpbXBvcnRhbnQ7IHBhZGRpbmctcmlnaHQ6MCAhaW1wb3J0YW50O319XG59XG5cbi5vcmFuZ2Utbm8tYXJyb3cge1xuXHRjb2xvcjokb3JhbmdlICFpbXBvcnRhbnQ7IHBhZGRpbmctbGVmdDowOyBmb250LXdlaWdodDo5MDAgIWltcG9ydGFudDsgbWFyZ2luLWJvdHRvbTo2MHB4O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtmb250LXNpemU6MThweCAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOjMwcHg7fVxuXHQmOjpiZWZvcmUge2Rpc3BsYXk6bm9uZTt9XG59XG5cbiNtay1mb290ZXIge1xuXHQubWstcGFkZGluZy13cmFwcGVyIHtcblx0XHRwYWRkaW5nLWxlZnQ6MCAhaW1wb3J0YW50OyBwYWRkaW5nLXJpZ2h0OjAgIWltcG9ydGFudDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHtwYWRkaW5nLWxlZnQ6MTVweCAhaW1wb3J0YW50OyBwYWRkaW5nLXJpZ2h0OjE1cHggIWltcG9ydGFudDt9XG5cdH1cblx0LndpZGdldHRpdGxlIHtsZXR0ZXItc3BhY2luZzoycHg7IHdoaXRlLXNwYWNlOm5vd3JhcDt9XG5cdGEge3BhZGRpbmc6OHB4IDE1cHggOHB4IDBweCAhaW1wb3J0YW50OyBsZXR0ZXItc3BhY2luZzoxcHg7fVxuXHRhIHN2ZyB7ZGlzcGxheTpub25lO31cblxuXHQubWstY29sLTEtNTpudGgtY2hpbGQoMiksIC5tay1jb2wtMS01Om50aC1jaGlsZCg0KSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7bWFyZ2luLWJvdHRvbTowICFpbXBvcnRhbnQ7fVxuXHRcdHNlY3Rpb24ge0BpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge21hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDt9fVxuXHR9XG5cblx0Lm1rLWNvbC0xLTU6bnRoLWNoaWxkKDMpLCAubWstY29sLTEtNTpudGgtY2hpbGQoNSkge1xuXHRcdC53aWRnZXR0aXRsZSB7QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7ZGlzcGxheTpub25lO319XG5cdFx0c2VjdGlvbiB7QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7cGFkZGluZy10b3A6MCAhaW1wb3J0YW50O319XG5cdH1cbn1cblxuI3N1Yi1mb290ZXIge1xuXHQubWstZm9vdGVyLWNvcHlyaWdodCB7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7IGJvcmRlci10b3A6c29saWQgMXB4ICMyODRlN2Y7IHBhZGRpbmc6NDBweCAyJSA2MHB4IDIlICFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbCAhaW1wb3J0YW50O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge3BhZGRpbmc6NDBweCAxNXB4ICFpbXBvcnRhbnQ7fVxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OlwiXCI7IGRpc3BsYXk6YmxvY2s7IHdpZHRoOiAxMjhweDsgaGVpZ2h0Ojk5cHg7IGJhY2tncm91bmQ6dXJsKC93cC1jb250ZW50L3VwbG9hZHMvMjAxOS8wNy9sb2dvLWZvb3Rlci5wbmcpIHRvcCBsZWZ0IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOmNvdmVyOyBmbG9hdDpsZWZ0OyBtYXJnaW4tcmlnaHQ6MzBweDtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJtb2JpbGVcIikge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBmbG9hdDpub25lOyBtYXJnaW4tcmlnaHQ6MDsgbWFyZ2luLWJvdHRvbTozMHB4O31cblx0XHR9XG5cdH1cbn1cblxuLnJvdy1pbWcge1xuXHRtaW4taGVpZ2h0OiA3MDBweCAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHttaW4taGVpZ2h0OjIwMHB4ICFpbXBvcnRhbnQ7fVxufVxuXG4uY29sdW1uLWNvbnRlbnQge1xuXHRwYWRkaW5nOjgwcHggMzBweDtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7cGFkZGluZzo0MHB4IDE1cHg7fVxufVxuXG4ucm93LWNvbnRlbnQge1xuXHRwYWRkaW5nOjgwcHggMDtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChcIm1vYmlsZVwiKSB7cGFkZGluZzo0MHB4IDE1cHg7fVxuXG5cdCYubm8tYm90dG9tLXBhZGRpbmcge1xuXHRcdHBhZGRpbmctYm90dG9tOjAgIWltcG9ydGFudDtcdFx0XG5cdH1cblxuXHQmLm5vLXRvcC1wYWRkaW5nIHtcblx0XHRwYWRkaW5nLXRvcDowICFpbXBvcnRhbnQ7XHRcdFxuXHR9XG59XG5cbi52dGFibGUge1xuXHRkaXNwbGF5OnRhYmxlOyBoZWlnaHQ6MTAwJTsgd2lkdGg6MTAwJTtcblx0JiA+IGRpdiB7ZGlzcGxheTp0YWJsZS1jZWxsOyBoZWlnaHQ6MTAwJTsgd2lkdGg6MTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fVxufVxuXG4udmNlbGwge2Rpc3BsYXk6dGFibGUtY2VsbDsgaGVpZ2h0OjEwMCU7IHdpZHRoOjEwMCU7IHRleHQtYWxpZ246IGNlbnRlcjsgdmVydGljYWwtYWxpZ246bWlkZGxlO31cblxuLmdyb3VwOmFmdGVyIHtjb250ZW50OiBcIlwiOyBkaXNwbGF5OiB0YWJsZTsgY2xlYXI6IGJvdGg7fSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNaXhpbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiRub21pbiA6IDBweDtcbiRzbWFsbCA6IDQwMHB4O1xuJG1vYmlsZSA6IDc2OHB4O1xuJG1lZGl1bSA6IDk2MHB4O1xuJGxhcmdlIDogMTQ4MHB4O1xuXG4kbWVudSA6IDEyNzVweDtcblxuLy9AaW5jbHVkZSBicmVha3BvaW50KFwibW9iaWxlXCIpIHt9XG5cbkBtaXhpbiBicmVha3BvaW50KCRwb2ludClcbntcblx0QGlmICRwb2ludCA9PSBcIm5vbWluXCIge1xuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAkbm9taW4pIHtAY29udGVudDt9XG5cdH1cblxuXHRAaWYgJHBvaW50ID09IFwibW9iaWxlXCIge1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7QGNvbnRlbnQ7fVxuXHR9XG5cblx0QGlmICRwb2ludCA9PSBcImlwYWR2XCIge1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkaXBhZHYpIHtAY29udGVudDt9XG5cdH1cblxuXHRAaWYgJHBvaW50ID09IFwibGFyZ2VcIiB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRsYXJnZSkge0Bjb250ZW50O31cblx0fVxuXG5cdEBpZiAkcG9pbnQgPT0gXCJ0YWJsZXRcIiB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtAY29udGVudDt9XG5cdH1cblxuXHRAaWYgJHBvaW50ID09IFwiZGVza3RvcFwiIHtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJGRlc2t0b3ApIHtAY29udGVudDt9XG5cdH1cblxuXHRAaWYgJHBvaW50ID09IFwibWVudVwiIHtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJG1lbnUpIHtAY29udGVudDt9XG5cdH1cblxuXHRAaWYgJHBvaW50ID09IFwibWVkaXVtXCIge1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkbWVkaXVtKSB7QGNvbnRlbnQ7fVxuXHR9XG5cblx0QGlmICRwb2ludCA9PSBcInNtYWxsXCIge1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkc21hbGwpIHtAY29udGVudDt9XG5cdH1cblxuXHRAaWYgJHBvaW50ID09IFwibWVudVwiIHtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJG1lbnUpIHtAY29udGVudDt9XG5cdH1cblx0QGlmICRwb2ludCA9PSBcIm1lbnUtc21hbGxcIiB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRtZW51LXNtYWxsKSB7QGNvbnRlbnQ7fVxuXHR9XG59XG5cblxuQG1peGluIGFzcGVjdC1yYXRpbygkd2lkdGgsICRoZWlnaHQpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogKCRoZWlnaHQgLyAkd2lkdGgpICogMTAwJTtcbiAgfVxuICA+IC5jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCRhcmdzLi4uKSB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbjogJGFyZ3M7XG5cdC1tb3otdHJhbnNpdGlvbjogJGFyZ3M7XG5cdC1tcy10cmFuc2l0aW9uOiAkYXJncztcblx0LW8tdHJhbnNpdGlvbjogJGFyZ3M7XG5cdHRyYW5zaXRpb246ICRhcmdzO1xufVxuXG5cbkBtaXhpbiBjYWxjKCRrZXksICR2YWx1ZSkge1xuXHQjeyRrZXl9OiAtd2Via2l0LWNhbGMoI3skdmFsdWV9KTtcblx0I3ska2V5fTogLW1vei1jYWxjKCN7JHZhbHVlfSk7XG5cdCN7JGtleX06IGNhbGMoI3skdmFsdWV9KTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTWl4aW4gOiBMaW5lYXItZ3JhZGllbnRcbiAgIFVzYWdlIDpcblx0XHRAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQoIzMxQjdENywgI0VEQUM3RCk7XG4gIFx0XHRAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNFNDdEN0QgMCUsICNDMTk1RDMgNTAlLCAjNEZCNEU4IDEwMCUpO1xuICBcdFx0QGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KDQyZGVnLCAjQjU4MjM0IDAlLCAjRDJCNTQ1IDUwJSwgI0Q3QzA0RCA1MC4wMSUsICNGRkZGRkYgMTAwJSk7XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWl4aW4gbGluZWFyLWdyYWRpZW50KCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcy4uLilcbntcblx0Ly8gRGlyZWN0aW9uIGhhcyBiZWVuIG9taXR0ZWQgYW5kIGhhcHBlbnMgdG8gYmUgYSBjb2xvci1zdG9wXG5cdEBpZiBpcy1kaXJlY3Rpb24oJGRpcmVjdGlvbikgPT0gZmFsc2Uge1xuXHRcdCRjb2xvci1zdG9wczogJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzO1xuXHRcdCRkaXJlY3Rpb246IDE4MGRlZztcblx0fVxuXG5cdGJhY2tncm91bmQ6IG50aChudGgoJGNvbG9yLXN0b3BzLCAxKSwgMSk7XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZ2FjeS1kaXJlY3Rpb24oJGRpcmVjdGlvbiksICRjb2xvci1zdG9wcyk7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgkZGlyZWN0aW9uLCAkY29sb3Itc3RvcHMpO1xufVxuXG4vLy8gVGVzdCBpZiAnJHZhbHVlJyBpcyBhIHZhbGlkIGRpcmVjdGlvblxuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlIC0gVmFsdWUgdG8gdGVzdFxuLy8vIEByZXR1cm4ge0Jvb2x9XG5AZnVuY3Rpb24gaXMtZGlyZWN0aW9uKCR2YWx1ZSlcbntcblx0JGlzLWtleXdvcmQ6IGluZGV4KCh0byB0b3AsIHRvIHRvcCByaWdodCwgdG8gcmlnaHQgdG9wLCB0byByaWdodCwgdG8gYm90dG9tIHJpZ2h0LCB0byByaWdodCBib3R0b20sIHRvIGJvdHRvbSwgdG8gYm90dG9tIGxlZnQsIHRvIGxlZnQgYm90dG9tLCB0byBsZWZ0LCB0byBsZWZ0IHRvcCwgdG8gdG9wIGxlZnQpLCAkdmFsdWUpO1xuXHQkaXMtYW5nbGU6IHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyBhbmQgaW5kZXgoJ2RlZycgJ2dyYWQnICd0dXJuJyAncmFkJywgdW5pdCgkdmFsdWUpKTtcblx0QHJldHVybiAkaXMta2V5d29yZCBvciAkaXMtYW5nbGU7XG59XG5cbi8vLyBDb252ZXJ0IGEgZGlyZWN0aW9uIHRvIGxlZ2FjeSBzeW50YXhcbi8vLyBAcGFyYW0ge0tleXdvcmQgfCBBbmdsZX0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydFxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gaXMtZGlyZWN0aW9uXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb252ZXJ0LWFuZ2xlXG4vLy8gQHRocm93IENhbm5vdCBjb252ZXJ0IGAjeyR2YWx1ZX1gIHRvIGxlZ2FjeSBzeW50YXggYmVjYXVzZSBpdCBkb2Vzbid0IHNlZW0gdG8gYmUgYSBkaXJlY3Rpb24uO1xuQGZ1bmN0aW9uIGxlZ2FjeS1kaXJlY3Rpb24oJHZhbHVlKVxue1xuXHRAaWYgaXMtZGlyZWN0aW9uKCR2YWx1ZSkgPT0gZmFsc2Uge1xuICAgIFx0QGVycm9yIFwiQ2Fubm90IGNvbnZlcnQgYCN7JHZhbHVlfWAgdG8gbGVnYWN5IHN5bnRheCBiZWNhdXNlIGl0IGRvZXNuJ3Qgc2VlbSB0byBiZSBhIGRpcmVjdGlvbi5cIjtcblx0fVxuXHRcblx0JGNvbnZlcnNpb24tbWFwOiAoXG5cdCAgICB0byB0b3AgICAgICAgICAgOiBib3R0b20sXG5cdCAgICB0byB0b3AgcmlnaHQgICAgOiBib3R0b20gbGVmdCxcblx0ICAgIHRvIHJpZ2h0IHRvcCAgICA6IGxlZnQgYm90dG9tLFxuXHQgICAgdG8gcmlnaHQgICAgICAgIDogbGVmdCxcblx0ICAgIHRvIGJvdHRvbSByaWdodCA6IHRvcCBsZWZ0LFxuXHQgICAgdG8gcmlnaHQgYm90dG9tIDogbGVmdCB0b3AsXG5cdCAgICB0byBib3R0b20gICAgICAgOiB0b3AsXG5cdCAgICB0byBib3R0b20gbGVmdCAgOiB0b3AgcmlnaHQsXG5cdCAgICB0byBsZWZ0IGJvdHRvbSAgOiByaWdodCB0b3AsXG5cdCAgICB0byBsZWZ0ICAgICAgICAgOiByaWdodCxcblx0ICAgIHRvIGxlZnQgdG9wICAgICA6IHJpZ2h0IGJvdHRvbSxcblx0ICAgIHRvIHRvcCBsZWZ0ICAgICA6IGJvdHRvbSByaWdodFxuXHQpO1xuXG5cdEBpZiBtYXAtaGFzLWtleSgkY29udmVyc2lvbi1tYXAsICR2YWx1ZSkge1xuICAgIFx0QHJldHVybiBtYXAtZ2V0KCRjb252ZXJzaW9uLW1hcCwgJHZhbHVlKTtcbiAgXHR9XG5cbiAgXHRAcmV0dXJuIDkwZGVnIC0gJHZhbHVlO1xufVxuXG5AbWl4aW4gcm93TWFjaGluZSgkbnVtUGVyUm93LCAkbWFyZ2luKSB7XG4gIHdpZHRoOiAoKDEwMCUgLSAoKCRudW1QZXJSb3cgLSAxKSAqICRtYXJnaW4pKSAvICRudW1QZXJSb3cpO1xuICAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbToyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgfVxuICAmOm50aC1jaGlsZCgjeyRudW1QZXJSb3d9bikge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztFQVFFO0FDUkY7O2dGQUVnRjtBQTRGaEY7Ozs7OzswSEFNMEg7QUEvRXhILE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFREUxQixBQUFBLEVBQUUsQ0FBQztJQUM2QixTQUFTLEVBQUMsZUFBZSxHQUN4RDs7QUFHRCxBQUFBLEVBQUUsQ0FBQztFQUNGLE1BQU0sRUFBRSxVQUFVLEdBRWxCO0VDVkMsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lETzFCLEFBQUEsRUFBRSxDQUFDO01BRTZCLE1BQU0sRUFBRSxVQUFVO01BQUUsU0FBUyxFQUFDLGVBQWUsR0FDNUU7O0FBRUQsQUFBQSxFQUFFLENBQUM7RUFDRixVQUFVLEVBQUMsTUFBTSxHQUVqQjtFQ2ZDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztJRFkxQixBQUFBLEVBQUUsQ0FBQztNQUU2QixTQUFTLEVBQUMsZUFB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 */
