@charset "UTF-8";
/*=================================================
        상품 리스트 페이지
=================================================*/
.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner {
  max-width: 1202px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
}

body.filter-active .btnPlayTrigger {
  display: none;
}

/*상품리스트 페이지 레이아웃*/
@media screen and (min-width: 992px) {
  #goods-lists-body #page-content-wrapper {
    padding-top: 86px;
  }
}

#goods-lists-body #page-content-wrapper .bread-crumb {
  margin-top: 60px;
}

@media screen and (min-width: 992px) {
  #goods-lists-body #page-content-wrapper .bread-crumb {
    margin-top: 90px;
  }
}

.goods-filter-wrap {
  position: fixed;
  width: 100%;
  line-height: normal;
  z-index: 500;
  opacity: 0;
  animation: slideDownAnimation .8s 1.8s forwards;
}

.filter-active .goods-filter-wrap {
  height: 100%;
}

@media screen and (min-width: 992px) {
  .filter-active .goods-filter-wrap {
    height: auto;
  }
}

.goods-filter-wrap .filter-text-wrap {
  height: 60px;
  line-height: 60px;
  background-color: #f9f9f9;
  border-top: 1px solid #e9e9e9;
  border-bottom: 1px solid #e9e9e9;
  cursor: pointer;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-text-wrap {
    border-top: none;
  }
}

.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner {
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
  table-layout: fixed;
}

.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner > * {
  display: table-cell;
  vertical-align: middle;
}

.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .icon-wrap {
  width: 22px;
}

.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .icon-wrap img {
  position: relative;
  top: 1.5px;
}

.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .title {
  width: 70px;
  font-size: 15px;
  letter-spacing: -0.05em;
  color: #000;
  text-align: center;
}

html[lang*="en"] .goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .title {
  width: 100px;
  letter-spacing: 0;
}

html[lang*="jp"] .goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .title {
  width: 130px;
  letter-spacing: 0;
}

html[lang*="ch"] .goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .title {
  width: 100px;
  letter-spacing: 0;
}

.goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .serach-text {
  font-size: 13px;
  letter-spacing: -0.03em;
  color: #999;
}

html[lang*="en"] .goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .serach-text {
  letter-spacing: 0;
}

html[lang*="jp"] .goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .serach-text {
  font-size: 14px;
  letter-spacing: 0;
}

html[lang*="ch"] .goods-filter-wrap .filter-text-wrap .filter-text-wrap-inner .serach-text {
  font-size: 15px;
  letter-spacing: 0;
}

.goods-filter-wrap .filter-option-wrap {
  display: none;
  height: calc(100% - 215px);
  overflow-y: auto;
  background-color: #fff;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-option-wrap {
    height: auto;
  }
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-option-wrap .list {
    display: table;
    width: 100%;
    max-width: 1202px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 25px;
    padding-left: 25px;
  }
}

.goods-filter-wrap .filter-option-wrap .list .title {
  display: block;
  height: 60px;
  line-height: 60px;
  padding-right: 25px;
  padding-left: 25px;
  background-color: #fff;
  border-bottom: 1px solid #f2f2f2;
  font-family:  "Roboto", "Noto Sans KR", sans-serif ;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  color: #333;
}

html[lang*="en"] .goods-filter-wrap .filter-option-wrap .list .title {
  font-family:  "Roboto", "Noto Sans KR", sans-serif ;
  letter-spacing: 0;
}

html[lang*="jp"] .goods-filter-wrap .filter-option-wrap .list .title {
  font-family:  "Mplus 1p", sans-serif ;
  letter-spacing: 0;
}

html[lang*="ch"] .goods-filter-wrap .filter-option-wrap .list .title {
  font-family:  "Noto Sans CH", sans-serif ;
  letter-spacing: 0;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-option-wrap .list .title {
    display: table-cell;
    width: 330px;
    height: auto;
    line-height: normal;
    vertical-align: middle;
    padding: 0;
    background-color: #fff;
    border-bottom: 1px solid #e1e1e1;
    font-size: 15px;
  }
}

.goods-filter-wrap .filter-option-wrap .list .options-wrap {
  width: 100%;
  min-height: 60px;
  padding: 25px 22px 15px 22px;
  background-color: #fafafa;
  border-bottom: 1px solid #f2f2f2;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-option-wrap .list .options-wrap {
    float: right;
    width: calc(100% - 54px);
    padding-left: 0;
    padding-right: 0;
    background-color: #fff;
    border-bottom: 1px solid #e1e1e1;
  }
}

.goods-filter-wrap .filter-option-wrap .list .options-wrap > * {
  float: left;
  width: 50%;
  margin-bottom: 10px;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-option-wrap .list .options-wrap > * {
    width: 33.33%;
    margin-bottom: 15px;
  }
}

.goods-filter-wrap .filter-btn-wrap {
  display: none;
  padding: 15px 0;
  background-color: #fff;
  border-top: 1px solid #bbb;
  text-align: center;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-btn-wrap {
    padding: 30px 0;
    border-top: none;
  }
}

.goods-filter-wrap .filter-btn-wrap .btn-common {
  height: 50px;
  line-height: 50px;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .filter-btn-wrap .btn-common {
    height: 56px;
    line-height: 56px;
  }
}

.goods-filter-wrap .filter-btn-wrap .btnReset .icon {
  position: relative;
  top: 1px;
  left: 2px;
  display: inline-block;
  width: 14px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: 50%;
  background-image: url(/views/res/imgs//goods/icon_filter_reset.png);
}

.goods-filter-wrap .filter-btn-wrap .btnFilterClose {
  display: inline-block;
  width: 50px;
  height: 50px;
  vertical-align: bottom;
  background-color: #f9f9f9;
  background-repeat: no-repeat;
  background-position: 50%;
  background-image: url(/views/res/imgs/goods/btn_filter_close.png);
  background-size: 12px;
  border: 1px solid #e1e1e1;
}

.goods-filter-wrap .btnFilterTrigger {
  position: absolute;
  bottom: -25px;
  left: 50%;
  width: 91px;
  height: 26px;
  background: url(/views/res/imgs/goods/img_filter_trigger.png) no-repeat 50%;
  background-size: cover;
  border: none;
  outline: none;
  border-radius: 0;
  -webkit-appearance: none;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 50;
  cursor: pointer;
}

@media screen and (min-width: 992px) {
  .goods-filter-wrap .btnFilterTrigger {
    bottom: -33px;
    width: 120px;
    height: 34px;
  }
}

.goods-list-section .goods-list-body-wrap {
  padding-top: 158px;
  padding-bottom: 75px;
}

@media screen and (min-width: 992px) {
  .goods-list-section .goods-list-body-wrap {
    padding-top: 165px;
    padding-bottom: 100px;
  }
}

/*상품리스트 페이지 상품 리스트 배경 설정*/
.goods-list-bg {
  background-color: transparent;
}

.goods-cnt-title {
  position: relative;
  top: 20px;
  margin-bottom: 25px;
  padding-left: 25px;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #111;
}

html[lang*="en"] .goods-cnt-title {
  font-family:  "Roboto", "Noto Sans KR", sans-serif ;
  letter-spacing: 0;
}

html[lang*="jp"] .goods-cnt-title {
  font-family:  "Mplus 1p", sans-serif ;
  letter-spacing: 0;
}

html[lang*="ch"] .goods-cnt-title {
  font-family:  "Noto Sans CH", sans-serif ;
  letter-spacing: 0;
}

@media screen and (min-width: 992px) {
  .goods-cnt-title {
    margin-left: 0;
    padding-left: 44px;
    font-weight: 400;
  }
}

.goods-cnt-title:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 15px;
  height: 3px;
  background-color: #2165ff;
}

@media screen and (min-width: 992px) {
  .goods-cnt-title:before {
    width: 30px;
    height: 4px;
  }
}

/*상품 리스트*/
.goods-list-wrap {
  margin: 0;
  display: none;
  /*상품 리스트 간격조절*/
}

@media screen and (min-width: 768px) {
  .goods-list-wrap {
    margin: 0 -10px;
    padding: 0;
  }
}

.goods-list-wrap [class*="col-"] {
  margin-bottom: 25px;
  padding: 0;
  /*상품 리스트 상품 없음*/
}

@media screen and (min-width: 768px) {
  .goods-list-wrap [class*="col-"] {
    margin-bottom: 0;
    padding: 10px;
  }
}

.goods-list-wrap [class*="col-"].none-list {
  height: 150px;
  line-height: 150px;
  margin-bottom: 0;
  color: #999;
}

.goods-list-wrap .list {
  position: relative;
  /*상품 리스트 이미지*/
  /* 슬라이드 이미지 플러그인 */
  /*상품 리스트 텍스트 영역*/
}

.goods-list-wrap .list .tilter__figure {
  position: relative;
  perspective: 5000px;
  transform-style: preserve-3d;
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .tilter__figure:before {
    content: '';
    position: absolute;
    top: 5%;
    left: 5%;
    width: 90%;
    height: 90%;
  }
  .goods-list-wrap .list .tilter__figure:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 73%;
    background: url(/views/res/imgs/goods/bg_overlay_lists.png) no-repeat 50%;
  }
}

.goods-list-wrap .list .image-wrap {
  position: relative;
  -webkit-box-shadow: 9px 13px 54px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 9px 13px 54px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 9px 13px 54px 0px rgba(0, 0, 0, 0.2);
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .image-wrap {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }
}

.goods-list-wrap .list .image-wrap .img {
  padding-top: 56.6%;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: cover;
}

.goods-list-wrap .list .text-wrap {
  height: 102px;
  padding: 20px 0;
  background-color: transparent;
  font-family:  "Roboto", "Noto Sans KR", sans-serif ;
  /*상품 리스트 서브 타이틀*/
  /*상품 리스트 타이틀*/
  /*상품 리스트 서브 타이틀*/
}

html[lang*="en"] .goods-list-wrap .list .text-wrap {
  font-family:  "Roboto", "Noto Sans KR", sans-serif ;
  letter-spacing: 0;
}

html[lang*="jp"] .goods-list-wrap .list .text-wrap {
  font-family:  "Mplus 1p", sans-serif ;
  letter-spacing: 0;
}

html[lang*="ch"] .goods-list-wrap .list .text-wrap {
  font-family:  "Noto Sans CH", sans-serif ;
  letter-spacing: 0;
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .text-wrap {
    position: absolute;
    left: 0;
    bottom: 85px;
    height: auto;
    padding: 0 30px;
    z-index: 10;
    -webkit-transform: translateZ(50px);
    transform: translateZ(50px);
  }
}

.goods-list-wrap .list .text-wrap .cate {
  margin-bottom: 7px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0em;
  color: #555;
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .text-wrap .cate {
    font-size: 13px;
    font-weight: 400;
    color: #fff;
  }
}

.goods-list-wrap .list .text-wrap .title {
  margin-left: -2px;
  margin-bottom: 5px;
  font-family:  "Noto Sans KR", sans-serif ;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: #000;
}

html[lang*="en"] .goods-list-wrap .list .text-wrap .title {
  font-family:  "Roboto", "Noto Sans KR", sans-serif ;
  letter-spacing: 0;
}

html[lang*="jp"] .goods-list-wrap .list .text-wrap .title {
  font-family:  "Mplus 1p", sans-serif ;
  letter-spacing: 0;
}

html[lang*="ch"] .goods-list-wrap .list .text-wrap .title {
  font-family:  "Noto Sans CH", sans-serif ;
  letter-spacing: 0;
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .text-wrap .title {
    margin-bottom: 5px;
    font-size: 24px;
    color: #fff;
  }
}

.goods-list-wrap .list .text-wrap .sub-title {
  font-size: 13px;
  letter-spacing: 0em;
  color: #999;
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .text-wrap .sub-title {
    font-size: 12px;
    color: #727272;
  }
}

.goods-list-wrap .list .btn-play-common {
  -webkit-transform: translateX(-50%) translateY(-50%) translateZ(50px);
  transform: translateX(-50%) translateY(-50%) translateZ(50px);
}

@media screen and (min-width: 992px) {
  .goods-list-wrap .list .btn-play-common {
    left: 30px;
    top: auto;
    bottom: 30px;
    width: 38px;
    height: 38px;
    -webkit-transform: translateX(0) translateY(0) translateZ(50px);
    transform: translateX(0) translateY(0) translateZ(50px);
  }
  .goods-list-wrap .list .btn-play-common:after {
    margin-top: -5px;
    margin-left: -1.5px;
    border-width: 5.5px 0 5.5px 6px;
  }
  .goods-list-wrap .list .btn-play-common:before {
    content: "Play video";
    position: absolute;
    left: 50px;
    top: 50%;
    display: block;
    width: 70px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family:  "Roboto", "Noto Sans KR", sans-serif ;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    color: #fff;
  }
  html[lang*="en"] .goods-list-wrap .list .btn-play-common:before {
    font-family:  "Roboto", "Noto Sans KR", sans-serif ;
    letter-spacing: 0;
  }
  html[lang*="jp"] .goods-list-wrap .list .btn-play-common:before {
    font-family:  "Mplus 1p", sans-serif ;
    letter-spacing: 0;
  }
  html[lang*="ch"] .goods-list-wrap .list .btn-play-common:before {
    font-family:  "Noto Sans CH", sans-serif ;
    letter-spacing: 0;
  }
}

/*common-searcher*/
.common-searcher .search-form {
  width: 100%;
  display: inline-block;
  border-bottom: 2px solid #000;
  text-align: center;
  font-size: 0;
}

.common-searcher .search-form > * {
  display: inline-block;
  height: 45px;
  font-size: 12px;
  vertical-align: middle;
}

.common-searcher .search-form input {
  width: calc(100% - 27px);
  padding-left: 7px;
  border: none;
  outline: none;
}

.common-searcher .search-form input::placeholder {
  color: #999;
}

.common-searcher .search-form button {
  width: 27px;
  height: 43px;
  background: url(/views/res/imgs/board/icon_search.png) no-repeat center;
}

@media screen and (min-width: 544px) {
  /*==========공통 검색폼=========*/
  .common-searcher .search-form select {
    padding-left: 15px;
    width: 120px;
  }
  .common-searcher .search-form .select:after {
    right: 13px;
    top: 23px;
  }
  .common-searcher .search-form > * {
    height: 45px;
    font-size: 16px;
  }
}

@media screen and (min-width: 768px) {
  /*==========공통 검색폼=========*/
  .common-searcher .search-form {
    width: auto;
  }
  .common-searcher .search-form input {
    width: 345px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZHMuY3NzIiwic291cmNlcyI6WyJnb29kcy5zY3NzIiwiX192YXJpYWJsZXMuc2NzcyIsIl9fbWl4aW5zLnNjc3MiLCJtaXhpbnMvX21lZGlhLXF1ZXJ5LnNjc3MiLCJtaXhpbnMvX21hcC5zY3NzIiwibWl4aW5zL19jbGVhci5zY3NzIiwibWl4aW5zL19mbG9hdC5zY3NzIiwibWl4aW5zL19ob3Zlci5zY3NzIiwibWl4aW5zL19zY3JlZW5yZWFkZXIuc2NzcyIsIm1peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwibWl4aW5zL19wcmVmaXhlci5zY3NzIiwibWl4aW5zL190cmlhbmdsZS5zY3NzIiwibWl4aW5zL19idXR0b25zLnNjc3MiLCJtaXhpbnMvX2NhcmRzLnNjc3MiLCJtaXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIm1peGlucy9fZm9ybXMuc2NzcyIsIm1peGlucy9fdGFibGVzLnNjc3MiLCJtaXhpbnMvX3RhYi5zY3NzIiwibWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJtaXhpbnMvX2FyZWEuc2NzcyIsIm1peGlucy9fZ3JpZC5zY3NzIiwiZ29vZHMvX2xpc3Quc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiX192YXJpYWJsZXNcIjtcclxuQGltcG9ydCBcIl9fbWl4aW5zXCI7XHJcblxyXG5AaW1wb3J0IFwiZ29vZHMvX2xpc3RcIjtcclxuLy8gQGltcG9ydCBcImdvb2RzL192aWV3XCI7XHJcbiIsIi8vLy8vZGVmYXVsdC8vLy8vXHJcbi8vY29sb3JcclxuJGdfd2hpdGU6ICNmZmYgIWRlZmF1bHQ7XHJcbiRnX2JsYWNrOiAjMDAwICFkZWZhdWx0O1xyXG4kZ19yZWQ6ICNmZjAwMDA7XHJcblxyXG4kZ19wb2ludC1mb250LWNvbG9yOiAjZmZmO1xyXG4kZ19wb2ludC10aGVtZS1jb2xvcjogIzIxNjVmZjtcclxuXHJcblxyXG4vL2ZvbnRcclxuLy8tZm9udC1mYW1pbHlcclxuJGdfZm9udC1mYW1pbHk6IChcclxuXHRzeXN0ZW06ICcgXCLrp5HsnYAg6rOg65SVXCIsIFwiTWFsZ3VuIEdvdGhpY1wiLCBcIuyVoO2UjCBTRCDsgrDrj4zqs6DrlJUgTmVvXCIsIFwiQXBwbGUgU0QgR290aGljIE5lb1wiLCBzYW5zLXNlcmlmICcsXHJcbiAgbm90bzogJyBcIk5vdG8gU2FucyBLUlwiLCBzYW5zLXNlcmlmICcsXHJcbiAgcm9ib3RvOicgXCJSb2JvdG9cIiwgXCJOb3RvIFNhbnMgS1JcIiwgc2Fucy1zZXJpZiAnLFxyXG4gIGRvdHVtOiAnIFwiRG90dW1cIiwgc2Fucy1zZXJpZiAnLFxyXG4gIGpwOiAnIFwiTXBsdXMgMXBcIiwgc2Fucy1zZXJpZiAnLFxyXG4gIGNoOiAnIFwiTm90byBTYW5zIENIXCIsIHNhbnMtc2VyaWYgJyxcclxuKTtcclxuJGZvbnQtc3lzdGVtOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIHN5c3RlbSl9O1xyXG4kZm9udC1ub3RvOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIG5vdG8pfTtcclxuJGZvbnQtcm9ib3RvOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIHJvYm90byl9O1xyXG4kZm9udC1kb3R1bTogI3ttYXAtZ2V0KCRnX2ZvbnQtZmFtaWx5LCBkb3R1bSl9O1xyXG4kZm9udC1qcDogI3ttYXAtZ2V0KCRnX2ZvbnQtZmFtaWx5LCBqcCl9O1xyXG4kZm9udC1jaDogI3ttYXAtZ2V0KCRnX2ZvbnQtZmFtaWx5LCBjaCl9O1xyXG5cclxuLy8tZm9udC1zaXplXHJcbiRnX2ZvbnQtc2l6ZTooXHJcblx0eHM6IDEwcHgsXHJcblx0c206IDEycHgsXHJcblx0bWQ6IDE1cHgsXHJcblx0bGc6IDE4cHgsXHJcblx0eGw6IDI0cHgsXHJcbik7XHJcblxyXG4vLy1mb250LXdlaWdodFxyXG4kZ19mb250LXdlaWdodHM6IDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDA7XHJcblxyXG4vLy1sZXR0ZXItc3BhY2luZ1xyXG5cclxuLy8vLy9tZWRpYS8vLy8vXHJcbiRnX21lZGlhLWJyZWFrcG9pbnRzOiAoXHJcbiAgeHM6IDAsXHJcbiAgc206IDU0NHB4LFxyXG4gIG1kOiA3NjhweCxcclxuICBsZzogOTkycHgsXHJcbiAgeGw6IDEyMDBweFxyXG4pO1xyXG5cclxuLy8vLy9sYXlvdXQvLy8vL1xyXG4vL2FyZWFcclxuJGdfbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiRnX2FyZWEtZ3V0dGVyLXdpZHRoOiAyNXB4O1xyXG5cclxuLy9ncmlkXHJcbiRnX2dyaWQtY29sdW1uczogMTI7XHJcbiRnX2dyaWQtZ3V0dGVyLXdpZHRoOiAxJTtcclxuXHJcbiRnX2RlZmF1bHQtYXJlYTogKFxyXG4gIG1heC13aWR0aDogJGdfbWF4LXdpZHRoLFxyXG4gIGd1dHRlci13aWR0aDogJGdfYXJlYS1ndXR0ZXItd2lkdGgsXHJcbiAgd2lkdGg6IDEwMCVcclxuKTtcclxuJGdfZnVsbC1hcmVhOiAoXHJcblx0bWF4LXdpZHRoOiAxNzMwcHgsXHJcblx0Z3V0dGVyLXdpZHRoOiAkZ19hcmVhLWd1dHRlci13aWR0aCxcclxuXHR3aWR0aDogMTAwJVxyXG4pO1xyXG4kZ19ub2d1dHRlci1hcmVhOiAoXHJcbiAgbWF4LXdpZHRoOiAkZ19tYXgtd2lkdGhcclxuKTtcclxuXHJcbi8vZ3JpZFxyXG4kZ19ncmlkLWNvbC1pbmZvOiAoXHJcbiAgZ3JpZC1jb2wtY250OiAxMixcclxuICBncmlkLWNvbC1uYW1lOiBudWxsXHJcbik7XHJcbiRncmlkLWNvbDUtaW5mbzogKFxyXG4gIGdyaWQtY29sLWNudDogNSxcclxuICBncmlkLWNvbC1uYW1lOiBmaXZlLVxyXG4pO1xyXG5cclxuLy8vLy9VVElMSVRJRVMvLy8vL1xyXG4vL2NsZWFyXHJcblxyXG4vL3NwYWNpbmdcclxuJHNwYWNlcnM6KFxyXG5cdDA6IDAsXHJcblx0NTogNXB4LFxyXG4gIDEwOiAxMHB4LFxyXG4gIDE1OiAxNXB4LFxyXG5cdDIwOiAyMHB4LFxyXG5cdDI1OiAyNXB4LFxyXG4gIDMwOiAzMHB4LFxyXG4gIDM1OiAzNXB4LFxyXG4gIDQwOiA0MHB4LFxyXG4gIDQ1OiA0NXB4LFxyXG4gIDUwOiA1MHB4LFxyXG4gIDU1OiA1NXB4LFxyXG4gIDYwOiA2MHB4LFxyXG4gIDY1OiA2NXB4LFxyXG4gIDcwOiA3MHB4LFxyXG4gIDc1OiA3NXB4LFxyXG4gIDgwOiA4MHB4LFxyXG4gIDg1OiA4NXB4LFxyXG4gIDkwOiA5MHB4LFxyXG4gIDk1OiA5NXB4LFxyXG5cdDEwMDogMTAwcHhcclxuKTtcclxuXHJcbi8vLy8vQ09NUE9ORU5UUy8vLy8vXHJcbi8vY2FyZFxyXG4kZ19jYXJkLXdyYXA6IChcclxuXHRkZWZhdWx0OiAoXHJcblx0XHR3cmFwOiAoXHJcblx0XHRcdHBhZGRpbmc6IDAgMzBweCxcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZixcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweCxcclxuXHRcdFx0Ym9yZGVyLXN0eWxlOiAoIGJvcmRlcjogXCIxcHggc29saWQgI2U3ZTllZVwiICksXHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDVweFxyXG5cdFx0KSxcclxuXHRcdGhlYWRlcjogKFxyXG5cdFx0XHRwYWRkaW5nOiAyNXB4IDAsXHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmYsXHJcblx0XHRcdGJvcmRlci1zdHlsZTogKCBib3JkZXItYm90dG9tOiBcIjFweCBzb2xpZCAjZTdlOWVlXCIgKSxcclxuXHRcdFx0Zm9udC1zaXplOiAxNnB4XHJcblx0XHQpLFxyXG5cdFx0Ym9keTogKFxyXG5cdFx0XHRwYWRkaW5nOiAzMHB4IDAsXHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmZcclxuXHRcdCksXHJcblx0XHRmb290ZXI6IChcclxuXHRcdFx0cGFkZGluZzogMjVweCAwLFxyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxyXG5cdFx0XHRib3JkZXItc3R5bGU6ICggYm9yZGVyLXRvcDogXCIxcHggc29saWQgI2U3ZTllZVwiIClcclxuXHRcdClcclxuXHQpXHJcbik7XHJcbi8vX2Zvcm0td2FycFxyXG4kZ19mb3JtLXdyYXA6IChcclxuXHRkZWZhdWx0X3ZhbHVlOiAoXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxyXG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZSxcclxuXHQpLFxyXG5cdHRhYmxlIDogKFxyXG5cdFx0bWVkaWE6IChcclxuXHRcdFx0eHM6IChcclxuXHRcdFx0XHRmb3JtLXdyYXA6ICgvLy5mb3JtLXdhcnAtdGFibGUgLmZvcm0td3JhcFxyXG5cdFx0XHRcdFx0ZGlzcGxheTogdGFibGUsXHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJSxcclxuXHRcdFx0XHRcdGJvcmRlci10b3A6IFwiMXB4IHNvbGlkICNlZWVcIixcclxuXHRcdFx0XHRcdFwiJlwiIDogKFxyXG5cdFx0XHRcdFx0XHRcIjpsYXN0LWNoaWxkXCIgOiAoXHJcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogXCIxcHggc29saWQgI2VlZVwiXHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdClcclxuXHRcdFx0XHQpLFxyXG5cdFx0XHRcdGZvcm0tdGl0bGU6ICgvLy5mb3JtLXdhcnAtdGFibGUgLmZvcm0tdGl0bGVcclxuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGwsXHJcblx0XHRcdFx0XHR3aWR0aDogMTAwcHgsXHJcblx0XHRcdFx0XHRwYWRkaW5nOiBcIjAgMTBweFwiLFxyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmOCxcclxuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUsXHJcblx0XHRcdFx0XHRmb250LXNpemU6IDEycHgsXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHRmb3JtLWJvZHk6ICgvLy5mb3JtLXdhcnAtdGFibGUgLmZvcm0tYm9keVxyXG5cdFx0XHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbCxcclxuXHRcdFx0XHRcdHBhZGRpbmc6IFwiMTBweCAxNXB4XCIsXHJcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlLFxyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4LFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdCksXHJcblx0XHRcdG1kOiAoXHJcblx0XHRcdFx0Zm9ybS10aXRsZTogKFxyXG5cdFx0XHRcdFx0d2lkdGg6IDE1MHB4LFxyXG5cdFx0XHRcdFx0cGFkZGluZzogXCIyMHB4IDIwcHhcIixcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweCxcclxuXHRcdFx0XHQpLFxyXG5cdFx0XHRcdGZvcm0tYm9keTogKFxyXG5cdFx0XHRcdFx0cGFkZGluZzogXCIxMHB4IDE1cHhcIlxyXG5cdFx0XHRcdCksXHJcblx0XHRcdCksXHJcblx0XHQpLFxyXG5cdCksXHJcblx0bWF0ZXJpYWwgOiAoXHJcblx0XHRtZWRpYTogKFxyXG5cdFx0XHR4czogKFxyXG5cdFx0XHRcdGZvcm0td3JhcDogKFxyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2ssXHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJSxcclxuXHRcdFx0XHRcdFwiJlwiIDogKFxyXG5cdFx0XHRcdFx0XHRcIjphZnRlclwiIDogKFxyXG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiJydcIixcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jayxcclxuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJSxcclxuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDFweCxcclxuXHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBcInRyYW5zZm9ybSAuNXMsIGJhY2tncm91bmQtY29sb3IgLjVzXCIsXHJcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMCksXHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzMzMyxcclxuXHRcdFx0XHRcdFx0KSxcclxuXHRcdFx0XHRcdFx0XCI6aG92ZXI6YWZ0ZXJcIiA6IChcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZWQsXHJcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSksXHJcblx0XHRcdFx0XHRcdCksXHJcblx0XHRcdFx0XHRcdFwiLmFjdGl2ZTphZnRlclwiIDogKFxyXG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpLFxyXG5cdFx0XHRcdFx0XHQpXHJcblx0XHRcdFx0XHQpLFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0Zm9ybS10aXRsZTogKFxyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2ssXHJcblx0XHRcdFx0XHRmb250LXNpemU6IDEycHgsXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHRmb3JtLWJvZHk6IChcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrLFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdCksXHJcblx0XHQpLFxyXG5cdCksXHJcblx0bm8tbWVkaWEtdGVzdCA6IChcclxuXHRcdHhzIDooXHJcblx0XHRcdGZvcm0td3JhcDogKFxyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrLFxyXG5cdFx0XHRcdHdpZHRoOiAxMDAlLFxyXG5cdFx0XHQpLFxyXG5cdFx0KSxcclxuXHQpLFxyXG4pO1xyXG4vL19pbnB1dFxyXG4kZ19maWVsZC1zdHlsZTogKFxyXG5cdHN0eWxlMTogKC8v6rSA66as7J6QXHJcblx0XHRib3JkZXItc3R5bGU6IChib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q1ZDZkOCksXHJcblx0XHRpbnB1dC1oZWlnaHQ6IGF1dG8sXHJcblx0XHRpbnB1dC1wYWRkaW5nOiAwIDAgNXB4IDAsXHJcblx0XHRpbnB1dC1iZzogdHJhbnNwYXJlbnQsXHJcblx0XHRwbGFjZWhvbGRlci1jb2xvcjogI2NjY2ZkNixcclxuXHQpLFxyXG5cdHN0eWxlMjogKC8v7ZqM7JuQ6rCA7J6FLCDtmozsm5DsoJXrs7Qg7IiY7KCVIO2PvFxyXG5cdFx0bWF4LXdpZHRoOiAzMzBweCxcclxuXHRcdGJvcmRlci1zdHlsZTogKGJvcmRlcjogMXB4IHNvbGlkICNkZGQpLFxyXG5cdFx0aW5wdXQtaGVpZ2h0OiAzNXB4LFxyXG5cdFx0aW5wdXQtcGFkZGluZzogMCAxMHB4LFxyXG5cdFx0cGxhY2Vob2xkZXItY29sb3I6ICNjY2NmZDYsXHJcblx0XHRmb250LXNpemU6IDEzcHgsXHJcblx0XHRmb250LWNvbG9yOiAjNTU1LFxyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDVlbSxcclxuXHQpLFxyXG5cdHN0eWxlMzogKC8v66Gc6re47J24LCDtmozsm5DqsIDsnoUg7ZSM66Gc7JqwIC8v7IiY7KCV7JmE66OMXHJcblx0XHRib3JkZXItc3R5bGU6IChib3JkZXI6IDFweCBzb2xpZCAjZGRkKSxcclxuXHRcdGlucHV0LWhlaWdodDogNTBweCxcclxuXHRcdGlucHV0LXBhZGRpbmc6IDAgMTBweCxcclxuXHRcdGlucHV0LWJnOiB0cmFuc3BhcmVudCxcclxuXHRcdHBsYWNlaG9sZGVyLWNvbG9yOiAjOTA5MDkwLFxyXG5cdFx0Zm9udC1zaXplOiAxMnB4LFxyXG5cdFx0Zm9udC1jb2xvcjogIzMzMyxcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjA1ZW0sXHJcblx0KSxcclxuXHRzdHlsZTQ6ICgvL+yDge2SiCDsg4HshLhcclxuICAgIGJvcmRlci1zdHlsZTogKGJvcmRlcjogMXB4IHNvbGlkICNkMmQyZDIpLFxyXG4gICAgaW5wdXQtaGVpZ2h0OiA0MnB4LFxyXG5cdFx0aW5wdXQtcGFkZGluZzogMCAxNXB4LFxyXG5cdFx0aW5wdXQtYmc6ICNmZmYsXHJcblx0XHRwbGFjZWhvbGRlci1jb2xvcjogIzkwOTA5MCxcclxuXHRcdGZvbnQtc2l6ZTogMTNweCxcclxuXHRcdGZvbnQtY29sb3I6ICM2ZTZkNmQsXHJcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDhlbSxcclxuICApXHJcbik7XHJcblxyXG4vL190ZXh0YXJlYVxyXG4kZ190ZXh0LWFyZWEtc3R5bGU6IChcclxuXHRzdHlsZTE6IChcclxuXHRcdHRleHQtYXJlYS1oZWlnaHQ6IDE1MHB4LFxyXG5cdFx0dGV4dC1hcmVhLXBhZGRpbmc6IDVweCxcclxuXHQpLFxyXG5cdHN0eWxlMjogKFxyXG5cdFx0dGV4dC1hcmVhLWhlaWdodDogMTUwcHgsXHJcblx0XHR0ZXh0LWFyZWEtcGFkZGluZzogMTBweCxcclxuXHQpLFxyXG5cdHN0eWxlMzogKFxyXG5cdFx0dGV4dC1hcmVhLWhlaWdodDogMTUwcHgsXHJcblx0XHR0ZXh0LWFyZWEtcGFkZGluZzogNXB4LFxyXG5cdCksXHJcblx0XHJcbik7XHJcblxyXG4vL19zZWxlY3RcclxuJGdfc2VsZWN0LXN0eWxlOiAoXHJcblx0c3R5bGUxOiAoXHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMDBweCBib3R0b20gNTAlLFxyXG4gICAgXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9idG5fc2VsZWN0X2Fycm93X3N0MDEucG5nKSxcclxuXHQpLFxyXG5cdHN0eWxlMjogKCAvLyAo7ZqM7JuQ6rCA7J6FLO2ajOybkOygleuztCkg7Jew65297LKYXHJcblx0XHRwYWRkaW5nOiAwIDM1cHggMCAxMHB4LFxyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBib3R0b20gNTAlLFxyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vYnRuX3NlbGVjdF9hcnJvd19zdDAxLnBuZyksXHJcblx0XHQvL29wdGlvbiA6ICggY29sb3I6IzIyMiApIC8v7ISc67iMIO2BtOuemOyKpCDsg53shLFcclxuXHQpLFxyXG5cdHN0eWxlMzogKFxyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbixcclxuXHQpLFxyXG5cdHN0eWxlNDogKC8v7IOB7ZKIIOyDgeyEuFxyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCUsXHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9pbWdfc2VsZWN0X3N0eWxlMS5wbmcpLFxyXG5cdFx0Ly9vcHRpb24gOiAoIGNvbG9yOiMyMjIgKSAvL+yEnOu4jCDtgbTrnpjsiqQg7IOd7ISxXHJcblx0KVxyXG4pO1xyXG4vL19jaGVjay1ib3hcclxuJGdfY2hlY2stYm94LWltZzogKFxyXG5cdGltZy0xIDogKFxyXG5cdFx0d2lkdGg6IDI0cHgsXHJcblx0XHRoZWlnaHQ6IDI0cHgsXHJcblx0XHRtYXJnaW4tcmlnaHQ6IDVweCxcclxuXHRcdGJveC1pbWc6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9pbWdfY2hlY2tib3gwM19vZmYucG5nKSxcclxuXHRcdGJveC1pbWctb246IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9pbWdfY2hlY2tib3gwM19vbi5wbmcpLFxyXG5cdFx0Zm9udC1zaXplOiAxNHB4XHJcblx0KSxcclxuXHRpbWctMiA6IChcclxuXHRcdHdpZHRoOiAzMnB4LFxyXG5cdFx0aGVpZ2h0OiAzMnB4LFxyXG5cdFx0bWFyZ2luLXJpZ2h0OiA4cHgsXHJcblx0XHRib3gtaW1nOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2UvaW1nX2NoZWNrYm94MDFfb2ZmLnBuZyksXHJcblx0XHRib3gtaW1nLW9uOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2UvaW1nX2NoZWNrYm94MDFfb24ucG5nKSxcclxuXHRcdGZvbnQtc2l6ZTogMTRweFxyXG5cdCksXHJcblx0aW1nLTMgOiAoXHJcblx0XHR3aWR0aDogMjBweCxcclxuXHRcdGhlaWdodDogMjBweCxcclxuXHRcdGJveC1pbWc6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9pbWdfY2hlY2tib3gwMl9vZmYucG5nKSxcclxuXHRcdGJveC1pbWctb246IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9pbWdfY2hlY2tib3gwMl9vbi5wbmcpLFxyXG5cdFx0Zm9udC1zaXplOiAxNHB4XHJcblx0KVxyXG4pO1xyXG4kZ19jaGVjay1ib3gtdGFnOiAoXHJcblx0dGFnLTEgOiAoIC8vIOyVhOydtOuUlOyggOyepSAvLyDslb3qtIDrj5nsnZggLy8g6rKw7KCc7IiY64uoIC8v67Cw7Iah7KeAIOyEoO2DnSAvLyDrsLDshqHsp4Dsl60g7ISg7YOdXHJcblx0XHR3aWR0aDogMTRweCxcclxuXHRcdGhlaWdodDogMTRweCxcclxuICAgIGJveC1tYXJnaW4tcmlnaHQ6IDEzcHgsXHJcbiAgICBib3gtYmcgOiAjZmZmLFxyXG5cdFx0Ym94LW91dGxpbmU6IDFweCBzb2xpZCAjOTk5LFxyXG5cdFx0Y2hlY2tlZC13aWR0aDogOHB4LFxyXG5cdFx0Y2hlY2tlZC1oZWlnaHQ6IDhweCxcclxuXHRcdGNoZWNrZWQtY29sb3I6ICMwMDAsXHJcblx0XHRmb250LXNpemU6IDEzcHhcclxuXHQpLFxyXG5cdHRhZy0yIDogKC8vIOqzte2GtSDssrTtgazrsJXsiqRcclxuXHRcdHdpZHRoOiAxNnB4LFxyXG5cdFx0aGVpZ2h0OiAxNnB4LFxyXG4gICAgYm94LW1hcmdpbi1yaWdodDogMTNweCxcclxuICAgIGJveC1iZyA6ICNmZmYsXHJcblx0XHRib3gtb3V0bGluZTogMXB4IHNvbGlkICMwMDAsXHJcblx0XHRjaGVja2VkLXdpZHRoOiAxMHB4LFxyXG5cdFx0Y2hlY2tlZC1oZWlnaHQ6IDEwcHgsXHJcblx0XHRjaGVja2VkLWNvbG9yOiAjMjE2NWZmLFxyXG5cdFx0Zm9udC1zaXplOiAxNHB4XHJcblx0KVxyXG4pO1xyXG5cclxuLy9fdGFibGVcclxuJGdfcnAtdGFibGU6IChcclxuXHRzdHlsZTE6IChcclxuXHRcdG1lZGlhOiAoXHJcblx0XHRcdHhzOiAoXHJcblx0XHRcdFx0cnAtdGFibGU6IChcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDI1cHgsXHJcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0cnAtdGhlYWQ6IChcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmVcclxuXHRcdFx0XHQpLFxyXG5cdFx0XHRcdHJwLXRoOiAoXHJcblxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0cnAtdHI6IChcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrLFxyXG5cdFx0XHRcdFx0cGFkZGluZzogMjBweCxcclxuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkLFxyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNXMsXHJcblx0XHRcdFx0XHRcIiZcIiA6IChcclxuXHRcdFx0XHRcdFx0XCI6aG92ZXJcIiA6IChcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3LFxyXG5cdFx0XHRcdFx0XHQpLFxyXG5cdFx0XHRcdFx0XHRcIi5pcy1ub3RpY2VcIiA6IChcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3LFxyXG5cdFx0XHRcdFx0XHQpLFxyXG5cdFx0XHRcdFx0XHRcIi5ub25lLWhvdmVyOmhvdmVyXCIgOiAoXHJcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZixcclxuXHRcdFx0XHRcdFx0KSxcclxuXHRcdFx0XHRcdCksXHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHQpLFxyXG5cdFx0XHRcdHJwLXRkOiAoXHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2ssXHJcblx0XHRcdFx0XHRwYWRkaW5nOiA1cHgsXHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCxcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweCxcclxuXHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLFxyXG5cdFx0XHRcdFx0Y29sb3I6ICMwMDAsXHJcblx0XHRcdFx0XHRcIiZcIiA6IChcclxuXHRcdFx0XHRcdFx0XCIudGQtYmxvY2tcIiA6IChcclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5IDogYmxvY2tcclxuXHRcdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0KVxyXG5cdFx0XHRcdCksXHJcblx0XHRcdCksXHJcblx0XHRcdG1kOiAoXHJcblx0XHRcdFx0cnAtdGFibGU6IChcclxuXHRcdFx0XHRcdGJvcmRlci10b3A6IDJweCBzb2xpZCAjMzMzXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHRycC10aGVhZDogKFxyXG5cdFx0XHRcdFx0ZGlzcGxheTogdGFibGUsXHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJSxcclxuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkLFxyXG5cdFx0XHRcdFx0cGFkZGluZzogMCAwcHgsXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHRycC10aDogKFxyXG5cdFx0XHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbCxcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDI1cHggNXB4LFxyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZixcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweCxcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDAsXHJcblx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDVlbSxcclxuXHRcdFx0XHRcdGNvbG9yOiAjMDAwLFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0cnAtdHI6IChcclxuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLFxyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCUsXHJcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDBweCxcclxuXHRcdFx0XHRcdFwiJlwiIDogKFxyXG5cdFx0XHRcdFx0XHRcIi5uby1jb21tZW50XCIgOiAoXHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogMjVweCA1cHhcclxuXHRcdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0KVxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0cnAtdGQ6IChcclxuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGwsXHJcblx0XHRcdFx0XHR3aWR0aDogMTAwJSxcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDI1cHggNXB4LFxyXG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZSxcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweCxcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDAsXHJcblx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDJlbSxcclxuXHRcdFx0XHRcdFwiJlwiIDogKFxyXG5cdFx0XHRcdFx0XHRcIi50ZC1ibG9ja1wiIDogKFxyXG5cdFx0XHRcdFx0XHRcdGRpc3BsYXkgOiB0YWJsZS1jZWxsXHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdClcclxuXHRcdFx0XHQpLFxyXG5cdFx0XHQpXHJcblx0XHQpLFxyXG5cdClcclxuKTtcclxuXHJcbi8vX2J1dHRvblxyXG4kZ19idG4tc2l6ZTogKCAvL+yImOygleyZhOujjFxyXG5cdHhzOiAoIC8v67Cw7Iah7KGw7ZqMLO2bhOq4sOyekeyEsVxyXG5cdFx0d2lkdGg6IDUwcHgsXHJcblx0XHRoZWlnaHQ6IDM1cHgsXHJcblx0XHRmb250LXNpemU6IDEycHgsXHJcblx0KSxcclxuXHRzbTogKCAvL+qyjOyLnO2MkCDrsoTtirxcclxuXHRcdHdpZHRoOiA4NXB4LFxyXG5cdFx0aGVpZ2h0OiAzNXB4LFxyXG5cdFx0Zm9udC1zaXplOiAxMnB4LFxyXG5cdCksXHJcblx0bWQ6ICggLy/smrDtjrjrsojtmLjssL7quLAsIO2ajOybkO2DiO2HtFxyXG5cdFx0d2lkdGg6IDEwMHB4LFxyXG5cdFx0aGVpZ2h0OiAzNXB4LFxyXG5cdFx0Zm9udC1zaXplOiAxNHB4LFxyXG5cdCksXHJcblx0bGc6ICggLy/snqXrsJTqtazri4gsIO2ajOybkOqwgOyehSwg66eI7J207Y6Y7J207KeAXHJcblx0XHR3aWR0aDoyNjVweCxcclxuXHRcdGhlaWdodDogNDBweCxcclxuXHRcdGZvbnQtc2l6ZTogMTVweCxcclxuXHQpLFxyXG5cdHhsOiAoIC8v66Gc6re47J24LCDruYTrsIDrsojtmLgg7LC+6riwIO2UjOuhnOyasFxyXG5cdFx0aGVpZ2h0OiA1MHB4LFxyXG5cdFx0Zm9udC1zaXplOiAxNXB4LFxyXG5cdFx0bWVkaWE6IChcclxuXHRcdFx0bWQ6IChcclxuXHRcdFx0XHRoZWlnaHQ6IDYwcHgsXHJcblx0XHRcdClcclxuXHRcdClcclxuXHQpLFxyXG5cdHBhZGRpbmc6IChcclxuXHRcdHBhZGRpbmc6IDEwcHggMjBweCxcclxuXHRcdGZvbnQtc2l6ZTogMTNweCxcclxuXHQpLFxyXG5cdGZ1bGw6KFxyXG5cdFx0d2lkdGg6IDEwMCUsXHJcblx0KSxcclxuKTtcclxuXHJcblxyXG4kZ19idG4tZ3JvdXAgOiAoIC8vIOuyhO2KvCDsiqTtg4Dsnbwg7ISk7KCV7ZWY6riwXHJcblx0Ly8g67KE7Yq87YG0656Y7Iqk7J2066aEIDog7IKs7Jqp7ZWgIOyGjeyEseqwkiAo7IKs7Jqp7ZWY7KeAIOyViuydhOqyveyasCDrs4DsiJgg7IKt7KCc6rCA64qlLCDrs4DsiJgg7LaU6rCA7ZWg6rK97JqwIG1peGluX2J1dHRvbnMg7YyM7J287JeQIOuYkO2VnCDstpTqsIApXHJcblx0cG9pbnQgOiAgKCAvLyBkZWZhdWx0XHJcblx0XHR0aGVtZS1jb2xvcjogIzBiNmZlYixcclxuXHRcdGZvbnQtY29sb3I6ICNmZmYsXHJcblx0XHQvL2JvcmRlciA6IDFweCBzb2xpZCAjMjA3ZWJkLFxyXG5cdFx0Ly9ib3JkZXItcmFkaXVzOjVweCxcclxuXHJcblx0XHQvL2hvdmVyLXRoZW1lLWNvbG9yOiMyMDdlYmQsIC8vIOq4sOuzuOyggeycvOuhnCBkYXJrZW7snbQg65Ok7Ja06rCA66mwLCDtmLjrsoTtmqjqs7zqsIAg7JeG64qU6rKD7J2AIOuwsOqyveyDiSh0aGVtZS1jb2xvcinsmYAg64+Z7J287ZWcIOy7rOufrOqwkuuEo+yWtOykgOuLpC5cclxuXHRcdC8vIGhvdmVyLWNvbG9yOiAjMDAwLFxyXG5cdFx0Ly9ob3Zlci1ib3JkZXIgOiAxcHggc29saWQgIzAwMCxcclxuXHJcblx0XHRkaXNhYmxlZC1ncm91cCA6KCAvLyDquLDrs7jsoIHsnLzroZwgb3BhY2l0eTouNjUsIOy7pOyKpO2FgOydgCDslYTrnpjsl5Ag6rCSIOuzgOqyvVxyXG5cdFx0XHRkaW0tdGhlbWUtY29sb3I6IzExMSxcclxuXHRcdFx0ZGltLWNvbG9yOiAjMTExLFxyXG5cdFx0XHRkaW0tb3BhY2l0eSA6IC41LFxyXG5cdFx0KSxcclxuXHQpLFxyXG5cdHN1Yi1wb2ludCA6KFxyXG5cdFx0dGhlbWUtY29sb3I6IzE0NzUzZixcclxuXHRcdGZvbnQtY29sb3I6ICNmZmYsXHJcblx0KSxcclxuXHRzdHlsZTEgOiAgKCAvL+uhnOq3uOyduFxyXG5cdFx0dGhlbWUtY29sb3I6ICNhYWEsXHJcblx0XHRmb250LWNvbG9yOiAjZmZmLFxyXG5cdCksXHJcblx0c3R5bGUyIDogKCAvLyDtmozsm5DqsIDsnoUsIOu5hOuwgOuyiO2YuCDslYTsnbTrlJTssL7quLAsXHJcblx0XHRmb250LWNvbG9yOiAjMDAwLFxyXG5cdFx0dGhlbWUtY29sb3I6ICNmMmYyZjIsXHJcblx0XHRib3JkZXI6MXB4IHNvbGlkICNkZGQsXHJcblx0XHRob3Zlci10aGVtZS1jb2xvcjojZjJmMmYyLFxyXG5cdCksXHJcblx0c3R5bGUzIDogKCAvLyDso7zrrLgg7Leo7IaMIOuyhO2KvCwg7KO866y4IOumrOyKpO2KuCDqsoDsg4kg67KE7Yq8XHJcblx0XHRmb250LWNvbG9yOiAjZmZmLFxyXG5cdFx0dGhlbWUtY29sb3I6ICM1NTUsXHJcblx0KSxcclxuXHRvdXRsaW5lLXN0eWxlMSA6ICAoIC8vIO2OmOydtOyngO2VmOuLqCDruYTso7zslrwg7JyEIOuyhO2KvCDqs7XthrUo7IiY7KCV65CoKVxyXG5cdFx0Zm9udC1jb2xvcjogI2ZmZixcclxuXHRcdHRoZW1lLWNvbG9yOiB0cmFuc3BhcmVudCxcclxuXHRcdGJvcmRlciA6IDFweCBzb2xpZCAjZmZmLFxyXG5cdFx0aG92ZXItYm9yZGVyIDogMXB4IHNvbGlkICMyMTY1ZmYsXHJcblx0XHRob3Zlci10aGVtZS1jb2xvcjojMjE2NWZmLFxyXG5cdCksXHJcbik7XHJcblxyXG4vL19wYWdpbmF0aW9uICjrqoXsua0gOiBhIO2DnOq3uCBwYWdlLWxpbmsg66GcKOyKpO2DgOydvCkgIC8gcGFnZS1pdGVtIOydtCDqsIHsnpDsnZggd3JhcCAo6rCE6rKp7KGw7KCVKS8g7KCE7LK066W8IC5wYWdpbmF0aW9u7J20IOqwkOyLuOqzoCDsnojsnYwpXHJcbiRnX3BhZ2UtaXRlbS1ncm91cCA6IChcclxuXHQvLyBkZWZhdWx0XHJcblx0d2lkdGg6NTBweCxcclxuXHRoZWlnaHQ6NTBweCxcclxuXHJcblx0Ly9wYWRkaW5nOjIwcHgsXHJcblx0bWFyZ2luOjAgLTFweCxcclxuXHR0aGVtZS1jb2xvcjogI2ZmZixcclxuXHRib3JkZXIgOiAxcHggc29saWQgI2RkZCxcclxuXHQvL2JvcmRlci1yYWRpdXM6IDNweCxcclxuXHQvL2JvcmRlci1yYWRpdXMtZi1sOiAzcHgsIC8vIOyyq+uyiOynuCDrp4jsp4Drp4kg67KE7Yq8IOy9lOuEiCByYWRpdXNcclxuXHQvL2JvcmRlci1yaWdodCA6IG5vbmUsIC8vIOuyhO2KvOydtCDrtpnslrTsnojripQg6rK97JqwXHJcblx0Ym9yZGVyLXN0eWxlOiAoIC8vIGxhc3QtY2hpbGTsl5Ag7KCB7Jqp65CoXHJcblx0XHRib3JkZXItcmlnaHQgOiBcIjFweCBzb2xpZCAjZGRkXCIsXHJcblx0KSxcclxuXHJcblx0Zm9udC1zaXplOjE4cHgsXHJcblx0Zm9udC13ZWlnaHQ6NDAwLFxyXG5cdGxldHRlci1zcGFjaW5nOjAuMDJlbSxcclxuXHRmb250LWNvbG9yOiMwMDAsXHJcblxyXG5cdC8vIGhvdmVyXHJcblx0aG92ZXItdGhlbWUtY29sb3I6I2YyZjJmMixcclxuXHQvL2hvdmVyLWJvcmRlci1jb2xvciA6ICMwMDAsXHJcblx0Ly9ob3Zlci1jb2xvcjogIzJmNjZmZSxcclxuXHJcblx0Ly8gYWN0aXZlXHJcblx0YWN0aXZlLXRoZW1lOiNmMmYyZjIsXHJcblx0Ly9hY3RpdmUtY29sb3I6IzJmNjZmZSxcclxuXHRhY3RpdmUtc3R5bGU6ICggLy8g7Luk7Iqk7YWA7JqpXHJcblx0XHQvL2JvcmRlci1ib3R0b206XCIycHggc29saWQgIzAyMzg4YlwiLFxyXG5cdFx0Ly9mb250LXdlaWdodDpib2xkLFxyXG5cdCksXHJcblxyXG5cdC8vIGRpc2FibGVkXHJcblx0ZGltLW9wYWNpdHkgOiAuNSxcclxuXHQvL2Rpc2FibGVkLXN0eWxlOiAoIC8vIOy7pOyKpO2FgOyaqVxyXG5cdC8vXHQvL+uyhO2KvOyXkOyEnOuKlCBtYXAtaGFzLWtleeqwkuydhCDsnbTsmqntlbTshJwg7YKk6rCS7J20IOyeh+ycvOuptCDrp7XsnZgg7YKk6rCS6rO8IOuyqOulmOuhnCDstpzroKVcclxuXHQvL1x0Ly/tjpjsnbTsp4DrhKTsnbTshZjsl5DshJzripQg7YKk6rCS7J20IOyeiOycvOuptCDslYjsl5Ag64K07JqpIOq3uOuMgOuhnCDstpzroKUuLlxyXG5cdC8vXHQvL+qysOqzvCDqsJLsnYAg6rCZ7Jy864KYIG1peGlu67Cp67KV7J20IOuLpOultOuLpCDtmITsnqxcclxuXHQvL1x0YmFja2dyb3VuZC1jb2xvcjojMTExLFxyXG5cdC8vXHRjb2xvcjogIzExMSxcclxuXHQvL1x0Ym9yZGVyLWJvdHRvbTpcIjJweCBzb2xpZCAjMDIzODhiXCIsXHJcblx0Ly8pLFxyXG5cdGFycm93LWdyb3VwIDogKFxyXG5cdFx0c3RhcnQgOiAoIC8v7Luk7Iqk7YWAXHJcblx0XHRcdHdpZHRoOiBcIjEwMCVcIixcclxuXHRcdFx0aGVpZ2h0OiBcIjEwMCVcIixcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZSA6dXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vcGFnaW5hdGlvbl9hcnJvd19zdGFydC5wbmcpLFxyXG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcixcclxuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0LFxyXG5cdFx0KSxcclxuXHRcdHByZXYgOiAoXHJcblx0XHRcdHdpZHRoOiBcIjEwMCVcIixcclxuXHRcdFx0aGVpZ2h0OiBcIjEwMCVcIixcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZSA6dXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vcGFnaW5hdGlvbl9hcnJvd19wcmV2LnBuZyksXHJcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyLFxyXG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQsXHJcblx0XHQpLFxyXG5cdFx0bmV4dCA6IChcclxuXHRcdFx0d2lkdGg6IFwiMTAwJVwiLFxyXG5cdFx0XHRoZWlnaHQ6IFwiMTAwJVwiLFxyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlIDp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9wYWdpbmF0aW9uX2Fycm93X25leHQucG5nKSxcclxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIsXHJcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCxcclxuXHRcdCksXHJcblx0XHRlbmQgOiAoXHJcblx0XHRcdHdpZHRoOiBcIjEwMCVcIixcclxuXHRcdFx0aGVpZ2h0OiBcIjEwMCVcIixcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZSA6dXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vcGFnaW5hdGlvbl9hcnJvd19lbmQucG5nKSxcclxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIsXHJcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCxcclxuXHRcdCksXHJcblx0KSxcclxuKTtcclxuXHJcbi8vX3Rvb2x0aXBcclxuJGdfdG9vbHRpcC1ncm91cCA6ICggLy8gLnRvb2x0aXAgPiAudG9vbHRpcC1pbm5lclxyXG5cdHRvcCA6IC00MHB4LFxyXG5cdHBhZGRpbmc6IDNweCA4cHgsXHJcblx0YmFja2dyb3VuZC1jb2xvcjojMDAwLFxyXG5cdGJvcmRlci1yYWRpdXM6M3B4LFxyXG5cdGZvbnQtc2l6ZToxM3B4LFxyXG5cdGxldHRlci1zcGFjaW5nOi0wLjA1ZW0sXHJcblx0Y29sb3I6I2ZmZixcclxuXHR0ZXh0LWFsaWduOmNlbnRlcixcclxuXHR0cmFuc2l0aW9uLXRpbWUgOiAuNXMsXHJcblx0b3BhY2l0eTowLCAvL25vcm1hbFxyXG5cdHNob3ctb3BhY2l0eTouOSwgLy86aG92ZXLsnbzrlYxcclxuXHRhcnJvdy1ncm91cCA6ICggLy8g7Yi07YyB6rys66asXHJcblx0Ly9cdGxlZnQgOiAwLFxyXG5cdC8vICByaWdodCA6IDAsXHJcblx0XHRjZW50ZXI6IDUwJSxcclxuXHRcdGFycm93LXdpZHRoOjVweCA1cHggMCxcclxuXHRcdGJvcmRlci10b3AtY29sb3I6ICMwMDAsXHJcblx0KSxcclxuKTtcclxuXHJcbi8vX3RhYlxyXG4kZ190YWItZ3JvdXAgOiAoIC8vIC50YWItd3JhcCA+IC50YWItbGlzdC5vblxyXG5cdC8vIOyVhOuemOyXkCDqs7XthrXrtoDrtoQgc3ViLWNsYXNzaW5nIOq4sOykgOycvOuhnCDslYjsl5DshJwg7IOB7IaN67Cb64qU6rG466GcIOuCmOuIoOyngOuKlCDsnbTsiojssrTtgaxcclxuXHQvL2Zsb2F0OmxlZnQsXHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2ssXHJcblx0d2lkdGg6MTUwcHgsXHJcblx0cGFkZGluZzo5cHggMjBweCxcclxuXHR0aGVtZS1jb2xvcjogI2ZmZixcclxuXHRmb250LWNvbG9yOiAjMDAwLFxyXG5cdGZvbnQtd2VpZ2h0OjMwMCxcclxuXHRmb250LXNpemU6MTRweCxcclxuXHR0ZXh0LWFsaWduOmNlbnRlcixcclxuXHRsZXR0ZXItc3BhY2luZzotMC4wMmVtLFxyXG5cclxuXHRzdWItY2xhc3NpbmcgOiAoIC8vIOyeheugpe2VmOuKlOuNsOuhnFxyXG5cdFx0c3R5bGUgOiAoIC8vIOuEpOuqqO2DrVxyXG5cdFx0XHRtYXJnaW46NXB4LFxyXG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkICMwMDAsXHJcblx0XHQpLFxyXG5cdFx0c3R5bGUxIDogKCAvLyDsnbzroKztg61cclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMWUxZTEsXHJcblx0XHQpLFxyXG5cdCksXHJcblxyXG5cdGFjdGl2ZSA6ICggLy8g7J6F66Cl7ZWY64qU642w66GcXHJcblx0XHRib3JkZXItY29sb3I6ICRnX3BvaW50LXRoZW1lLWNvbG9yLFxyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjokZ19wb2ludC10aGVtZS1jb2xvcixcclxuXHRcdGNvbG9yOiNmZmYsXHJcblx0KSxcclxuXHJcblx0Ly/rr7jrlJTslrTsv7zrpqxcclxuXHRtZWRpYTogKFxyXG5cdFx0bWQ6ICggLy8g7J6F66Cl7ZWY64qU642w66GcXHJcblx0XHRcdC8vZGlzcGxheTpibG9jayxcclxuXHRcdFx0Ly93aWR0aDoxMDAlLFxyXG5cdFx0XHQvL2ZvbnQtc2l6ZToxMnB4XHJcblx0XHQpXHJcblx0KVxyXG4pO1xyXG4vL19zZWFyY2hiYXJcclxuXHJcbi8vXyBjYXJkXHJcblxyXG4iLCIvLyBUb2dnbGVzXHJcbi8vXHJcbi8vIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBnbG9iYWwgdmFyaWFibGVzIHRvIGVuYWJsZSBjZXJ0YWluIHRoZW1lIGZlYXR1cmVzLlxyXG5cclxuQGltcG9ydCBcIm1peGlucy9fbWVkaWEtcXVlcnlcIjtcclxuQGltcG9ydCBcIm1peGlucy9fbWFwXCI7XHJcblxyXG4vLyBVdGlsaXRpZXNcclxuLy9AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvX2NsZWFyXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvX2Zsb2F0XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvX2hvdmVyXCI7XHJcbi8vQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xyXG4vL0BpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcclxuLy9AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL19zY3JlZW5yZWFkZXJcIjtcclxuLy9AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcclxuQGltcG9ydCBcIm1peGlucy9fcmVzZXQtdGV4dFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL19wcmVmaXhlclwiO1xyXG4vL0BpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xyXG4vL0BpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XHJcbi8vQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XHJcbi8vQGltcG9ydCBcIm1peGlucy90cmFuc2Zvcm1zXCI7XHJcbi8vQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XHJcblxyXG4vLyAvLyBDb21wb25lbnRzXHJcbi8vQGltcG9ydCBcIm1peGlucy9hbGVydFwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL190cmlhbmdsZVwiO1xyXG5AaW1wb3J0IFwibWl4aW5zL19idXR0b25zXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZHNcIjtcclxuQGltcG9ydCBcIm1peGlucy9fcGFnaW5hdGlvblwiO1xyXG4vL0BpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcclxuLy9AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcclxuLy9AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvX2Zvcm1zXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGVzXCI7XHJcbi8vQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcclxuQGltcG9ydCBcIm1peGlucy9fdGFiXCI7XHJcblxyXG4vLyAvLyBTa2luc1xyXG4vL0BpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvX2JvcmRlci1yYWRpdXNcIjtcclxuLy9AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xyXG5cclxuLy8gLy8gTGF5b3V0XHJcbi8vIEBpbXBvcnQgXCJtaXhpbnMvbmF2YmFyLWFsaWduXCI7XHJcbi8vQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xyXG5AaW1wb3J0IFwibWl4aW5zL19hcmVhXCI7XHJcbkBpbXBvcnQgXCJtaXhpbnMvX2dyaWRcIjtcclxuIiwiLy8gbWVkaWEtcXVlcnktbWluIOuvueyKpOyduFxyXG4vLyBb66ek6rCc67OA7IiYXVxyXG4vLyAkYnJlYWtwb2ludCDquLDrs7jqsJI6IOyXhuydjFxyXG4vLyAkYnJlYWtwb2ludCDsl5Ag6rCA7Jqp6rCA64ql7ZWcIOqwklxyXG4vLyAoMSkgJG1lZGlhLWJyZWFrcG9pbnRzIOydmCDtgqQg6rCSICh4cywgc20sIG1kLCBsZywgeGwgKeykkSDtlZjrgphcclxuLy8gKDIpIOqzoOyglSBweOqwklxyXG4vLyAkYnJlYWtwb2ludCDsoITri6zrkJwg6rCS7JeQIOuUsOudvOyEnCBAbWVkaWEobWluLXdpZHRoOiBcIuunpOqwnOuzgOyImOyXkCDtlbTri7ntlZjripQg6rCSXCIpIOyFi+2Mhe2VtOykjeuLiOuLpC5cclxuLy8gJGJyZWFrcG9pbnQg6rCS7J2EIO2UveyFgOuhnCDrhKPripTri6TrqbQg7ZW064u5IO2UveyFgOqwkuydmCDrr7jrlJTslrTsv7zrpqzrpbwg66eM65Ok7Ja0IOykjeuLiOuLpC5cclxuLy8gZXgpIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykgeyBAY29udGVudCB9XHJcbi8vIGV4KSBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oNTAwcHgpIHsgQGNvbnRlbnQgfVxyXG5AbWl4aW4gbWVkaWEtcXVlcnktbWluKCAkYnJlYWtwb2ludCApIHtcclxuICBAaWYgbWFwX2hhc19rZXkoICRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCApe1xyXG4gICAgQGlmICAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xyXG4gICAgICBAY29udGVudFxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBtYXBfZ2V0KCRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkpIHtcclxuICAgICAgICBAY29udGVudFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmIHVuaXQoJGJyZWFrcG9pbnQpID09IFwicHhcIiB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludCl7ICBAY29udGVudCAgfVxyXG4gIH1cclxufVxyXG5AbWl4aW4gbWVkaWEtcXVlcnktbWF4KCAkYnJlYWtwb2ludCApIHtcclxuICBAaWYgbWFwX2hhc19rZXkoICRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCApe1xyXG4gICAgQGlmICAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xyXG4gICAgICBAY29udGVudFxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBtYXBfZ2V0KCRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkpIHtcclxuICAgICAgICBAY29udGVudFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmIHVuaXQoJGJyZWFrcG9pbnQpID09IFwicHhcIiB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCl7ICBAY29udGVudCAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIG1lZGlhLXF1ZXJ5LW1pbi12YWwg7ZWo7IiYXHJcbi8vIOyghOyXreuzgOyImCAkbWVkaWEtYnJlYWtwb2ludHMgbWFw7J2YIHZhbHVl66W8IOuwmO2ZmO2VtCDspI3ri4jri6QuXHJcbi8vIOyjvOuhnCBlYWNoIOusuOqzvCDqsJnsnYAgbG9vcCDrrLjsl5DshJwg7Zmc7Jqp65Cp64uI64ukLlxyXG4vLyBleClcclxuLy8gQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwX2tleXMoJG1lZGlhLWJyZWFrcG9pbnRzKSB7XHJcbi8vICAgJHBvaW50OiBtZWRpYS1xdWVyeS1taW4tdmFsKCRicmVha3BvaW50KTtcclxuLy8gICBAbWVkaWEgKCBtaW4td2lkdGg6ICN7JHBvaW50fSApe1xyXG4vLyAgICAgLiN7JGJyZWFrcG9pbnR9LWYtbCB7IEBpbmNsdWRlIGZsb2F0LWxlZnQgfVxyXG4vLyAgICAgLiN7JGJyZWFrcG9pbnR9LWYtciB7IEBpbmNsdWRlIGZsb2F0LXJpZ2h0IH1cclxuLy8gICAgIC4jeyRicmVha3BvaW50fS1mLW4geyBAaW5jbHVkZSBmbG9hdC1ub25lIH1cclxuLy8gICB9XHJcbi8vIH1cclxuQGZ1bmN0aW9uIG1lZGlhLXF1ZXJ5LW1pbi12YWwoICRicmVha3BvaW50ICl7XHJcbiAgQHJldHVybiBtYXBfZ2V0KCRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuIiwiQGZ1bmN0aW9uIG1hcC1zZXQoJG1hcCwgJGtleSwgJHZhbHVlKSB7XHJcblx0JG5ldzogKCRrZXk6ICR2YWx1ZSk7XHJcblx0QHJldHVybiBtYXAtbWVyZ2UoJG1hcCwgJG5ldyk7XHJcbn1cclxuXHJcblxyXG4vL3ByZWZpeCDsoJzqsbBcclxuLy/tg5zqt7jsnbTrpoQsIOyGjeyEsSwg7JWE7J2065SUIOuTsSAg7IWA66CJ7YSwIOqwgOuKpeuPhOuhnVxyXG5AZnVuY3Rpb24gbWFrZU1hcFRvQ29kZXMoJG1hcCwgJHByZWZpeDogXCJcIiwgJHNlbGY6IGZhbHNlKSB7XHJcblx0JGNvZGVzIDogKCk7XHJcblx0QGVhY2ggJGtleSwgJHZhbCBpbiAkbWFwIHtcclxuICAgIEBpZiggdHlwZS1vZigkdmFsKSA9PSBtYXAgKSB7XHJcblxyXG4gICAgICBAaWYgKCRrZXkgPT0gXCImXCIpIHtcclxuICAgICAgICAkbWFrZTogbWFrZU1hcFRvQ29kZXMoJHZhbCwgXCJcIiwgdHJ1ZSk7XHJcbiAgICAgICAgJGNvZGVzOiBtYXAtbWVyZ2UoJGNvZGVzLCAkbWFrZSk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICRzZWxlY3RvcjogXCIuI3skcHJlZml4fSN7JGtleX1cIjtcclxuXHJcbiAgICAgICAgQGlmICgkc2VsZikge1xyXG4gICAgICAgICAgJHNlbGVjdG9yIDogXCImI3skcHJlZml4fSN7JGtleX1cIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJG1ha2U6IG1ha2VNYXBUb0NvZGVzKCR2YWwsICRwcmVmaXgpO1xyXG4gICAgICAgICRjb2RlczogbWFwLXNldCgkY29kZXMsICRzZWxlY3RvciwgJG1ha2UpO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRjb2RlczogbWFwLXNldCgkY29kZXMsICRrZXksICR2YWwpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAcmV0dXJuICRjb2RlcztcclxufTtcclxuXHJcblxyXG5AbWl4aW4gcHJpbnRDb2RlcygkbWFwKSB7XHJcblxyXG4gIEBlYWNoICRrZXksICR2YWwgaW4gJG1hcCB7XHJcbiAgIFxyXG4gICAgQGlmKCB0eXBlLW9mKCR2YWwpID09IG1hcCApIHtcclxuICAgICAgI3ska2V5fSB7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkdmFsKTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICN7JGtleX0gOiAjeyR2YWx9O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG59XHJcblxyXG4vLyBpc01hcCDtlajsiJhcclxuLy8gI3trZXl9IDogI3t2YWx1ZX3snZgg7ZiV7YOc66W8IOumrO2EtO2VtOyjvOuKlCDtlajsiJhcclxuLy8gaXNNYXAoJHZhbCwgJGtleSk7XHJcbi8vIGlzTWFwIO2VqOyImOyXkOyEnCDsnbjsnpDroZwg64SY7Ja07JioICckdmFsJ+yXkCDtlaDri7nrkJwg6rCS7J20IG1hcOydtOudvOuptCBpc21hcO2VqOyImOulvCDsnqzqt4DtmLjstpwg7ZWc64ukLlxyXG4vLyDsmIjsmbjsoIHsnLzroZwg7YKk6rCS7J20IFwiX1wiIOudvOuptCBpc1BzZXVkb+ulvCDtmLjstpztlZzri6QuXHJcbi8vIOy1nOyiheyggeycvOuhnCAje2tleX0gOiAje3ZhbHVlfeydmCDqsJLsnYQg66as7YS07ZWY64+E66GdIOunjOuToOuLpC5cclxuXHJcbi8vaXNQc2V1ZG8g7ZWo7IiYXHJcbi8v6rCA7IOBIOyEoO2DneyekOulvCDrp4zrk6TslrQg66as7YS07ZW07KO864qUIO2VqOyImFxyXG4vL1xyXG5cclxuXHJcbi8vQGZ1bmN0aW9uIGlzTWFwICgkdmFsLCAka2V5KSB7XHJcbi8vXHQkcmVzdWx0IDogKCk7XHJcbi8vXHJcbi8vXHRAaWYgKHR5cGUtb2YoJHZhbCkgPT0gbWFwKSB7XHJcbi8vXHRcdEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcclxuLy9cdFx0XHRAaWYgKHR5cGUtb2YoJHZhbDIpID09IG1hcCBhbmQgJGtleSA9PSBudWxsKSB7XHJcbi8vXHRcdFx0XHQkbWFwIDogaXNNYXAoJHZhbDIsICRrZXkyKTtcclxuLy9cdFx0XHRcdCRtYXBrZXkgOiBtYXAta2V5cygkbWFwKTtcclxuLy9cdFx0XHRcdCRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJG1hcGtleSwgbWFwLWdldCgkbWFwLCAjeyRtYXBrZXl9KSk7XHJcbi8vXHRcdFx0fSBAZWxzZSBpZiAodHlwZS1vZigkdmFsMikgPT0gbWFwIGFuZCAka2V5ID09IFwiX1wiKXtcclxuLy9cdFx0XHRcdCRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJGtleTIsIGlzTWFwKCR2YWwyLCAka2V5MikpO1xyXG4vL1x0XHRcdH0gQGVsc2Uge1xyXG4vL1x0XHRcdFx0JHJlc3VsdDogbWFwLXNldCgkcmVzdWx0LCAka2V5MiwgJHZhbDIpO1xyXG4vL1x0XHRcdH1cclxuLy9cdFx0fVxyXG4vL1x0fSBAZWxzZSB7XHJcbi8vXHRcdCRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJHZhbCwgJGtleSk7XHJcbi8vXHR9XHJcbi8vXHJcbi8vXHRAcmV0dXJuICRyZXN1bHQ7XHJcbi8vfTtcclxuXHJcblxyXG4vL0BmdW5jdGlvbiBpc1BzZXVkbyAoJGtleSwgJHZhbCkge1xyXG4vL1x0JHJlc3VsdDogbnVsbDtcclxuLy9cdEBpZiAoJGtleSA9PSBcIl9cIikge1xyXG4vL1x0XHRAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XHJcbi8vXHRcdFx0JHJlc3VsdDogaXNNYXAoJGtleTIsICR2YWwyKTtcclxuLy9cdFx0XHRAcmV0dXJuIGlzTWFwKCRrZXkyLCAkdmFsMik7XHJcbi8vXHRcdH1cclxuLy9cdH0gQGVsc2UgIHtcclxuLy9cdFx0JHJlc3VsdDogaXNNYXAoJGtleSwgJHZhbCk7XHJcbi8vXHRcdEByZXR1cm4gJHJlc3VsdDtcclxuLy9cdH1cclxuLy99O1xyXG5cclxuXHJcbiIsIkBtaXhpbiBjbGVhcigpIHtcclxuICAmOjphZnRlciB7XHJcbiAgICAgY29udGVudDogXCJcIjtcclxuICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICBjbGVhcjogYm90aDtcclxuICAgfVxyXG59XHJcblxyXG5cclxuXHJcbiIsIkBtaXhpbiBmbG9hdC1sZWZ0IHtcclxuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xyXG59XHJcbkBtaXhpbiBmbG9hdC1yaWdodCB7XHJcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuQG1peGluIGZsb2F0LW5vbmUge1xyXG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiQG1peGluIGhvdmVyLW9ue1xyXG4gICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlLCAmLm9ueyBAY29udGVudDsgfVxyXG59XHJcblxyXG5AbWl4aW4gaG92ZXJ7XHJcbiAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUgeyBAY29udGVudDsgfVxyXG59XHJcblxyXG4vL1xyXG4vL0BtaXhpbiBob3ZlciB7XHJcbi8vICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cclxuLy99XHJcbi8vXHJcbi8vQG1peGluIGhvdmVyLWZvY3VzIHtcclxuLy8gICY6aG92ZXIsXHJcbi8vICAmOmZvY3VzIHtcclxuLy8gICAgQGNvbnRlbnQ7XHJcbi8vICB9XHJcbi8vfVxyXG4vL1xyXG4vL0BtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XHJcbi8vICAmLFxyXG4vLyAgJjpob3ZlcixcclxuLy8gICY6Zm9jdXMge1xyXG4vLyAgICBAY29udGVudDtcclxuLy8gIH1cclxuLy99XHJcbi8vXHJcbi8vQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XHJcbi8vICAmOmhvdmVyLFxyXG4vLyAgJjpmb2N1cyxcclxuLy8gICY6YWN0aXZlIHtcclxuLy8gICAgQGNvbnRlbnQ7XHJcbi8vICB9XHJcbi8vfSIsIi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxyXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cclxuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cclxuQG1peGluIHNyLW9ubHkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5AbWl4aW4gdGV4dC1oaWRlIHtcclxuICBmb250OiAwLzAgYSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcclxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XHJcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGxpbmUtYnJlYWs6IGF1dG87XHJcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcclxuICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XHJcbn1cclxuIiwiLy8gLyogcHJlZml4ICovXHJcbkBtaXhpbiBwcmVmaXhlcigkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzOigpKXtcclxuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc3tcclxuICAgICN7Jy0nKyRwcmVmaXgrJy0nKyRwcm9wZXJ0eX06JHZhbHVlO1xyXG4gIH1cclxuICAjeyRwcm9wZXJ0eX0gOiAkdmFsdWU7XHJcbn1cclxuXHJcbiAgLy8gQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCByb3RhdGUoNDVkZWcpLCB3ZWJraXQgbXMpOyBvciAoXCJ3ZWJraXRcIiwgXCJtb3pcIilcclxuXHJcbiAvL2Nzc1xyXG4gIC8vIC5zZWxlY3RvciB7XHJcbiAgLy8gICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAvLyAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgLy8gICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgLy8gfVxyXG5cclxuIiwiQG1peGluIHRyaWFuZ2xlKCRkaXJlY3Rpb24sJHdpZHRoLCRoZWlnaHQsJHdpZHRoU2l6ZSwkaGVpZ2h0U2l6ZSwkY29sb3IpIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIGhlaWdodDogJHdpZHRoO1xyXG4gICAgd2lkdGg6ICRoZWlnaHQ7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgQGlmICR3aWR0aCA9PSAwIHtcclxuICAgICAgICBAaWYgJHdpZHRoID09IDAgYW5kICRoZWlnaHQgPT0gMCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgKCR3aWR0aFNpemUgLyAyKSAkaGVpZ2h0U2l6ZTtcclxuICAgICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJ1cC1yaWdodFwiIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAkd2lkdGhTaXplICR3aWR0aFNpemUgMDtcclxuICAgICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwiIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY29sb3I7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogKCRoZWlnaHRTaXplIC8gMikgMCAoJGhlaWdodFNpemUgLyAyKSAkd2lkdGhTaXplO1xyXG4gICAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tcmlnaHRcIiB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAkd2lkdGhTaXplICR3aWR0aFNpemU7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogJGhlaWdodFNpemUgKCR3aWR0aFNpemUgLyAyKSAwO1xyXG4gICAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tbGVmdFwiIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY29sb3I7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoU2l6ZSAwIDAgJHdpZHRoU2l6ZTtcclxuICAgICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRjb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAoJGhlaWdodFNpemUgLyAyKSAkd2lkdGhTaXplICgkaGVpZ2h0U2l6ZSAvIDIpIDA7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidXAtbGVmdFwiIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoU2l6ZSAkd2lkdGhTaXplIDAgMDtcclxuICAgICAgICB9XHJcbiAgICB9QGVsc2Uge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGNvbG9yICRjb2xvciB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAgJHdpZHRoU2l6ZSAkaGVpZ2h0U2l6ZSAwO1xyXG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09IFwidXBcIiB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoLTEzNWRlZyk7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidXAtcmlnaHRcIiB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTtcclxuICAgICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwiIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tcmlnaHRcIiB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93bi1sZWZ0XCIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcclxuICAgICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDEzNWRlZyk7XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidXAtbGVmdFwiIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIC5lbGVtZW50IHtcclxuLy8gICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4vLyAgICAgJjo6YmVmb3JlIHtcclxuLy8gICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZShcInVwLWxlZnRcIiwgMCwwLDEwcHgsMTBweCwgI2IyNWM5Yyk7XHJcbi8vICAgICB9XHJcbi8vIH1cclxuLy8gLmVsZW1lbnQyIHtcclxuLy8gICAgIGxlZnQ6MjBweDtcclxuLy8gICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4vLyAgICAgJjo6YmVmb3JlIHtcclxuLy8gICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZShcInVwLWxlZnRcIiwgOHB4LDhweCwycHgsMnB4LCAjYjI1YzljKTtcclxuLy8gICAgIH1cclxuLy8gfVxyXG5cclxuLy8gY3NzXHJcbi8vIC5lbGVtZW50MiB7XHJcbi8vICAgICBjb250ZW50OiBcIlwiO1xyXG4vLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuLy8gICAgIGhlaWdodDogOHB4O1xyXG4vLyAgICAgd2lkdGg6IDhweDtcclxuLy8gICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2IyNWM5YyAjYjI1YzljIHRyYW5zcGFyZW50O1xyXG4vLyAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuLy8gICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbi8vIH1cclxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXHJcbi8vIOuyhO2KvCDsgqzsnbTspojrs4Qg7IOd7ISxXHJcbkBtaXhpbiBidXR0b24tc2l6ZS1weCgkYnRuLXNpemUpIHtcclxuICBAZWFjaCAka2V5LCAkdmFsIGluICRidG4tc2l6ZSB7XHJcbiAgICAuYnRuLSN7JGtleX0ge1xyXG4gICAgICB3aWR0aDogbWFwLWdldCgkdmFsLCB3aWR0aCk7XHJcbiAgICAgIGhlaWdodDogbWFwLWdldCgkdmFsLCBoZWlnaHQpO1xyXG4gICAgICBsaW5lLWhlaWdodDogbWFwLWdldCgkdmFsLCBoZWlnaHQpO1xyXG4gICAgICBwYWRkaW5nOiBtYXAtZ2V0KCR2YWwsIHBhZGRpbmcpO1xyXG4gICAgICBmb250LXNpemU6bWFwLWdldCgkdmFsLGZvbnQtc2l6ZSk7XHJcbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkdmFsLCBtZWRpYSkgeyAvLyDrp4zrk6TslrTsp4gg67aA67aEXHJcbiAgICAgICAgJG1lZGlhOiBtYXBfZ2V0KCR2YWwsIG1lZGlhKTsgLy9cclxuICAgICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJG1lZGlhIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5Mil7XHJcbiAgICAgICAgICAgIHdpZHRoOiBtYXAtZ2V0KCR2YWwyLCB3aWR0aCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogbWFwLWdldCgkdmFsMiwgaGVpZ2h0KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG1hcC1nZXQoJHZhbDIsIGhlaWdodCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IG1hcC1nZXQoJHZhbCwgcGFkZGluZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnRuLWRpc2FibGVkKCkge1xyXG4gICYuZGlzYWJsZWQge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgICBwb2ludGVyLWV2ZW50czpub25lO1xyXG4gIH1cclxufVxyXG5cclxuLy8g67KE7Yq8IOyKpO2DgOydvCDshKTsoJXtlbTso7zquLBcclxuQG1peGluIGJ1dHRvbi1zdHlsZSgkYnRuLWdyb3VwKXtcclxuICBAZWFjaCAka2V5LCAkdmFsIGluICRidG4tZ3JvdXAge1xyXG4gICAgLmJ0bi0jeyRrZXl9LFxyXG4gICAgLmJ0bi0jeyRrZXl9OnZpc2l0ZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCR2YWwsIHRoZW1lLWNvbG9yKTtcclxuICAgICAgY29sb3I6IG1hcC1nZXQoJHZhbCwgZm9udC1jb2xvcik7XHJcbiAgICAgIGJvcmRlcjogbWFwLWdldCgkdmFsLCBib3JkZXIpO1xyXG4gICAgICBib3JkZXItcmFkaXVzIDogbWFwLWdldCgkdmFsLCBib3JkZXItcmFkaXVzKTtcclxuICAgICAgQGluY2x1ZGUgaG92ZXItb24ge1xyXG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkdmFsLCBob3Zlci10aGVtZS1jb2xvcikge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOm1hcC1nZXQoJHZhbCwgaG92ZXItdGhlbWUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAZWxzZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmtlbiggbWFwLWdldCgkdmFsLCB0aGVtZS1jb2xvciksIDE1JSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkdmFsLCBob3Zlci1jb2xvcikge1xyXG4gICAgICAgICAgY29sb3I6bWFwLWdldCgkdmFsLCBob3Zlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgIGNvbG9yOm1hcC1nZXQoJHZhbCwgZm9udC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJvcmRlcjogbWFwLWdldCgkdmFsLCBob3Zlci1ib3JkZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBidG4tZGlzYWJsZWQge1xyXG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkdmFsLCBkaXNhYmxlZC1ncm91cCkge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldChtYXAtZ2V0KCR2YWwsIGRpc2FibGVkLWdyb3VwKSxkaW0tdGhlbWUtY29sb3IpO1xyXG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQobWFwLWdldCgkdmFsLCBkaXNhYmxlZC1ncm91cCksIGRpbS1jb2xvcik7XHJcbiAgICAgICAgICBvcGFjaXR5OiBtYXAtZ2V0KG1hcC1nZXQoJHZhbCwgZGlzYWJsZWQtZ3JvdXApLCBkaW0tb3BhY2l0eSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihtYXAtZ2V0KCR2YWwsIHRoZW1lLWNvbG9yKSw1MCUpOyAvLyDqsr3smrDsnZgg7IiY6rCAIOunjuyVhOynkCjslrTrkZDsmrQg67Cw6rK9b3LrsJ3snYDrsLDqsr0uLuq4gOyUqC4u65OxKVxyXG4gICAgICAgICAgb3BhY2l0eTouNjU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiBtYWtlLWNhcmQtc2V0KCRjYXJkLWluZm8pIHtcclxuICAlY2FyZC13cmFwe1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGNhcmQtaW5mbyB7XHJcbiAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XHJcbiAgICAgIEBpZiAka2V5MiA9PSBcIndyYXBcIiB7XHJcbiAgICAgICAgLmNhcmQtI3ska2V5Mn0tI3ska2V5fSB7XHJcbiAgICAgICAgICBAZXh0ZW5kICVjYXJkLXdyYXA7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCR2YWwyLCBtYXJnaW4tYm90dG9tKTtcclxuICAgICAgICAgIHBhZGRpbmc6IG1hcC1nZXQoJHZhbDIsIHBhZGRpbmcpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkdmFsMiwgYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gIG1hcC1nZXQoJHZhbDIsIGJvcmRlci1zdHlsZSkge1xyXG4gICAgICAgICAgICAjeyRrZXkzfTogI3skdmFsM307XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCR2YWwyLCBib3JkZXItcmFkaXVzKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2UgaWYgJGtleTIgPT0gXCJoZWFkZXJcIiB7XHJcbiAgICAgICAgLmNhcmQtd3JhcC0jeyRrZXl9e1xyXG4gICAgICAgICAgLmNhcmQtI3ska2V5Mn0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCR2YWwyLCBwYWRkaW5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkdmFsMiwgYmFja2dyb3VuZC1jb2xvcik7XHJcbiAgICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAgbWFwLWdldCgkdmFsMiwgYm9yZGVyLXN0eWxlKSB7XHJcbiAgICAgICAgICAgICAgI3ska2V5M306ICN7JHZhbDN9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkdmFsMiwgZm9udC1zaXplKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIC5jYXJkLXdyYXAtI3ska2V5fXtcclxuICAgICAgICAgIC5jYXJkLSN7JGtleTJ9IHtcclxuICAgICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkdmFsMiwgcGFkZGluZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHZhbDIsIGJhY2tncm91bmQtY29sb3IpO1xyXG4gICAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gIG1hcC1nZXQoJHZhbDIsIGJvcmRlci1zdHlsZSkge1xyXG4gICAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4vLyDri6Qg64KY64iE6rOgIO2VmOuCmOuhnCDtlansuZjripTqsowg7KKL7KeAIOyViuydhOq5jD8/Pz8/Pz9cclxuLy8g7IOB7IaN7J2YIOqzhOuFkOydhCDsoIHsmqntlbTslbwg7ZWY64qU6rCAPz9cclxuLy8g7IOB7IaN7J2EIOyggeyaqe2VmOuptCDsvZTrk5zqsIAg7KGw6riIIOuzteyeoe2VtOyniOuTr1xyXG4vLyDslYTsmIggd3JhcCwgaGVhZGVyLCBib2R5LCBmb290ZXIg64KY64iE64qU642Y7KeALCDsp4DquIjsspjrn7wg7LKY66as7ZWY64qU6rKMIOuCmOydhOuTr1xyXG4iLCIvLyBQYWdpbmF0aW9uXHJcbkBtaXhpbiBwYWdpbmF0aW9uLWxpbmtzKCRwYWdlLWl0ZW0pe1xyXG4gIHdpZHRoOm1hcC1nZXQoJHBhZ2UtaXRlbSwgd2lkdGgpO1xyXG4gIGhlaWdodDptYXAtZ2V0KCRwYWdlLWl0ZW0sIGhlaWdodCk7XHJcbiAgbGluZS1oZWlnaHQ6bWFwLWdldCgkcGFnZS1pdGVtLCBoZWlnaHQpOyAvLyBoZWlnaHTqsJLqs7wg64+Z7J28XHJcblxyXG4gIC8vcGFkZGluZzptYXAtZ2V0KCRwYWdlLWl0ZW0sIHBhZGRpbmcpOyAtPiDsgq3soJzsmIjsoJUg67O066WYLi5cclxuICBtYXJnaW46bWFwLWdldCgkcGFnZS1pdGVtLCBtYXJnaW4pO1xyXG5cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRwYWdlLWl0ZW0sIHRoZW1lLWNvbG9yKTtcclxuICBib3JkZXI6IG1hcC1nZXQoJHBhZ2UtaXRlbSwgYm9yZGVyKTtcclxuICBib3JkZXItcmlnaHQ6bWFwLWdldCgkcGFnZS1pdGVtLCBib3JkZXItcmlnaHQpO1xyXG5cclxuICBib3JkZXItcmFkaXVzOm1hcC1nZXQoJHBhZ2UtaXRlbSwgYm9yZGVyLXJhZGl1cyk7XHJcbiAgZm9udC1zaXplOm1hcC1nZXQoJHBhZ2UtaXRlbSwgZm9udC1zaXplKTtcclxuICBmb250LXdlaWdodDptYXAtZ2V0KCRwYWdlLWl0ZW0sIGZvbnQtd2VpZ2h0KTtcclxuICBsZXR0ZXItc3BhY2luZzptYXAtZ2V0KCRwYWdlLWl0ZW0sIGxldHRlci1zcGFjaW5nKTtcclxuICBjb2xvcjptYXAtZ2V0KCRwYWdlLWl0ZW0sIGZvbnQtY29sb3IpO1xyXG5cclxuICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICBAaWYgbWFwLWhhcy1rZXkoJHBhZ2UtaXRlbSwgaG92ZXItdGhlbWUtY29sb3IpIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjptYXAtZ2V0KCRwYWdlLWl0ZW0saG92ZXItdGhlbWUtY29sb3IpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmtlbiggbWFwLWdldCgkcGFnZS1pdGVtLCB0aGVtZS1jb2xvciksIDE1JSk7XHJcbiAgICB9XHJcbiAgICBjb2xvcjptYXAtZ2V0KCRwYWdlLWl0ZW0sIGhvdmVyLWNvbG9yKTtcclxuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkcGFnZS1pdGVtLCBob3Zlci1ib3JkZXItY29sb3IpO1xyXG4gIH1cclxuXHJcbn1cclxuLy8g7JWh7Yuw67iMIOuQoOyLnFxyXG5AbWl4aW4gcGFnaW5hdGlvbi1hY3RpdmUoJHBhZ2UtYWN0aXZlLWl0ZW0pe1xyXG4gIGJhY2tncm91bmQtY29sb3I6bWFwLWdldCgkcGFnZS1hY3RpdmUtaXRlbSwgYWN0aXZlLXRoZW1lKTtcclxuICBjb2xvcjptYXAtZ2V0KCRwYWdlLWFjdGl2ZS1pdGVtLGFjdGl2ZS1jb2xvcik7XHJcbiAgQGVhY2ggJGtleTIsICR2YWwyIGluIChtYXAtZ2V0KCRwYWdlLWFjdGl2ZS1pdGVtLGFjdGl2ZS1zdHlsZSkpe1xyXG4gICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xyXG4gIH1cclxufVxyXG4vLyDrlKQg65Cg7IucXHJcbkBtaXhpbiBwYWdpbmF0aW9uLWRpc2FibGVkKCRwYWdlLWRpc2FibGVkLWl0ZW0pe1xyXG4gIG9wYWNpdHk6bWFwLWdldCgkcGFnZS1kaXNhYmxlZC1pdGVtLCBkaW0tb3BhY2l0eSk7XHJcbiAgcG9pbnRlci1ldmVudHM6bm9uZTtcclxuICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gKG1hcC1nZXQoJHBhZ2UtZGlzYWJsZWQtaXRlbSxkaXNhYmxlZC1zdHlsZSkpe1xyXG4gICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xyXG4gIH1cclxufVxyXG5cclxuLy8g7LKY7J2MIOydtOyghCDri6TsnYwg64GdIGFycm93IOq0gOugqCDsu6TsiqTthYBcclxuQG1peGluIHBhZ2luYXRpb24tYXJyb3dzKCRwYWdlLWFycm93LXN0eWxlKSB7XHJcbiAgQGVhY2ggJGtleTIsICR2YWwyIGluICRwYWdlLWFycm93LXN0eWxlIHtcclxuICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcclxuICB9XHJcbn0iLCJAbWl4aW4gbWFrZS1mb3JtLXdyYXAoICRmb3JtLXdyYXAtaW5mbyA6ICRnX2Zvcm0td3JhcCApIHtcclxuXHRAZWFjaCAka2V5LCAkdmFsIGluICgkZm9ybS13cmFwLWluZm8pe1xyXG5cdFx0QGlmICgka2V5ID09IGRlZmF1bHRfdmFsdWUpIHtcclxuXHRcdFx0JWRlZmF1bHRfdmFsdWUge1xyXG5cdFx0XHRcdEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcclxuXHRcdFx0XHRcdCN7JGtleTJ9OiAjeyR2YWwyfTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQuZm9ybS13cmFwLSN7JGtleX0ge1xyXG5cdFx0XHRcdEBpZiAobWFwLWhhcy1rZXkoJGZvcm0td3JhcC1pbmZvLCBkZWZhdWx0X3ZhbHVlKSkge1xyXG5cdFx0XHRcdFx0QGV4dGVuZCAlZGVmYXVsdF92YWx1ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QGlmIChtYXAtaGFzLWtleSgkdmFsLCBtZWRpYSkpIHtcclxuXHRcdFx0XHRcdCRtZWRpYTogbWFwX2dldCgkdmFsLCBtZWRpYSk7XHJcblx0XHRcdFx0XHRAZWFjaCAka2V5MiwgJHZhbDIgaW4gJG1lZGlhIHtcclxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXkyKSB7XHJcblx0XHRcdFx0XHRcdFx0JGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMik7XHJcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0XHRAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbCB7XHJcblx0XHRcdFx0XHRcdCRjb2RlczogbWFrZU1hcFRvQ29kZXMoJGtleTMpO1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyAvKu2FjeyKpO2KuCDrsJXsiqQqL1xyXG5AbWl4aW4gbWFrZS1maWVsZC1kZWZhdWx0KCkge1xyXG5cdCVmaWVsZC1iYXNlIHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdG91dGxpbmU6IG5vbmU7XHJcblx0fVxyXG5cdEBlYWNoICRrZXksICR2YWwgaW4gKCRnX2ZpZWxkLXN0eWxlKSB7XHJcblx0XHQuZmllbGQtI3ska2V5fSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcclxuXHRcdC5maWVsZC0jeyRrZXl9IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcclxuXHRcdC5maWVsZC0jeyRrZXl9IGlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcblx0XHQuZmllbGQtI3ska2V5fSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXHJcblx0XHQuZmllbGQtI3ska2V5fSBzZWxlY3QsXHJcblx0XHQuZmllbGQtI3ska2V5fSB0ZXh0YXJlYXtcclxuXHRcdFx0QGV4dGVuZCAlZmllbGQtYmFzZTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1heC13aWR0aDogbWFwLWdldCgkdmFsLCBtYXgtd2lkdGgpO1xyXG5cdFx0XHRoZWlnaHQ6IG1hcC1nZXQoJHZhbCwgaW5wdXQtaGVpZ2h0KTtcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogbWFwLWdldCgkdmFsLCBtYXJnaW4tYm90dG9tKTtcclxuXHRcdFx0cGFkZGluZzogbWFwLWdldCgkdmFsLCBpbnB1dC1wYWRkaW5nKTtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkdmFsLCBpbnB1dC1iZyk7XHJcblx0XHRcdEBlYWNoICRrZXkyLCAkdmFsMiBpbiBtYXAtZ2V0KCR2YWwsIGJvcmRlci1zdHlsZSkge1xyXG5cdFx0XHRcdCN7JGtleTJ9OiAjeyR2YWwyfTtcclxuXHRcdFx0fVxyXG5cdFx0XHRmb250LXNpemU6IG1hcC1nZXQoJHZhbCwgZm9udC1zaXplKTtcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IG1hcC1nZXQoJHZhbCwgbGV0dGVyLXNwYWNpbmcpO1xyXG5cdFx0XHRjb2xvcjogbWFwLWdldCgkdmFsLCBmb250LWNvbG9yKTtcclxuXHRcdFx0QGlmIG1hcC1oYXMta2V5KCR2YWwsIGZvY3VzLXN0eWxlKSB7XHJcblx0XHRcdFx0JGZvY3VzLXN0eWxlOiBtYXAtZ2V0KCR2YWwsIGZvY3VzLXN0eWxlKTtcclxuXHRcdFx0XHRAZWFjaCAka2V5MywgJHZhbDMgaW4gJGZvY3VzLXN0eWxlIHtcclxuXHRcdFx0XHRcdCY6Zm9jdXMge1xyXG5cdFx0XHRcdFx0XHQjeyRrZXkzfSA6ICN7JHZhbDN9O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmZpZWxkLSN7JGtleX0gaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcblx0XHQuZmllbGQtI3ska2V5fSBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxyXG5cdFx0LmZpZWxkLSN7JGtleX0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxyXG5cdFx0LmZpZWxkLSN7JGtleX0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG5cdFx0LmZpZWxkLSN7JGtleX0gdGV4dGFyZWF7XHJcblx0XHRcdCY6OnBsYWNlaG9sZGVyIHtcclxuXHRcdFx0XHRjb2xvcjogbWFwLWdldCgkdmFsLCBwbGFjZWhvbGRlci1jb2xvcik7XHJcblx0XHRcdH1cclxuXHRcdFx0JjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG5cdFx0XHRcdGNvbG9yOiBtYXAtZ2V0KCR2YWwsIHBsYWNlaG9sZGVyLWNvbG9yKTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG5cdFx0XHRcdGNvbG9yOiBtYXAtZ2V0KCR2YWwsIHBsYWNlaG9sZGVyLWNvbG9yKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5maWVsZC0jeyRrZXl9Lm5vLXVuZGVybGluZSB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWFrZS10ZXh0LWFyZWEoJGtleSk7XHJcblx0XHRAaW5jbHVkZSBtYWtlLXNlbGVjdGJveCgka2V5KTtcclxuXHJcblx0fVxyXG59XHJcbkBtaXhpbiBtYWtlLXRleHQtYXJlYSgkc3R5bGUpIHtcclxuXHRAZWFjaCAka2V5LCAkdmFsIGluICgkZ190ZXh0LWFyZWEtc3R5bGUpIHtcclxuXHRcdEBpZiAoJHN0eWxlID09ICRrZXkpIHtcclxuXHRcdFx0LmZpZWxkLSN7JHN0eWxlfSB0ZXh0YXJlYXtcclxuXHRcdFx0XHRoZWlnaHQ6IG1hcC1nZXQoJHZhbCwgdGV4dC1hcmVhLWhlaWdodCk7XHJcblx0XHRcdFx0cGFkZGluZzogbWFwLWdldCgkdmFsLCB0ZXh0LWFyZWEtcGFkZGluZyk7XHJcblx0XHRcdFx0cmVzaXplOiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vLyAvKuyFgOugie2KuCDrsJXsiqQqL1xyXG5AbWl4aW4gbWFrZS1zZWxlY3Rib3goJHN0eWxlKSB7XHJcblx0QGVhY2ggJGtleSwgJHZhbCBpbiAoJGdfc2VsZWN0LXN0eWxlKSB7XHJcblx0XHRAaWYgKCRzdHlsZSA9PSAka2V5KSB7XHJcblx0XHRcdC5maWVsZC0jeyRzdHlsZX0gc2VsZWN0e1xyXG5cdFx0XHRcdCRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbCk7XHJcblx0XHRcdFx0QGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGluaXRpYWw7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8vIC8q7J2066+47KeAIOyytO2BrCAmIOudvOuUlOyYpCovXHJcbkBtaXhpbiBtYWtlLWNoZWNrYm94LWltZyggJGNoZWNrLWJveC1pbmZvOiAkZ19jaGVjay1ib3gtaW1nICkge1xyXG5cdEBlYWNoICRrZXksICR2YWwgaW4gKCRjaGVjay1ib3gtaW5mbykge1xyXG5cdFx0LmNrYngtI3ska2V5fXtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IG1hcC1nZXQoJHZhbCwgbWFyZ2luLXJpZ2h0KTtcclxuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0XHQuY3VzdG9tLWNoZWNrZWQge1xyXG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdHdpZHRoOiBtYXAtZ2V0KCR2YWwsIHdpZHRoKTtcclxuXHRcdFx0XHRoZWlnaHQ6IG1hcC1nZXQoJHZhbCwgaGVpZ2h0KTtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IG1hcC1nZXQoJHZhbCwgYm94LW1hcmdpbi1yaWdodCk7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbWFwLWdldCgkdmFsLCBib3gtaW1nKTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHJcblx0XHRcdH1cclxuXHRcdFx0LnRleHQge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0XHRmb250LXNpemU6IG1hcC1nZXQoJHZhbCwgZm9udC1zaXplKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpbnB1dCB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHQmW3R5cGU9cmFkaW9dOmNoZWNrZWQgfiAuY3VzdG9tLWNoZWNrZWQsXHJcblx0XHRcdFx0Jlt0eXBlPWNoZWNrYm94XTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IG1hcC1nZXQoJHZhbCwgYm94LWltZy1vbik7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYuZGlzYWJsZWQge1xyXG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0XHRcdGNvbG9yOiAjZWVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi8vIC8q7YOc6re4IOyytO2BrCYg652865SU7JikKi9cclxuQG1peGluIG1ha2UtY2hlY2tib3gtdGFnKCAkY2hlY2stYm94LWluZm86ICRnX2NoZWNrLWJveC10YWcgKSB7XHJcblx0QGVhY2ggJGtleSwgJHZhbCBpbiAoJGNoZWNrLWJveC1pbmZvKSB7XHJcblx0XHQvL+uzgOyImFxyXG5cdFx0JHdpZHRoOiBtYXAtZ2V0KCR2YWwsIHdpZHRoKTtcclxuXHRcdCRoZWlnaHQ6IG1hcC1nZXQoJHZhbCwgaGVpZ2h0KTtcclxuXHRcdCRib3gtbWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0JGNoZWNrLXdpZHRoOiAkd2lkdGggLyAyO1xyXG5cdFx0JGNoZWNrLWhlaWdodDogJGhlaWdodCAvIDI7XHJcblxyXG5cdFx0Ly/tlbTri7nqsJLsnbQg7J6I64qU7KeAIOyytO2BrFxyXG5cdFx0QGlmIG1hcC1oYXMta2V5KCR2YWwsIGJveC1tYXJnaW4tcmlnaHQpIHtcclxuXHRcdFx0JGJveC1tYXJnaW4tcmlnaHQ6IG1hcC1nZXQoJHZhbCwgYm94LW1hcmdpbi1yaWdodClcclxuXHRcdH1cclxuXHRcdEBpZiBtYXAtaGFzLWtleSgkdmFsLCBjaGVja2VkLXdpZHRoKSB7XHJcblx0XHRcdCRjaGVjay13aWR0aDogbWFwLWdldCgkdmFsLCBjaGVja2VkLXdpZHRoKVxyXG5cdFx0fVxyXG5cdFx0QGlmIG1hcC1oYXMta2V5KCR2YWwsIGNoZWNrZWQtaGVpZ2h0KSB7XHJcblx0XHRcdCRjaGVjay1oZWlnaHQ6IG1hcC1nZXQoJHZhbCwgY2hlY2tlZC1oZWlnaHQpXHJcblx0XHR9XHJcblx0XHQuY2tieC0jeyRrZXl9e1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogbWFwLWdldCgkdmFsLCBtYXJnaW4tcmlnaHQpO1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdG1pbi13aWR0aDogJHdpZHRoO1xyXG5cdFx0XHRtaW4taGVpZ2h0OiAkaGVpZ2h0O1xyXG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0Y29udGVudDogXCJcIjtcclxuXHRcdFx0XHR3aWR0aDogJHdpZHRoO1xyXG5cdFx0XHRcdGhlaWdodDogJGhlaWdodDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCR2YWwsIGJveC1iZyk7XHJcblx0XHRcdFx0Ym9yZGVyOiBtYXAtZ2V0KCR2YWwsIGJveC1vdXRsaW5lKTtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCR2YWwsIGJveC1yYWRpdXMpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNTAlKSwgd2Via2l0KTtcclxuXHRcdFx0fVxyXG5cdFx0XHQ+ICoge1xyXG5cdFx0XHRcdC8vIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcclxuXHRcdFx0fVxyXG5cdFx0XHQudGV4dCB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0Zm9udC1zaXplOiBtYXAtZ2V0KCR2YWwsIGZvbnQtc2l6ZSkgO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogJGJveC1tYXJnaW4tcmlnaHQgKyAkd2lkdGg7XHJcblx0XHRcdH1cclxuXHRcdFx0aW5wdXQge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0Jlt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkLFxyXG5cdFx0XHRcdCZbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCB7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0XHRcdGxlZnQ6ICgkd2lkdGggLSAkY2hlY2std2lkdGgpIC8gMiA7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0XHRcdFx0d2lkdGg6ICRjaGVjay13aWR0aDtcclxuXHRcdFx0XHRcdGhlaWdodDogJGNoZWNrLWhlaWdodDtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHZhbCwgY2hlY2tlZC1jb2xvcik7XHJcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCR2YWwsIGJveC1yYWRpdXMpO1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC01MCUpLCB3ZWJraXQpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0fVxyXG5cdFx0XHQmLmRpc2FibGVke1xyXG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0XHRcdGNvbG9yOiAjZWVlO1xyXG5cdFx0XHRcdGxhYmVsOmJlZm9yZXtcclxuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogI2VlZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5jaXJjbGU6YmVmb3JlIHtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5jaXJjbGUgaW5wdXQge1xyXG5cdFx0XHRcdCZbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCxcclxuXHRcdFx0XHQmW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgfiAuY3VzdG9tLWNoZWNrZWQge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi8vcnAtdGFibGVcclxuQG1peGluIG1ha2UtcnAtdGFibGUoJHJwLXRhYmxlLWluZm8pIHtcclxuICBAZWFjaCAka2V5LCAkdmFsIGluICgkcnAtdGFibGUtaW5mbyl7XHJcbiAgICBAaWYgKCRrZXkgPT0gZGVmYXVsdF92YWx1ZSkge1xyXG4gICAgICAlZGVmYXVsdF92YWx1ZSB7XHJcbiAgICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xyXG4gICAgICAgICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIC5ycC10YWJsZS0jeyRrZXl9IHtcclxuICAgICAgICBAaWYgKG1hcC1oYXMta2V5KCR2YWwsIG1lZGlhKSkge1xyXG4gICAgICAgICAgJG1lZGlhOiBtYXBfZ2V0KCR2YWwsIG1lZGlhKTtcclxuICAgICAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkbWVkaWEge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTIpIHtcclxuICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwyKTtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsIHtcclxuICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2Rlcygka2V5Myk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iLCIvLy8qIHRhYiAqL1xyXG5AbWl4aW4gdGFiLWl0ZW1zKCR0YWItZ3JvdXApIHtcclxuICAgIC50YWItd3JhcCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgJiAudGFiLWxpc3Qge1xyXG4gICAgICAgICAgICAvL2Zsb2F0Om1hcC1nZXQoJHRhYi1ncm91cCwgZmxvYXQpO1xyXG4gICAgICAgICAgICBkaXNwbGF5Om1hcC1nZXQoJHRhYi1ncm91cCwgZGlzcGxheSk7XHJcbiAgICAgICAgICAgIHdpZHRoOiBtYXAtZ2V0KCR0YWItZ3JvdXAsIHdpZHRoKTtcclxuICAgICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkdGFiLWdyb3VwLCBwYWRkaW5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjptYXAtZ2V0KCR0YWItZ3JvdXAsIHRoZW1lLWNvbG9yKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOm1hcC1nZXQoJHRhYi1ncm91cCwgZm9udC1zaXplKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6bWFwLWdldCgkdGFiLWdyb3VwLCBmb250LXdlaWdodCk7XHJcbiAgICAgICAgICAgIGNvbG9yOm1hcC1nZXQoJHRhYi1ncm91cCwgZm9udC1jb2xvcik7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246bWFwLWdldCgkdGFiLWdyb3VwLCB0ZXh0LWFsaWduKTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6bWFwLWdldCgkdGFiLWdyb3VwLCBsZXR0ZXItc3BhY2luZyk7XHJcblxyXG4gICAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJHRhYi1ncm91cCwgbWVkaWEpIHtcclxuICAgICAgICAgICAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiBtYXBfZ2V0KCR0YWItZ3JvdXAsIG1lZGlhKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXkyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsMntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gKG1hcC1nZXQoJHRhYi1ncm91cCwgc3ViLWNsYXNzaW5nKSl7XHJcbiAgICAgICAgICAgICYuI3ska2V5fSAudGFiLWxpc3R7XHJcbiAgICAgICAgICAgICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbHVle1xyXG4gICAgICAgICAgICAgICAgICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiAudGFiLWxpc3Qub24ge1xyXG4gICAgICAgICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gKG1hcC1nZXQoJHRhYi1ncm91cCxhY3RpdmUpKXtcclxuICAgICAgICAgICAgICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGdfdGFiLWdyb3VwLGZsb2F0KXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXIoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59IiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xyXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xyXG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG5cclxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcclxufVxyXG4iLCIvLyBtYWtlLWFyZWEg66+57Iqk7J24XHJcbi8vIOq4sOuzuOqwkuydtCBudWxs66GcIOyFi+2MheuQmOyWtCDsnojripQg7JqU7IaM64qUIOyduOyekOqwgCDsoITri6zrkJjsp4Ag7JWK7J2EIOyLnCDsu7TtjIzsnbwg65CY7KeAIOyViuyKteuLiOuLpC5cclxuLy8gW+unpOqwnOuzgOyImF1cclxuLy8gJG1heC13aWR0aCDquLDrs7jqsJI6IG51bGxcclxuLy8gJGd1dHRlci13aWR0aCDquLDrs7jqsJI6IG51bGxcclxuLy8gJHdpZHRoIOq4sOuzuOqwkjogMTAwJVxyXG4vLyBleCkgQGluY2x1ZGUgbWFrZS1hcmVhKCAkbWF4LXdpZHRoOiAkbWF4LXdpZHRoLCAkZ3V0dGVyLXdpZHRoOiAkYXJlYS1ndXR0ZXItd2lkdGggKTtcclxuLy8gZXgpIEBpbmNsdWRlIG1ha2UtYXJlYSggJHdpZHRoOiAxNjAwcHggKTtcclxuLy9AbWl4aW4gbWFrZS1hcmVhKCAkbWF4LXdpZHRoOiBudWxsLCAkZ3V0dGVyLXdpZHRoOiBudWxsLCAkd2lkdGg6IDEwMCUgKSB7XHJcbi8vICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbi8vICB3aWR0aDogJHdpZHRoO1xyXG4vLyAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xyXG4vLyAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4vLyAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbi8vICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyLXdpZHRoO1xyXG4vLyAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyLXdpZHRoO1xyXG4vL31cclxuXHJcbkBtaXhpbiBtYWtlLWFyZWEoICRhcmVhLWluZm86ICRnX2RlZmF1bHQtYXJlYSApIHtcclxuICAkd2lkdGg6IDEwMCU7XHJcbiAgQGlmICBtYXAtaGFzLWtleSgkYXJlYS1pbmZvLCB3aWR0aCkge1xyXG4gICAgJHdpZHRoIDogbWFwLWdldCgkYXJlYS1pbmZvLCB3aWR0aClcclxuICB9IEBlbHNlIHtcclxuICAgICR3aWR0aCA6IDEwMCVcclxuICB9XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAkd2lkdGg7XHJcbiAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRhcmVhLWluZm8sIG1heC13aWR0aCk7XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIHBhZGRpbmctcmlnaHQ6IG1hcC1nZXQoJGFyZWEtaW5mbywgZ3V0dGVyLXdpZHRoKTtcclxuICBwYWRkaW5nLWxlZnQ6IG1hcC1nZXQoJGFyZWEtaW5mbywgZ3V0dGVyLXdpZHRoKTtcclxufVxyXG5cclxuIiwiLy8gbWFrZS1yb3cg66+57Iqk7J24XHJcbi8vIFvrp6TqsJzrs4DsiJhdXHJcbi8vICRncmlkLWd1dHRlciDquLDrs7jqsJI6ICRncmlkLWd1dHRlci13aWR0aFxyXG4vLyAkZ3JpZC1ndXR0ZXIg7KCE64us65CcIOqwkuyXkCDrlLDrnbzshJwgbWFyZ2luLXJpZ2h0LCBtYXJnaW4tbGVmdCDqsJLsnYQg7IWL7YyF7ZW0IOykjeuLiOuLpC5cclxuLy8gZXgpIEBpbmNsdWRlIG1ha2Utcm93KCAkZ3JpZC1ndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCk7XHJcbkBtaXhpbiBtYWtlLXJvdyggJGdyaWQtZ3V0dGVyIDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyO1xyXG4gIG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyO1xyXG4gIEBpbmNsdWRlIGNsZWFyKCk7XHJcbn1cclxuXHJcbi8vIG1ha2UtY29sLXNldCDrr7nsiqTsnbhcclxuLy8gW+unpOqwnOuzgOyImF1cclxuLy8gJGdyaWQtY29sLWNudCDquLDrs7jqsJI6ICRncmlkLWNvbHVtbnNcclxuLy8gJGdyaWQtY29sLWNudCDsoITri6zrkJwg6rCS7J2YIOqwnOyImOunjO2CgeydmCBjb2wscHVsbCxwdXNoLG9mZnNldCDrk7HsnYQg66eM65Ok7Ja07KSN64uI64ukLlxyXG4vLyBleCkgQGluY2x1ZGUgbWFrZS1jb2wtc2V0KCk7XHJcbi8vIGV4KSBAaW5jbHVkZSBtYWtlLWNvbC1zZXQoJGdyaWQtY29sLWNudDogNSk7XHJcbkBtaXhpbiBtYWtlLWNvbC1zZXQoICRncmlkLWNvbC1pbmZvOiAkZ19ncmlkLWNvbC1pbmZvICkge1xyXG5cdCRncmlkLWNvbC1uYW1lOiBudWxsO1xyXG5cdEBpZiAgbWFwLWhhcy1rZXkoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLW5hbWUpIHtcclxuXHRcdCRncmlkLWNvbC1uYW1lIDogbWFwLWdldCgkZ3JpZC1jb2wtaW5mbywgZ3JpZC1jb2wtbmFtZSlcclxuXHR9IEBlbHNlIHtcclxuXHRcdCRncmlkLWNvbC1uYW1lIDogbnVsbFxyXG5cdH1cclxuICAgIEBpbmNsdWRlIG1ha2UtY29sKCBtYXAtZ2V0KCRncmlkLWNvbC1pbmZvLCBncmlkLWNvbC1jbnQpLCAkZ3JpZC1jb2wtbmFtZSApO1xyXG5cdEBpbmNsdWRlIG1ha2UtcHVsbCggbWFwLWdldCgkZ3JpZC1jb2wtaW5mbywgZ3JpZC1jb2wtY250KSwgJGdyaWQtY29sLW5hbWUgKTtcclxuXHRAaW5jbHVkZSBtYWtlLXB1c2goIG1hcC1nZXQoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLWNudCksICRncmlkLWNvbC1uYW1lICk7XHJcblx0QGluY2x1ZGUgbWFrZS1vZmZzZXQoIG1hcC1nZXQoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLWNudCksICRncmlkLWNvbC1uYW1lICk7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gbWFrZS1jb2woICRncmlkLWNvbC1jbnQ6ICRncmlkLWNvbC1jbnQsICRjb2wtbmFtZTogJGNvbC1uYW1lICkge1xyXG5cdEBlYWNoICRicmVha3BvaW50LCAkcG9pbnQgaW4gJGdfbWVkaWEtYnJlYWtwb2ludHMge1xyXG5cdFx0QGlmICRicmVha3BvaW50ID09IHhzIHtcclxuXHRcdFx0LiN7JGNvbC1uYW1lfWNvbCB7XHJcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdC4jeyRjb2wtbmFtZX1jb2wtYXV0byB7XHJcblx0XHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHRcdH07XHJcblx0XHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XHJcblx0XHRcdFx0LiN7JGNvbC1uYW1lfWNvbC0jeyRpfSB7XHJcblx0XHRcdFx0XHR3aWR0aDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fSBAZWxzZSB7XHJcblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAjeyRwb2ludH0pIHtcclxuXHRcdFx0XHQuI3skY29sLW5hbWV9Y29sLSN7JGJyZWFrcG9pbnR9IHtcclxuXHRcdFx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LiN7JGNvbC1uYW1lfWNvbC0jeyRicmVha3BvaW50fS1hdXRvIHtcclxuXHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHRcdH07XHJcblx0XHRcdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2wtY250IHtcclxuXHRcdFx0XHRcdC4jeyRjb2wtbmFtZX1jb2wtI3skYnJlYWtwb2ludH0tI3skaX0ge1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1ha2UtcHVsbCggJGdyaWQtY29sLWNudDogJGdyaWQtY29sLWNudCwgJGNvbC1uYW1lOiAkY29sLW5hbWUgKSB7XHJcblx0QGVhY2ggJGJyZWFrcG9pbnQsICRwb2ludCBpbiAkZ19tZWRpYS1icmVha3BvaW50cyB7XHJcblx0XHRAaWYgJGJyZWFrcG9pbnQgPT0geHMge1xyXG5cdFx0XHQuI3skY29sLW5hbWV9cHVsbC0wIHtcclxuXHRcdFx0XHRyaWdodDogYXV0bztcclxuXHRcdFx0fVxyXG5cdFx0XHRAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xyXG5cdFx0XHRcdC4jeyRjb2wtbmFtZX1wdWxsLSN7JGl9IHtcclxuXHRcdFx0XHRcdHJpZ2h0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7JHBvaW50fSkge1xyXG5cdFx0XHRcdC4jeyRjb2wtbmFtZX1wdWxsLSN7JGJyZWFrcG9pbnR9LTAge1xyXG5cdFx0XHRcdFx0cmlnaHQ6IGF1dG87XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XHJcblx0XHRcdFx0XHQuI3skY29sLW5hbWV9cHVsbC0jeyRicmVha3BvaW50fS0jeyRpfSB7XHJcblx0XHRcdFx0XHRcdHJpZ2h0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gbWFrZS1wdXNoKCAkZ3JpZC1jb2wtY250OiAkZ3JpZC1jb2wtY250LCAkY29sLW5hbWU6ICRjb2wtbmFtZSApIHtcclxuXHRAZWFjaCAkYnJlYWtwb2ludCwgJHBvaW50IGluICRnX21lZGlhLWJyZWFrcG9pbnRzIHtcclxuXHRcdEBpZiAkYnJlYWtwb2ludCA9PSB4cyB7XHJcblx0XHRcdC4jeyRjb2wtbmFtZX1wdXNoLTAge1xyXG5cdFx0XHRcdGxlZnQ6IGF1dG87XHJcblx0XHRcdH1cclxuXHRcdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2wtY250IHtcclxuXHRcdFx0XHQuI3skY29sLW5hbWV9cHVzaC0jeyRpfSB7XHJcblx0XHRcdFx0XHRsZWZ0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7JHBvaW50fSkge1xyXG5cdFx0XHRcdC4jeyRjb2wtbmFtZX1wdXNoLSN7JGJyZWFrcG9pbnR9LTAge1xyXG5cdFx0XHRcdFx0bGVmdDogYXV0bztcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2wtY250IHtcclxuXHRcdFx0XHRcdC4jeyRjb2wtbmFtZX1wdXNoLSN7JGJyZWFrcG9pbnR9LSN7JGl9IHtcclxuXHRcdFx0XHRcdFx0bGVmdDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1ha2Utb2Zmc2V0KCAkZ3JpZC1jb2wtY250OiAkZ3JpZC1jb2x1bW5zLCAkY29sLW5hbWU6ICRjb2wtbmFtZSApIHtcclxuXHRAZWFjaCAkYnJlYWtwb2ludCwgJHBvaW50IGluICRnX21lZGlhLWJyZWFrcG9pbnRzIHtcclxuXHRcdCRwb2ludDogbWVkaWEtcXVlcnktbWluLXZhbCgkYnJlYWtwb2ludCk7XHJcblx0XHRAaWYgJGJyZWFrcG9pbnQgPT0geHMge1xyXG5cdFx0XHRAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQgLSAxIHtcclxuXHRcdFx0XHQuI3skY29sLW5hbWV9b2Zmc2V0LSN7JGl9IHtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7JHBvaW50fSkge1xyXG5cdFx0XHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCAtIDEge1xyXG5cdFx0XHRcdFx0LiN7JGNvbC1uYW1lfW9mZnNldC0jeyRicmVha3BvaW50fS0jeyRpfSB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgICAgICDsg4Htkogg66as7Iqk7Yq4IO2OmOydtOyngFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuJXRhYmxlLWFyZWEge1xyXG4gIG1heC13aWR0aDogMTIwMnB4O1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gIHBhZGRpbmctbGVmdDogMjVweDtcclxufVxyXG5cclxuYm9keS5maWx0ZXItYWN0aXZlIC5idG5QbGF5VHJpZ2dlciB7XHJcblx0ZGlzcGxheSA6bm9uZTtcclxufVxyXG5cclxuLyrsg4HtkojrpqzsiqTtirgg7Y6Y7J207KeAIOugiOydtOyVhOybgyovXHJcbiNnb29kcy1saXN0cy1ib2R5ICNwYWdlLWNvbnRlbnQtd3JhcHBlcntcclxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xyXG4gICAgcGFkZGluZy10b3A6IDg2cHg7XHJcbiAgfVxyXG4gIC5icmVhZC1jcnVtYntcclxuICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xyXG4gICAgICBtYXJnaW4tdG9wOiA5MHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmdvb2RzLWZpbHRlci13cmFwIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICB6LWluZGV4OiA1MDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBhbmltYXRpb246IHNsaWRlRG93bkFuaW1hdGlvbiAuOHMgMS44cyBmb3J3YXJkcztcclxuICAuZmlsdGVyLWFjdGl2ZSAmIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5maWx0ZXItdGV4dC13cmFwIHtcclxuICAgIGhlaWdodDogNjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTllOWU5O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWU5ZTk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcclxuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgIH1cclxuICAgIC5maWx0ZXItdGV4dC13cmFwLWlubmVye1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBAZXh0ZW5kICV0YWJsZS1hcmVhO1xyXG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gICAgICAmID4gKntcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIH1cclxuICAgICAgLmljb24td3JhcHtcclxuICAgICAgICB3aWR0aDogMjJweDtcclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IDEuNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudGl0bGV7XHJcbiAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBodG1sW2xhbmcqPVwiZW5cIl0gJiB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaHRtbFtsYW5nKj1cImpwXCJdICYge1xyXG4gICAgICAgICAgd2lkdGg6IDEzMHB4O1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGh0bWxbbGFuZyo9XCJjaFwiXSAmIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuc2VyYWNoLXRleHR7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xyXG4gICAgICAgIGNvbG9yOiAjOTk5O1xyXG4gICAgICAgIGh0bWxbbGFuZyo9XCJlblwiXSAmIHtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBodG1sW2xhbmcqPVwianBcIl0gJiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaHRtbFtsYW5nKj1cImNoXCJdICYge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IFxyXG4gICAgfVxyXG4gIH1cclxuICAuZmlsdGVyLW9wdGlvbi13cmFwe1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjE1cHgpO1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAubGlzdHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEyMDJweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICAgIH1cclxuICAgICAgLnRpdGxle1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1yb2JvdG87XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgaHRtbFtsYW5nKj1cImVuXCJdICYge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXJvYm90bztcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBodG1sW2xhbmcqPVwianBcIl0gJiB7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtanA7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaHRtbFtsYW5nKj1cImNoXCJdICYge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNoO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xyXG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgICAgIHdpZHRoOiAzMzBweDtcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UxZTFlMTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLm9wdGlvbnMtd3JhcCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogNjBweDtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4IDIycHggMTVweCAyMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmYyZjI7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XHJcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNTRweCk7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTFlMWUxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5maWx0ZXItYnRuLXdyYXB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmJiO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcclxuICAgICAgcGFkZGluZzogMzBweCAwO1xyXG4gICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG4gICAgLmJ0bi1jb21tb257XHJcbiAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuUmVzZXR7XHJcbiAgICAgIC5pY29ue1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDFweDtcclxuICAgICAgICBsZWZ0OiAycHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzLy9nb29kcy9pY29uX2ZpbHRlcl9yZXNldC5wbmcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuRmlsdGVyQ2xvc2V7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcclxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL2dvb2RzL2J0bl9maWx0ZXJfY2xvc2UucG5nKTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xyXG4gICAgfVxyXG4gIH1cclxuICAuYnRuRmlsdGVyVHJpZ2dlcntcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogLTI1cHg7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB3aWR0aDogOTFweDtcclxuICAgIGhlaWdodDogMjZweDtcclxuICAgIGJhY2tncm91bmQ6IHVybCgvdmlld3MvcmVzL2ltZ3MvZ29vZHMvaW1nX2ZpbHRlcl90cmlnZ2VyLnBuZykgbm8tcmVwZWF0IDUwJTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgei1pbmRleDogNTA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcclxuICAgICAgYm90dG9tOiAtMzNweDtcclxuICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmdvb2RzLWxpc3Qtc2VjdGlvbntcclxuICAuZ29vZHMtbGlzdC1ib2R5LXdyYXB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTU4cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNzVweDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxNjVweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufSBcclxuLyrsg4HtkojrpqzsiqTtirgg7Y6Y7J207KeAIOyDge2SiCDrpqzsiqTtirgg67Cw6rK9IOyEpOyglSovXHJcbi5nb29kcy1saXN0LWJne1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLmdvb2RzLWNudC10aXRsZXtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiAyMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xyXG4gIGNvbG9yOiAjMTExO1xyXG4gIGh0bWxbbGFuZyo9XCJlblwiXSAmIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1yb2JvdG87XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICB9XHJcbiAgaHRtbFtsYW5nKj1cImpwXCJdICYge1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LWpwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgfVxyXG4gIGh0bWxbbGFuZyo9XCJjaFwiXSAmIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jaDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gIH1cclxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gIH1cclxuICAmOmJlZm9yZXtcclxuICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgaGVpZ2h0OiAzcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ19wb2ludC10aGVtZS1jb2xvcjtcclxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XHJcbiAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICBoZWlnaHQ6IDRweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLyrsg4Htkogg66as7Iqk7Yq4Ki9cclxuLmdvb2RzLWxpc3Qtd3JhcHtcclxuICBtYXJnaW46IDA7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xyXG4gICAgbWFyZ2luOiAwIC0xMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbiAgLyrsg4Htkogg66as7Iqk7Yq4IOqwhOqyqeyhsOygiCovXHJcbiAgW2NsYXNzKj1cImNvbC1cIl0ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgLyrsg4Htkogg66as7Iqk7Yq4IOyDge2SiCDsl4bsnYwqL1xyXG4gICAgJi5ub25lLWxpc3R7XHJcbiAgICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgY29sb3I6Izk5OTtcclxuICAgIH1cclxuICB9XHJcbiAgLmxpc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLyrsg4Htkogg66as7Iqk7Yq4IOydtOuvuOyngCovXHJcbiAgICAvKiDsiqzrnbzsnbTrk5wg7J2066+47KeAIO2UjOufrOq3uOyduCAqL1xyXG4gICAgLnRpbHRlcl9fZmlndXJlIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwZXJzcGVjdGl2ZTogNTAwMHB4O1xyXG4gICAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNSU7XHJcbiAgICAgICAgICBsZWZ0OiA1JTtcclxuICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDkwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDczJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgvdmlld3MvcmVzL2ltZ3MvZ29vZHMvYmdfb3ZlcmxheV9saXN0cy5wbmcpIG5vLXJlcGVhdCA1MCU7O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmltYWdlLXdyYXAge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogOXB4IDEzcHggNTRweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xyXG4gICAgICAtbW96LWJveC1zaGFkb3c6IDlweCAxM3B4IDU0cHggMHB4IHJnYmEoMCwwLDAsMC4yKTtcclxuICAgICAgYm94LXNoYWRvdzogOXB4IDEzcHggNTRweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLmltZ3tcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTYuNiU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyrsg4Htkogg66as7Iqk7Yq4IO2FjeyKpO2KuCDsmIHsl60qL1xyXG4gICAgLnRleHQtd3JhcHtcclxuICAgICAgaGVpZ2h0OiAxMDJweDtcclxuICAgICAgcGFkZGluZzoyMHB4IDA7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcm9ib3RvO1xyXG4gICAgICBodG1sW2xhbmcqPVwiZW5cIl0gJiB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXJvYm90bztcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgfVxyXG4gICAgICBodG1sW2xhbmcqPVwianBcIl0gJiB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWpwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIGh0bWxbbGFuZyo9XCJjaFwiXSAmIHtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtY2g7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiA4NXB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooNTBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDUwcHgpO1xyXG4gICAgICB9XHJcbiAgICAgIC8q7IOB7ZKIIOumrOyKpO2KuCDshJzruIwg7YOA7J207YuAKi9cclxuICAgICAgLmNhdGV7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwZW07XHJcbiAgICAgICAgY29sb3I6ICM1NTU7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC8q7IOB7ZKIIOumrOyKpO2KuCDtg4DsnbTti4AqL1xyXG4gICAgICAudGl0bGV7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ub3RvO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xyXG4gICAgICAgIGNvbG9yOiMwMDA7XHJcbiAgICAgICAgaHRtbFtsYW5nKj1cImVuXCJdICYge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXJvYm90bztcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBodG1sW2xhbmcqPVwianBcIl0gJiB7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtanA7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaHRtbFtsYW5nKj1cImNoXCJdICYge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNoO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC8q7IOB7ZKIIOumrOyKpO2KuCDshJzruIwg7YOA7J207YuAKi9cclxuICAgICAgLnN1Yi10aXRsZXtcclxuICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDBlbTtcclxuICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgIGNvbG9yOiAjNzI3MjcyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0bi1wbGF5LWNvbW1vbntcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVaKDUwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVooNTBweCk7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xyXG4gICAgICAgIGxlZnQ6IDMwcHg7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGJvdHRvbTogMzBweDtcclxuICAgICAgICB3aWR0aDogMzhweDtcclxuICAgICAgICBoZWlnaHQ6IDM4cHg7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVaKDUwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVooNTBweCk7XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNXB4O1xyXG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiA1LjVweCAwIDUuNXB4IDZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICBjb250ZW50OlwiUGxheSB2aWRlb1wiO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgbGVmdDogNTBweDtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogNzBweDtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXJvYm90bztcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgaHRtbFtsYW5nKj1cImVuXCJdICYge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcm9ib3RvO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGh0bWxbbGFuZyo9XCJqcFwiXSAmIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWpwO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGh0bWxbbGFuZyo9XCJjaFwiXSAmIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWNoO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLypjb21tb24tc2VhcmNoZXIqL1xyXG4uY29tbW9uLXNlYXJjaGVyIC5zZWFyY2gtZm9ybSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXNpemU6IDA7XHJcbn1cclxuXHJcbi5jb21tb24tc2VhcmNoZXIgLnNlYXJjaC1mb3JtID4gKiB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGhlaWdodDogNDVweDtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gaW5wdXQge1xyXG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyN3B4KTtcclxuICBwYWRkaW5nLWxlZnQ6IDdweDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuICBjb2xvcjogIzk5OTtcclxufVxyXG5cclxuLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gYnV0dG9uIHtcclxuICB3aWR0aDogMjdweDtcclxuICBoZWlnaHQ6IDQzcHg7XHJcbiAgYmFja2dyb3VuZDogdXJsKC92aWV3cy9yZXMvaW1ncy9ib2FyZC9pY29uX3NlYXJjaC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0NHB4KSB7XHJcbiAgLyo9PT09PT09PT096rO17Ya1IOqygOyDie2PvD09PT09PT09PSovXHJcbiAgLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gc2VsZWN0IHtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIHdpZHRoOiAxMjBweDtcclxuICB9XHJcbiAgLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gLnNlbGVjdDphZnRlciB7XHJcbiAgICByaWdodDogMTNweDtcclxuICAgIHRvcDogMjNweDtcclxuICB9XHJcbiAgLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gPiAqIHtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgLyo9PT09PT09PT096rO17Ya1IOqygOyDie2PvD09PT09PT09PSovXHJcbiAgLmNvbW1vbi1zZWFyY2hlciB7XHJcbiAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAvLyB0b3A6IDA7XHJcbiAgICAvLyByaWdodDogMjVweDtcclxuICAgIC8vIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuICAuY29tbW9uLXNlYXJjaGVyIC5zZWFyY2gtZm9ybSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbiAgLmNvbW1vbi1zZWFyY2hlciAuc2VhcmNoLWZvcm0gaW5wdXQge1xyXG4gICAgd2lkdGg6IDM0NXB4O1xyXG4gIH1cclxufSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FxQkFBOzttREFFbUQ7QUEwQm5ELEFBekJBLGtCQXlCa0IsQ0FhaEIsaUJBQWlCLENBVWYsdUJBQXVCLENBaERmO0VBQ1YsU0FBUyxFQUFFLE1BQU07RUFDakIsWUFBWSxFQUFFLElBQUk7RUFDbEIsV0FBVyxFQUFFLElBQUk7RUFDakIsYUFBYSxFQUFFLElB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 */
