@charset "UTF-8";
@media (max-width: 767.98px) {
  .default-menu:not(.inactive-device)[data-off-canvas] {
    width: 100%; } }

.default-menu ul {
  margin: 0; }

.default-menu > ul {
  display: none; }

.default-menu > ul > li > a, .default-menu > ul > li > .top-level-menu-li-span {
  padding-top: 5px;
  padding-bottom: 5px;
   border: 1px solid #FFF;
  display: block;
  font-size: 1.06667rem;
  line-height: 1.46667rem;
  letter-spacing: 0.64px;
  position: relative;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  color: #252a33; 
 }
  
  @media (max-width: 1542px) and (min-width: 1200px) {
    .default-menu > ul > li > a, .default-menu > ul > li > .top-level-menu-li-span {
      font-size: 0.93333rem; } }
 
 .default-menu > ul > li > a {
 	 padding-top: 5px;
	 line-height: 29px;
 }

 .default-menu > ul > li > a.selectedItem{
	 border: 1px solid #333;
 }

 .default-menu > ul > li > a.selectedItem:before, .default-menu > ul > li > .top-level-menu-li-span:before,  .default-menu > ul > li > a.selectedItem:after, .default-menu > ul > li > .top-level-menu-li-span:after, 
 .default-menu > ul > li > a:hover:before, .default-menu > ul > li > .top-level-menu-li-span:hover:before, .default-menu > ul > li > a:hover:after, .default-menu > ul > li > .top-level-menu-li-span:hover:after  
 {
	content:"";
	width:1px;
	height:18px;
	background:#f9f9f9;
	position:absolute;
	left:-1px;
	top:11px
}

 .default-menu > ul > li > a.selectedItem:after, .default-menu > ul > li > .top-level-menu-li-span:after,
 .default-menu > ul > li > a:hover:after, .default-menu > ul > li > .top-level-menu-li-span:hover:after {
	 left:auto;
	 right:-1px
}

 .default-menu > ul > li > a:hover  {
	 border: 1px solid #333;
}


.default-menu .is-megamenu, .default-menu li.simple ul {
  display: none; }

@media (min-width: 1200px) {
  .default-menu > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .default-menu > ul > li {
      padding-top: 15px;
       } }
    @media (min-width: 1200px) and (min-width: 1200px) {
      .default-menu > ul > li + li {
        margin-left: 0.3rem; } }
    @media (min-width: 1200px) and (min-width: 1543px) {
      .default-menu > ul > li + li {
        margin-left: 1rem; } }
  @media (min-width: 1200px) and (max-width: 991.98px) {
    .default-menu > ul {
      margin-left: -1rem; }
      .default-menu > ul > li {
        margin-left: 1rem; } }

@media (min-width: 1200px) {
  .default-menu li.simple {
    position: relative; }
    .default-menu li.simple ul {
      position: absolute;
      text-align: left;
      top: 0;
      left: 100%;
      width: 13.33333rem;
      z-index: 99;
      -webkit-box-shadow: 0 0.33333rem 2.86667rem rgba(0, 0, 0, 0.11);
              box-shadow: 0 0.33333rem 2.86667rem rgba(0, 0, 0, 0.11);
      background: #fff; }
    .default-menu li.simple > ul {
      top: calc(100% + 1.13333rem);
      left: 0; }
    .default-menu li.simple li {
      position: relative;
      padding: 0.66667rem 1.33333rem; }
      .default-menu li.simple li .sf-with-ul {
        padding-right: 2rem; }
        .default-menu li.simple li .sf-with-ul:after {
          position: absolute;
          top: 50%;
          right: 0.66667rem;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          font-family: 'FontAwesome';
          content: "\F105";
          line-height: 1;
          -webkit-transition: all .3s ease;
          transition: all .3s ease;
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden; }
      .default-menu li.simple li.sfHover > .sf-with-ul:after, .default-menu li.simple li > .sf-with-ul:hover:after {
        right: 0.33333rem; }
  .default-menu .is-megamenu {
    position: absolute;
    top: calc(100% + 1.13333rem);
    -webkit-box-shadow: 0px 0.46667rem 1.93333rem 0px rgba(0, 0, 0, 0.06);
            box-shadow: 0px 0.46667rem 1.93333rem 0px rgba(0, 0, 0, 0.06);
    left: 0;
    right: 0;
    background: white;
    z-index: 7;
    padding: 0 1rem; }
    .default-menu .is-megamenu .menu-heading h3 {
      margin: 1rem 0 1rem;
      font-size: 1.06667rem;
      line-height: 1.3;
      font-weight: 400;
      text-transform: capitalize;
      color: #252a33; } }
    @media (min-width: 1200px) and (min-width: 1200px) {
      .default-menu .is-megamenu .menu-heading h3 {
        margin-bottom: 1.6rem;
        margin-top: 0; } }

@media (min-width: 1200px) {
    .default-menu .is-megamenu .products {
      background: #fafafa; }
      .default-menu .is-megamenu .products .content {
        overflow: hidden;
        padding-left: 1.6rem;
        padding-right: 1.6rem; }
        .default-menu .is-megamenu .products .content .product-info + .product-info {
          margin-top: 0.33333rem; }
    .default-menu .is-megamenu .product {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .default-menu .is-megamenu .product .product-image {
        max-width: 6.33333rem;
        margin-right: 2.33333rem; } }

@media (min-width: 1200px) {
  .default-menu .menu-title {
    display: none; } }

@media (max-width: 767.98px) {
  .default-menu > ul > li, .default-menu > ul > li.simple li {
    margin-top: 0.13333rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .default-menu > ul > li > a, .default-menu > ul > li > .top-level-menu-li-span, .default-menu > ul > li.simple li > a, .default-menu > ul > li.simple li > .top-level-menu-li-span {
      padding: 0.33333rem 0;
      display: inline-block; }
  .default-menu > ul > li.simple ul {
    padding-top: 0;
    padding-bottom: 0.13333rem; }
  .default-menu > ul .menu-mobile-grover {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    text-align: right; }
  .default-menu .is-megamenu, .default-menu .is-simplemenu, .default-menu .is-simplemenu ul {
    margin: 0.33333rem 0 0;
    padding: 0.66667rem 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; } }

@media (min-width: 576px) and (max-width: 767.98px) {
  .default-menu .w_100_sm, .default-menu .products_bloc_3_items {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .default-menu .w_50_sm {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .default-menu .w_33_sm {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333%;
            flex: 0 0 33.3333%;
    max-width: 33.3333%; } }

.column_menu ul.menu > li, .column_menu ul.menu li.simple, .column_menu ul.menu li.simple li {
  border: 0.06667rem solid #f8f8f8;
  padding: 0.66667rem 1.33333rem;
  position: relative;
  margin-bottom: 0; }
  .column_menu ul.menu > li:not(:last-child), .column_menu ul.menu li.simple:not(:last-child), .column_menu ul.menu li.simple li:not(:last-child) {
    border-bottom: none; }
  .column_menu ul.menu > li:before, .column_menu ul.menu li.simple:before, .column_menu ul.menu li.simple li:before {
    content: '';
    background: #f8f8f8;
    width: 0;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transition: all .3s;
    transition: all .3s;
    z-index: -1; }
  .column_menu ul.menu > li.sfHover:before, .column_menu ul.menu li.simple.sfHover:before, .column_menu ul.menu li.simple li.sfHover:before {
    width: 100%; }
  .column_menu ul.menu > li.sfHover > a.sf-with-ul:after, .column_menu ul.menu > li.sfHover > span.sf-with-ul:after, .column_menu ul.menu li.simple.sfHover > a.sf-with-ul:after, .column_menu ul.menu li.simple.sfHover > span.sf-with-ul:after, .column_menu ul.menu li.simple li.sfHover > a.sf-with-ul:after, .column_menu ul.menu li.simple li.sfHover > span.sf-with-ul:after {
    color: #252a33; }
  .column_menu ul.menu > li.sfHover > a + ul, .column_menu ul.menu > li.sfHover > a + .is-megamenu, .column_menu ul.menu > li.sfHover > span + ul, .column_menu ul.menu > li.sfHover > span + .is-megamenu, .column_menu ul.menu li.simple.sfHover > a + ul, .column_menu ul.menu li.simple.sfHover > a + .is-megamenu, .column_menu ul.menu li.simple.sfHover > span + ul, .column_menu ul.menu li.simple.sfHover > span + .is-megamenu, .column_menu ul.menu li.simple li.sfHover > a + ul, .column_menu ul.menu li.simple li.sfHover > a + .is-megamenu, .column_menu ul.menu li.simple li.sfHover > span + ul, .column_menu ul.menu li.simple li.sfHover > span + .is-megamenu {
    -webkit-animation-name: slideInUp;
            animation-name: slideInUp;
    -webkit-animation-duration: .5s;
            animation-duration: .5s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both; }

.column_menu ul.menu > li > a.sf-with-ul, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul, .column_menu ul.menu li.simple a.sf-with-ul, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul {
  margin-right: 0.66667rem; }
  .column_menu ul.menu > li > a.sf-with-ul:after, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul:after, .column_menu ul.menu li.simple a.sf-with-ul:after, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul:after {
    position: absolute;
    right: 0;
    top: 0.6rem;
    font-family: 'FontAwesome';
    content: "\F101";
    font-size: 1.86667rem;
    line-height: 1.86667rem;
    color: #f8f8f8;
    width: 1.86667rem;
    height: 1.86667rem;
    text-align: center;
    cursor: pointer;
    -webkit-transition: all .3s;
    transition: all .3s; }
    @media (min-width: 768px) and (max-width: 991.98px) {
      .column_menu ul.menu > li > a.sf-with-ul:after, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul:after, .column_menu ul.menu li.simple a.sf-with-ul:after, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul:after {
        height: 1.33333rem;
        width: 1.33333rem;
        font-size: 1.33333rem;
        line-height: 1.33333rem; } }
  .column_menu ul.menu > li > a.sf-with-ul + ul, .column_menu ul.menu > li > a.sf-with-ul + .is-megamenu, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul + ul, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul + .is-megamenu, .column_menu ul.menu li.simple a.sf-with-ul + ul, .column_menu ul.menu li.simple a.sf-with-ul + .is-megamenu, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul + ul, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul + .is-megamenu {
    position: absolute;
    left: calc(100% - 0.06667rem);
    width: 100%;
    top: -0.06667rem;
    z-index: 99;
    background: white; }
    .column_menu ul.menu > li > a.sf-with-ul + ul.is-megamenu, .column_menu ul.menu > li > a.sf-with-ul + .is-megamenu.is-megamenu, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul + ul.is-megamenu, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul + .is-megamenu.is-megamenu, .column_menu ul.menu li.simple a.sf-with-ul + ul.is-megamenu, .column_menu ul.menu li.simple a.sf-with-ul + .is-megamenu.is-megamenu, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul + ul.is-megamenu, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul + .is-megamenu.is-megamenu {
      width: 77.86667rem;
      padding: 2rem;
      border: 0.06667rem solid #f8f8f8; }
      .column_menu ul.menu > li > a.sf-with-ul + ul.is-megamenu .sf-with-ul + ul, .column_menu ul.menu > li > a.sf-with-ul + .is-megamenu.is-megamenu .sf-with-ul + ul, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul + ul.is-megamenu .sf-with-ul + ul, .column_menu ul.menu > li > span:not(.menu-mobile-grover).sf-with-ul + .is-megamenu.is-megamenu .sf-with-ul + ul, .column_menu ul.menu li.simple a.sf-with-ul + ul.is-megamenu .sf-with-ul + ul, .column_menu ul.menu li.simple a.sf-with-ul + .is-megamenu.is-megamenu .sf-with-ul + ul, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul + ul.is-megamenu .sf-with-ul + ul, .column_menu ul.menu li.simple span:not(.menu-mobile-grover).sf-with-ul + .is-megamenu.is-megamenu .sf-with-ul + ul {
        display: block !important; }

.column_menu#click_menu ul.menu > li, .column_menu#click_menu ul.menu > li.simple, .column_menu#click_menu ul.menu > li.simple li, #header .column_menu ul.menu > li, #header .column_menu ul.menu > li.simple, #header .column_menu ul.menu > li.simple li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .column_menu#click_menu ul.menu > li > *, .column_menu#click_menu ul.menu > li.simple > *, .column_menu#click_menu ul.menu > li.simple li > *, #header .column_menu ul.menu > li > *, #header .column_menu ul.menu > li.simple > *, #header .column_menu ul.menu > li.simple li > * {
    z-index: 2; }
  .column_menu#click_menu ul.menu > li .menu-mobile-grover, .column_menu#click_menu ul.menu > li.simple .menu-mobile-grover, .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover, #header .column_menu ul.menu > li .menu-mobile-grover, #header .column_menu ul.menu > li.simple .menu-mobile-grover, #header .column_menu ul.menu > li.simple li .menu-mobile-grover {
    z-index: 1;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    .column_menu#click_menu ul.menu > li .menu-mobile-grover:before, .column_menu#click_menu ul.menu > li.simple .menu-mobile-grover:before, .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover:before, #header .column_menu ul.menu > li .menu-mobile-grover:before, #header .column_menu ul.menu > li.simple .menu-mobile-grover:before, #header .column_menu ul.menu > li.simple li .menu-mobile-grover:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      opacity: 0;
      background: #f8f8f8;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
    .column_menu#click_menu ul.menu > li .menu-mobile-grover.active, .column_menu#click_menu ul.menu > li.simple .menu-mobile-grover.active, .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover.active, #header .column_menu ul.menu > li .menu-mobile-grover.active, #header .column_menu ul.menu > li.simple .menu-mobile-grover.active, #header .column_menu ul.menu > li.simple li .menu-mobile-grover.active {
      color: #13a1f4; }
      .column_menu#click_menu ul.menu > li .menu-mobile-grover.active + a, .column_menu#click_menu ul.menu > li.simple .menu-mobile-grover.active + a, .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover.active + a, #header .column_menu ul.menu > li .menu-mobile-grover.active + a, #header .column_menu ul.menu > li.simple .menu-mobile-grover.active + a, #header .column_menu ul.menu > li.simple li .menu-mobile-grover.active + a {
        color: #252a33; }
      .column_menu#click_menu ul.menu > li .menu-mobile-grover.active:before, .column_menu#click_menu ul.menu > li.simple .menu-mobile-grover.active:before, .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover.active:before, #header .column_menu ul.menu > li .menu-mobile-grover.active:before, #header .column_menu ul.menu > li.simple .menu-mobile-grover.active:before, #header .column_menu ul.menu > li.simple li .menu-mobile-grover.active:before {
        opacity: 1; }

.column_menu#click_menu ul.menu .is-megamenu, .column_menu#click_menu ul.menu > li.simple ul, .column_menu#click_menu ul.menu > li.simple li ul, #header .column_menu ul.menu .is-megamenu, #header .column_menu ul.menu > li.simple ul, #header .column_menu ul.menu > li.simple li ul {
  display: none;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% + 2.66667rem);
          flex: 0 0 calc(100% + 2.66667rem);
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  background: white;
  padding: 0.66667rem 1.33333rem;
  margin: 0.66667rem -1.33333rem -0.66667rem; }

.column_menu#click_menu ul.menu > li.simple > ul > li, #header .column_menu ul.menu > li.simple > ul > li {
  padding-right: 0;
  padding-left: 0; }

.column_menu#click_menu ul.menu > li.simple li, #header .column_menu ul.menu > li.simple li {
  border: none;
  padding-top: 0.33333rem;
  padding-bottom: 0.33333rem;
  font-size: 1rem;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }
  .column_menu#click_menu ul.menu > li.simple li ul, #header .column_menu ul.menu > li.simple li ul {
    margin-top: 0; }
  .column_menu#click_menu ul.menu > li.simple li a, #header .column_menu ul.menu > li.simple li a {
    margin-right: 1.33333rem; }
  .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover:before, #header .column_menu ul.menu > li.simple li .menu-mobile-grover:before {
    display: none; }
  .column_menu#click_menu ul.menu > li.simple li .menu-mobile-grover:after, #header .column_menu ul.menu > li.simple li .menu-mobile-grover:after {
    font-size: 1.73333rem; }

.menu-mobile-grover {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  cursor: pointer;
  font-size: 0;
  line-height: 0; }
  .menu-mobile-grover:after {
    position: relative;
    font-family: 'FontAwesome';
    content: "\F107";
    font-size: 1.73333rem;
    line-height: 1; }
  .menu-mobile-grover.active:after {
    content: '\F106'; }

.jxmegamenu_item .menu_badge {
  position: absolute;
  top: -0.13333rem;
  right: -0.33333rem;
  z-index: 2;
  font-size: 0.66667rem;
  display: inline-block;
  background: #13a1f4;
  color: #fff;
  padding: 0.06667rem 0.33333rem 0.13333rem 0.33333rem;
  line-height: 0.8rem;
  border-radius: 0.2rem;
  margin-left: 0.66667rem; }

.jxmegamenu_item .is-megamenu h3 {
  font-size: 0.93333rem;
  line-height: 1.46667rem;
  text-transform: uppercase;
  font-weight: bold; }

.jxmegamenu_item .is-megamenu .megamenu-row {
  text-align: left; }
  @media (min-width: 1200px) {
    .jxmegamenu_item .is-megamenu .megamenu-row {
      padding-left: 1.53333rem; } }
  @media (min-width: 1200px) {
    .jxmegamenu_item .is-megamenu .megamenu-row .megamenu-col {
      padding-top: 1.66667rem;
      padding-bottom: 1.66667rem; } }
  @media (min-width: 1360px) {
    .jxmegamenu_item .is-megamenu .megamenu-row .megamenu-col {
      padding-top: 2.53333rem;
      padding-bottom: 2.53333rem; } }

.jxmegamenu_item .is-megamenu ul.content {
  margin-bottom: 1.33333rem; }
  .jxmegamenu_item .is-megamenu ul.content > li.category > a, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers > a,
  .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers > a,
  .jxmegamenu_item .is-megamenu ul.content > li.product > a,
  .jxmegamenu_item .is-megamenu ul.content > li.cms-category > a,
  .jxmegamenu_item .is-megamenu ul.content > li.cms-page > a,
  .jxmegamenu_item .is-megamenu ul.content > li.custom-link > a {
    display: inline-block;
    font-size: 0.93333rem;
    line-height: 1.46667rem;
    text-transform: none;
    font-weight: 400;
    color: #3a3a3a;
    margin-bottom: 1.13333rem; }
    @media (max-width: 991.98px) {
      .jxmegamenu_item .is-megamenu ul.content > li.category > a, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers > a,
      .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers > a,
      .jxmegamenu_item .is-megamenu ul.content > li.product > a,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-category > a,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-page > a,
      .jxmegamenu_item .is-megamenu ul.content > li.custom-link > a {
        font-size: 0.86667rem;
        margin-bottom: 0.66667rem; } }
    .jxmegamenu_item .is-megamenu ul.content > li.category > a:hover, .jxmegamenu_item .is-megamenu ul.content > li.category > a:focus, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers > a:hover, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers > a:focus,
    .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers > a:hover,
    .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers > a:focus,
    .jxmegamenu_item .is-megamenu ul.content > li.product > a:hover,
    .jxmegamenu_item .is-megamenu ul.content > li.product > a:focus,
    .jxmegamenu_item .is-megamenu ul.content > li.cms-category > a:hover,
    .jxmegamenu_item .is-megamenu ul.content > li.cms-category > a:focus,
    .jxmegamenu_item .is-megamenu ul.content > li.cms-page > a:hover,
    .jxmegamenu_item .is-megamenu ul.content > li.cms-page > a:focus,
    .jxmegamenu_item .is-megamenu ul.content > li.custom-link > a:hover,
    .jxmegamenu_item .is-megamenu ul.content > li.custom-link > a:focus {
      color: #13a1f4; }
  .jxmegamenu_item .is-megamenu ul.content > li.category ul li, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers ul li,
  .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers ul li,
  .jxmegamenu_item .is-megamenu ul.content > li.product ul li,
  .jxmegamenu_item .is-megamenu ul.content > li.cms-category ul li,
  .jxmegamenu_item .is-megamenu ul.content > li.cms-page ul li,
  .jxmegamenu_item .is-megamenu ul.content > li.custom-link ul li {
    font-size: 0.93333rem;
    line-height: 1.33333rem;
    margin-bottom: 0.66667rem; }
    @media (max-width: 991.98px) {
      .jxmegamenu_item .is-megamenu ul.content > li.category ul li, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers ul li,
      .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers ul li,
      .jxmegamenu_item .is-megamenu ul.content > li.product ul li,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-category ul li,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-page ul li,
      .jxmegamenu_item .is-megamenu ul.content > li.custom-link ul li {
        font-size: 0.8rem;
        margin-bottom: 0.33333rem; } }
    .jxmegamenu_item .is-megamenu ul.content > li.category ul li a, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers ul li a,
    .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers ul li a,
    .jxmegamenu_item .is-megamenu ul.content > li.product ul li a,
    .jxmegamenu_item .is-megamenu ul.content > li.cms-category ul li a,
    .jxmegamenu_item .is-megamenu ul.content > li.cms-page ul li a,
    .jxmegamenu_item .is-megamenu ul.content > li.custom-link ul li a {
      color: #878787; }
      .jxmegamenu_item .is-megamenu ul.content > li.category ul li a:hover, .jxmegamenu_item .is-megamenu ul.content > li.category ul li a:focus, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers ul li a:hover, .jxmegamenu_item .is-megamenu ul.content > li.all-manufacturers ul li a:focus,
      .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers ul li a:hover,
      .jxmegamenu_item .is-megamenu ul.content > li.all-suppliers ul li a:focus,
      .jxmegamenu_item .is-megamenu ul.content > li.product ul li a:hover,
      .jxmegamenu_item .is-megamenu ul.content > li.product ul li a:focus,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-category ul li a:hover,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-category ul li a:focus,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-page ul li a:hover,
      .jxmegamenu_item .is-megamenu ul.content > li.cms-page ul li a:focus,
      .jxmegamenu_item .is-megamenu ul.content > li.custom-link ul li a:hover,
      .jxmegamenu_item .is-megamenu ul.content > li.custom-link ul li a:focus {
        color: #3a3a3a; }
  .jxmegamenu_item .is-megamenu ul.content ul {
    opacity: 1 !important;
    display: block !important; }

.jxmegamenu_item .is-megamenu .html.without-title .html-title {
  display: none; }

.jxmegamenu_item .is-megamenu .menuvideowrapper {
  clear: both;
  float: none;
  height: 0;
  padding-bottom: 56.25%;
  padding-top: 1.66667rem;
  position: relative;
  width: 100%; }
  .jxmegamenu_item .is-megamenu .menuvideowrapper iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }

.jxmegamenu_item .is-megamenu .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto; }
  .jxmegamenu_item .is-megamenu .embed-container iframe, .jxmegamenu_item .is-megamenu .embed-container object, .jxmegamenu_item .is-megamenu .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.jxmegamenu_item .is-megamenu .frontend-map {
  min-height: 13.33333rem; }

@media (min-width: 767px) and (max-width: 1199px) {
  .inline-menu ul.menu {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    -webkit-transform: translate(30%, 0);
            transform: translate(30%, 0);
    width: 26.66667rem;
    background: white;
    z-index: 2;
    padding: 2.93333rem 3.26667rem;
    margin: 1.33333rem 0 0;
    max-height: calc(100vh - 4.66667rem);
    -webkit-box-shadow: 0px 1rem 4.13333rem 0px rgba(0, 0, 0, 0.07);
            box-shadow: 0px 1rem 4.13333rem 0px rgba(0, 0, 0, 0.07);
    overflow-y: auto; }
    .inline-menu ul.menu > li {
      position: relative;
      width: 100%;
      margin: 0;
      padding: 0;
      z-index: 1; }
      .inline-menu ul.menu > li + li {
        margin-top: 1.86667rem; }
      .inline-menu ul.menu > li a {
        display: block;
        position: relative;
        padding: 0;
        font-size: 1.06667rem;
        line-height: 1.46667rem;
        font-weight: 700;
        color: #252a33;
        text-transform: uppercase;
        letter-spacing: 0.04em; }
        .inline-menu ul.menu > li a:hover {
          color: #13a1f4; }
        .inline-menu ul.menu > li a:before {
          display: none; }
      .inline-menu ul.menu > li .is-megamenu,
      .inline-menu ul.menu > li .is-simplemenu {
        position: relative;
        padding-left: 0.66667rem;
        padding-right: 0;
        width: 100%;
        left: auto;
        right: auto;
        top: auto;
        -webkit-box-shadow: none;
                box-shadow: none; }
        .inline-menu ul.menu > li .is-megamenu > li,
        .inline-menu ul.menu > li .is-simplemenu > li {
          padding: 0; }
        .inline-menu ul.menu > li .is-megamenu ul,
        .inline-menu ul.menu > li .is-simplemenu ul {
          position: relative;
          display: block;
          left: auto;
          width: 100%;
          -webkit-box-shadow: none;
                  box-shadow: none; }
          .inline-menu ul.menu > li .is-megamenu ul > li,
          .inline-menu ul.menu > li .is-simplemenu ul > li {
            padding: 0; }
      .inline-menu ul.menu > li .is-simplemenu > li a {
        padding: 0.2rem 0;
        text-transform: none;
        font-weight: normal; }
      .inline-menu ul.menu > li .menu-mobile {
        padding-top: 1.06667rem;
        padding-bottom: 1.06667rem; }
      .inline-menu ul.menu > li .menu-mobile-grover {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        height: 1.66667rem; }
        .inline-menu ul.menu > li .menu-mobile-grover:after {
          position: absolute;
          font-size: 1.06667rem;
          top: 0.66667rem;
          right: 0.4rem;
          -webkit-transform: translate(0, -50%);
                  transform: translate(0, -50%);
          cursor: pointer;
          z-index: 1;
          -webkit-transition: 0.3s all ease;
          transition: 0.3s all ease; } }

.hm_menu .menu-title {
  display: inline-block !important;
  position: relative;
  cursor: pointer;
  line-height: 1.3125;
  margin-right: 3.2rem;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease; }
  .hm_menu .menu-title.active:before {
    color: #13a1f4; }
  @media (max-width: 1199px) {
    .hm_menu .menu-title {
      margin-right: 0; } }
  @media (max-width: 1199px) {
    .hm_menu .menu-title span {
      display: none;
      margin-right: 0; } }
  .hm_menu .menu-title:before {
    font-family: "FontAwesome";
    content: "\F0C9";
    display: inline-block;
    font-weight: normal;
    font-size: 1.06667rem;
    color: #878787;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
    margin-right: 1.2rem; }
    @media (max-width: 1200px) {
      .hm_menu .menu-title:before {
        margin-right: 2rem; } }

.hm_menu .top-level-menu {
  display: none; }

.hm_menu .is-megamenu .megamenu-row .megamenu-col,
.hm_menu .is-simplemenu .megamenu-row .megamenu-col {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
  padding: 0; }
  .hm_menu .is-megamenu .megamenu-row .megamenu-col.products,
  .hm_menu .is-simplemenu .megamenu-row .megamenu-col.products {
    display: none; }

.hm_menu .default-menu {
  position: relative; }

.hm_menu ul.menu {
  display: none;
  position: absolute;
  top: 100%;
  left: -1rem;
  width: 26.66667rem;
  background: white;
  z-index: 2;
  padding: 2.93333rem 3.26667rem;
  margin: 1.33333rem 0 0;
  max-height: calc(100vh - 4.66667rem);
  -webkit-box-shadow: 0px 1rem 4.13333rem 0px rgba(0, 0, 0, 0.07);
          box-shadow: 0px 1rem 4.13333rem 0px rgba(0, 0, 0, 0.07);
  overflow-y: auto; }
  .hm_menu ul.menu > li {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    z-index: 1; }
    .hm_menu ul.menu > li + li {
      margin-top: 1.86667rem; }
    .hm_menu ul.menu > li a {
      display: block;
      position: relative;
      padding: 0;
      font-size: 1.06667rem;
      line-height: 1.46667rem;
      font-weight: 700;
      color: #252a33;
      text-transform: uppercase;
      letter-spacing: 0.04em; }
      .hm_menu ul.menu > li a:hover {
        color: #13a1f4; }
      .hm_menu ul.menu > li a:before {
        display: none; }
    .hm_menu ul.menu > li .is-megamenu,
    .hm_menu ul.menu > li .is-simplemenu {
      position: relative;
      padding-left: 0.66667rem;
      padding-right: 0;
      width: 100%;
      left: auto;
      right: auto;
      top: auto;
      -webkit-box-shadow: none;
              box-shadow: none; }
      .hm_menu ul.menu > li .is-megamenu > li,
      .hm_menu ul.menu > li .is-simplemenu > li {
        padding: 0; }
      .hm_menu ul.menu > li .is-megamenu ul,
      .hm_menu ul.menu > li .is-simplemenu ul {
        position: relative;
        display: block;
        left: auto;
        width: 100%;
        -webkit-box-shadow: none;
                box-shadow: none; }
        .hm_menu ul.menu > li .is-megamenu ul > li,
        .hm_menu ul.menu > li .is-simplemenu ul > li {
          padding: 0; }
    .hm_menu ul.menu > li .is-simplemenu > li a {
      padding: 0.2rem 0;
      text-transform: none;
      font-weight: normal; }
    .hm_menu ul.menu > li .menu-mobile {
      padding-top: 1.06667rem;
      padding-bottom: 1.06667rem; }
    .hm_menu ul.menu > li .menu-mobile-grover {
      position: absolute;
      z-index: 1;
      top: 0;
      right: 0;
      height: 1.66667rem; }
      .hm_menu ul.menu > li .menu-mobile-grover:after {
        position: absolute;
        font-size: 1.06667rem;
        top: 0.66667rem;
        right: 0.4rem;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%);
        cursor: pointer;
        z-index: 1;
        -webkit-transition: 0.3s all ease;
        transition: 0.3s all ease; }

#_mobile_jxmegamenu .menu-title {
  display: none !important; }

#_mobile_jxmegamenu .default-menu > ul {
  display: block !important; }
  #_mobile_jxmegamenu .default-menu > ul .megamenu-col {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
    #_mobile_jxmegamenu .default-menu > ul .megamenu-col.products {
      padding-left: 1rem;
      padding-right: 1rem; }

@media (min-width: 1200px) {
  #header .stickUpTop {
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    right: 0; } }

@media (min-width: 1200px) {
  #header .stickUpTop.isStuck {
    background: white;
    -webkit-animation: fadeInDown 0.3s ease-in-out 0s normal none 1;
            animation: fadeInDown 0.3s ease-in-out 0s normal none 1;
    -webkit-box-shadow: 0px 1rem 4.13333rem 0px rgba(0, 0, 0, 0.07);
            box-shadow: 0px 1rem 4.13333rem 0px rgba(0, 0, 0, 0.07);
    -webkit-transition: 0.2s all ease;
    transition: 0.2s all ease;
    z-index: 12; } }

@media (min-width: 1200px) {
  #header .stickUpTop.isStuck .inline-menu {
    margin-top: 0;
    border-top: none; } }

@media (min-width: 1200px) {
  #header .stickUpTop.isStuck .stick-up {
    padding: 0 0 0.66667rem;
    min-height: 3.66667rem; } }

#header .stickUpTop.isStuck .stickUpHolder {
  max-width: 100%; }
  @media (min-width: 1200px) {
    #header .stickUpTop.isStuck .stickUpHolder {
      margin-right: auto;
      margin-left: auto;
      padding-left: 5rem;
      padding-right: 5rem; } }
  @media (min-width: 1650px) {
    #header .stickUpTop.isStuck .stickUpHolder {
      padding-left: 12.66667rem;
      padding-right: 12.66667rem; } }
  #header .stickUpTop.isStuck .stickUpHolder .align-center {
    padding: 0.66667rem 0;
    min-height: 3.66667rem; }

@media (min-width: 1200px) {
  .inline-menu {
    border-top: 0.06667rem solid #ebebeb;
    text-align: center;
     }
    .inline-menu .top-level {
      display: inline-block; }
    .inline-menu > .module {
      display: block; } }

@media (max-width: 1200px) {
  .inline-menu .menu-title span {
    display: none; }
  .inline-menu .menu-title:before {
    font-family: "FontAwesome";
    content: "\F0C9";
    display: inline-block;
    font-weight: normal;
    font-size: 1.06667rem;
    color: #878787;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease; } }

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0Q6L09TUGFuZWwvZG9tYWlucy9sb2NhbGhvc3QvRXZlcHJlc3RfU1BfdGVzdC90aGVtZXMvdGhlbWUxNTE0L19kZXYvanhtZWdhbWVudS5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvRDovT1NQYW5lbC9kb21haW5zL2xvY2FsaG9zdC9FdmVwcmVzdF9TUF90ZXN0L3RoZW1lcy90aGVtZTE1MTQvX2Rldi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvRDovT1NQYW5lbC9kb21haW5zL2xvY2FsaG9zdC9FdmVwcmVzdF9TUF90ZXN0L3RoZW1lcy90aGVtZTE1MTQvX2Rldi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL2p4bWVnYW1lbnUuc2NzcyIsIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0Q6L09TUGFuZWwvZG9tYWlucy9sb2NhbGhvc3QvRXZlcHJlc3RfU1BfdGVzdC90aGVtZXMvdGhlbWUxNTE0L19kZXYvY3NzL3BhcnRpYWxzL192YXJpYWJsZXNfY29sb3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0Q6L09TUGFuZWwvZG9tYWlucy9sb2NhbGhvc3QvRXZlcHJlc3RfU1BfdGVzdC90aGVtZXMvdGhlbWUxNTE0L19kZXYvY3NzL3BhcnRpYWxzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUN5RWI7RUN4RUo7SUFHTSxZQUFXLEVBRWQ7O0FBTEg7RUFPSSxVQUFTLEVBQ1Y7O0FBUkg7RUFXSSxjQUFhLEVBQ2Q7O0FBWkg7RUFnQk0sZUFBYztFQUNkLHNCQUFlO0VBQ2Ysd0JB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XG1vZHVsZXNcXGp4bWVnYW1lbnVcXHZpZXdzXFxjc3NcXGp4bWVnYW1lbnUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5kZWZhdWx0LW1lbnU6bm90KC5pbmFjdGl2ZS1kZXZpY2UpW2RhdGEtb2ZmLWNhbnZhc10ge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmRlZmF1bHQtbWVudSB1bCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZGVmYXVsdC1tZW51ID4gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gYSwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBsZXR0ZXItc3BhY2luZzogMC42NHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcbiAgY29sb3I6ICMyNTJhMzM7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE1NDJweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpID4gYSwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IGE6YmVmb3JlLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAjMTNhMWY0O1xuICAgIHRvcDogLTI2cHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlO1xuICAgIG9wYWNpdHk6IDA7IH1cblxuLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlciA+IGE6YmVmb3JlLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5zZkhvdmVyRm9yY2UgPiBhOmJlZm9yZSwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlciA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuOmJlZm9yZSwgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkuc2ZIb3ZlckZvcmNlID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW46YmVmb3JlLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IGE6aG92ZXI6YmVmb3JlLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuOmhvdmVyOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUsIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kZWZhdWx0LW1lbnUgPiB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIzcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWluLXdpZHRoOiAxNTQzcHgpIHtcbiAgICAgIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogNDVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5kZWZhdWx0LW1lbnUgPiB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1cHg7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZGVmYXVsdC1tZW51IGxpLnNpbXBsZSB1bCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggNDNweCByZ2JhKDAsIDAsIDAsIDAuMTEpO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlID4gdWwge1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyAxLjEzMzMzcmVtKTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAuZGVmYXVsdC1tZW51IGxpLnNpbXBsZSBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIGxpIC5zZi13aXRoLXVsIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfVxuICAgICAgICAuZGVmYXVsdC1tZW51IGxpLnNpbXBsZSBsaSAuc2Ytd2l0aC11bDphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgICBjb250ZW50OiBcIu+EhVwiO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgbGkuc2ltcGxlIGxpLnNmSG92ZXIgPiAuc2Ytd2l0aC11bDphZnRlciwgLmRlZmF1bHQtbWVudSBsaS5zaW1wbGUgbGkgPiAuc2Ytd2l0aC11bDpob3ZlcjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiA1cHg7IH1cbiAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDE3cHgpO1xuICAgIGJveC1zaGFkb3c6IDBweCA3cHggMjlweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHotaW5kZXg6IDc7XG4gICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLm1lbnUtaGVhZGluZyBoMyB7XG4gICAgICBtYXJnaW46IDE1cHggMCAxNXB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOiAjMjUyYTMzOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAubWVudS1oZWFkaW5nIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZGVmYXVsdC1tZW51IC5pcy1tZWdhbWVudSAucHJvZHVjdHMge1xuICAgICAgYmFja2dyb3VuZDogI2ZhZmFmYTsgfVxuICAgICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnByb2R1Y3RzIC5jb250ZW50IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4OyB9XG4gICAgICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0cyAuY29udGVudCAucHJvZHVjdC1pbmZvICsgLnByb2R1Y3QtaW5mbyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgLmRlZmF1bHQtbWVudSAuaXMtbWVnYW1lbnUgLnByb2R1Y3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51IC5wcm9kdWN0IC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5NXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5kZWZhdWx0LW1lbnUgLm1lbnUtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmRlZmF1bHQtbWVudSA+IHVsID4gbGksIC5kZWZhdWx0LW1lbnUgPiB1bCA+IGxpLnNpbXBsZSBsaSB7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmRlZmF1bHQtbWVudSA+IHVsID4gbGkgPiBhLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaSA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5zaW1wbGUgbGkgPiBhLCAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5zaW1wbGUgbGkgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiB7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuZGVmYXVsdC1tZW51ID4gdWwgPiBsaS5zaW1wbGUgdWwge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAycHg7IH1cbiAgLmRlZmF1bHQtbWVudSA+IHVsIC5tZW51LW1vYmlsZS1ncm92ZXIge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5kZWZhdWx0LW1lbnUgLmlzLW1lZ2FtZW51LCAuZGVmYXVsdC1tZW51IC5pcy1zaW1wbGVtZW51LCAuZGVmYXVsdC1tZW51IC5pcy1zaW1wbGVtZW51IHVsIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG9yZGVyOiAyOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLmRlZmF1bHQtbWVudSAud18xMDBfc20sIC5kZWZhdWx0LW1lbnUgLnByb2R1Y3RzX2Jsb2NfM19pdGVtcyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5kZWZhdWx0LW1lbnUgLndfNTBfc20ge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmRlZmF1bHQtbWVudSAud18zM19zbSB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH0gfVxuXG4uY29sdW1uX21lbnUgdWwubWVudSA+IGxpLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBsaSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmOGY4Zjg7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGk6bm90KDpsYXN0LWNoaWxkKSwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlOm5vdCg6bGFzdC1jaGlsZCksIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGk6YmVmb3JlLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGU6YmVmb3JlLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgbGk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICB6LWluZGV4OiAtMTsgfVxuICAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLnNmSG92ZXI6YmVmb3JlLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUuc2ZIb3ZlcjpiZWZvcmUsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBsaS5zZkhvdmVyOmJlZm9yZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zZkhvdmVyID4gYS5zZi13aXRoLXVsOmFmdGVyLCAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLnNmSG92ZXIgPiBzcGFuLnNmLXdpdGgtdWw6YWZ0ZXIsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZS5zZkhvdmVyID4gYS5zZi13aXRoLXVsOmFmdGVyLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUuc2ZIb3ZlciA+IHNwYW4uc2Ytd2l0aC11bDphZnRlciwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlIGxpLnNmSG92ZXIgPiBhLnNmLXdpdGgtdWw6YWZ0ZXIsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBsaS5zZkhvdmVyID4gc3Bhbi5zZi13aXRoLXVsOmFmdGVyIHtcbiAgICBjb2xvcjogIzI1MmEzMzsgfVxuICAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLnNmSG92ZXIgPiBhICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ZIb3ZlciA+IGEgKyAuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ZIb3ZlciA+IHNwYW4gKyB1bCwgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zZkhvdmVyID4gc3BhbiArIC5pcy1tZWdhbWVudSwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlLnNmSG92ZXIgPiBhICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZS5zZkhvdmVyID4gYSArIC5pcy1tZWdhbWVudSwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlLnNmSG92ZXIgPiBzcGFuICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZS5zZkhvdmVyID4gc3BhbiArIC5pcy1tZWdhbWVudSwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlIGxpLnNmSG92ZXIgPiBhICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBsaS5zZkhvdmVyID4gYSArIC5pcy1tZWdhbWVudSwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlIGxpLnNmSG92ZXIgPiBzcGFuICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBsaS5zZkhvdmVyID4gc3BhbiArIC5pcy1tZWdhbWVudSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IC41cztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBhLnNmLXdpdGgtdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgYS5zZi13aXRoLXVsLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3Zlcikuc2Ytd2l0aC11bCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpID4gYS5zZi13aXRoLXVsOmFmdGVyLCAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpID4gc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3Zlcikuc2Ytd2l0aC11bDphZnRlciwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlIGEuc2Ytd2l0aC11bDphZnRlciwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlIHNwYW46bm90KC5tZW51LW1vYmlsZS1ncm92ZXIpLnNmLXdpdGgtdWw6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDlweDtcbiAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICBjb250ZW50OiBcIu+EgVwiO1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBjb2xvcjogI2Y4ZjhmODtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBhLnNmLXdpdGgtdWw6YWZ0ZXIsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsOmFmdGVyLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgYS5zZi13aXRoLXVsOmFmdGVyLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3Zlcikuc2Ytd2l0aC11bDphZnRlciB7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7IH0gfVxuICAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpID4gYS5zZi13aXRoLXVsICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBhLnNmLXdpdGgtdWwgKyAuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgLmlzLW1lZ2FtZW51LCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgYS5zZi13aXRoLXVsICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBhLnNmLXdpdGgtdWwgKyAuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgLmlzLW1lZ2FtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gMXB4KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IC0xcHg7XG4gICAgei1pbmRleDogOTk7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgICAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpID4gYS5zZi13aXRoLXVsICsgdWwuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBhLnNmLXdpdGgtdWwgKyAuaXMtbWVnYW1lbnUuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgdWwuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgLmlzLW1lZ2FtZW51LmlzLW1lZ2FtZW51LCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgYS5zZi13aXRoLXVsICsgdWwuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBhLnNmLXdpdGgtdWwgKyAuaXMtbWVnYW1lbnUuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgdWwuaXMtbWVnYW1lbnUsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgLmlzLW1lZ2FtZW51LmlzLW1lZ2FtZW51IHtcbiAgICAgIHdpZHRoOiAxMTY4cHg7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Y4ZjhmODsgfVxuICAgICAgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaSA+IGEuc2Ytd2l0aC11bCArIHVsLmlzLW1lZ2FtZW51IC5zZi13aXRoLXVsICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgPiBhLnNmLXdpdGgtdWwgKyAuaXMtbWVnYW1lbnUuaXMtbWVnYW1lbnUgLnNmLXdpdGgtdWwgKyB1bCwgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaSA+IHNwYW46bm90KC5tZW51LW1vYmlsZS1ncm92ZXIpLnNmLXdpdGgtdWwgKyB1bC5pcy1tZWdhbWVudSAuc2Ytd2l0aC11bCArIHVsLCAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpID4gc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3Zlcikuc2Ytd2l0aC11bCArIC5pcy1tZWdhbWVudS5pcy1tZWdhbWVudSAuc2Ytd2l0aC11bCArIHVsLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgYS5zZi13aXRoLXVsICsgdWwuaXMtbWVnYW1lbnUgLnNmLXdpdGgtdWwgKyB1bCwgLmNvbHVtbl9tZW51IHVsLm1lbnUgbGkuc2ltcGxlIGEuc2Ytd2l0aC11bCArIC5pcy1tZWdhbWVudS5pcy1tZWdhbWVudSAuc2Ytd2l0aC11bCArIHVsLCAuY29sdW1uX21lbnUgdWwubWVudSBsaS5zaW1wbGUgc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3Zlcikuc2Ytd2l0aC11bCArIHVsLmlzLW1lZ2FtZW51IC5zZi13aXRoLXVsICsgdWwsIC5jb2x1bW5fbWVudSB1bC5tZW51IGxpLnNpbXBsZSBzcGFuOm5vdCgubWVudS1tb2JpbGUtZ3JvdmVyKS5zZi13aXRoLXVsICsgLmlzLW1lZ2FtZW51LmlzLW1lZ2FtZW51IC5zZi13aXRoLXVsICsgdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaSwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSBsaSwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkgPiAqLCAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlID4gKiwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSBsaSA+ICosICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaSA+ICosICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgPiAqLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpID4gKiB7XG4gICAgei1pbmRleDogMjsgfVxuICAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkgLm1lbnUtbW9iaWxlLWdyb3ZlciwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSAubWVudS1tb2JpbGUtZ3JvdmVyLCAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXIsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaSAubWVudS1tb2JpbGUtZ3JvdmVyLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIC5tZW51LW1vYmlsZS1ncm92ZXIsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgLm1lbnUtbW9iaWxlLWdyb3ZlciB7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zczsgfVxuICAgIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaSAubWVudS1tb2JpbGUtZ3JvdmVyOmJlZm9yZSwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSAubWVudS1tb2JpbGUtZ3JvdmVyOmJlZm9yZSwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSBsaSAubWVudS1tb2JpbGUtZ3JvdmVyOmJlZm9yZSwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpIC5tZW51LW1vYmlsZS1ncm92ZXI6YmVmb3JlLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIC5tZW51LW1vYmlsZS1ncm92ZXI6YmVmb3JlLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXI6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG4gICAgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlLCAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlLCAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmUsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmUsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmUge1xuICAgICAgY29sb3I6ICMxM2ExZjQ7IH1cbiAgICAgIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaSAubWVudS1tb2JpbGUtZ3JvdmVyLmFjdGl2ZSArIGEsIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmUgKyBhLCAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlICsgYSwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlICsgYSwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSAubWVudS1tb2JpbGUtZ3JvdmVyLmFjdGl2ZSArIGEsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmUgKyBhIHtcbiAgICAgICAgY29sb3I6ICMyNTJhMzM7IH1cbiAgICAgIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaSAubWVudS1tb2JpbGUtZ3JvdmVyLmFjdGl2ZTpiZWZvcmUsIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmU6YmVmb3JlLCAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlOmJlZm9yZSwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlOmJlZm9yZSwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSAubWVudS1tb2JpbGUtZ3JvdmVyLmFjdGl2ZTpiZWZvcmUsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgLm1lbnUtbW9iaWxlLWdyb3Zlci5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuXG4uY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51IC5pcy1tZWdhbWVudSwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSB1bCwgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSBsaSB1bCwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSAuaXMtbWVnYW1lbnUsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgdWwsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgdWwge1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4OiAwIDAgY2FsYygxMDAlICsgNDBweCk7XG4gIG9yZGVyOiAyO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtYXJnaW46IDEwcHggLTIwcHggLTEwcHg7IH1cblxuLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSA+IHVsID4gbGksICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgPiB1bCA+IGxpIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGksICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgdWwsICNoZWFkZXIgLmNvbHVtbl9tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgdWwge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNvbHVtbl9tZW51I2NsaWNrX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSBsaSBhLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIGEge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAuY29sdW1uX21lbnUjY2xpY2tfbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXI6YmVmb3JlLCAjaGVhZGVyIC5jb2x1bW5fbWVudSB1bC5tZW51ID4gbGkuc2ltcGxlIGxpIC5tZW51LW1vYmlsZS1ncm92ZXI6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jb2x1bW5fbWVudSNjbGlja19tZW51IHVsLm1lbnUgPiBsaS5zaW1wbGUgbGkgLm1lbnUtbW9iaWxlLWdyb3ZlcjphZnRlciwgI2hlYWRlciAuY29sdW1uX21lbnUgdWwubWVudSA+IGxpLnNpbXBsZSBsaSAubWVudS1tb2JpbGUtZ3JvdmVyOmFmdGVyIHtcbiAgICBmb250LXNpemU6IDI2cHg7IH1cblxuLm1lbnUtbW9iaWxlLWdyb3ZlciB7XG4gIG9yZGVyOiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cbiAgLm1lbnUtbW9iaWxlLWdyb3ZlcjphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgIGNvbnRlbnQ6IFwi74SHXCI7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tZW51LW1vYmlsZS1ncm92ZXIuYWN0aXZlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxmMTA2JzsgfVxuXG4uanhtZWdhbWVudV9pdGVtIC5tZW51X2JhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0ycHg7XG4gIHJpZ2h0OiAtNXB4O1xuICB6LWluZGV4OiAyO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogIzEzYTFmNDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDFweCA1cHggMnB4IDVweDtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgaDMge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSAubWVnYW1lbnUtcm93IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLm1lZ2FtZW51LXJvdyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLm1lZ2FtZW51LXJvdyAubWVnYW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLm1lZ2FtZW51LXJvdyAubWVnYW1lbnUtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzOHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDM4cHg7IH0gfVxuXG4uanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhLCAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhLFxuICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGEsXG4gIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYSxcbiAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGEsXG4gIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSA+IGEsXG4gIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzNhM2EzYTtcbiAgICBtYXJnaW4tYm90dG9tOiAxN3B4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgPiBhLCAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLW1hbnVmYWN0dXJlcnMgPiBhLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgPiBhLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgPiBhLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGEsXG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgPiBhLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rID4gYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNhdGVnb3J5ID4gYTpob3ZlciwgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNhdGVnb3J5ID4gYTpmb2N1cywgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1tYW51ZmFjdHVyZXJzID4gYTpob3ZlciwgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1tYW51ZmFjdHVyZXJzID4gYTpmb2N1cyxcbiAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuYWxsLXN1cHBsaWVycyA+IGE6aG92ZXIsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgPiBhOmZvY3VzLFxuICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0ID4gYTpob3ZlcixcbiAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkucHJvZHVjdCA+IGE6Zm9jdXMsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGE6aG92ZXIsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1jYXRlZ29yeSA+IGE6Zm9jdXMsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlID4gYTpob3ZlcixcbiAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgPiBhOmZvY3VzLFxuICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayA+IGE6aG92ZXIsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rID4gYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzEzYTFmNDsgfVxuICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgdWwgbGksIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtbWFudWZhY3R1cmVycyB1bCBsaSxcbiAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgdWwgbGksXG4gIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5wcm9kdWN0IHVsIGxpLFxuICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5IHVsIGxpLFxuICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgdWwgbGksXG4gIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayB1bCBsaSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jYXRlZ29yeSB1bCBsaSwgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1tYW51ZmFjdHVyZXJzIHVsIGxpLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgdWwgbGksXG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkucHJvZHVjdCB1bCBsaSxcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgdWwgbGksXG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLXBhZ2UgdWwgbGksXG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY3VzdG9tLWxpbmsgdWwgbGkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9XG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNhdGVnb3J5IHVsIGxpIGEsIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtbWFudWZhY3R1cmVycyB1bCBsaSBhLFxuICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtc3VwcGxpZXJzIHVsIGxpIGEsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgdWwgbGkgYSxcbiAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY21zLWNhdGVnb3J5IHVsIGxpIGEsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlIHVsIGxpIGEsXG4gICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmN1c3RvbS1saW5rIHVsIGxpIGEge1xuICAgICAgY29sb3I6ICM4Nzg3ODc7IH1cbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jYXRlZ29yeSB1bCBsaSBhOmhvdmVyLCAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY2F0ZWdvcnkgdWwgbGkgYTpmb2N1cywgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1tYW51ZmFjdHVyZXJzIHVsIGxpIGE6aG92ZXIsIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtbWFudWZhY3R1cmVycyB1bCBsaSBhOmZvY3VzLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmFsbC1zdXBwbGllcnMgdWwgbGkgYTpob3ZlcixcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5hbGwtc3VwcGxpZXJzIHVsIGxpIGE6Zm9jdXMsXG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkucHJvZHVjdCB1bCBsaSBhOmhvdmVyLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLnByb2R1Y3QgdWwgbGkgYTpmb2N1cyxcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgdWwgbGkgYTpob3ZlcixcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtY2F0ZWdvcnkgdWwgbGkgYTpmb2N1cyxcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jbXMtcGFnZSB1bCBsaSBhOmhvdmVyLFxuICAgICAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCA+IGxpLmNtcy1wYWdlIHVsIGxpIGE6Zm9jdXMsXG4gICAgICAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSB1bC5jb250ZW50ID4gbGkuY3VzdG9tLWxpbmsgdWwgbGkgYTpob3ZlcixcbiAgICAgIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IHVsLmNvbnRlbnQgPiBsaS5jdXN0b20tbGluayB1bCBsaSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMzYTNhM2E7IH1cbiAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgdWwuY29udGVudCB1bCB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLmh0bWwud2l0aG91dC10aXRsZSAuaHRtbC10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLm1lbnV2aWRlb3dyYXBwZXIge1xuICBjbGVhcjogYm90aDtcbiAgZmxvYXQ6IG5vbmU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLm1lbnV2aWRlb3dyYXBwZXIgaWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IC5lbWJlZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5qeG1lZ2FtZW51X2l0ZW0gLmlzLW1lZ2FtZW51IC5lbWJlZC1jb250YWluZXIgaWZyYW1lLCAuanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSAuZW1iZWQtY29udGFpbmVyIG9iamVjdCwgLmp4bWVnYW1lbnVfaXRlbSAuaXMtbWVnYW1lbnUgLmVtYmVkLWNvbnRhaW5lciBlbWJlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4uanhtZWdhbWVudV9pdGVtIC5pcy1tZWdhbWVudSAuZnJvbnRlbmQtbWFwIHtcbiAgbWluLWhlaWdodDogMjAwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5pbmxpbmUtbWVudSB1bC5tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzAlLCAwKTtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiA0NHB4IDQ5cHg7XG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNzBweCk7XG4gICAgYm94LXNoYWRvdzogMHB4IDE1cHggNjJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgLmlubGluZS1tZW51IHVsLm1lbnUgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiAyOHB4OyB9XG4gICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzI1MmEzMztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTsgfVxuICAgICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjMTNhMWY0OyB9XG4gICAgICAgIC5pbmxpbmUtbWVudSB1bC5tZW51ID4gbGkgYTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5pbmxpbmUtbWVudSB1bC5tZW51ID4gbGkgLmlzLW1lZ2FtZW51LFxuICAgICAgLmlubGluZS1tZW51IHVsLm1lbnUgPiBsaSAuaXMtc2ltcGxlbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpIC5pcy1tZWdhbWVudSA+IGxpLFxuICAgICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpIC5pcy1zaW1wbGVtZW51ID4gbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgLmlubGluZS1tZW51IHVsLm1lbnUgPiBsaSAuaXMtbWVnYW1lbnUgdWwsXG4gICAgICAgIC5pbmxpbmUtbWVudSB1bC5tZW51ID4gbGkgLmlzLXNpbXBsZW1lbnUgdWwge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpIC5pcy1tZWdhbWVudSB1bCA+IGxpLFxuICAgICAgICAgIC5pbmxpbmUtbWVudSB1bC5tZW51ID4gbGkgLmlzLXNpbXBsZW1lbnUgdWwgPiBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuaW5saW5lLW1lbnUgdWwubWVudSA+IGxpIC5pcy1zaW1wbGVtZW51ID4gbGkgYSB7XG4gICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgLmlubGluZS1tZW51IHVsLm1lbnUgPiBsaSAubWVudS1tb2JpbGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cbiAgICAgIC5pbmxpbmUtbWVudSB1bC5tZW51ID4gbGkgLm1lbnUtbW9iaWxlLWdyb3ZlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4OyB9XG4gICAgICAgIC5pbmxpbmUtbWVudSB1bC5tZW51ID4gbGkgLm1lbnUtbW9iaWxlLWdyb3ZlcjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgcmlnaHQ6IDZweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlOyB9IH1cblxuLmhtX21lbnUgLm1lbnUtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjMxMjU7XG4gIG1hcmdpbi1yaWdodDogNDhweDtcbiAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTsgfVxuICAuaG1fbWVudSAubWVudS10aXRsZS5hY3RpdmU6YmVmb3JlIHtcbiAgICBjb2xvcjogIzEzYTFmNDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmhtX21lbnUgLm1lbnUtdGl0bGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5obV9tZW51IC5tZW51LXRpdGxlIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5obV9tZW51IC5tZW51LXRpdGxlOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgICBjb250ZW50OiBcIlxcZjBjOVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBjb2xvcjogIzg3ODc4NztcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlO1xuICAgIG1hcmdpbi1yaWdodDogMThweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIC5obV9tZW51IC5tZW51LXRpdGxlOmJlZm9yZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDsgfSB9XG5cbi5obV9tZW51IC50b3AtbGV2ZWwtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhtX21lbnUgLmlzLW1lZ2FtZW51IC5tZWdhbWVudS1yb3cgLm1lZ2FtZW51LWNvbCxcbi5obV9tZW51IC5pcy1zaW1wbGVtZW51IC5tZWdhbWVudS1yb3cgLm1lZ2FtZW51LWNvbCB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmhtX21lbnUgLmlzLW1lZ2FtZW51IC5tZWdhbWVudS1yb3cgLm1lZ2FtZW51LWNvbC5wcm9kdWN0cyxcbiAgLmhtX21lbnUgLmlzLXNpbXBsZW1lbnUgLm1lZ2FtZW51LXJvdyAubWVnYW1lbnUtY29sLnByb2R1Y3RzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5obV9tZW51IC5kZWZhdWx0LW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhtX21lbnUgdWwubWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAtMTVweDtcbiAgd2lkdGg6IDQwMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgei1pbmRleDogMjtcbiAgcGFkZGluZzogNDRweCA0OXB4O1xuICBtYXJnaW46IDIwcHggMCAwO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNzBweCk7XG4gIGJveC1zaGFkb3c6IDBweCAxNXB4IDYycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgLmhtX21lbnUgdWwubWVudSA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC5obV9tZW51IHVsLm1lbnUgPiBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDI4cHg7IH1cbiAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzI1MmEzMztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtOyB9XG4gICAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMTNhMWY0OyB9XG4gICAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgYTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmhtX21lbnUgdWwubWVudSA+IGxpIC5pcy1tZWdhbWVudSxcbiAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgLmlzLXNpbXBsZW1lbnUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgLmhtX21lbnUgdWwubWVudSA+IGxpIC5pcy1tZWdhbWVudSA+IGxpLFxuICAgICAgLmhtX21lbnUgdWwubWVudSA+IGxpIC5pcy1zaW1wbGVtZW51ID4gbGkge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgLmlzLW1lZ2FtZW51IHVsLFxuICAgICAgLmhtX21lbnUgdWwubWVudSA+IGxpIC5pcy1zaW1wbGVtZW51IHVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgICAgLmhtX21lbnUgdWwubWVudSA+IGxpIC5pcy1tZWdhbWVudSB1bCA+IGxpLFxuICAgICAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgLmlzLXNpbXBsZW1lbnUgdWwgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgIC5obV9tZW51IHVsLm1lbnUgPiBsaSAuaXMtc2ltcGxlbWVudSA+IGxpIGEge1xuICAgICAgcGFkZGluZzogM3B4IDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgLm1lbnUtbW9iaWxlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cbiAgICAuaG1fbWVudSB1bC5tZW51ID4gbGkgLm1lbnUtbW9iaWxlLWdyb3ZlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDI1cHg7IH1cbiAgICAgIC5obV9tZW51IHVsLm1lbnUgPiBsaSAubWVudS1tb2JpbGUtZ3JvdmVyOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcmlnaHQ6IDZweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTsgfVxuXG4jX21vYmlsZV9qeG1lZ2FtZW51IC5tZW51LXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiNfbW9iaWxlX2p4bWVnYW1lbnUgLmRlZmF1bHQtbWVudSA+IHVsIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAjX21vYmlsZV9qeG1lZ2FtZW51IC5kZWZhdWx0LW1lbnUgPiB1bCAubWVnYW1lbnUtY29sIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAjX21vYmlsZV9qeG1lZ2FtZW51IC5kZWZhdWx0LW1lbnUgPiB1bCAubWVnYW1lbnUtY29sLnByb2R1Y3RzIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAjaGVhZGVyIC5zdGlja1VwVG9wIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICNoZWFkZXIgLnN0aWNrVXBUb3AuaXNTdHVjayB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5Eb3duIDAuM3MgZWFzZS1pbi1vdXQgMHMgbm9ybWFsIG5vbmUgMTtcbiAgICBib3gtc2hhZG93OiAwcHggMTVweCA2MnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICAgIHRyYW5zaXRpb246IDAuMnMgYWxsIGVhc2U7XG4gICAgei1pbmRleDogMTI7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICNoZWFkZXIgLnN0aWNrVXBUb3AuaXNTdHVjayAuaW5saW5lLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYm9yZGVyLXRvcDogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgI2hlYWRlciAuc3RpY2tVcFRvcC5pc1N0dWNrIC5zdGljay11cCB7XG4gICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgbWluLWhlaWdodDogNTVweDsgfSB9XG5cbiNoZWFkZXIgLnN0aWNrVXBUb3AuaXNTdHVjayAuc3RpY2tVcEhvbGRlciB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgI2hlYWRlciAuc3RpY2tVcFRvcC5pc1N0dWNrIC5zdGlja1VwSG9sZGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiA3NXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNzVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxNjUwcHgpIHtcbiAgICAjaGVhZGVyIC5zdGlja1VwVG9wLmlzU3R1Y2sgLnN0aWNrVXBIb2xkZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxOTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE5MHB4OyB9IH1cbiAgI2hlYWRlciAuc3RpY2tVcFRvcC5pc1N0dWNrIC5zdGlja1VwSG9sZGVyIC5hbGlnbi1jZW50ZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBtaW4taGVpZ2h0OiA1NXB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmlubGluZS1tZW51IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ViZWJlYjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMzFweDsgfVxuICAgIC5pbmxpbmUtbWVudSAudG9wLWxldmVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5pbmxpbmUtbWVudSA+IC5tb2R1bGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5pbmxpbmUtbWVudSAubWVudS10aXRsZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5pbmxpbmUtbWVudSAubWVudS10aXRsZTpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgY29udGVudDogXCJcXGYwYzlcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICM4Nzg3ODc7XG4gICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTsgfSB9XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0Q6L09TUGFuZWwvZG9tYWlucy9sb2NhbGhvc3QvRXZlcHJlc3RfU1BfdGVzdC90aGVtZXMvdGhlbWUxNTE0L19kZXYvanhtZWdhbWVudS5zY3NzIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMnB4LCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbmZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vbW9kdWxlcy9qeG1lZ2FtZW51L3ZpZXdzL2Nzcy9EOi9PU1BhbmVsL2RvbWFpbnMvbG9jYWxob3N0L0V2ZXByZXN0X1NQX3Rlc3QvdGhlbWVzL3RoZW1lMTUxNC9fZGV2L25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJAaW1wb3J0IFwiY3NzL3BhcnRpYWxzL192YXJpYWJsZXNcIjtcclxuLmRlZmF1bHQtbWVudSB7XG4gICY6bm90KC5pbmFjdGl2ZS1kZXZpY2UpW2RhdGEtb2ZmLWNhbnZhc10ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICA+IHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgPiB1bCA+IGxpIHtcbiAgICA+IGEsID4gLnRvcC1sZXZlbC1tZW51LWxpLXNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjY0cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2U7XG4gICAgICBjb2xvcjogJGdyYXktOTAwO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTU0MnB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRibHVlO1xuICAgICAgICB0b3A6IC0yNnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuc2Ytd2l0aC11bCB7XG5cbiAgICB9XG4gICAgJi5zZkhvdmVyID4gYSwgJi5zZkhvdmVyRm9yY2UgPiBhLCAmLnNmSG92ZXIgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiwgJi5zZkhvdmVyRm9yY2UgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiwgPiBhOmhvdmVyLCA+IC50b3AtbGV2ZWwtbWVudS1saS1zcGFuOmhvdmVyIHtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1tZWdhbWVudSwgbGkuc2ltcGxlIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC8vICBUb3AgbWVudVxuICAgID4gdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcblxuICAgICAgICAmICsgbGkge1xuXG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIzcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE1NDNweCkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAgU2ltcGxlIG1lbnVcbiAgICBsaS5zaW1wbGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICB1bCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICBib3gtc2hhZG93OiAwIDVweCA0M3B4IHJnYmEoMCwgMCwgMCwgMC4xMSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgPiB1bCB7XG4gICAgICAgIHRvcDogY2FsYygxMDAlICsgMS4xMzMzM3JlbSk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgIC5zZi13aXRoLXVsIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRkSWNvbignXFxmMTA1JywgZm9udC1zaXplLCAxLCBjb2xvciwgbWFyZ2luLWxlZnQsIG1hcmdpbi1yaWdodCwgdmVydGljYWwtYWxpZ24pO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNmSG92ZXIgPiAuc2Ytd2l0aC11bCwgPiAuc2Ytd2l0aC11bDpob3ZlciB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyAgTWVnYS1tZW51XG4gICAgLmlzLW1lZ2FtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogY2FsYygxMDAlICsgMTdweCk7XG4gICAgICBib3gtc2hhZG93OiAwcHggN3B4IDI5cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIHotaW5kZXg6IDc7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgIC5tZW51LWhlYWRpbmcgaDMge1xuICAgICAgICBtYXJnaW46IDE1cHggMCAxNXB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogJGdyYXktOTAwO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3RzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktMTAwO1xuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjRweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuXG4gICAgICAgICAgLnByb2R1Y3QtaW5mbyB7XG5cbiAgICAgICAgICAgICYgKyAucHJvZHVjdC1pbmZvIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucHJvZHVjdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgIG1heC13aWR0aDogOTVweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgfVxuICAubWVudS10aXRsZSB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgLy8gIFRvcCBtZW51XG4gICAgPiB1bCB7XG4gICAgICA+IGxpLCA+IGxpLnNpbXBsZSBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgID4gYSwgPiAudG9wLWxldmVsLW1lbnUtbGktc3BhbiB7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGxpLnNpbXBsZSB7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZW51LW1vYmlsZS1ncm92ZXIge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlzLW1lZ2FtZW51LCAuaXMtc2ltcGxlbWVudSwgLmlzLXNpbXBsZW1lbnUgdWwge1xuICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoc20pIHtcbiAgICAud18xMDBfc20sIC5wcm9kdWN0c19ibG9jXzNfaXRlbXMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC53XzUwX3NtIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgLndfMzNfc20ge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbHVtbl9tZW51IHtcbiAgdWwubWVudSB7XG4gICAgPiBsaSwgbGkuc2ltcGxlLCBsaS5zaW1wbGUgbGkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMjAwO1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS0yMDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgIH1cbiAgICAgICYuc2ZIb3ZlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICA+IGEsID4gc3BhbiB7XG4gICAgICAgICAgJi5zZi13aXRoLXVsOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS05MDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICsgdWwsICsgLmlzLW1lZ2FtZW51IHtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC41cztcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gbGkgPiBhLCA+IGxpID4gc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3ZlciksIGxpLnNpbXBsZSBhLCBsaS5zaW1wbGUgc3Bhbjpub3QoLm1lbnUtbW9iaWxlLWdyb3Zlcikge1xuICAgICAgJi5zZi13aXRoLXVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdG9wOiA5cHg7XG4gICAgICAgICAgQGluY2x1ZGUgYWRkSWNvbignXFxmMTAxJywgMjhweCwgMjhweCwgJGdyYXktMjAwLCBtYXJnaW4tbGVmdCwgbWFyZ2luLXJpZ2h0LCB2ZXJ0aWNhbC1hbGlnbik7XG4gICAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobWQpIHtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICsgdWwsICsgLmlzLW1lZ2FtZW51IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogY2FsYygxMDAlIC0gMXB4KTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgJi5pcy1tZWdhbWVudSB7XG4gICAgICAgICAgICB3aWR0aDogMTE2OHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTIwMDtcbiAgICAgICAgICAgIC5zZi13aXRoLXVsICsgdWwge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmI2NsaWNrX21lbnUsICNoZWFkZXIgJiB7XG4gICAgdWwubWVudSB7XG4gICAgICA+IGxpLCA+IGxpLnNpbXBsZSwgPiBsaS5zaW1wbGUgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICA+ICoge1xuICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cbiAgICAgICAgLm1lbnUtbW9iaWxlLWdyb3ZlciB7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmF5LTIwMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICArIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGdyYXktOTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmlzLW1lZ2FtZW51LCA+IGxpLnNpbXBsZSB1bCwgPiBsaS5zaW1wbGUgbGkgdWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmbGV4OiAwIDAgY2FsYygxMDAlICsgNDBweCk7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBtYXJnaW46IDEwcHggLTIwcHggLTEwcHg7XG4gICAgICB9XG4gICAgICA+IGxpLnNpbXBsZSA+IHVsID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICA+IGxpLnNpbXBsZSBsaSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAubWVudS1tb2JpbGUtZ3JvdmVyIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4ubWVudS1tb2JpbGUtZ3JvdmVyIHtcbiAgb3JkZXI6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDtcblxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgYWRkSWNvbignXFxmMTA3JywgMjZweCwgMSwgY29sb3IsIG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIHZlcnRpY2FsLWFsaWduKTtcbiAgfVxuICAmLmFjdGl2ZTphZnRlciB7XG4gICAgY29udGVudDogJ1xcZjEwNic7XG4gIH1cbn1cblxuLmp4bWVnYW1lbnVfaXRlbSB7XG5cbiAgLm1lbnVfYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgcmlnaHQ6IC01cHg7XG4gICAgei1pbmRleDogMjtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICRicmFuZC1wcmltYXJ5O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMXB4IDVweCAycHggNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxuXG4gIC5pcy1tZWdhbWVudSB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLm1lZ2FtZW51LXJvdyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjNweDtcbiAgICAgIH1cblxuICAgICAgLm1lZ2FtZW51LWNvbCB7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzOHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdWwuY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgPiBsaS5jYXRlZ29yeSwgPiBsaS5hbGwtbWFudWZhY3R1cmVycyxcbiAgICAgID4gbGkuYWxsLXN1cHBsaWVycyxcbiAgICAgID4gbGkucHJvZHVjdCxcbiAgICAgID4gbGkuY21zLWNhdGVnb3J5LFxuICAgICAgPiBsaS5jbXMtcGFnZSxcbiAgICAgID4gbGkuY3VzdG9tLWxpbmsge1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogJGdyYXktODAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE3cHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRncmF5LTYwMDtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICBjb2xvcjogJGdyYXktODAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5odG1sLndpdGhvdXQtdGl0bGUge1xuICAgICAgLmh0bWwtdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51dmlkZW93cmFwcGVyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgaWZyYW1lLCBvYmplY3QsIGVtYmVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5mcm9udGVuZC1tYXAge1xuICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG59XG5cblxuLmlubGluZS1tZW51IHtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcblxuICAgIHVsLm1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzAlLCAwKTtcbiAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHBhZGRpbmc6IDQ0cHggNDlweDtcbiAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNzBweCk7XG4gICAgICBib3gtc2hhZG93OiAwcHggMTVweCA2MnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgPiBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAmICsgbGkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBjb2xvcjogJGdyYXktOTAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlzLW1lZ2FtZW51LFxuICAgICAgICAuaXMtc2ltcGxlbWVudSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaXMtc2ltcGxlbWVudSB7XG5cbiAgICAgICAgICA+IGxpIHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW51LW1vYmlsZSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS1tb2JpbGUtZ3JvdmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICByaWdodDogNnB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uaG1fbWVudSB7XG5cbiAgLmRlZmF1bHQtbWVudSB1bCB7XG5cbiAgfVxuXG4gIC5tZW51LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMxMjU7XG4gICAgbWFyZ2luLXJpZ2h0OiA0OHB4O1xuICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2U7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgICAgY29udGVudDogXCJcXGYwYzlcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogJGdyYXktNjAwO1xuICAgICAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZTtcbiAgICAgIG1hcmdpbi1yaWdodDogMThweDtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRvcC1sZXZlbC1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmlzLW1lZ2FtZW51IC5tZWdhbWVudS1yb3cgLm1lZ2FtZW51LWNvbCxcbiAgLmlzLXNpbXBsZW1lbnUgLm1lZ2FtZW51LXJvdyAubWVnYW1lbnUtY29sIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYucHJvZHVjdHMge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuXG4gIC5kZWZhdWx0LW1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIHVsLm1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAtMTVweDtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiA0NHB4IDQ5cHg7XG4gICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNzBweCk7XG4gICAgYm94LXNoYWRvdzogMHB4IDE1cHggNjJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAmICsgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICRncmF5LTkwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaXMtbWVnYW1lbnUsXG4gICAgICAuaXMtc2ltcGxlbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5pcy1zaW1wbGVtZW51IHtcblxuICAgICAgICA+IGxpIHtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1lbnUtbW9iaWxlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgfVxuXG4gICAgICAubWVudS1tb2JpbGUtZ3JvdmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgcmlnaHQ6IDZweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGFsbCBlYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNfbW9iaWxlX2p4bWVnYW1lbnUge1xuICAubWVudS10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmRlZmF1bHQtbWVudSA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgLm1lZ2FtZW51LWNvbCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgJi5wcm9kdWN0cyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2hlYWRlciB7XG5cbiAgLnN0aWNrVXBUb3Age1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNrVXBUb3AuaXNTdHVjayB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGFuaW1hdGlvbjogZmFkZUluRG93biAwLjNzIGVhc2UtaW4tb3V0IDBzIG5vcm1hbCBub25lIDE7XG4gICAgICBib3gtc2hhZG93OiAwcHggMTVweCA2MnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICAgICAgdHJhbnNpdGlvbjogMC4ycyBhbGwgZWFzZTtcbiAgICAgIHotaW5kZXg6IDEyO1xuICAgIH1cblxuICAgIC5pbmxpbmUtbWVudSB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN0aWNrLXVwIHtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICAgICAgbWluLWhlaWdodDogNTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RpY2tVcEhvbGRlciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3NXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY1MHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTkwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE5MHB4O1xuICAgICAgfVxuXG4gICAgICAuYWxpZ24tY2VudGVyIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA1NXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW5saW5lLW1lbnUge1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktNTUwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAzMXB4O1xuXG4gICAgLnRvcC1sZXZlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgPi5tb2R1bGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC5tZW51LXRpdGxlIHtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgICAgICAgY29udGVudDogXCJcXGYwYzlcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGNvbG9yOiAkZ3JheS02MDA7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtZWdhbWVudS92aWV3cy9jc3MvRDovT1NQYW5lbC9kb21haW5zL2xvY2FsaG9zdC9FdmVwcmVzdF9TUF90ZXN0L3RoZW1lcy90aGVtZTE1MTQvX2Rldi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL2p4bWVnYW1lbnUuc2NzcyIsIi8vXG4vLyBDb2xvciBzeXN0ZW1cbi8vXG4kd2hpdGU6ICAjZmZmO1xuJGdyYXktMTAwOiAjZmFmYWZhO1xuJGdyYXktMjAwOiAjZjhmOGY4O1xuJGdyYXktMzAwOiAjZTdlN2U3O1xuJGdyYXktMzUwOiAjZmNmY2ZkO1xuJGdyYXktMzYwOiAjZjZmOGY5O1xuJGdyYXktNDAwOiAjZWVlZWVlO1xuJGdyYXktNDMwOiAjZjJmMmYyO1xuJGdyYXktNDQwOiAjZjZmNmY2O1xuJGdyYXktNDUwOiAjZTFlMWUxO1xuJGdyYXktNDYwOiAjYzFjN2NiO1xuJGdyYXktNTAwOiAjYWJhYmFiO1xuJGdyYXktNTUwOiAjZWJlYmViO1xuJGdyYXktNTYwOiAjNzU3YTgyO1xuJGdyYXktNjAwOiAjODc4Nzg3O1xuJGdyYXktNjUwOiAjNWQ1ZDVkO1xuJGdyYXktNzAwOiAjNTU1NTU1O1xuJGdyYXktNzMwOiAjNWU2NDZjO1xuJGdyYXktNzUwOiAjMzMzOTQ1O1xuJGdyYXktNzYwOiAjMzAzNjQwO1xuJGdyYXktODAwOiAjM2EzYTNhO1xuJGdyYXktOTAwOiAjMjUyYTMzO1xuJGdyYXktOTUwOiAjMjAyNTJlO1xuJGJsYWNrOiAgIzAwMDtcblxuJGJyYW5kLWRhbmdlcjogI2ZmNGMzOTtcblxuJGdyYXlzOiAoXG4gIDEwMDogJGdyYXktMTAwLFxuICAyMDA6ICRncmF5LTIwMCxcbiAgMzAwOiAkZ3JheS0zMDAsXG4gIDQwMDogJGdyYXktNDAwLFxuICA1MDA6ICRncmF5LTUwMCxcbiAgNjAwOiAkZ3JheS02MDAsXG4gIDcwMDogJGdyYXktNzAwLFxuICA4MDA6ICRncmF5LTgwMCxcbiAgOTAwOiAkZ3JheS05MDBcbik7XG5cbiRibHVlOiAgICAjMTNhMWY0O1xuJGluZGlnbzogICM2NjEwZjI7XG4kcHVycGxlOiAgIzZmNDJjMTtcbiRwaW5rOiAgICAjZGU2ZDZkO1xuJHJlZDogICAgICNmZjRjMzk7XG4kb3JhbmdlOiAgI2ZlYjM4MDtcbiR5ZWxsb3c6ICAjZmZmMWJjO1xuJGdyZWVuOiAgICM1MmI5OGU7XG4kdGVhbDogICAgIzUyYjk4ZTtcbiRjeWFuOiAgICAjYzVmMmZkO1xuXG4kY29sb3JzOiAoXG4gIGJsdWU6ICRibHVlLFxuICBpbmRpZ286ICRpbmRpZ28sXG4gIHB1cnBsZTogJHB1cnBsZSxcbiAgcGluazogJHBpbmssXG4gIHJlZDogJHJlZCxcbiAgb3JhbmdlOiAkb3JhbmdlLFxuICB5ZWxsb3c6ICR5ZWxsb3csXG4gIGdyZWVuOiAkZ3JlZW4sXG4gIHRlYWw6ICR0ZWFsLFxuICBjeWFuOiAkY3lhbixcbiAgd2hpdGU6ICR3aGl0ZSxcbiAgZ3JheTogJGdyYXktNjAwLFxuICBncmF5LWRhcms6ICRncmF5LTgwMCxcbiAgZ3JheS1kYXJrZXI6ICRncmF5LTkwMCxcbiAgZ3JheS1saWdodDogJGdyYXktMjAwLFxuICBncmF5LWxpZ2h0ZXI6ICRncmF5LTEwMFxuKTtcblxuJHRoZW1lLWNvbG9yczogKFxuICBwcmltYXJ5OiAkcGluayxcbiAgc2Vjb25kYXJ5OiAkZ3JheS04MDAsXG4gIHN1Y2Nlc3M6ICRncmVlbixcbiAgaW5mbzogJGN5YW4sXG4gIHdhcm5pbmc6ICRvcmFuZ2UsXG4gIGRhbmdlcjogJHBpbmssXG4gIGxpZ2h0OiAkZ3JheS0yMDAsXG4gIGRhcms6ICRncmF5LTkwMCxcbiAgd2hpdGU6ICR3aGl0ZVxuKTtcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0Q6L09TUGFuZWwvZG9tYWlucy9sb2NhbGhvc3QvRXZlcHJlc3RfU1BfdGVzdC90aGVtZXMvdGhlbWUxNTE0L19kZXYvY3NzL3BhcnRpYWxzL192YXJpYWJsZXNfY29sb3Iuc2NzcyIsIi8vbWl4aW4gZm9yIGljb25zIC0gQGluY2x1ZGUgYWRkSWNvbignXFxmMDIxJywgZm9udC1zaXplLCBsaW5lLWhlaWdodCwgY29sb3IsIG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIHZlcnRpY2FsLWFsaWduKVxuQG1peGluIGFkZEljb24oJGNvbnRlbnQsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGNvbG9yLCAkbWFyZ2luLWxlZnQsICRtYXJnaW4tcmlnaHQsICR2ZXJ0aWNhbC1hbGlnbikge1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgY29udGVudDogJGNvbnRlbnQ7XG4gIEBpZiAkZm9udC1zaXplICE9IGZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICB9XG4gIEBpZiAkbGluZS1oZWlnaHQgIT0gbGluZS1oZWlnaHQge1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cbiAgQGlmICRjb2xvciAhPSBjb2xvciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBAaWYgJG1hcmdpbi1sZWZ0ICE9IG1hcmdpbi1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbi1sZWZ0O1xuICB9XG4gIEBpZiAkbWFyZ2luLXJpZ2h0ICE9IG1hcmdpbi1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLXJpZ2h0O1xuICB9XG4gIEBpZiAkdmVydGljYWwtYWxpZ24gIT0gdmVydGljYWwtYWxpZ24ge1xuICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gIH1cbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYW1lbnUvdmlld3MvY3NzL0Q6L09TUGFuZWwvZG9tYWlucy9sb2NhbGhvc3QvRXZlcHJlc3RfU1BfdGVzdC90aGVtZXMvdGhlbWUxNTE0L19kZXYvY3NzL3BhcnRpYWxzL19taXhpbnMuc2NzcyJdLCJzb3VyY2VSb290IjoiIn0=*/