@charset "UTF-8";
/*=================================================
            바디(거의 고정형 공통)
=================================================*/
body {
  position: relative;
  font-family: "Noto Sans KR", sans-serif;
  min-width: 320px;
}

html.bottom-sheet-open,
html.modal-open,
body.bottom-sheet-open {
  overflow: hidden;
}

.m-nav-open body {
  position: fixed;
  width: 100%;
}

body.modal-open {
  padding-right: 0 !important;
}

/*=================================================
            공통 레이아웃 (고정형 공통)
=================================================*/
#page-content-wrapper {
  position: relative;
}

@media screen and (min-width: 992px) {
  #page-content-wrapper {
    min-height: 800px;
  }
}

/*=================================================
        서브페이지 공통 레이아웃
=================================================*/
.sub-article-wrap {
  padding-top: 75px;
  padding-bottom: 75px;
}

@media screen and (min-width: 992px) {
  .sub-article-wrap {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.sub-top {
  position: relative;
  height: 430px;
  /*패랠럭스 효과*/
}

.sub-top[data-slide="slide"] {
  overflow: hidden;
}

.sub-top[data-slide="slide"] ~ * {
  position: relative;
  background-color: #fff;
}

.sub-top .bg-overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #000;
  z-index: 0;
}

.sub-top .sub-top-image .img-bg {
  height: 430px;
  background-position: 50%;
  background-size: cover;
}

.sub-top .sub-top-inner {
  position: absolute;
  width: 100%;
  top: 55%;
  left: 0;
  padding: 0 15px;
  color: #fff;
  text-align: center;
  word-break: keep-all;
  transform: translateY(-50%);
}

.sub-top .sub-top-text {
  line-height: 3.1;
  font-family: "Lato", sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.sub-top .sub-top-title {
  line-height: 1.37;
  font-size: 40px;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 768px) {
  .sub-top .sub-top-title {
    font-size: 45px;
  }
}

.sub-top [data-scroll='bgParallax'] {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  will-change: transform;
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-transition: transform 0s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-backface-visibility: hidden;
  z-index: -100;
}

.sub-tab-wrap {
  position: relative;
  height: 70px;
}

@media screen and (min-width: 768px) {
  .sub-tab-wrap {
    height: 65px;
  }
}

.sub-tab-wrap:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50px;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .sub-tab-wrap:before {
    height: 65px;
  }
}

.sub-tab-wrap.fixed-top:before {
  position: fixed;
  z-index: 100;
}

.sub-tab {
  position: relative;
  height: 70px;
  margin: 0 auto;
  overflow-y: hidden;
  overflow-x: auto;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .sub-tab {
    height: 65px;
    overflow: hidden;
  }
}

.fixed-top .sub-tab {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

.sub-tab .tab-list-wrap {
  display: inline-flex;
}

@media screen and (min-width: 768px) {
  .sub-tab .tab-list-wrap {
    display: flex;
    justify-content: center;
  }
}

.sub-tab .tab-list-wrap .list {
  flex: 0 0 auto;
  padding: 0 15px;
  font-size: 13px;
  font-family: "Noto Sans KR", sans-serif;
  color: #666;
}

@media screen and (min-width: 768px) {
  .sub-tab .tab-list-wrap .list {
    flex-shrink: 1;
    font-size: 15px;
  }
}

@media screen and (min-width: 992px) {
  .sub-tab .tab-list-wrap .list {
    flex-basis: 150px;
    padding: 0 5px;
    font-size: 17px;
  }
}

.sub-tab .tab-list-wrap .list:hover {
  color: #1b458e;
}

.sub-tab .tab-list-wrap .list.on {
  position: relative;
  color: #1b458e;
  font-weight: 500;
}

.sub-tab .tab-list-wrap .list.on a {
  position: relative;
}

.sub-tab .tab-list-wrap .list.on a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #1b458e;
  z-index: 200;
}

@media screen and (min-width: 768px) {
  .sub-tab .tab-list-wrap .list.on a:after {
    bottom: -1px;
  }
}

.sub-tab .tab-list-wrap .list a {
  display: block;
  padding: 18px 5px;
}

@media screen and (min-width: 768px) {
  .sub-tab .tab-list-wrap .list a {
    padding: 24px 10px;
  }
}

@media screen and (min-width: 992px) {
  .sub-tab .tab-list-wrap .list a {
    padding: 22px 10px 23px;
  }
}

/*=================================================
        타이틀 설정
=================================================*/
.common-title-wrap {
  margin-bottom: 28px;
  word-break: keep-all;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .common-title-wrap {
    margin-bottom: 48px;
  }
}

.common-title-wrap .title {
  position: relative;
  line-height: 1.67;
  padding-top: 10px;
  font-size: 28px;
  font-family: "Noto Sans KR", sans-serif;
  font-weight: 400;
  color: #000;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 768px) {
  .common-title-wrap .title {
    font-size: 37px;
  }
}

.common-title-wrap .title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 40px;
  height: 2px;
  background: #1b458e;
  background: -moz-linear-gradient(left, #1b458e 0%, #00aeef 100%);
  background: -webkit-linear-gradient(left, #1b458e 0%, #00aeef 100%);
  background: linear-gradient(to right, #1b458e 0%, #00aeef 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='$g_point-theme-color2', endColorstr='$g_point-font-color', GradientType=1);
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .common-title-wrap .title::before {
    width: 50px;
  }
}

.common-title-wrap .sub-title {
  line-height: 1.66;
  margin-top: 3px;
  font-size: 16px;
  font-family: "Noto Sans KR", sans-serif;
  font-weight: 300;
  color: #666;
}

@media screen and (min-width: 768px) {
  .common-title-wrap .sub-title {
    line-height: 1.68;
    margin-top: 10px;
  }
}

/*=================================================
        서브페이지타이틀 설정
=================================================*/
.common-sub-title-wrap {
  line-height: 1.66;
  margin-bottom: 25px;
}

@media screen and (min-width: 768px) {
  .common-sub-title-wrap {
    margin-bottom: 55px;
  }
}

.common-sub-title-wrap .title {
  margin-bottom: 6px;
  font-family: "Noto Sans KR", sans-serif;
  font-size: 21px;
  color: #000;
}

@media screen and (min-width: 768px) {
  .common-sub-title-wrap .title {
    font-size: 24px;
  }
}

.common-sub-title-wrap .sub-title {
  font-family: "Noto Sans KR", sans-serif;
  font-size: 15px;
  color: #666;
}

/*=================================================
        푸터
=================================================*/
footer {
  position: relative;
  width: 100%;
  background-color: #202020;
  font-size: 13px;
  color: #aaa;
}

footer .footer-top-wrap {
  padding-top: 40px;
  font-size: 12px;
}

@media screen and (min-width: 544px) {
  footer .footer-top-wrap {
    font-size: 14px;
  }
}

@media screen and (min-width: 768px) {
  footer .footer-top-wrap {
    display: flex;
    align-items: center;
    padding-top: 58px;
    font-size: 15px;
  }
}

footer .footer-top-wrap .footer-logo {
  display: block;
  width: 103px;
  margin-bottom: 18px;
}

@media screen and (min-width: 768px) {
  footer .footer-top-wrap .footer-logo {
    display: inline-block;
    margin-right: 20px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  footer .footer-top-wrap ul {
    flex: 1 1 0px;
  }
}

footer .footer-top-wrap ul li {
  display: inline-block;
  padding-right: 20px;
}

footer .footer-top-wrap ul li:first-child {
  color: #fff;
}

footer .footer-bottom-wrap {
  padding-bottom: 40px;
  font-weight: 300;
}

@media screen and (min-width: 768px) {
  footer .footer-bottom-wrap {
    padding-bottom: 58px;
  }
}

footer .footer-bottom-wrap:before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  margin: 20px 0;
  background-color: #555;
}

@media screen and (min-width: 768px) {
  footer .footer-bottom-wrap:before {
    margin: 30px 0;
  }
}

footer .footer-bottom-wrap ul li {
  line-height: 1.33;
  margin-bottom: 7px;
  margin-right: 10px;
}

@media screen and (min-width: 768px) {
  footer .footer-bottom-wrap ul li {
    display: inline-block;
  }
  footer .footer-bottom-wrap ul li:first-child {
    display: block;
  }
}

footer .copyright {
  margin-top: 30px;
  font-family: "Lato", sans-serif;
  font-weight: 300;
}

@media screen and (min-width: 768px) {
  footer .copyright {
    margin-top: 15px;
  }
}

.sub-bottom-wrap {
  position: relative;
  width: 100%;
  height: 330px;
  background-image: url(/views/res/imgs/common/bg_sub_bottom_m.jpg);
}

@media screen and (min-width: 768px) {
  .sub-bottom-wrap {
    background-image: url(/views/res/imgs/common/bg_sub_bottom.jpg);
  }
}

@media screen and (min-width: 992px) {
  .sub-bottom-wrap {
    height: 400px;
  }
}

.sub-bottom-wrap .inner-content {
  display: flex;
  height: 100%;
  padding-top: 0 !important;
  align-items: center !important;
}

.sub-bottom-wrap .title {
  margin-bottom: 12px;
  line-height: 1.47;
  font-size: 23px;
  color: #fff;
}

@media screen and (min-width: 992px) {
  .sub-bottom-wrap .title {
    font-size: 30px;
    line-height: 1.4;
  }
}

.sub-bottom-wrap .desc {
  font-size: 14px;
  letter-spacing: 0;
  color: #bbb;
  line-height: 1.57;
}

@media screen and (min-width: 992px) {
  .sub-bottom-wrap .desc {
    font-size: 17px;
  }
}

/*=================================================
    btn-go-top
=================================================*/
footer .btn-go-top {
  display: none;
  position: fixed;
  overflow: hidden;
  right: 20px;
  bottom: 15px;
  width: 55px;
  height: 55px;
  padding: 0;
  border-radius: 0;
  background-color: rgba(0, 0, 0, 0.4);
  background-image: url(/views/res/imgs/common/footer_btntop_icon.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px 20px;
  outline: none;
  -webkit-appearance: none;
  cursor: pointer;
  transition: background-color 1s;
  -webkit-transition: background-color 1s;
  z-index: 1;
}

footer .btn-go-top.bottom-fixed {
  position: absolute;
  top: -70px;
}

@media screen and (min-width: 992px) {
  footer .btn-go-top.bottom-fixed {
    top: -75px;
  }
}

@media screen and (min-width: 1330px) {
  footer .btn-go-top {
    right: 50px;
  }
}

/*=================================================
            퀵메뉴
=================================================*/
.quick-menu {
  position: absolute;
  right: 0;
  top: 100px;
  width: 90px;
  z-index: 600;
  border: 1px solid #e1e1e1;
  background-color: #fff;
  text-align: center;
  -webkit-transition: transform 0.6s;
  transition: transform 0.6s;
  -webkit-transform: translateX(90px);
  transform: translateX(90px);
}

.quick-menu.open {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.quick-menu .btn-toggle {
  position: absolute;
  top: -1px;
  left: -41px;
  width: 40px;
  height: 70px;
  line-height: 70px;
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-right: none;
  cursor: pointer;
}

.quick-menu .btn-toggle i {
  font-size: 28px;
  -webkit-transition: transform 0.6s;
  transition: transform 0.6s;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.quick-menu.open .btn-toggle i {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.quick-menu .quick-menu-header {
  padding: 20px 0;
  font-size: 14px;
  letter-spacing: -0.02em;
}

.quick-menu .quick-menu-body {
  min-height: 150px;
  padding: 0 4px;
}

.quick-menu .quick-menu-body a {
  display: block;
  width: 80px;
  height: 78px;
  margin-top: 4px;
  border: 1px solid #e1e1e1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50%;
}

.quick-menu .quick-menu-body a:first-child {
  margin-top: 0;
}

.quick-menu .quick-menu-footer a {
  position: relative;
  display: block;
  padding: 14px 0;
  font-size: 14px;
  letter-spacing: -0.02em;
}

.quick-menu .quick-menu-footer a:after {
  position: absolute;
  top: 10px;
  left: 50%;
  display: block;
  margin-left: -3px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #333;
  content: "";
}

.stalker-menu.fixed {
  position: fixed;
}

/*=================================================
약관/ 개인정보처리/ 개인정보수집 모달 스타일 커스텀
=================================================*/
[id*='modal-info'] .modal-content {
  padding: 40px 20px;
}

[id*='modal-info'] .modal-content > * {
  line-height: 20px;
  font-size: 13px;
}

[id*='modal-info'] .modal-content h3 {
  font-size: 20px;
}

[id*='modal-info'] .modal-content ul {
  padding-left: 10px;
}

[id*='modal-info'] .modal-content p,
[id*='modal-info'] .modal-content li {
  padding-top: 10px;
}

[id*='modal-info'] .modal-content table {
  margin: 10px;
  border: 1px #ddd solid;
}

[id*='modal-info'] .modal-content table th,
[id*='modal-info'] .modal-content table td {
  padding: 8px 20px;
  line-height: 30px;
  border-top: 1px #eee solid;
}

[id*='modal-info'] .modal-content table tr:first-child th,
[id*='modal-info'] .modal-content table tr:first-child td {
  border-top: 0;
}

[id*='modal-info'] .modal-content .btn-close {
  position: absolute;
  top: 40px;
  right: 25px;
  width: 20px;
  height: 20px;
  line-height: initial;
  border: 0;
  outline: 0;
  background-color: transparent;
  background-image: url(/views/res/imgs/modal/popup_close_btn.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

/*=================================================
  영상 모달
=================================================*/
#video-modal {
  padding-right: 0 !important;
}

#video-modal .modal-dialog {
  display: table;
  min-height: 100%;
  width: 100%;
  margin: 0;
}

#video-modal .modal-content {
  width: 100%;
  display: table-cell;
  vertical-align: middle;
  background-color: rgba(0, 0, 0, 0.8);
  border: none;
  border-radius: 0;
  text-align: center;
}

#video-modal .modal-content .video-title {
  margin-bottom: 30px;
  font-size: 18px;
  font-family: "Noto Sans KR", sans-serif;
  font-weight: 500;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 992px) {
  #video-modal .modal-content .video-title {
    font-size: 25px;
  }
}

#video-modal .modal-content .video {
  width: 100% !important;
  max-width: 1150px;
  margin: 0 auto;
}

#video-modal .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(/views/res/imgs/modal/popup_close_btn.svg);
}

@media screen and (min-width: 992px) {
  #video-modal .btn-close {
    width: 120px;
    height: 120px;
  }
}

/*=================================================
                 팝업
=================================================*/
[id*='popup_'] {
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
}

@media screen and (max-width: 768px) {
  [id*='popup_'] {
    top: 50px !important;
    left: 50% !important;
    transform: translateX(-50%);
    width: 95% !important;
  }
  [id*='popup_'] .bg {
    width: 100% !important;
  }
}

[id*='popup_'].fadeIn {
  opacity: 0;
}

[id*='popup_'] .popup-bottom-wrap {
  background-color: rgba(255, 255, 255, 0.8);
  color: #777;
}

[id*='popup_'] .popup-bottom-wrap .btn {
  background-color: transparent;
}

[id*='popup_'] .popup-bottom-wrap .btn:hover {
  color: inherit;
}

[id*='popup_'] .popup-bottom-wrap .btn-popup {
  padding: 0 30px;
  width: 50%;
  max-width: none;
}

/*=================================================
            윈도우 팝업
=================================================*/
.window-popup-wrap .window-popup {
  width: 100%;
  background-color: #fff;
}

.window-popup-wrap .window-popup .area {
  padding: 50px 17px;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .window-popup-wrap .window-popup .area {
    padding-left: 36px;
    padding-right: 36px;
  }
}

.window-popup-wrap .window-popup .window-popup-header {
  margin-bottom: 40px;
}

.window-popup-wrap .window-popup .window-popup-header .logo-img {
  margin-bottom: 8px;
  padding: 12px 0;
}

.window-popup-wrap .window-popup .window-popup-header .title-wrap .title {
  margin-bottom: 8px;
  line-height: 1.4;
  font-size: 24px;
  color: #222;
}

.window-popup-wrap .window-popup .window-popup-header .title-wrap .desc {
  margin-bottom: 32px;
  line-height: 1.66;
  font-size: 15px;
  color: #666;
}

.window-popup-wrap .window-popup .window-popup-body .field-style4 .row {
  margin: 0 -5px;
}

@media screen and (min-width: 768px) {
  .window-popup-wrap .window-popup .window-popup-body .field-style4 .row {
    margin: 0 -10px;
  }
}

.window-popup-wrap .window-popup .window-popup-body .field-style4 .row [class*="col-"] {
  padding: 0 5px;
}

@media screen and (min-width: 768px) {
  .window-popup-wrap .window-popup .window-popup-body .field-style4 .row [class*="col-"] {
    padding: 0 10px;
  }
}

.window-popup-wrap .window-popup .window-popup-body .field-style4 .row .form-title.focus {
  color: #1b458e;
}

.window-popup-wrap .window-popup .window-popup-body .field-style4 .row .input_default:focus {
  border-color: #1b458e;
  outline: none;
}

.window-popup-wrap .window-popup .window-popup-bottom {
  margin-top: 40px;
}

/*=================================================
    프로젝트 공통 알림 팝업 커스텀
=================================================*/
#alert_modal {
  z-index: 1500;
}

.alert-modal {
  padding: 0 15px !important;
}

.alert-modal .modal-dialog {
  width: 100%;
  max-width: 470px;
  margin: 10px auto;
}

.alert-modal .modal-dialog.modal-lg {
  max-width: 560px;
}

.alert-modal .modal-content {
  padding: 0;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.alert-modal .modal-header {
  position: relative;
  height: 69px;
  padding: 25px 20px 18px;
  border-bottom: 0;
  font-size: 15px;
  color: #000;
}

@media screen and (min-width: 992px) {
  .alert-modal .modal-header {
    height: 88px;
    padding: 36px 50px 26px;
  }
}

.alert-modal .modal-header .modal-title {
  line-height: 1.73;
  font-size: 15px;
  font-weight: 500;
}

.alert-modal .modal-body {
  padding: 0 20px 30px;
  font-size: 15px;
  text-align: center;
}

@media screen and (min-width: 992px) {
  .alert-modal .modal-body {
    padding: 0 50px 40px !important;
  }
}

.alert-modal .modal-footer {
  border: 0;
  padding: 0 20px 30px;
  text-align: center;
}

@media screen and (min-width: 992px) {
  .alert-modal .modal-footer {
    padding-bottom: 40px;
  }
}

.alert-modal .btn-close {
  position: absolute;
  top: 56%;
  right: 20px;
  width: 18px;
  height: 18px;
  border: 0;
  background-color: transparent;
  background-image: url(/views/res/imgs/modal/popup_close_btn.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  font-size: 0;
  transform: translateY(-50%);
}

@media screen and (min-width: 992px) {
  .alert-modal .btn-close {
    right: 50px;
  }
}

/*=================================================
      회원가입, 회원정보 수정, 주문 폼 공통
=================================================*/
.form-wrap-table {
  /* 읽기전용 */
}

.form-wrap-table.form-read-only .form-wrap:not(:last-child) {
  border-bottom: 1px solid #ddd;
}

.form-wrap-table.form-read-only .form-body {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex-basis: 560px;
}

.form-wrap-table.form-read-only .form-body span {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 100%;
}

.form-wrap-table.form-read-only .write-form-content {
  padding-bottom: 0;
}

.form-wrap-table .neces {
  color: #00aeef;
}

.form-wrap-table .non-neces {
  color: #888;
  vertical-align: middle;
}

/* 작성 폼 공통 */
.write-form-title-wrap {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  font-family: "Noto Sans KR", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.write-form-title {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: auto;
  font-size: 14px;
  font-weight: 500;
}

.write-form-title + .write-form-info {
  flex-grow: 0;
}

.write-form-info {
  line-height: 1.3;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: 90px;
  text-align: right;
  font-size: 12px;
  font-family: "Dotum", sans-serif;
}

.write-form-content {
  padding-bottom: 10px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #ddd;
}

/* 폼 콘텐츠 공통 */
.form-title .neces {
  margin-left: 3px;
  color: #00aeef;
}

.form-title.align-items-center {
  align-items: center;
}

.form-body .has-btn-type {
  display: flex;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: auto;
}

.form-body .has-btn-type input[type="text"] {
  flex-shrink: 1;
  flex-basis: auto;
  margin-right: 5px;
}

.form-body .has-btn-type [class*="btn-"] {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: auto;
}

.form-body .checkbox-wrap {
  flex-wrap: wrap;
  padding-top: 2px;
  display: flex;
}

.form-body .checkbox-wrap .ckbx-tag-1 {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: auto;
  margin-top: 8px;
  margin-right: 12px;
}

@media screen and (min-width: 768px) {
  .form-body .checkbox-wrap .ckbx-tag-1 {
    flex-grow: 0;
  }
}

.form-body .form-postscript {
  display: block;
  margin-top: 5px;
  font-size: 11px;
  color: #666;
  font-family: "Dotum", sans-serif;
}

/* 적립금, 전화번호, 주소 콘텐츠 개별 스타일 */
.has-won-text {
  position: relative;
}

.has-won-text input[type="text"] {
  padding-right: 23px;
  text-align: right;
}

.has-won-text .won-txt {
  position: absolute;
  top: 50%;
  right: 106px;
  transform: translateY(-50%);
  font-family: "Dotum", sans-serif;
}

.address-form-wrap .form-title {
  align-items: center;
}

.address-form-wrap .form-body input:not(:first-child),
.address-form-wrap .form-body select:not(:first-child) {
  margin-top: 5px;
}

.phone-form-wrap .form-body {
  display: flex;
  flex-grow: 0;
  align-items: center;
}

.phone-form-wrap .form-body select,
.phone-form-wrap .form-body input {
  flex-shrink: 1;
  flex-basis: 33.333%;
}

@media screen and (max-width: 413px) {
  .phone-form-wrap .form-body select,
  .phone-form-wrap .form-body input {
    padding: 0 8px;
  }
}

.phone-form-wrap .form-body .icon-hyphen {
  flex-shrink: 0;
  flex-basis: 5px;
  height: 1px;
  margin: 0 4px;
  background-color: #222;
  vertical-align: middle;
}

.v-middle {
  vertical-align: middle !important;
}

.v-top {
  vertical-align: top !important;
}

.point-color {
  color: #00aeef !important;
}

.point-color2 {
  color: #1b458e !important;
}

input[type="password"] {
  font-family: "Dotum", sans-serif !important;
}

.popup-twobtn-wrap {
  display: flex;
  max-width: 410px;
  margin: 0 auto;
}

.popup-twobtn-wrap > * {
  display: inline-block;
  font-family: "Noto Sans KR", sans-serif;
  flex: 1 1 0px;
  margin: 0 5px;
}

.loading-message {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 페이지별 공통 사항 넣는 부분 */
.txt-arrow:after {
  content: "";
  display: inline-block;
  margin-left: 10px;
  width: 6px;
  height: 11px;
  background: url(/views/res/imgs/main/main_btn_arrow.png) no-repeat center/contain;
}

.common-title-wrap.top {
  padding-bottom: 60px;
}

.visual-article {
  position: relative;
  height: 130vw;
  min-height: 495px;
  max-height: 567px;
  margin-bottom: 80px;
}

@media screen and (min-width: 768px) {
  .visual-article {
    min-height: 375px;
    height: 375px;
    max-height: none;
  }
}

@media screen and (min-width: 992px) {
  .visual-article {
    height: 39vw;
    min-height: 450px;
    margin-bottom: 100px;
  }
}

@media screen and (min-width: 1400px) {
  .visual-article {
    height: 32vw;
  }
}

.visual-article .img-wrap {
  position: absolute;
  width: 85.5%;
  max-width: 420px;
  top: -60px;
  right: 0;
}

@media screen and (min-width: 768px) {
  .visual-article .img-wrap {
    max-width: 600px;
    width: 58%;
  }
}

@media screen and (min-width: 992px) {
  .visual-article .img-wrap {
    max-width: none;
  }
}

@media screen and (min-width: 1400px) {
  .visual-article .img-wrap {
    width: 50%;
  }
}

.visual-article .img-wrap .img {
  position: relative;
  right: 0;
}

.visual-article .img-wrap img {
  width: 100%;
}

.visual-article .bg-wrap {
  position: absolute;
  width: 85%;
  min-width: 300px;
  height: 100%;
  background-color: #f9f9f9;
}

@media screen and (min-width: 768px) {
  .visual-article .bg-wrap {
    width: 80%;
  }
}

.visual-article .area {
  height: 100%;
}

.visual-article .title-wrap {
  position: absolute;
  bottom: 55px;
  left: 13.5%;
}

@media screen and (min-width: 768px) {
  .visual-article .title-wrap {
    top: 50%;
    left: 45px;
    bottom: auto;
    transform: translateY(-50%);
  }
}

@media screen and (min-width: 1200px) {
  .visual-article .title-wrap {
    left: 20px;
  }
}

.visual-article .title-wrap .title {
  line-height: 1.34;
  margin-bottom: 22px;
  font-size: 27px;
  color: #000;
}

@media screen and (min-width: 768px) {
  .visual-article .title-wrap .title {
    line-height: 1.24;
    font-size: 32px;
  }
}

@media screen and (min-width: 992px) {
  .visual-article .title-wrap .title {
    font-size: 42px;
  }
}

@media screen and (min-width: 1200px) {
  .visual-article .title-wrap .title {
    font-size: 45px;
  }
}

.visual-article .title-wrap .sub-title {
  line-height: 1.53;
  font-size: 15px;
  font-weight: 300;
  color: #666;
}

@media screen and (min-width: 768px) {
  .visual-article .title-wrap .sub-title {
    line-height: 1.66;
    font-size: 16px;
  }
}

@media screen and (min-width: 1200px) {
  .visual-article .title-wrap .sub-title {
    font-size: 18px;
  }
}

[data-slick="true"] {
  visibility: hidden;
}

.service-group.sub-article-wrap {
  padding-bottom: 0;
}

.service-group .title-wrap .desc {
  margin-bottom: 6px;
  font-size: 13px;
  color: #666;
}

@media screen and (min-width: 768px) {
  .service-group .title-wrap .desc {
    font-size: 15px;
  }
}

.service-group .common-sub-title-wrap .info {
  line-height: 1.42;
  margin-bottom: 55px;
  font-size: 28px;
  font-weight: 300;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 768px) {
  .service-group .common-sub-title-wrap .info {
    font-size: 32px;
  }
}

@media screen and (min-width: 992px) {
  .service-group .common-sub-title-wrap .info {
    font-size: 40px;
  }
}

.sec-page-wrap {
  max-width: 550px;
  margin: 0 auto;
}

@media screen and (min-width: 992px) {
  .sec-page-wrap {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    max-width: none;
    padding-bottom: 40px;
  }
}

.sec-page-wrap .sec-page-img {
  position: relative;
  padding: 0 20px;
  z-index: 1;
}

@media screen and (min-width: 992px) {
  .sec-page-wrap .sec-page-img {
    padding: 0;
  }
}

.sec-page-wrap .sec-page-img:after {
  display: block;
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 20px;
  bottom: 0;
  margin-right: 20px;
  -webkit-transform: translate(0, 25px);
  transform: translate(0px, 25px);
  background-color: #f5f5f5;
  z-index: -1;
}

@media screen and (min-width: 992px) {
  .sec-page-wrap .sec-page-img:after {
    right: 0;
    margin-right: 0;
    -webkit-transform: translate(-40px, 40px);
    transform: translate(-40px, 40px);
  }
}

.sec-page-wrap .sec-page-text-wrap {
  width: 100%;
  margin-top: 50px;
}

@media screen and (min-width: 992px) {
  .sec-page-wrap .sec-page-text-wrap {
    width: 50%;
    padding-left: 4%;
    margin-top: 0;
  }
}

@media screen and (min-width: 1200px) {
  .sec-page-wrap .sec-page-text-wrap {
    padding-left: 7%;
  }
}

.sec-page-wrap .sec-page-text-wrap .title {
  line-height: 1.42;
  margin-bottom: 20px;
  font-size: 25px;
  color: #000;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 992px) {
  .sec-page-wrap .sec-page-text-wrap .title {
    margin-bottom: 40px;
    font-size: 35px;
  }
}

.sec-page-wrap .sec-page-text-wrap .desc {
  line-height: 1.66;
  font-size: 15px;
  color: #666;
}

@media screen and (min-width: 992px) {
  .sec-page-wrap .sec-page-text-wrap .desc {
    font-size: 18px;
  }
}

.sec-page-step {
  margin-top: 70px;
}

@media screen and (min-width: 768px) {
  .sec-page-step {
    margin-bottom: 70px;
  }
}

@media screen and (min-width: 992px) {
  .sec-page-step {
    margin-top: 100px;
  }
}

.sec-page-step .title {
  margin-bottom: 50px;
}

@media screen and (min-width: 992px) {
  .sec-page-step .title {
    margin-bottom: 60px;
  }
}

@media screen and (min-width: 768px) {
  .sec-page-step .service-step .col-md-20 {
    width: 20% !important;
    margin-bottom: 20px;
  }
}

.sec-page-step .service-step dl {
  min-height: 200px;
  position: relative;
  color: #333;
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .sec-page-step .service-step dl {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .sec-page-step .service-step dl:not(:last-child):after {
    display: block;
    content: '';
    position: absolute;
    top: 60px;
    right: 0;
    width: 20px;
    height: 16px;
    background: url(/views/res/imgs/page/service/service_step_arrow_icon_right.svg) no-repeat center;
  }
}

.sec-page-step .service-step dt {
  margin-bottom: 20px;
  font-size: 15px;
  font-weight: 600;
}

.sec-page-step .service-step dd {
  line-height: 1.6;
  padding-top: 80px;
  background-repeat: no-repeat;
  background-position: top center;
  font-size: 15px;
}

@media screen and (min-width: 992px) {
  .sec-page-step .service-step dd {
    font-size: 16px;
  }
}

@media screen and (max-width: 429px) {
  .service-group .slide-custom-wrap .slick-layout {
    margin-left: -20px;
  }
  .service-group .slide-custom-wrap .slick-slide {
    margin-left: -1.5%;
  }
}

.service-group .slick-slide {
  outline: none;
}

.service-group .slick-arrow {
  position: absolute;
  width: 45px;
  height: 45px;
  background-image: url(/views/res/imgs/page/service/service_slide_arrow_icon_right.svg);
  background-repeat: no-repeat;
  background-position: center;
  font-size: 0;
  color: #fff;
  opacity: .7;
}

.service-group .slick-arrow.slick-disabled {
  opacity: .3;
}

.service-group .slick-prev {
  background-image: url(/views/res/imgs/page/service/service_slide_arrow_icon_left.svg);
}

.sec-page-flow {
  padding: 80px 0 120px;
  background-image: url(/views/res/imgs/page/service/service_bg_img_01_m.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  .sec-page-flow {
    padding: 0;
    background-image: url(/views/res/imgs/page/service/service_bg_img_01.jpg);
  }
}

.sec-page-flow .slick-area {
  position: absolute;
  left: 96px;
  top: 57px;
  width: 195px;
}

@media screen and (min-width: 768px) {
  .sec-page-flow .slick-area {
    left: 113px;
    top: 140px;
    width: 231px;
  }
}

@media screen and (min-width: 992px) {
  .sec-page-flow .slick-area {
    left: 124px;
    top: 146px;
    width: 258px;
  }
}

.sec-page-flow .info {
  margin-bottom: 40px;
  color: #555;
}

.sec-page-flow .flex-wrap {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .sec-page-flow .flex-wrap {
    flex-direction: row;
  }
}

@media screen and (min-width: 1200px) {
  .sec-page-flow .flex-wrap {
    padding-left: 40px;
  }
}

.sec-page-flow .flow-base-img {
  width: 390px;
}

@media screen and (min-width: 768px) {
  .sec-page-flow .flow-base-img {
    padding-top: 72px;
    width: 460px;
  }
}

@media screen and (min-width: 992px) {
  .sec-page-flow .flow-base-img {
    width: 510px;
  }
}

.sec-page-flow .flow-step-wrap {
  position: absolute;
  left: 0;
  bottom: -40px;
  width: 100%;
  padding: 33px 30px 18px;
  background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
}

@media screen and (min-width: 768px) {
  .sec-page-flow .flow-step-wrap {
    position: inherit;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
  }
}

@media screen and (min-width: 992px) {
  .sec-page-flow .flow-step-wrap {
    padding-left: 40px;
  }
}

.sec-page-flow .flow-step {
  font-size: 16px;
  color: #777;
}

.sec-page-flow .flow-step > * {
  display: flex;
  margin-bottom: 17px;
  cursor: pointer;
}

.sec-page-flow .flow-step strong {
  flex: 0 0 auto;
  line-height: 1.6;
  display: inline-block;
  margin-right: 20px;
  font-size: 15px;
}

.sec-page-flow .flow-step .step-text {
  position: relative;
  display: inline-block;
  line-height: 1.6;
}

.sec-page-flow .flow-step .step-text:after {
  display: block;
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 2px;
  background-color: transparent;
}

.sec-page-flow .flow-step .active {
  color: #00aeef;
}

.sec-page-flow .flow-step .active .step-text:after {
  background-color: #00aeef;
}

.sec-page-flow .slickSlideFlow .slick-dots {
  display: none !important;
}

.sec-page-flow .slickSlideFlow .slick-arrow {
  border: 1px solid #999;
  top: 50%;
  left: -69px;
  margin-top: -23px;
}

@media screen and (min-width: 768px) {
  .sec-page-flow .slickSlideFlow .slick-arrow {
    left: -80px;
  }
}

@media screen and (min-width: 992px) {
  .sec-page-flow .slickSlideFlow .slick-arrow {
    left: -90px;
  }
}

.sec-page-flow .slickSlideFlow .slick-next {
  left: inherit;
  right: -69px;
}

@media screen and (min-width: 768px) {
  .sec-page-flow .slickSlideFlow .slick-next {
    right: -80px;
  }
}

@media screen and (min-width: 992px) {
  .sec-page-flow .slickSlideFlow .slick-next {
    right: -90px;
  }
}

.sec-page-order {
  padding: 80px 0 170px;
  background: url(/views/res/imgs/page/service/service_bg_img_02.jpg) no-repeat center;
  background-size: cover;
}

@media screen and (min-width: 992px) {
  .sec-page-order {
    padding: 100px 0 190px;
  }
}

.sec-page-order .title {
  color: #fff;
}

.sec-page-order .info {
  color: #ccc;
}

@media screen and (min-width: 1200px) {
  .slide-custom-wrap.slick-area {
    padding-left: 0;
  }
}

.slide-custom-wrap .slideContainer img {
  width: 292px;
}

.slide-custom-wrap .slideContainer .slick-list {
  overflow: visible;
}

.slide-custom-wrap .slideContainer .slick-arrow {
  left: 20px;
  bottom: -90px;
  border: 1px solid #fff;
}

.slide-custom-wrap .slideContainer .slick-next {
  left: 80px;
}

.slide-custom-wrap .slideContainer .slick-dots {
  display: none !important;
}

.slide-custom-wrap .slick-dots-custom {
  display: flex;
  position: absolute;
  display: flex;
  top: -20px;
  left: 53px;
  width: 240px;
  height: 2px;
  background-color: #56575b;
}

@media screen and (min-width: 544px) {
  .slide-custom-wrap .slick-dots-custom {
    left: 54px;
  }
}

@media screen and (min-width: 992px) {
  .slide-custom-wrap .slick-dots-custom {
    top: -70px;
    left: auto;
    right: 54px;
  }
}

.slide-custom-wrap .slick-dots-custom:before, .slide-custom-wrap .slick-dots-custom:after {
  display: block;
  position: absolute;
  top: -6px;
  font-size: 13px;
  font-family: "Lato", sans-serif;
  color: #fff;
}

.slide-custom-wrap .slick-dots-custom:before {
  content: '01.';
  left: -30px;
}

.slide-custom-wrap .slick-dots-custom:after {
  content: '07.';
  right: -30px;
}

.slide-custom-wrap .slick-dots-custom .slideBar {
  position: absolute;
  display: block;
  content: '';
  left: 0;
  top: 0;
  width: 60px;
  height: 2px;
  background-color: #fff;
  transition: transform .5s;
}

[class*="payment-"] .bg-symbol {
  overflow: hidden;
  position: relative;
}

[class*="payment-"] .bg-symbol::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/views/res/imgs/page/payment/payment_bg_m.jpg) no-repeat;
  background-size: 100%;
  background-position: 50% 0;
}

@media screen and (min-width: 768px) {
  [class*="payment-"] .bg-symbol::before {
    left: 50%;
    width: 200%;
    max-width: 2453px;
    transform: translateX(-35.5%);
    background: url(/views/res/imgs/page/payment/payment_bg.jpg) no-repeat;
    background-size: contain;
  }
}

.info-list-wrap .info-list {
  position: relative;
  margin-bottom: 75px;
}

.info-list-wrap .info-list:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .info-list-wrap .info-list {
    margin-bottom: -30px;
  }
  .info-list-wrap .info-list:nth-child(even) .img-wrap {
    float: right;
  }
  .info-list-wrap .info-list:nth-child(odd) .desc-wrap {
    left: auto;
    right: 0;
  }
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list {
    margin-bottom: -40px;
  }
}

.info-list-wrap .info-list.row {
  margin-right: -20px;
  margin-left: -20px;
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list.row {
    margin-right: -45px;
    margin-left: -45px;
  }
}

.info-list-wrap .info-list [class*="col-"] {
  padding: 0 20px;
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list [class*="col-"] {
    padding: 0 45px;
  }
}

.info-list-wrap .info-list .img-wrap {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .info-list-wrap .info-list .img-wrap {
    margin-bottom: 0;
  }
}

.info-list-wrap .info-list .desc-wrap {
  padding: 0 30px;
}

@media screen and (min-width: 768px) {
  .info-list-wrap .info-list .desc-wrap {
    padding: 0 25px;
    position: absolute;
    top: 50%;
    margin-bottom: 0;
    transform: translateY(-50%);
  }
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list .desc-wrap {
    padding: 0 45px;
  }
}

.info-list-wrap .info-list .desc-wrap .icon {
  display: block;
  width: 50px;
  margin-bottom: 10px;
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list .desc-wrap .icon {
    width: 60px;
    margin-bottom: 27px;
  }
}

.info-list-wrap .info-list .desc-wrap .icon.icon-shield {
  margin-left: -5px;
}

@media screen and (min-width: 768px) {
  .info-list-wrap .info-list .desc-wrap .icon.icon-shield {
    margin-left: 0;
  }
}

.info-list-wrap .info-list .desc-wrap .title {
  line-height: 1.7;
  font-size: 17px;
  margin-bottom: 6px;
  color: #1b458e;
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list .desc-wrap .title {
    margin-bottom: 13px;
    font-size: 20px;
  }
}

.info-list-wrap .info-list .desc-wrap .desc {
  line-height: 1.7;
  font-size: 15px;
  color: #666;
}

@media screen and (min-width: 992px) {
  .info-list-wrap .info-list .desc-wrap .desc {
    padding-right: 77px;
    line-height: 1.73;
  }
}

.bg-symbol-wrap {
  position: absolute;
  width: 100%;
  top: 0;
  left: 50%;
  max-width: 1920px;
  height: 609px;
  transform: translateX(-50%);
}

.bg-symbol-wrap .bg-symbol {
  position: absolute;
  top: 165px;
  width: 365px;
  height: 340px;
  right: -15px;
  background-image: url(/views/res/imgs/page/page_bg_symbol_m.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top right;
}

@media screen and (min-width: 544px) {
  .bg-symbol-wrap .bg-symbol {
    width: 445px;
    height: 420px;
  }
}

@media screen and (min-width: 768px) {
  .bg-symbol-wrap .bg-symbol {
    top: 110px;
    right: -48px;
    width: 806px;
    height: 609px;
  }
}

@media screen and (min-width: 992px) {
  .bg-symbol-wrap .bg-symbol {
    background-image: url(/views/res/imgs/page/page_bg_symbol.jpg);
  }
}

@-webkit-keyframes scale-left {
  from {
    transform: scaleX(0);
    transform-origin: left;
  }
  to {
    transform: scaleX(1);
    transform-origin: left;
  }
}

@-moz-keyframes scale-left {
  from {
    transform: scaleX(0);
    transform-origin: left;
  }
  to {
    transform: scaleX(1);
    transform-origin: left;
  }
}

@-o-keyframes scale-left {
  from {
    transform: scaleX(0);
    transform-origin: left;
  }
  to {
    transform: scaleX(1);
    transform-origin: left;
  }
}

@keyframes scale-left {
  from {
    transform: scaleX(0);
    transform-origin: left;
  }
  to {
    transform: scaleX(1);
    transform-origin: left;
  }
}

@-webkit-keyframes scale-right {
  from {
    transform: scaleX(0);
    transform-origin: right;
  }
  to {
    transform: scaleX(1);
    transform-origin: right;
  }
}

@-moz-keyframes scale-right {
  from {
    transform: scaleX(0);
    transform-origin: right;
  }
  to {
    transform: scaleX(1);
    transform-origin: right;
  }
}

@-o-keyframes scale-right {
  from {
    transform: scaleX(0);
    transform-origin: right;
  }
  to {
    transform: scaleX(1);
    transform-origin: right;
  }
}

@keyframes scale-right {
  from {
    transform: scaleX(0);
    transform-origin: right;
  }
  to {
    transform: scaleX(1);
    transform-origin: right;
  }
}

/* 탭에 관련된 본문 */
.default-tab .tab-cont {
  position: relative;
  display: none;
}

.default-tab .tab-cont.active {
  display: block;
}

.default-tab .tab-cont .text-wrap p {
  line-height: 1.7;
  font-size: 14px;
  color: #222;
}

.guide-content-wrap {
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 544px) {
  .guide-content-wrap {
    margin: 0 -10px;
  }
}

@media screen and (min-width: 992px) {
  .guide-content-wrap {
    margin: 0 -15px;
  }
}

.guide-box {
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (min-width: 544px) {
  .guide-box {
    padding: 0 10px;
  }
}

@media screen and (min-width: 992px) {
  .guide-box {
    padding: 0 15px;
    margin-bottom: 30px;
  }
}

.guide-box .inner {
  display: table;
  width: 100%;
  padding: 30px 30px 25px 30px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  background-color: #fff;
}

@media screen and (min-width: 992px) {
  .guide-box .inner {
    padding-top: 47px;
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 1200px) {
  .guide-box .inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}

.guide-box .inner-cont {
  display: table-cell;
  vertical-align: middle;
}

@media screen and (min-width: 544px) {
  .guide-box .inner-cont {
    vertical-align: top;
  }
}

.guide-box .title {
  margin-bottom: 19px;
  font-size: 18px;
  color: #000;
}

@media screen and (min-width: 992px) {
  .guide-box .title {
    margin-bottom: 23px;
  }
}

.guide-box .desc {
  font-size: 15px;
  line-height: 1.73;
  color: #666;
}

.guide-tab-wrap {
  position: relative;
  width: 100%;
  height: 46px;
  margin-bottom: 60px;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .guide-tab-wrap {
    margin-bottom: 90px;
  }
}

.guide-tab-m {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.guide-tab-m .current-tab {
  position: relative;
  width: 100%;
  height: 46px;
  padding: 14px 15px;
  border: 1px solid transparent;
  border-bottom: 1px solid #1b458e;
  text-align: left;
  font-size: 15px;
  background-color: #fff;
  color: #000;
  outline: none;
}

.guide-tab-m .current-tab:after {
  content: "";
  position: absolute;
  top: 15px;
  right: 20px;
  display: inline-block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(135deg);
}

.guide-tab-m .current-tab.open {
  border: 1px solid #1b458e;
  background-color: #f7f7f7;
}

.guide-tab-m .tabDropDown {
  position: relative;
  display: none;
  border-right: 0;
  background-color: #fff;
  z-index: 501;
}

.guide-tab-m .tab-list {
  display: block;
  height: 50px;
  color: #777;
  font-size: 15px;
  text-align: left;
  padding: 15px 0 0 25px;
  border: 1px solid #ddd;
  border-top: 0;
}

.guide-tab-m .tab-list.active {
  color: #000;
}

.tab-cont-wrap .common-sub-title-wrap {
  position: relative;
  z-index: 1;
}

/* 신청, 문의하기 페이지 공통 */
.form-wrap .form-link {
  display: inline-block;
  color: #000;
  text-decoration: underline;
  vertical-align: top;
}

.ckbx-tag-1 input[type=radio]:checked ~ .custom-checked:before,
.ckbx-tag-1 input[type=checkbox]:checked ~ .custom-checked:before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 4px;
  width: 12px;
  height: 12px;
  background-color: #1b458e;
  border-radius: 50%;
  transform: translateY(-50%);
}

.cont-info-wrap .title-wrap {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 26px;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 992px) {
  .cont-info-wrap .title-wrap {
    padding-bottom: 45px;
  }
}

.cont-info-wrap .title-wrap:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40px;
  height: 2px;
  background: #1b458e;
  background: -moz-linear-gradient(left, #1b458e 0%, #00aeef 100%);
  background: -webkit-linear-gradient(left, #1b458e 0%, #00aeef 100%);
  background: linear-gradient(to right, #1b458e 0%, #00aeef 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='$g_point-theme-color2', endColorstr='$g_point-font-color', GradientType=1);
}

@media screen and (min-width: 768px) {
  .cont-info-wrap .title-wrap:after {
    width: 50px;
  }
}

.cont-info-wrap .title-wrap .title {
  line-height: 1.4;
  font-size: 25px;
  font-weight: 300;
  color: #000;
}

@media screen and (min-width: 768px) {
  .cont-info-wrap .title-wrap .title {
    line-height: 1.3;
    font-size: 29px;
  }
}

@media screen and (min-width: 992px) {
  .cont-info-wrap .title-wrap .title {
    font-size: 38px;
  }
}

@media screen and (min-width: 1200px) {
  .cont-info-wrap .title-wrap .title {
    font-size: 40px;
  }
}

.cont-info-wrap .title-wrap .title + .sub-title {
  margin-top: 35px;
}

.cont-info-wrap .title-wrap .sub-title {
  line-height: 1.66;
  font-size: 21px;
  color: #000;
}

.cont-info-wrap .title-wrap .sub-title + .desc {
  margin-top: 8px;
}

@media screen and (min-width: 768px) {
  .cont-info-wrap .title-wrap .sub-title {
    line-height: 1;
    font-size: 24px;
  }
  .cont-info-wrap .title-wrap .sub-title + .desc {
    margin-top: 26px;
  }
}

.cont-info-wrap .title-wrap .desc {
  line-height: 1.73;
  max-width: 340px;
  margin-top: 20px;
  font-size: 15px;
  color: #666;
}

@media screen and (min-width: 768px) {
  .cont-info-wrap .title-wrap .desc {
    width: 240px;
  }
}

@media screen and (min-width: 992px) {
  .cont-info-wrap .title-wrap .desc {
    width: 300px;
  }
}

.cont-info-wrap .top-info-wrap {
  margin-bottom: 20px;
}

.cont-info-wrap .top-info-wrap:last-child {
  margin-bottom: 0;
}

.cont-info-wrap .top-info-wrap .title {
  margin-bottom: 3px;
  font-size: 15px;
  color: #999;
}

.cont-info-wrap .top-info-wrap .desc {
  line-height: 1.6;
  font-size: 15px;
  color: #000;
}

@media screen and (min-width: 992px) {
  .cont-info-wrap .top-info-wrap .desc {
    line-height: 1.6;
  }
}

.cont-info-wrap .top-info-wrap .desc .icon-arrow {
  display: block;
  width: 12px;
  height: 13px;
  margin: 3px 0;
  text-indent: -9999px;
  background-image: url(/views/res/imgs/page/cs/directions_icon_arrow_bottom.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
}

@media screen and (min-width: 992px) {
  .cont-info-wrap .top-info-wrap .desc .icon-arrow {
    width: 14px;
    height: 15px;
    margin: 1px 0;
  }
}

.board-contact-style1 .contact-wrap {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .board-contact-style1 .contact-wrap {
    flex-wrap: nowrap;
  }
}

.board-contact-style1 .contact-wrap > .left-wrap {
  flex: 1 1 100%;
  margin-bottom: 80px;
}

@media screen and (min-width: 768px) {
  .board-contact-style1 .contact-wrap > .left-wrap {
    flex-grow: 0;
    flex-basis: 366px;
    margin-right: auto;
    margin-bottom: 55px;
  }
}

.board-contact-style1 .contact-wrap > .right-wrap {
  flex: 1 1 100%;
}

@media screen and (min-width: 768px) {
  .board-contact-style1 .contact-wrap > .right-wrap {
    flex-grow: 0;
    flex-basis: 700px;
    padding: 0 40px;
  }
}

@media screen and (min-width: 1200px) {
  .board-contact-style1 .contact-wrap > .right-wrap {
    flex-basis: 730px;
    padding: 0 50px;
  }
}

.board-contact-style1 .contact-wrap .write_inner {
  font-size: 0;
}

.board-contact-style1 .contact-wrap .write-form-title {
  flex: none;
  margin-bottom: 25px;
  font-size: 18px;
  color: #000;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .board-contact-style1 .contact-wrap .write-form-title {
    margin-bottom: 36px;
  }
}

.board-contact-style1 .contact-wrap .form-wrap {
  margin-bottom: 23px;
}

.board-contact-style1 .contact-wrap .form-wrap:last-child {
  font-size: 14px;
  vertical-align: middle;
}

@media screen and (min-width: 544px) {
  .board-contact-style1 .contact-wrap .form-wrap.name-wrap, .board-contact-style1 .contact-wrap .form-wrap.phone-wrap {
    display: inline-block;
    width: 48%;
  }
  .board-contact-style1 .contact-wrap .form-wrap.name-wrap {
    margin-right: 2%;
  }
  .board-contact-style1 .contact-wrap .form-wrap.phone-wrap {
    margin-left: 2%;
  }
}

.board-contact-style1 .contact-wrap .form-wrap .mail-wrap {
  display: flex;
}

.board-contact-style1 .contact-wrap .form-wrap .mail-wrap .mail-box {
  flex: 1 1 0px;
  margin-right: 5px;
}

.board-contact-style1 .contact-wrap .form-wrap .mail-wrap .mail-select {
  width: 150px;
}

@media screen and (min-width: 544px) {
  .board-contact-style1 .contact-wrap .form-wrap .mail-wrap .mail-select {
    width: 200px;
  }
}

.board-contact-style1 .contact-wrap .form-wrap .data-type-wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  min-height: 50px;
  margin-bottom: -15px;
}

@media screen and (min-width: 544px) {
  .board-contact-style1 .contact-wrap .form-wrap .data-type-wrap {
    flex-wrap: nowrap;
    margin-bottom: 0;
  }
}

.board-contact-style1 .contact-wrap .form-wrap .data-type-wrap [class*="ckbx-tag-"] {
  flex: 0 0 auto;
  width: calc(100% / 3 - 1px);
  margin-right: 0;
  margin-bottom: 15px;
}

@media screen and (min-width: 544px) {
  .board-contact-style1 .contact-wrap .form-wrap .data-type-wrap [class*="ckbx-tag-"] {
    flex-basis: auto;
    width: auto;
    margin-right: 30px;
    margin-bottom: 0;
  }
}

.board-contact-style1 .contact-wrap .form-wrap .form-title {
  margin-bottom: 14px;
  font-size: 18px;
  text-align: left;
  font-size: 15px;
  color: #555;
}

.board-contact-style1 .contact-wrap .form-wrap .form-title.focus {
  color: #1b458e;
}

.board-contact-style1 .contact-wrap .form-wrap input[type="text"],
.board-contact-style1 .contact-wrap .form-wrap input[type="password"] {
  width: 100%;
  max-height: 50px;
  border: 0;
  border-width: 1px;
  border-style: solid;
  border-color: #ddd;
  padding: 15px 10px;
  outline: none;
  font-size: 14px;
  letter-spacing: -0.02em;
  background-color: #fff;
}

@media screen and (min-width: 544px) {
  .board-contact-style1 .contact-wrap .form-wrap input[type="text"],
  .board-contact-style1 .contact-wrap .form-wrap input[type="password"] {
    font-size: 15px;
    padding: 15px;
  }
}

.board-contact-style1 .contact-wrap .form-wrap input[type="text"]:focus,
.board-contact-style1 .contact-wrap .form-wrap input[type="password"]:focus {
  border-color: #1b458e;
  outline: none;
}

.board-contact-style1 .contact-wrap .form-wrap input[type="password"] {
  padding: 15px 10px;
}

.board-contact-style1 .contact-wrap .form-wrap .input-textarea {
  width: 100%;
  height: 135px;
  border-width: 1px;
  border-style: solid;
  border-color: #ddd;
  padding: 15px;
  font-size: 15px;
  letter-spacing: -0.02em;
  resize: none;
}

.board-contact-style1 .contact-wrap .form-wrap.agreement-container .form-cont {
  margin-right: 0;
  margin-bottom: 10px;
}

.board-contact-style1 .contact-wrap .form-wrap.agreement-container .form-cont.all-check {
  padding-bottom: 10px;
  border-bottom: 1px solid #ddd;
}

.board-contact-style1 .right-wrap .form-btn {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .board-contact-style1 .right-wrap .form-btn {
    text-align: left !important;
  }
}

/*=================================================
        버튼 wrap
=================================================*/
.btn-wrap {
  margin-top: 20px;
  overflow: hidden;
  text-align: center;
}

.btn-wrap .row {
  margin-right: -5px;
  margin-left: -5px;
}

.btn-wrap .row::after {
  content: "";
  display: block;
  clear: both;
}

.btn-wrap .row [class*=col-] {
  padding: 0 5px;
}

.btn-wrap-style2 {
  max-width: 430px;
  margin: 0 auto;
  margin-top: 20px;
  overflow: hidden;
  text-align: center;
}

.btn-wrap-style2 .row {
  margin-right: -5px;
  margin-left: -5px;
}

.btn-wrap-style2 .row::after {
  content: "";
  display: block;
  clear: both;
}

.btn-wrap-style2 .row [class*=col-] {
  padding: 0 5px;
}

/*=================================================
            ajax더보기 버튼(스피너)
=================================================*/
.spinner {
  margin: 100px auto;
  width: 50px;
  height: 40px;
  text-align: center;
  font-size: 10px;
}

.spinner > div {
  background-color: #00aeef;
  height: 100%;
  width: 6px;
  display: inline-block;
  -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
}

.spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.spinner .rect3 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

.spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% {
    -webkit-transform: scaleY(0.4);
  }
  20% {
    -webkit-transform: scaleY(1);
  }
}

@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1);
  }
}

/*=================================================
            ajax더보기 버튼(스피너2)
=================================================*/
.spinner2 {
  width: 40px;
  height: 40px;
  margin: 100px auto;
}

.spinner2 .sk-cube {
  width: 33%;
  height: 33%;
  background-color: #333;
  float: left;
  -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
  animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
}

.spinner2 .sk-cube1 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.spinner2 .sk-cube2 {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.spinner2 .sk-cube3 {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.spinner2 .sk-cube4 {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.spinner2 .sk-cube5 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.spinner2 .sk-cube6 {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.spinner2 .sk-cube7 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.spinner2 .sk-cube8 {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.spinner2 .sk-cube9 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
    transform: scale3D(1, 1, 1);
  }
  35% {
    -webkit-transform: scale3D(0, 0, 1);
    transform: scale3D(0, 0, 1);
  }
}

@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
    transform: scale3D(1, 1, 1);
  }
  35% {
    -webkit-transform: scale3D(0, 0, 1);
    transform: scale3D(0, 0, 1);
  }
}

/*=================================================
            계산기 스타일1
=================================================*/
.calc-wrap-style1 {
  padding: 0;
}

.calc-wrap-style1 > * {
  display: inline-block;
  vertical-align: bottom;
  width: 26px;
  height: 26px;
  margin: 0;
  padding: 0;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 50%;
  border: 1px solid #ddd;
  border-right: none;
  color: #ccc;
  text-align: center;
}

.calc-wrap-style1 .option-calc.minus {
  background-image: url(/views/res/imgs/common/btn_calc_minus.png);
}

.calc-wrap-style1 .option-calc.plus {
  border-right: 1px solid #ddd;
  background-image: url(/views/res/imgs/common/btn_calc_plus.png);
}

.calc-wrap-style1 .option-calc.plus.round {
  border-radius: 0 10px 10px 0;
}

.calc-wrap-style1 .option-calc.minus.round {
  border-radius: 10px 0 0 10px;
}

.calc-wrap-style1 [class*=_num] {
  width: 30px;
  font-family: "Dotum", sans-serif;
  font-size: 11px;
  color: #222;
}

.calc-wrap-style1 .option-calc {
  cursor: pointer;
  font-size: 10px;
  vertical-align: middle;
}

.calc-wrap-style1 .edit_cart_btn {
  width: 90px;
  margin-left: 50px;
  border: 1px solid #ddd;
  color: #222;
}

.common-tab .tab-select {
  width: 100%;
}

/*=================================================
  상품문의, 후기 모달 공통
=================================================*/
.review-write-wrap .default-review-form {
  font-family: "Dotum", sans-serif;
  font-size: 12px;
  text-align: left;
}

.default-review-form {
  /* 상품문의 모달 */
}

.default-review-form .order-info strong {
  font-size: 20px;
  font-family: "Noto Sans KR", sans-serif;
  font-weight: 500;
}

.default-review-form .order-info span {
  display: block;
  margin-top: 10px;
  font-size: 12px;
  color: #999;
}

.default-review-form .review-inputs {
  margin-top: 25px;
  border-top: 1px solid #222;
}

.default-review-form .review-inputs dl {
  position: relative;
  padding-left: 75px;
  border-bottom: 1px solid #ddd;
}

@media screen and (min-width: 992px) {
  .default-review-form .review-inputs dl {
    padding-left: 95px;
  }
}

.default-review-form .review-inputs dt {
  position: absolute;
  left: 0;
  top: 18px;
  width: 75px;
  padding-left: 14px;
  color: #000;
  font-size: 13px;
  font-weight: 600;
}

@media screen and (min-width: 992px) {
  .default-review-form .review-inputs dt {
    width: 95px;
  }
}

.default-review-form .review-inputs dd {
  position: relative;
  min-height: 49px;
  padding: 16px 10px;
}

@media screen and (min-width: 992px) {
  .default-review-form .review-inputs dd {
    padding: 16px 20px;
  }
}

.default-review-form .review-inputs textarea {
  display: block;
  width: 100%;
  height: 120px;
  line-height: 20px;
  border: 0;
  color: #222;
  resize: none;
}

.default-review-form .review-inputs textarea::placeholder {
  color: #c4c4c4;
}

.default-review-form .review-inputs .file-attach-wrap {
  padding: 20px 14px 10px;
}

.default-review-form .review-inputs .file-attach-wrap .title-wrap {
  position: initial;
  width: 100%;
  padding-left: 0;
}

.default-review-form .review-inputs .file-attach-wrap .title-wrap .sub-title {
  font-size: 11px;
  font-weight: 400;
  color: #999;
}

.default-review-form .review-inputs .file-attach-wrap .content-wrap {
  padding: 10px 0 0 85px;
  min-height: 105px;
}

.default-review-form .review-inputs .file-attach-wrap .file-input-trigger {
  position: absolute;
  top: 44px;
  width: 75px;
  height: 75px;
  border: 1px solid #ddd;
  background-image: url(/views/res/imgs/common/review_plus_icon.png);
  background-repeat: no-repeat;
  background-position: center;
  z-index: 1;
}

.default-review-form .review-inputs .file-attach-wrap .file-input-trigger:disabled {
  border: 1px solid #ccc;
  background-color: #ddd;
  opacity: .4;
}

.default-review-form .rating-wrap {
  width: 100%;
  padding-left: 10px;
}

@media screen and (min-width: 992px) {
  .default-review-form .rating-wrap {
    padding-left: 20px;
  }
}

.default-review-form .stored-file-append-wrap > *,
.default-review-form .file-attached-wrap > * {
  float: left;
  width: 75px;
  height: 75px;
  vertical-align: middle;
  margin-right: 10px;
  margin-bottom: 10px;
}

.default-review-form .review-info-wrap {
  margin-top: 10px;
}

.default-review-form .review-info-wrap .review-info {
  position: relative;
  line-height: 1.81;
  padding-left: 10px;
  font-size: 11px;
  color: #999;
  letter-spacing: -0.05em;
}

.default-review-form .review-info-wrap .review-info:before {
  display: inline-block;
  content: '-';
  position: absolute;
  left: 0;
}

.default-review-form .modal-footer {
  padding: 40px 0 0;
  border: 0;
}

.default-review-form .order-number {
  height: 40px;
  line-height: 38px;
  padding-left: 20px;
  margin-bottom: 5px;
  border: 1px solid #ccc;
  background-color: #f7f7f7;
}

.default-review-form strong {
  margin-right: 22px;
}

.default-review-form .order-info .order-img {
  position: absolute;
  left: 20px;
  width: 60px;
  height: 66px;
  background-color: #ccc;
  background-size: cover;
}

.default-review-form .order-info .order-img small {
  display: block;
  margin-bottom: 2px;
  color: #333;
}

.default-review-form .review-btn-wrap {
  padding: 20px 0 0;
  font-size: 0;
  text-align: center;
}

.default-review-form .review-btn-wrap .btn {
  width: 85px;
  height: 35px;
  line-height: normal;
  margin: 0 3px;
  font-size: 11px;
  color: #000;
}

.default-review-form .cus-btn-wrap {
  height: 40px;
}

.default-review-form .qna-p {
  line-height: 1.6;
  text-align: center;
}

.default-review-form .text-field {
  line-height: 20px;
}

/* 후기 선택 리스트 모달 */
.review-selected {
  text-align: left;
}

.review-selected .review-selected-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-top: 1px solid #222;
}

.review-selected .review-selected-list:first-child {
  border-top: 1px solid #222;
}

@media screen and (max-width: 768px) {
  .review-selected .review-selected-list:last-child {
    border-bottom: 1px solid #ddd;
  }
}

@media screen and (min-width: 768px) {
  .review-selected .review-selected-list {
    flex-wrap: nowrap;
    border-top: 0;
    border-bottom: 1px solid #ddd;
    padding-right: 20px;
  }
}

.review-selected .review-item-wrap {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 100%;
  line-height: 1.5;
  margin-bottom: 5px;
  padding: 15px 10px 15px 10px;
  border-bottom: 1px solid #ddd;
  font-family: "Dotum", sans-serif;
  font-size: 12px;
}

@media screen and (min-width: 768px) {
  .review-selected .review-item-wrap {
    flex-basis: auto;
    margin-bottom: 0;
    padding: 25px 20px;
    border-bottom: 0;
  }
}

.review-selected .review-item-wrap > * {
  word-break: break-all;
}

.review-selected .review-item-wrap .item-options {
  margin-bottom: 30px;
  color: #666;
}

@media screen and (min-width: 768px) {
  .review-selected .review-item-wrap .item-options {
    margin-bottom: 10px;
  }
}

.review-selected .review-list-btn-wrap {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 100%;
  padding-bottom: 7px;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .review-selected .review-list-btn-wrap {
    flex-basis: auto;
    padding-bottom: 0;
  }
}

/*=================================================
            파일첨부
=================================================*/
.file-attached-wrap,
.preview_wrap,
.img_preview {
  display: inline-block;
}

.preview_wrap_list {
  position: relative;
  width: 75px;
  margin-right: 5px;
}

.preview_wrap_list .preview_wrap_list_img img {
  height: 75px;
}

.preview_wrap_list .preview_wrap_list_text {
  margin-top: 3px;
  font-size: 11px;
  color: #888;
}

.preview_wrap_list .preview_wrap_list_btn label {
  height: 100%;
}

.preview_wrap_list .preview_del_file,
.preview_wrap_list .preview_del_file_check {
  position: absolute;
  top: 0;
  right: 0;
  width: 23px;
  height: 23px;
  background-image: url(/views/res/imgs/board/board_close_icon.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.preview_wrap_list .preview_del_file_check input[type=checkbox] {
  display: none;
}

.block-revealer__content {
  opacity: 0;
}

.block-revealer__element {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  pointer-events: none;
  opacity: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmNzcyIsInNvdXJjZXMiOlsiY29tbW9uLnNjc3MiLCJfX3ZhcmlhYmxlcy5zY3NzIiwidmFyaWFibGVzX2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwidmFyaWFibGVzX2NvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJ2YXJpYWJsZXNfY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsInZhcmlhYmxlc19jb21wb25lbnRzL190YWJsZS5zY3NzIiwidmFyaWFibGVzX2NvbXBvbmVudHMvX3RhYi5zY3NzIiwidmFyaWFibGVzX2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIl9fbWl4aW5zLnNjc3MiLCJtaXhpbnMvX21lZGlhLXF1ZXJ5LnNjc3MiLCJtaXhpbnMvX21hcC5zY3NzIiwibWl4aW5zL19jbGVhci5zY3NzIiwibWl4aW5zL19mbG9hdC5zY3NzIiwibWl4aW5zL19ob3Zlci5zY3NzIiwibWl4aW5zL19zY3JlZW5yZWFkZXIuc2NzcyIsIm1peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwibWl4aW5zL19wcmVmaXhlci5zY3NzIiwibWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJtaXhpbnMvX2FyZWEuc2NzcyIsIm1peGlucy9fZ3JpZC5zY3NzIiwibWl4aW5zL190cmlhbmdsZS5zY3NzIiwibWl4aW5zL19idXR0b25zLnNjc3MiLCJtaXhpbnMvX2NhcmRzLnNjc3MiLCJtaXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIm1peGlucy9fZm9ybXMuc2NzcyIsIm1peGlucy9fdGFibGVzLnNjc3MiLCJtaXhpbnMvX3RhYi5zY3NzIiwiY29tbW9uL19odG1sX2JvZHkuc2NzcyIsImNvbW1vbi9fY29tbW9uX2xheW91dC5zY3NzIiwiY29tbW9uL19zdWJwYWdlX2xheW91dC5zY3NzIiwiY29tbW9uL19jb21tb25fdGl0bGVzLnNjc3MiLCJjb21tb24vX2Zvb3Rlci5zY3NzIiwiY29tbW9uL19idG5fdG9wLnNjc3MiLCJjb21tb24vX3F1aWNrX21lbnUuc2NzcyIsImNvbW1vbi9fbW9kYWwuc2NzcyIsImNvbW1vbi9fcG9wdXAuc2NzcyIsImNvbW1vbi9fYWxlcnRfbW9kYWwuc2NzcyIsImNvbW1vbi9fZm9ybV9zaWduX2NvbW1vbi5zY3NzIiwiY29tbW9uL19jb21tb25fY29udGVudHMuc2NzcyIsImNvbW1vbi9fYnRuX3dyYXAuc2NzcyIsImNvbW1vbi9fc3Bpbm5lci5zY3NzIiwiY29tbW9uL19jYWxjdWxhdGUuc2NzcyIsImNvbW1vbi9fcmV2aWV3X2Zvcm0uc2NzcyIsImNvbW1vbi9fZmlsZV9hdHRhY2guc2NzcyIsImNvbW1vbi9fcmV2ZWFsX2Jsb2NrLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcIl9fdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiX19taXhpbnNcIjtcblxuQGltcG9ydCBcImNvbW1vbi9faHRtbF9ib2R5XCI7XG5AaW1wb3J0IFwiY29tbW9uL19jb21tb25fbGF5b3V0XCI7XG5AaW1wb3J0IFwiY29tbW9uL19zdWJwYWdlX2xheW91dFwiO1xuQGltcG9ydCBcImNvbW1vbi9fY29tbW9uX3RpdGxlc1wiO1xuQGltcG9ydCBcImNvbW1vbi9fZm9vdGVyXCI7XG5AaW1wb3J0IFwiY29tbW9uL19idG5fdG9wXCI7XG5cbkBpbXBvcnQgXCJjb21tb24vX3F1aWNrX21lbnVcIjtcbkBpbXBvcnQgXCJjb21tb24vX21vZGFsXCI7XG5AaW1wb3J0IFwiY29tbW9uL19wb3B1cFwiO1xuQGltcG9ydCBcImNvbW1vbi9fYWxlcnRfbW9kYWxcIjtcblxuQGltcG9ydCBcImNvbW1vbi9fZm9ybV9zaWduX2NvbW1vblwiO1xuXG5AaW1wb3J0IFwiY29tbW9uL19jb21tb25fY29udGVudHNcIjtcbkBpbXBvcnQgXCJjb21tb24vX2J0bl93cmFwXCI7XG5AaW1wb3J0IFwiY29tbW9uL19zcGlubmVyXCI7XG5AaW1wb3J0IFwiY29tbW9uL19jYWxjdWxhdGVcIjtcbkBpbXBvcnQgXCJjb21tb24vX3Jldmlld19mb3JtXCI7XG5AaW1wb3J0IFwiY29tbW9uL19maWxlX2F0dGFjaFwiO1xuXG5AaW1wb3J0IFwiY29tbW9uL19yZXZlYWxfYmxvY2tcIjtcbiIsIi8vLy8vZGVmYXVsdC8vLy8vXG4vL2NvbG9yXG4kZ193aGl0ZTogI2ZmZiAhZGVmYXVsdDtcbiRnX2JsYWNrOiAjMDAwICFkZWZhdWx0O1xuJGdfcmVkOiAjY2QyMDAwO1xuXG4kZ19wb2ludC1mb250LWNvbG9yOiAjMDBhZWVmO1xuJGdfcG9pbnQtZm9udC1jb2xvcjI6ICMxYjQ1OGU7XG4kZ19wb2ludC10aGVtZS1jb2xvcjogIzAwYWVlZjtcbiRnX3BvaW50LXRoZW1lLWNvbG9yMjogIzFiNDU4ZTtcbiRnX2JvcmRlci1jb2xvciA6ICNkZGQ7XG5cbi8vZm9udFxuLy8tZm9udC1mYW1pbHlcbiRnX2ZvbnQtZmFtaWx5OiAoXG4gIHN5c3RlbTogJyBcIuunkeydgCDqs6DrlJVcIiwgXCJNYWxndW4gR290aGljXCIsIFwi7JWg7ZSMIFNEIOyCsOuPjOqzoOuUlSBOZW9cIiwgXCJBcHBsZSBTRCBHb3RoaWMgTmVvXCIsIHNhbnMtc2VyaWYgJyxcbiAgbm90bzogJ1wiTm90byBTYW5zIEtSXCIsIHNhbnMtc2VyaWYnLFxuICBsYXRvIDogJ1wiTGF0b1wiLCBzYW5zLXNlcmlmJyxcbiAgZG90dW06ICdcIkRvdHVtXCIsIHNhbnMtc2VyaWYnLFxuKTtcblxuJGZvbnQtc3lzdGVtOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIHN5c3RlbSl9O1xuJGZvbnQtbm90bzogI3ttYXAtZ2V0KCRnX2ZvbnQtZmFtaWx5LCBub3RvKX07XG4kZm9udC1sYXRvOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIGxhdG8pfTsgLy8xMDAoVCksMzAwKEwpLDQwMChSKSw3MDAoQiksOTAwKEIpXG4kZm9udC1kb3R1bTogI3ttYXAtZ2V0KCRnX2ZvbnQtZmFtaWx5LCBkb3R1bSl9O1xuXG4vLy1kZWZhdWx0IGZvbnQg7ISk7KCVXG4kZm9udC0zMDAgOiAkZm9udC1ub3RvO1xuJGZvbnQtNDAwIDogJGZvbnQtbm90bztcbiRmb250LTUwMCA6ICRmb250LW5vdG87XG4kZm9udC03MDAgOiAkZm9udC1ub3RvO1xuJGZvbnQtODAwIDogJGZvbnQtbm90bztcblxuLy8tZm9udC1zaXplXG4kZ19mb250LXNpemU6KFxuICB4czogMTBweCxcbiAgc206IDEycHgsXG4gIG1kOiAxNXB4LFxuICBsZzogMThweCxcbiAgeGw6IDI0cHgsXG4pO1xuXG4vLy1mb250LXdlaWdodFxuJGdfZm9udC13ZWlnaHRzOiAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwO1xuXG4vLy1sZXR0ZXItc3BhY2luZ1xuXG4vLy8vL21lZGlhLy8vLy9cbiRnX21lZGlhLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTQ0cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pO1xuXG4vLy8vL2xheW91dC8vLy8vXG4vL2FyZWFcbiRnX21heC13aWR0aDogMTE0MHB4O1xuJGdfYXJlYS1ndXR0ZXItd2lkdGg6IDIwcHg7XG5cbi8vZ3JpZFxuJGdfZ3JpZC1jb2x1bW5zOiAxMjtcbiRnX2dyaWQtZ3V0dGVyLXdpZHRoOiAxJTtcblxuJGdfZGVmYXVsdC1hcmVhOiAoXG4gIG1heC13aWR0aDogJGdfbWF4LXdpZHRoLFxuICBndXR0ZXItd2lkdGg6ICRnX2FyZWEtZ3V0dGVyLXdpZHRoLFxuICB3aWR0aDogMTAwJVxuKTtcbiRnX2Z1bGwtYXJlYTogKFxuICBtYXgtd2lkdGg6IDE3NTBweCxcbiAgZ3V0dGVyLXdpZHRoOiAkZ19hcmVhLWd1dHRlci13aWR0aCxcbiAgd2lkdGg6IDEwMCVcbik7XG4kZ19ub2d1dHRlci1hcmVhOiAoXG4gIG1heC13aWR0aDogJGdfbWF4LXdpZHRoXG4pO1xuXG4vL2dyaWRcbiRnX2dyaWQtY29sLWluZm86IChcbiAgZ3JpZC1jb2wtY250OiAxMixcbiAgZ3JpZC1jb2wtbmFtZTogbnVsbFxuKTtcbiRncmlkLWNvbDUtaW5mbzogKFxuICBncmlkLWNvbC1jbnQ6IDUsXG4gIGdyaWQtY29sLW5hbWU6IGZpdmUtXG4pO1xuXG4vLy8vL1VUSUxJVElFUy8vLy8vXG4vL2NsZWFyXG5cbi8vc3BhY2luZ1xuJHNwYWNlcnM6KFxuICAwOiAwLFxuICA1OiA1cHgsXG4gIDEwOiAxMHB4LFxuICAxNTogMTVweCxcbiAgMjA6IDIwcHgsXG4gIDI1OiAyNXB4LFxuICAzMDogMzBweCxcbiAgNDA6IDQwcHgsXG4gIDUwOiA1MHB4LFxuICA2MDogNjBweCxcbiAgNzA6IDcwcHgsXG4gIDgwOiA4MHB4LFxuICA5MDogOTBweCxcbiAgMTAwOiAxMDBweCxcbiAgMTIwOiAxMjBweCxcbik7XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS8vXG5cbi8vLy8vQ09NUE9ORU5UUy8vLy8vXG5AaW1wb3J0IFwidmFyaWFibGVzX2NvbXBvbmVudHMvX2J1dHRvblwiO1xuQGltcG9ydCBcInZhcmlhYmxlc19jb21wb25lbnRzL19mb3Jtc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc19jb21wb25lbnRzL19jYXJkc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc19jb21wb25lbnRzL190YWJsZVwiO1xuQGltcG9ydCBcInZhcmlhYmxlc19jb21wb25lbnRzL190YWJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNfY29tcG9uZW50cy9fcGFnaW5hdGlvblwiO1xuLy8gQGltcG9ydCBcInZhcmlhYmxlc19jb21wb25lbnRzL190b29sdGlwXCI7IC8vIOyCrOyaqe2VmOyngCDslYrripQg67aA67aE7J2AIOyjvOyEnSAoIGJhc2Uuc2NzcyDsl5Drj4Qg7KO87ISdIClcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ly9cbiIsIi8vIF9idXR0b25cbiRnX2J0bi1zaXplOiAoeHM6ICggLy8g67Cw7Iah7KGw7ZqMLO2bhOq4sOyekeyEsVxuICAgIHdpZHRoOiA1MHB4LFxuICAgIGhlaWdodDogMzdweCxcbiAgICBsaW5lLWhlaWdodDogMzdweCxcbiAgICBmb250LWZhbWlseTogJGZvbnQtZG90dW0sXG4gICAgZm9udC1zaXplOiAxMnB4LFxuICApLFxuICBzbTogKCAvLyDtmozsm5DqsIDsnoUsIOuniOydtO2OmOydtOyngCwg6rKM7Iuc7YyQLCBwb3B1cCBidG4g6rSA66CoIOuyhO2KvFxuICAgIHdpZHRoOiA5MHB4LFxuICAgIGhlaWdodDogMzdweCxcbiAgICBsaW5lLWhlaWdodDogMzdweCxcbiAgICBmb250LWZhbWlseTogJGZvbnQtZG90dW0sXG4gICAgZm9udC1zaXplOiAxMnB4LFxuICApLFxuICBtZDogKCAvL+ydvOuwmCDtjpjsnbTsp4BcbiAgICB3aWR0aDogMjEwcHgsXG4gICAgaGVpZ2h0OiA1NXB4LFxuICAgIGxpbmUtaGVpZ2h0OiA1NXB4LFxuICAgIGZvbnQtc2l6ZTogMTVweCxcbiAgKSxcbiAgbGc6ICggLy/snqXrsJTqtazri4hcbiAgICB3aWR0aDoyNjVweCxcbiAgICBoZWlnaHQ6IDQwcHgsXG4gICAgbGluZS1oZWlnaHQ6IDQwcHgsXG4gICAgZm9udC1zaXplOiAxNXB4LFxuICAgIGZvbnQtd2VpZ2h0OjUwMCxcbiAgKSxcbiAgeGw6ICggLy/roZzqt7jsnbgsIO2ajOybkOqwgOyehSwg7JWE7J2065SUJuu5hOuwgOuyiO2YuCDssL7quLAg7ZSM66Gc7JqwXG4gICAgaGVpZ2h0OiA1MHB4LFxuICAgIGxpbmUtaGVpZ2h0OiA1MHB4LFxuICAgIGZvbnQtc2l6ZTogMTVweCxcbiAgICBmb250LXdlaWdodDo1MDAsXG4gICAgbWVkaWE6IChtZDogKGhlaWdodDogNTVweCxcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU1cHgsXG4gICAgICApKSksXG4gIGZ1bGwtc20gOiAoIC8vIOqyjOyLnO2MkOyXkOyEnCDsgqzsmqlcbiAgICB3aWR0aDoxMDAlLFxuICAgIGhlaWdodDogNDJweCxcbiAgICBsaW5lLWhlaWdodDogNDJweCxcbiAgICBmb250LWZhbWlseTogJGZvbnQtZG90dW0sXG4gICAgZm9udC1zaXplOiAxMnB4LFxuICAgIG1lZGlhIDogKG1kIDogKHdpZHRoOiA5MHB4LFxuICAgICAgICBoZWlnaHQ6IDM3cHgsXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4LFxuICAgICAgKSxcbiAgICApKSxcbiAgZnVsbC1tZDogKCAvL+ydvOuwmCDtjpjsnbTsp4BcbiAgICB3aWR0aDogMTAwJSxcbiAgICBtYXgtd2lkdGg6IDIxMHB4LFxuICAgIGhlaWdodDogNTVweCxcbiAgICBsaW5lLWhlaWdodDogNTVweCxcbiAgICBmb250LXNpemU6IDE1cHgsXG4gICksXG4gIHBvcHVwOiAoIC8vcG9wdXAg67KE7Yq8XG4gICAgbWF4LXdpZHRoOjIxMHB4LFxuICAgIGxpbmUtaGVpZ2h0OiA1NXB4LFxuICAgIGhlaWdodDogNTVweCxcbiAgKSxcbiAgZnVsbDood2lkdGg6IDEwMCUsXG4gICksXG4pO1xuXG4kZ19idG4tZ3JvdXAgOiAoIC8vIOuyhO2KvCDsiqTtg4Dsnbwg7ISk7KCV7ZWY6riwXG4gIHBvaW50IDogKCAvLyBkZWZhdWx0XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdfcG9pbnQtdGhlbWUtY29sb3IyLFxuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQsXG4gICAgaG92ZXIgOiAoYmFja2dyb3VuZC1jb2xvcjojMGIyZDY3LFxuICAgICkpLFxuICBzdWItcG9pbnQgOihiYWNrZ3JvdW5kLWNvbG9yOiRnX3BvaW50LXRoZW1lLWNvbG9yLFxuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQsXG4gICAgaG92ZXIgOiAoYmFja2dyb3VuZC1jb2xvcjojMDc5MGQwLFxuICAgICkpLFxuICBzdHlsZTIgOiAoIC8vIO2ajOybkOqwgOyehSwg7JWE7J2065SUJuu5hOuwgOuyiO2YuCDssL7quLBcbiAgICBib3JkZXI6MXB4IHNvbGlkICNjY2MsXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMCxcbiAgICBjb2xvcjogIzU1NSxcbiAgKSxcbiAgc3R5bGUzIDogKCAvLyDso7zrrLjst6jshowsIOyjvOusuOumrOyKpO2KuOqygOyDiVxuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTUsXG4gICAgY29sb3I6ICNmZmYsXG4gICksXG4gIG91dGxpbmUtc3R5bGUxIDogKCAvLyDroZzqt7jsnbgsIOyjvOusuOyDgeyEuOuztOq4sCwgY3VzdG9tMlxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQsXG4gICAgYmFja2dyb3VuZC1jb2xvcjojZmZmLFxuICAgIGNvbG9yOiM1NTUgIWltcG9ydGFudCxcbiAgICBob3ZlciA6IChiYWNrZ3JvdW5kLWNvbG9yOiNmMmYyZjIsXG4gICAgKSksXG4gIG91dGxpbmUtc3R5bGUyIDogKCAvLyDquIDsk7DquLBcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMjIyLFxuICAgIGJhY2tncm91bmQtY29sb3I6I2ZmZixcbiAgICBjb2xvcjojMjIyLFxuICApLFxuICBvdXRsaW5lLXN0eWxlMzogKGJvcmRlcjogMXB4IHNvbGlkICNmZmYsXG4gICAgY29sb3IgOiNmZmYsXG4gICAgaG92ZXI6IChiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgICApKSxcbik7IiwiLy8gX2Zvcm1cbiRnX2Zvcm0td3JhcDogKHRhYmxlIDogKCAvLy5mb3JtLXdyYXAtdGFibGUgKO2ajOybkOqwgOyehSbsoJXrs7QsIOyjvOusuOqysOygnCbrgrTsl60pXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICBmb3JtLXdyYXA6ICggLy8uZm9ybS13cmFwLWZsZXggLmZvcm0td3JhcFxuICAgICAgZGlzcGxheTogZmxleCxcbiAgICApLFxuICAgIGZvcm0tdGl0bGU6ICggLy8uZm9ybS13cmFwLWZsZXggLmZvcm0tdGl0bGVcbiAgICAgIGRpc3BsYXk6IGZsZXgsXG4gICAgICBmbGV4LWdyb3c6IDAsXG4gICAgICBmbGV4LXNocmluazogMSxcbiAgICAgIGZsZXgtYmFzaXM6IDkwcHgsXG4gICAgICBtaW4td2lkdGg6IDkwcHgsXG4gICAgICBsaW5lLWhlaWdodDoxLjUsXG4gICAgICBwYWRkaW5nOiAxOXB4IDEwcHgsXG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZG90dW0sXG4gICAgICBmb250LXNpemU6IDEycHgsXG4gICAgICBtZWRpYTogKHNtOiAoZmxleC1iYXNpczogMTAwJSxcbiAgICAgICAgICBtYXgtd2lkdGg6MTUwcHgsXG4gICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4LFxuICAgICAgICApLFxuICAgICAgICBtZDogKG1heC13aWR0aDoyMDNweCxcbiAgICAgICAgICBmb250LXNpemU6IDEzcHgsXG4gICAgICAgICksXG4gICAgICApLFxuICAgICksXG4gICAgZm9ybS1ib2R5OiAoIC8vLmZvcm0td3JhcC1mbGV4IC5mb3JtLWJvZHlcbiAgICAgIGZsZXgtZ3JvdzogMCxcbiAgICAgIGZsZXgtc2hyaW5rOiAxLFxuICAgICAgZmxleC1iYXNpczogNDAzcHgsXG4gICAgICBsaW5lLWhlaWdodDoxLjUsXG4gICAgICBwYWRkaW5nOiBcIjEwcHhcIixcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICApLFxuICApLFxuICBzdHlsZTEgOiAoIC8vLmZvcm0td3JhcC1zdHlsZTEgKOyCrOyXheyEpOuqhe2ajCDtjJ3sl4Ug7IKs7JqpIC8gcHJlc2VudGF0aW9uX2luc2VydC5waHApXG4gICAgbWFyZ2luLWJvdHRvbTogLTI0cHgsXG4gICAgZm9ybS13cmFwOiAoIC8vLmZvcm0td3JhcC1mbGV4IC5mb3JtLXdyYXBcbiAgICAgIG1hcmdpbi1ib3R0b206IDI0cHgsXG4gICAgKSxcbiAgICBmb3JtLXRpdGxlOiAoIC8vLmZvcm0td3JhcC1mbGV4IC5mb3JtLXRpdGxlXG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHgsXG4gICAgICBmb250LXNpemU6IDE1cHgsXG4gICAgICBjb2xvcjogIzU1NSxcbiAgICApLFxuICAgIGZvcm0tYm9keTogKCAvLy5mb3JtLXdyYXAtZmxleCAuZm9ybS1ib2R5XG4gICAgICBmb250LXNpemU6IDE1cHgsXG4gICAgKSxcbiAgKSxcbik7XG4vL19pbnB1dFxuJGdfZmllbGQtc3R5bGU6ICggLy8oIGZvcm3sl5DshJwg6rCZ7J20ICdpbnB1dCxzZWxlY3QsdGV4dGFyZWEnIHN0eWxl7J20IO2VqOq7mCDsgqzsmqnsi5wgKVxuICBzdHlsZTE6ICggLy/qtIDrpqzsnpBcbiAgICBpbnB1dF9kZWZhdWx0IDogKCAvLy5maWVsZC1zdHlsZTEgaW5wdXQgLi5cbiAgICAgIGhlaWdodDphdXRvLFxuICAgICAgcGFkZGluZzogMCAwIDVweCAwLFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCxcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDVkNmQ4LFxuICAgICAgZm9jdXMtc3R5bGUgOiAoYm9yZGVyOjFweCBzb2xpZCAkZ19wb2ludC10aGVtZS1jb2xvcixcbiAgICAgICksXG4gICAgICBwbGFjZWhvbGRlci1zdHlsZSA6IChjb2xvcjogI2NjY2ZkNixcbiAgICAgICksXG4gICAgKSxcbiAgICBzZWxlY3QgOiAoIC8vLmZpZWxkLXN0eWxlMSBzZWxlY3QgLi5cbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwMHB4IGJvdHRvbSA1MCUsXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9idG5fc2VsZWN0X2Fycm93X3N0MDEuc3ZnKSxcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCA3cHgsXG4gICAgKSxcbiAgICB0ZXh0YXJlYSA6ICggLy8uZmllbGQtc3R5bGUxIHRleHRhcmVhIC4uXG4gICAgICBoZWlnaHQ6MTUwcHgsXG4gICAgICBwYWRkaW5nIDogNXB4LFxuICAgICAgYm9yZGVyOjFweCBzb2xpZCAjZGRkLFxuICAgICksXG4gICksXG4gIHN0eWxlMjogKCAvL+2ajOybkOqwgOyehSwg7ZqM7JuQ7KCV67O0LCDso7zrrLjqsrDsoJwsIOyjvOusuO2ZleyduCDtj7xcbiAgICBpbnB1dF9kZWZhdWx0IDogKGZsZXgtZ3JvdzogMSxcbiAgICAgIGZsZXgtc2hyaW5rOiAwLFxuICAgICAgZmxleC1iYXNpczogMTAwJSxcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRnX2JvcmRlci1jb2xvcixcbiAgICAgIGhlaWdodDogMzdweCxcbiAgICAgIHBhZGRpbmc6IDAgMTBweCxcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW0sXG4gICAgICBwbGFjZWhvbGRlci1zdHlsZSA6IChjb2xvcjogI2FhYSxcbiAgICAgICksXG4gICAgKSxcbiAgICBzZWxlY3QgOiAoIC8vICjtmozsm5DqsIDsnoUs7ZqM7JuQ7KCV67O0KSDsl7Drnb3ssphcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDEwcHgsXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1cHggYm90dG9tIDUwJSxcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2J0bl9zZWxlY3RfYXJyb3dfc3QwMi5zdmcpLFxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDdweCxcbiAgICAgIG1lZGlhOihtZDoocGFkZGluZzogMCAzNXB4IDAgMTBweCxcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGJvdHRvbSA1MCUsXG4gICAgICAgICkpKSxcbiAgICB0ZXh0YXJlYSA6IChtYXgtd2lkdGg6aW5pdGlhbCxcbiAgICAgIGhlaWdodDoxMDBweCxcbiAgICAgIHBhZGRpbmcgOiAxMHB4LFxuICAgICkpLFxuICBzdHlsZTM6ICggLy/roZzqt7jsnbgsIO2ajOybkOqwgOyehSDtlIzroZzsmrAgLy/siJjsoJXsmYTro4xcbiAgICBpbnB1dF9kZWZhdWx0IDogKGJvcmRlcjogMXB4IHNvbGlkICNkZGQsXG4gICAgICBoZWlnaHQ6IDUwcHgsXG4gICAgICBwYWRkaW5nOiAwIDEwcHgsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICAgIHBsYWNlaG9sZGVyLXN0eWxlIDogKGNvbG9yOiAjYWFhLFxuICAgICAgKSxcbiAgICAgIG1lZGlhOiAobWQ6IChoZWlnaHQ6NTVweCxcbiAgICAgICAgKSkpLFxuICAgIHNlbGVjdCA6IChvdmVyZmxvdzogaGlkZGVuLFxuICAgICkpLFxuICBzdHlsZTQ6ICggLy8o7IKs7JeF7ISk66qF7ZqMIO2MneyXhSDsgqzsmqkgLyBwcmVzZW50YXRpb25faW5zZXJ0LnBocClcbiAgICBpbnB1dF9kZWZhdWx0IDogKGJvcmRlcjogMXB4IHNvbGlkICRnX2JvcmRlci1jb2xvcixcbiAgICAgIGhlaWdodDogNTBweCxcbiAgICAgIHBhZGRpbmc6MTVweCAxMHB4LFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQsXG4gICAgICBmb250LXNpemU6IDE0cHgsXG4gICAgICBwbGFjZWhvbGRlci1zdHlsZSA6IChjb2xvcjogI2FhYSxcbiAgICAgICAgZm9udC13ZWlnaHQ6MzAwLFxuICAgICAgKSxcbiAgICAgIG1lZGlhOiAobWQ6IChmb250LXNpemU6IDE1cHgsXG4gICAgICAgICAgcGFkZGluZzoxNXB4LFxuICAgICAgICApKSksXG4gICAgc2VsZWN0IDogKHBhZGRpbmctcmlnaHQ6IDMwcHgsXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAyMHB4IGNlbnRlcixcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2NvbW1vbl9hcnJvd19pY29uX2Rvd24uc3ZnKSxcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCA3cHgsXG4gICAgKSxcbiAgKSk7XG5cbi8vX3RleHRhcmVhXG4kZ190ZXh0LWFyZWEtc3R5bGU6ICggLy8oIO2OmOydtOyngOyXkOyEnCDsgqzsmqnsi5wgKVxuICBzdHlsZTE6ICggLy8udGV4dGFyZWEtc3R5bGUxIHRleHRhcmVhIHt9XG4gICAgLy8g7IKs7Jqp7IucIGNzcyDstpTqsIBcbiAgKSxcbik7XG5cbi8vX3NlbGVjdFxuJGdfc2VsZWN0LXN0eWxlOiAoIC8vLnNlbGVjdC1zdHlsZTEgc2VsZWN0IHt9ICgg7Y6Y7J207KeA7JeQ7IScIOyCrOyaqeyLnCApXG4gIHN0eWxlMTogKCAvLyDsg4Htkogg66as7Iqk7Yq4LCDsg4HshLgsIOuniOydtO2OmOydtOyngCBcbiAgICB3aWR0aDogMTAwJSxcbiAgICBoZWlnaHQ6IDUwcHgsXG4gICAgbGluZS1oZWlnaHQ6IDQ3cHgsXG4gICAgcGFkZGluZzogMCAxMHB4LFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRnX2JvcmRlci1jb2xvcixcbiAgICBmb250LXNpemU6IDE1cHgsXG4gICAgY29sb3I6ICM1NTUsXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTIlIDUwJSxcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9jb21tb25fYXJyb3dfaWNvbl9kb3duLnN2ZyksXG4gICAgYmFja2dyb3VuZC1zaXplOiBpbml0aWFsLFxuICAgIGJhY2tncm91bmQtY29sb3I6I2ZmZixcbiAgICBtZWRpYTogKHNtOiAocGFkZGluZzogMCAxNXB4LFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgNTAlLFxuICAgICAgKSkpLFxuICBzdHlsZTI6ICggLy8g6rKM7Iuc7YyQIOq4gOyTsOq4sCAo6rKM7Iuc66y8IO2DgOyehSlcbiAgICB3aWR0aDogMTIwcHgsXG4gICAgaGVpZ2h0OiAzN3B4LFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRnX2JvcmRlci1jb2xvcixcbiAgICBwYWRkaW5nOiAwIDEwcHgsXG4gICAgZm9udC1zaXplOiAxMnB4LFxuICAgIGNvbG9yOiAjMjIyLFxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkwJSA1MCUsXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vY29tbW9uX2Fycm93X2ljb25fZG93bi5zdmcpLFxuICAgIGJhY2tncm91bmQtc2l6ZTogaW5pdGlhbCxcbiAgKSxcbik7XG5cbi8vX2NoZWNrLWJveFxuJGdfY2hlY2stYm94LWltZzogKGltZy0xIDogKGRpc3BsYXk6ZmxleCxcbiAgICBhbGlnbi1pdGVtcyA6IGZsZXgtc3RhcnQsXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4LFxuICAgIGNvbG9yOiM2NjYsXG4gICAgY2hlY2tib3gtc3R5bGUgOiAoZGlzcGxheTogaW5saW5lLWJsb2NrLFxuICAgICAgd2lkdGg6IDIycHgsXG4gICAgICBtaW4td2lkdGg6IDIycHgsXG4gICAgICBoZWlnaHQ6IDIycHgsXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9pbWdfY2hlY2tib3gwMl9vZmYuc3ZnKSxcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUsXG4gICAgKSxcbiAgICBjaGVja2VkLXN0eWxlIDogKGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9pbWdfY2hlY2tib3gwMl9vbi5zdmcpLFxuICAgICksXG4gICAgdGV4dC1zdHlsZSA6IChkaXNwbGF5OiBmbGV4LFxuICAgICAgZmxleC13cmFwOiB3cmFwLFxuICAgICAgbGluZS1oZWlnaHQ6MS41LFxuICAgICAgcGFkZGluZy1sZWZ0OjdweCxcbiAgICAgIGZvbnQtc2l6ZTogMTRweCxcbiAgICAgIGNoZWNrIDogKGNvbG9yOiNmZjhlMmEsXG4gICAgICApLFxuICAgICksXG4gICksXG4gIGltZy0yIDogKGRpc3BsYXk6aW5saW5lLWJsb2NrLFxuICAgIG1hcmdpbi1yaWdodDogMTVweCxcbiAgICBjaGVja2JveC1zdHlsZSA6IChkaXNwbGF5OiBpbmxpbmUtYmxvY2ssXG4gICAgICB3aWR0aDogMzJweCxcbiAgICAgIGhlaWdodDogMzJweCxcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKC92aWV3cy9yZXMvaW1ncy9wYWdlL2ltZ19jaGVja2JveDAxX29mZi5wbmcpLFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSxcbiAgICApLFxuICAgIGNoZWNrZWQtc3R5bGUgOiAoYmFja2dyb3VuZC1pbWFnZTogdXJsKC92aWV3cy9yZXMvaW1ncy9wYWdlL2ltZ19jaGVja2JveDAxX29uLnBuZyksXG4gICAgKSxcbiAgICB0ZXh0LXN0eWxlIDogKGRpc3BsYXk6IGlubGluZS1ibG9jayxcbiAgICAgIHBhZGRpbmctbGVmdDo0cHgsXG4gICAgICBmb250LXNpemU6IDE0cHgsXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlLFxuICAgICksXG4gICksXG4pO1xuJGdfY2hlY2stYm94LXRhZzogKHRhZy0xIDogKCAvLyDslYTsnbTrlJTsoIDsnqUgLy8g7JW96rSA64+Z7J2YIC8vIOqysOygnOyImOuLqCAvL+uwsOyGoeyngCDshKDtg50gLy8g67Cw7Iah7KeA7JetIOyEoO2DnVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSxcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2ssXG4gICAgbWFyZ2luLXJpZ2h0OjMwcHgsIC8vc2VsZlxuICAgIGNoZWNrYm94LXN0eWxlIDogKCAvLyAmOmJlZm9yZVxuICAgICAgdG9wOjlweCxcbiAgICAgIHdpZHRoOiAyMnB4LFxuICAgICAgaGVpZ2h0OiAyMnB4LFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYyxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYsXG4gICAgKSxcbiAgICBjaGVja2VkLXN0eWxlIDogKCAvLy5jdXN0b20tY2hlY2tlZFxuICAgICAgbGVmdDowLFxuICAgICAgdG9wOjlweCxcbiAgICAgIHdpZHRoOiAyMnB4LFxuICAgICAgaGVpZ2h0OiAyMnB4LFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdfcG9pbnQtdGhlbWUtY29sb3IyLFxuICAgICksXG4gICAgdGV4dC1zdHlsZSA6ICggLy8udGV4dFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlLFxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrLFxuICAgICAgbGluZS1oZWlnaHQ6IDEsXG4gICAgICBwYWRkaW5nLWxlZnQ6IDMxcHgsIC8vIOuwleyKpO2BrOq4sCArIOuwleyKpOyZgCDthY3siqTtirgg7IKs7J207J2YIOqwhOqyqVxuICAgICAgZm9udC1zaXplOiAxNXB4LFxuICAgICAgY29sb3I6ICMwMDAsXG4gICAgKSxcbiAgKSxcbiAgdGFnLTIgOiAocG9zaXRpb246IHJlbGF0aXZlLFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayxcbiAgICBtYXJnaW4tcmlnaHQ6MTVweCwgLy9zZWxmXG4gICAgY2hlY2tib3gtc3R5bGUgOiAoIC8vICY6YmVmb3JlXG4gICAgICB3aWR0aDogMTdweCxcbiAgICAgIGhlaWdodDogMTdweCxcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQsXG4gICAgKSxcbiAgICBjaGVja2VkLXN0eWxlIDogKCAvLy5jdXN0b20tY2hlY2tlZFxuICAgICAgLy8gd2lkdGg6OXB4LFxuICAgICAgLy8gaGVpZ2h0OiA5cHgsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1LFxuICAgICksXG4gICAgdGV4dC1zdHlsZSA6ICggLy8udGV4dFxuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4LCAvLyDrsJXsiqTtgazquLAgKyDrsJXsiqTsmYAg7YWN7Iqk7Yq4IOyCrOydtOydmCDqsITqsqlcbiAgICAgIGZvbnQtc2l6ZTogMTRweCxcbiAgICApLFxuICApKTsiLCIvLyBfY2FyZFxuJGdfY2FyZC13cmFwOiAoXG4gIGRlZmF1bHQ6IChcbiAgICB3cmFwOiAoXG4gICAgICBwYWRkaW5nOiAwIDMwcHgsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweCxcbiAgICAgIGJvcmRlci1zdHlsZTogKCBib3JkZXI6IFwiMXB4IHNvbGlkICNlN2U5ZWVcIiApLFxuICAgICAgYm9yZGVyLXJhZGl1czogNXB4XG4gICAgKSxcbiAgICBoZWFkZXI6IChcbiAgICAgIHBhZGRpbmc6IDI1cHggMCxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYsXG4gICAgICBib3JkZXItc3R5bGU6ICggYm9yZGVyLWJvdHRvbTogXCIxcHggc29saWQgI2U3ZTllZVwiICksXG4gICAgICBmb250LXNpemU6IDE2cHhcbiAgICApLFxuICAgIGJvZHk6IChcbiAgICAgIHBhZGRpbmc6IDMwcHggMCxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZcbiAgICApLFxuICAgIGZvb3RlcjogKFxuICAgICAgcGFkZGluZzogMjVweCAwLFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICAgIGJvcmRlci1zdHlsZTogKCBib3JkZXItdG9wOiBcIjFweCBzb2xpZCAjZTdlOWVlXCIgKVxuICAgIClcbiAgKVxuKTtcbiIsIi8vIF90YWJsZVxuJGdfcnAtdGFibGU6IChcbiAgc3R5bGUxOiAoXG4gICAgZm9udC1mYW1pbHk6JGZvbnQtZG90dW0sXG4gICAgY29sb3I6IzIyMixcbiAgICBycC10YWJsZTogKFxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyMjJcbiAgICApLFxuICAgIHJwLXRoZWFkOiAoXG4gICAgICBkaXNwbGF5OiBub25lLFxuICAgICAgbWVkaWE6IChcbiAgICAgICAgbWQ6IChcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZSxcbiAgICAgICAgICB3aWR0aDogMTAwJSxcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZCxcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHgsXG4gICAgICAgICksXG4gICAgICApXG4gICAgKSxcbiAgICBycC10aDogKFxuICAgICAgbWVkaWE6IChcbiAgICAgICAgbWQ6IChcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsLFxuICAgICAgICAgIHBhZGRpbmc6IDE4cHggNXB4LFxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICAgICAgICBjb2xvcjogIzg4OCxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICApLFxuICAgIHJwLXRyOiAoXG4gICAgICBkaXNwbGF5OiBibG9jayxcbiAgICAgIHBhZGRpbmc6IDlweCA1cHgsXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZCxcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjVzLFxuICAgICAgLy8gXCImXCIgOiAoXG4gICAgICAvLyAgIFwiOmhvdmVyXCIgOiAoXG4gICAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYSxcbiAgICAgICAgLy8gKSxcbiAgICAgICAgLy8gXCIubm9uZS1ob3Zlcjpob3ZlclwiIDogKFxuICAgICAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYsXG4gICAgICAgIC8vICksXG4gICAgICAvLyApLFxuICAgICAgbWVkaWE6IChcbiAgICAgICAgbWQ6IChcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZSxcbiAgICAgICAgICB3aWR0aDogMTAwJSxcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHgsXG4gICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZCxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICApLFxuICAgIHJwLXRkOiAoXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2ssXG4gICAgICBwYWRkaW5nOiA1cHgsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgICAgIGZvbnQtc2l6ZTogMTFweCxcbiAgICAgIFwiJlwiIDogKFxuICAgICAgICBcIi50ZC1ibG9ja1wiIDogKFxuICAgICAgICAgIGRpc3BsYXkgOiBibG9ja1xuICAgICAgICApXG4gICAgICApLFxuICAgICAgbWVkaWE6IChcbiAgICAgICAgbWQ6IChcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsLFxuICAgICAgICAgIHdpZHRoOiAxMDAlLFxuICAgICAgICAgIHBhZGRpbmc6IDE2cHggNXB4LFxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlLFxuICAgICAgICAgIFwiJlwiIDogKFxuICAgICAgICAgICAgXCIudGQtYmxvY2tcIiA6IChcbiAgICAgICAgICAgICAgZGlzcGxheSA6IHRhYmxlLWNlbGxcbiAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICApXG4gICAgKSxcbiAgKVxuKTtcbiIsIi8vIF90YWJcbiRnX3RhYi1ncm91cCA6ICggLy8gLnRhYi13cmFwID4gLnRhYi1saXN0XG4gIHRhYi13cmFwLWRlZmF1bHQgOiAoIFxuICAgIGRpc3BsYXk6IGJsb2NrLFxuICAgIG1hcmdpbi1ib3R0b206NjBweCxcbiAgICBmb250LXNpemU6IDAsXG4gICAgY29sb3I6ICMwMDAsXG4gICAgdGV4dC1hbGlnbjpjZW50ZXIsXG4gICksXG4gIGJveC1zdHlsZSA6ICggXG4gICAgdGFiLWxpc3QgOiAoIFxuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2ssXG4gICAgICB3aWR0aDoxNDBweCxcbiAgICAgIHBhZGRpbmc6MTNweCAxMHB4LFxuICAgICAgYm9yZGVyOjFweCBzb2xpZCAjYmJiLFxuICAgICAgYm9yZGVyLXJpZ2h0OiAwLFxuICAgICAgZm9udC1zaXplOiAxNXB4LFxuICAgICAgY29sb3I6ICM3Nzc3NzcsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxuICAgICAgY3Vyc29yOnBvaW50ZXIsXG4gICAgICBhY3RpdmUgOiAoIC8vLnRhYi1saXN0LmFjdGl2ZVxuICAgICAgICBib3JkZXItY29sb3I6JGdfcG9pbnQtZm9udC1jb2xvcjIsXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnX3BvaW50LXRoZW1lLWNvbG9yMixcbiAgICAgICAgY29sb3I6ICRnX3doaXRlLFxuICAgICAgKSxcbiAgICAgIFwiJlwiIDogKFxuICAgICAgICBcIjpsYXN0LWNoaWxkXCIgOiAoXG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjYmJiLFxuICAgICAgICApXG4gICAgICApXG4gICAgKSxcbiAgKSxcbik7XG4iLCJcbi8vIF9wYWdpbmF0aW9uIFxuJGdfcGFnZS1pdGVtLWdyb3VwIDogKCAvLyAo66qF7LmtIDogYSDtg5zqt7ggcGFnZS1saW5rIOuhnCjsiqTtg4DsnbwpICAvIHBhZ2UtaXRlbSDsnbQg6rCB7J6Q7J2YIHdyYXAgKOqwhOqyqeyhsOyglSkvIOyghOyytOulvCAucGFnaW5hdGlvbuydtCDqsJDsi7jqs6Ag7J6I7J2MKVxuICAvLyBkZWZhdWx0XG4gIC8vIHdpZHRoOjIwcHgsXG4gIGhlaWdodDoyMHB4LFxuXG4gIC8vcGFkZGluZzoyMHB4LFxuICAvLyBtYXJnaW46MCAtMXB4LFxuICAvLyB0aGVtZS1jb2xvcjogI2ZmZixcbiAgLy8gYm9yZGVyIDogMXB4IHNvbGlkICMyMjIsXG4gIC8vYm9yZGVyLXJhZGl1czogM3B4LFxuICAvL2JvcmRlci1yYWRpdXMtZi1sOiAzcHgsIC8vIOyyq+uyiOynuCDrp4jsp4Drp4kg67KE7Yq8IOy9lOuEiCByYWRpdXNcbiAgLy9ib3JkZXItcmlnaHQgOiBub25lLCAvLyDrsoTtirzsnbQg67aZ7Ja07J6I64qUIOqyveyasFxuICAvL2JvcmRlci1zdHlsZTogKCAvLyBsYXN0LWNoaWxk7JeQIOyggeyaqeuQqFxuICAvL1x0Ym9yZGVyLXJpZ2h0IDogXCIxcHggc29saWQgI2UxZTFlMVwiLFxuICAvLyksXG5cbiAgZm9udC1zaXplOjEzcHgsXG4gIGZvbnQtd2VpZ2h0OjQwMCxcbiAgLy8gbGV0dGVyLXNwYWNpbmc6LTAuMDVlbSxcbiAgZm9udC1jb2xvcjojYWFhLFxuICBmb250LWZhbWlseTokZm9udC1sYXRvLFxuICAvLyBob3ZlclxuICBob3Zlci10aGVtZS1jb2xvcjojZmZmLFxuICAvLyBob3Zlci1ib3JkZXItY29sb3IgOiAjZGRkLFxuICBob3Zlci1jb2xvcjojMDAwLFxuXG4gIC8vIGFjdGl2ZVxuICAvLyBhY3RpdmUtdGhlbWU6I2YyZjJmMixcbiAgYWN0aXZlLWNvbG9yOiMwMDAsXG4gIGFjdGl2ZS1zdHlsZTogKCAvLyDsu6TsiqTthYDsmqlcbiAgICAvKiBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdfcG9pbnQtdGhlbWUtY29sb3IsICovXG4gICAgZm9udC13ZWlnaHQ6Ym9sZCxcbiAgKSxcblxuICAvLyBkaXNhYmxlZFxuICBkaW0tb3BhY2l0eSA6IC41LFxuICAvL2Rpc2FibGVkLXN0eWxlOiAoIC8vIOy7pOyKpO2FgOyaqVxuICAvL1x0Ly/rsoTtirzsl5DshJzripQgbWFwLWhhcy1rZXnqsJLsnYQg7J207Jqp7ZW07IScIO2CpOqwkuydtCDsnofsnLzrqbQg66e17J2YIO2CpOqwkuqzvCDrsqjrpZjroZwg7Lac66ClXG4gIC8vXHQvL+2OmOydtOyngOuEpOydtOyFmOyXkOyEnOuKlCDtgqTqsJLsnbQg7J6I7Jy866m0IOyViOyXkCDrgrTsmqkg6re464yA66GcIOy2nOugpS4uXG4gIC8vXHQvL+qysOqzvCDqsJLsnYAg6rCZ7Jy864KYIG1peGlu67Cp67KV7J20IOuLpOultOuLpCDtmITsnqxcbiAgLy9cdGJhY2tncm91bmQtY29sb3I6IzExMSxcbiAgLy9cdGNvbG9yOiAjMTExLFxuICAvL1x0Ym9yZGVyLWJvdHRvbTpcIjJweCBzb2xpZCAjMDIzODhiXCIsXG4gIC8vKSxcbiAgYXJyb3ctZ3JvdXAgOiAoXG4gICAgc3RhcnQgOiAoIC8v7Luk7Iqk7YWAXG4gICAgICB3aWR0aDogXCIxMDAlXCIsXG4gICAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgICAgYmFja2dyb3VuZC1pbWFnZSA6dXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vY29tbW9uX2Fycm93X2ljb25fc3RhcnQuc3ZnKSxcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyLFxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0LFxuICAgICksXG4gICAgcHJldiA6IChcbiAgICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICAgIGhlaWdodDogXCIxMDAlXCIsXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlIDp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2JvYXJkL3BhZ2luYXRpb25fcHJldl9pY29uLnBuZyksXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcixcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCxcbiAgICApLFxuICAgIG5leHQgOiAoXG4gICAgICB3aWR0aDogXCIxMDAlXCIsXG4gICAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgICAgYmFja2dyb3VuZC1pbWFnZSA6dXJsKC92aWV3cy9yZXMvaW1ncy9ib2FyZC9wYWdpbmF0aW9uX25leHRfaWNvbi5wbmcpLFxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIsXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQsXG4gICAgKSxcbiAgICBlbmQgOiAoXG4gICAgICB3aWR0aDogXCIxMDAlXCIsXG4gICAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgICAgYmFja2dyb3VuZC1pbWFnZSA6dXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vY29tbW9uX2Fycm93X2ljb25fZW5kLnN2ZyksXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcixcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCxcbiAgICApLFxuICApLFxuKTtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuQGltcG9ydCBcIm1peGlucy9fbWVkaWEtcXVlcnlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX21hcFwiO1xuXG4vLyBVdGlsaXRpZXNcbi8vQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIm1peGlucy9fY2xlYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2Zsb2F0XCI7XG5AaW1wb3J0IFwibWl4aW5zL19ob3ZlclwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcbi8vQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX3NjcmVlbnJlYWRlclwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX3ByZWZpeGVyXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuLy9AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcbi8vQGltcG9ydCBcIm1peGlucy90cmFuc2Zvcm1zXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcIm1peGlucy9fYm9yZGVyLXJhZGl1c1wiO1xuXG4vLyAvLyBMYXlvdXRcbi8vIEBpbXBvcnQgXCJtaXhpbnMvbmF2YmFyLWFsaWduXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2FyZWFcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2dyaWRcIjtcblxuLy8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ly8vXG5cblxuLy8gLy8gQ29tcG9uZW50c1xuLy9AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL190cmlhbmdsZVwiO1xuQGltcG9ydCBcIm1peGlucy9fYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9jYXJkc1wiO1xuQGltcG9ydCBcIm1peGlucy9fcGFnaW5hdGlvblwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL19mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZXNcIjtcbi8vQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX3RhYlwiO1xuXG4iLCIvLyBtZWRpYS1xdWVyeS1taW4g66+57Iqk7J24XG4vLyBb66ek6rCc67OA7IiYXVxuLy8gJGJyZWFrcG9pbnQg6riw67O46rCSOiDsl4bsnYxcbi8vICRicmVha3BvaW50IOyXkCDqsIDsmqnqsIDriqXtlZwg6rCSXG4vLyAoMSkgJG1lZGlhLWJyZWFrcG9pbnRzIOydmCDtgqQg6rCSICh4cywgc20sIG1kLCBsZywgeGwgKeykkSDtlZjrgphcbi8vICgyKSDqs6DsoJUgcHjqsJJcbi8vICRicmVha3BvaW50IOyghOuLrOuQnCDqsJLsl5Ag65Sw65287IScIEBtZWRpYShtaW4td2lkdGg6IFwi66ek6rCc67OA7IiY7JeQIO2VtOuLue2VmOuKlCDqsJJcIikg7IWL7YyF7ZW07KSN64uI64ukLlxuLy8gJGJyZWFrcG9pbnQg6rCS7J2EIO2UveyFgOuhnCDrhKPripTri6TrqbQg7ZW064u5IO2UveyFgOqwkuydmCDrr7jrlJTslrTsv7zrpqzrpbwg66eM65Ok7Ja0IOykjeuLiOuLpC5cbi8vIGV4KSBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHsgQGNvbnRlbnQgfVxuLy8gZXgpIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbig1MDBweCkgeyBAY29udGVudCB9XG5AbWl4aW4gbWVkaWEtcXVlcnktbWluKCAkYnJlYWtwb2ludCApIHtcbiAgQGlmIG1hcF9oYXNfa2V5KCAkZ19tZWRpYS1icmVha3BvaW50cywgJGJyZWFrcG9pbnQgKXtcbiAgICBAaWYgICRicmVha3BvaW50ID09IFwieHNcIiB7XG4gICAgICBAY29udGVudFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBtYXBfZ2V0KCRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkpIHtcbiAgICAgICAgQGNvbnRlbnRcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgdW5pdCgkYnJlYWtwb2ludCkgPT0gXCJweFwiIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludCl7ICBAY29udGVudCAgfVxuICB9XG59XG5AbWl4aW4gbWVkaWEtcXVlcnktbWF4KCAkYnJlYWtwb2ludCApIHtcbiAgQGlmIG1hcF9oYXNfa2V5KCAkZ19tZWRpYS1icmVha3BvaW50cywgJGJyZWFrcG9pbnQgKXtcbiAgICBAaWYgICRicmVha3BvaW50ID09IFwieHNcIiB7XG4gICAgICBAY29udGVudFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiBtYXBfZ2V0KCRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkpIHtcbiAgICAgICAgQGNvbnRlbnRcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgdW5pdCgkYnJlYWtwb2ludCkgPT0gXCJweFwiIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCl7ICBAY29udGVudCAgfVxuICB9XG59XG5cblxuLy8gbWVkaWEtcXVlcnktbWluLXZhbCDtlajsiJhcbi8vIOyghOyXreuzgOyImCAkbWVkaWEtYnJlYWtwb2ludHMgbWFw7J2YIHZhbHVl66W8IOuwmO2ZmO2VtCDspI3ri4jri6QuXG4vLyDso7zroZwgZWFjaCDrrLjqs7wg6rCZ7J2AIGxvb3Ag66y47JeQ7IScIO2ZnOyaqeuQqeuLiOuLpC5cbi8vIGV4KVxuLy8gQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwX2tleXMoJG1lZGlhLWJyZWFrcG9pbnRzKSB7XG4vLyAgICRwb2ludDogbWVkaWEtcXVlcnktbWluLXZhbCgkYnJlYWtwb2ludCk7XG4vLyAgIEBtZWRpYSAoIG1pbi13aWR0aDogI3skcG9pbnR9ICl7XG4vLyAgICAgLiN7JGJyZWFrcG9pbnR9LWYtbCB7IEBpbmNsdWRlIGZsb2F0LWxlZnQgfVxuLy8gICAgIC4jeyRicmVha3BvaW50fS1mLXIgeyBAaW5jbHVkZSBmbG9hdC1yaWdodCB9XG4vLyAgICAgLiN7JGJyZWFrcG9pbnR9LWYtbiB7IEBpbmNsdWRlIGZsb2F0LW5vbmUgfVxuLy8gICB9XG4vLyB9XG5AZnVuY3Rpb24gbWVkaWEtcXVlcnktbWluLXZhbCggJGJyZWFrcG9pbnQgKXtcbiAgQHJldHVybiBtYXBfZ2V0KCRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG59XG5cblxuXG5cblxuXG4iLCJAZnVuY3Rpb24gbWFwLXNldCgkbWFwLCAka2V5LCAkdmFsdWUpIHtcbiAgJG5ldzogKCRrZXk6ICR2YWx1ZSk7XG4gIEByZXR1cm4gbWFwLW1lcmdlKCRtYXAsICRuZXcpO1xufVxuXG5cbi8vcHJlZml4IOygnOqxsFxuLy/tg5zqt7jsnbTrpoQsIOyGjeyEsSwg7JWE7J2065SUIOuTsSAg7IWA66CJ7YSwIOqwgOuKpeuPhOuhnVxuQGZ1bmN0aW9uIG1ha2VNYXBUb0NvZGVzKCRtYXAsICRwcmVmaXg6IFwiXCIsICRzZWxmOiBmYWxzZSkge1xuICAkY29kZXMgOiAoKTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkbWFwIHtcbiAgICBAaWYgKCB0eXBlLW9mKCR2YWwpID09IG1hcCApIHtcblxuICAgICAgQGlmICgka2V5ID09IFwiJlwiKSB7XG4gICAgICAgICRtYWtlOiBtYWtlTWFwVG9Db2RlcygkdmFsLCBcIlwiLCB0cnVlKTtcbiAgICAgICAgJGNvZGVzOiBtYXAtbWVyZ2UoJGNvZGVzLCAkbWFrZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHNlbGVjdG9yOiBcIi4jeyRwcmVmaXh9I3ska2V5fVwiO1xuXG4gICAgICAgIEBpZiAoJHNlbGYpIHtcbiAgICAgICAgICAkc2VsZWN0b3IgOiBcIiYjeyRwcmVmaXh9I3ska2V5fVwiO1xuICAgICAgICB9XG4gICAgICAgICRtYWtlOiBtYWtlTWFwVG9Db2RlcygkdmFsLCAkcHJlZml4KTtcbiAgICAgICAgJGNvZGVzOiBtYXAtc2V0KCRjb2RlcywgJHNlbGVjdG9yLCAkbWFrZSk7XG4gICAgICB9XG4gICAgICBcbiAgICB9IEBlbHNlIHtcbiAgICAgICRjb2RlczogbWFwLXNldCgkY29kZXMsICRrZXksICR2YWwpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRjb2Rlcztcbn07XG5cblxuQG1peGluIHByaW50Q29kZXMoJG1hcCkge1xuXG4gIEBlYWNoICRrZXksICR2YWwgaW4gJG1hcCB7XG4gICBcbiAgICBAaWYgKCB0eXBlLW9mKCR2YWwpID09IG1hcCApIHtcbiAgICAgICN7JGtleX0ge1xuICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCR2YWwpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgI3ska2V5fSA6ICN7JHZhbH07XG4gICAgfVxuICAgIFxuICB9XG59XG5cbi8vIGlzTWFwIO2VqOyImFxuLy8gI3trZXl9IDogI3t2YWx1ZX3snZgg7ZiV7YOc66W8IOumrO2EtO2VtOyjvOuKlCDtlajsiJhcbi8vIGlzTWFwKCR2YWwsICRrZXkpO1xuLy8gaXNNYXAg7ZWo7IiY7JeQ7IScIOyduOyekOuhnCDrhJjslrTsmKggJyR2YWwn7JeQIO2VoOuLueuQnCDqsJLsnbQgbWFw7J20652866m0IGlzbWFw7ZWo7IiY66W8IOyerOq3gO2YuOy2nCDtlZzri6QuXG4vLyDsmIjsmbjsoIHsnLzroZwg7YKk6rCS7J20IFwiX1wiIOudvOuptCBpc1BzZXVkb+ulvCDtmLjstpztlZzri6QuXG4vLyDstZzsooXsoIHsnLzroZwgI3trZXl9IDogI3t2YWx1ZX3snZgg6rCS7J2EIOumrO2EtO2VmOuPhOuhnSDrp4zrk6Dri6QuXG5cbi8vaXNQc2V1ZG8g7ZWo7IiYXG4vL+qwgOyDgSDshKDtg53snpDrpbwg66eM65Ok7Ja0IOumrO2EtO2VtOyjvOuKlCDtlajsiJhcbi8vXG5cblxuLy9AZnVuY3Rpb24gaXNNYXAgKCR2YWwsICRrZXkpIHtcbi8vICAkcmVzdWx0IDogKCk7XG4vL1xuLy8gIEBpZiAodHlwZS1vZigkdmFsKSA9PSBtYXApIHtcbi8vICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbi8vICAgICAgQGlmICh0eXBlLW9mKCR2YWwyKSA9PSBtYXAgYW5kICRrZXkgPT0gbnVsbCkge1xuLy8gICAgICAgICRtYXAgOiBpc01hcCgkdmFsMiwgJGtleTIpO1xuLy8gICAgICAgICRtYXBrZXkgOiBtYXAta2V5cygkbWFwKTtcbi8vICAgICAgICAkcmVzdWx0OiBtYXAtc2V0KCRyZXN1bHQsICRtYXBrZXksIG1hcC1nZXQoJG1hcCwgI3skbWFwa2V5fSkpO1xuLy8gICAgICB9IEBlbHNlIGlmICh0eXBlLW9mKCR2YWwyKSA9PSBtYXAgYW5kICRrZXkgPT0gXCJfXCIpe1xuLy8gICAgICAgICRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJGtleTIsIGlzTWFwKCR2YWwyLCAka2V5MikpO1xuLy8gICAgICB9IEBlbHNlIHtcbi8vICAgICAgICAkcmVzdWx0OiBtYXAtc2V0KCRyZXN1bHQsICRrZXkyLCAkdmFsMik7XG4vLyAgICAgIH1cbi8vICAgIH1cbi8vICB9IEBlbHNlIHtcbi8vICAgICRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJHZhbCwgJGtleSk7XG4vLyAgfVxuLy9cbi8vICBAcmV0dXJuICRyZXN1bHQ7XG4vL307XG5cblxuLy9AZnVuY3Rpb24gaXNQc2V1ZG8gKCRrZXksICR2YWwpIHtcbi8vICAkcmVzdWx0OiBudWxsO1xuLy8gIEBpZiAoJGtleSA9PSBcIl9cIikge1xuLy8gICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xuLy8gICAgICAkcmVzdWx0OiBpc01hcCgka2V5MiwgJHZhbDIpO1xuLy8gICAgICBAcmV0dXJuIGlzTWFwKCRrZXkyLCAkdmFsMik7XG4vLyAgICB9XG4vLyAgfSBAZWxzZSAge1xuLy8gICAgJHJlc3VsdDogaXNNYXAoJGtleSwgJHZhbCk7XG4vLyAgICBAcmV0dXJuICRyZXN1bHQ7XG4vLyAgfVxuLy99O1xuXG5cbiIsIkBtaXhpbiBjbGVhcigpIHtcbiAgJjo6YWZ0ZXIge1xuICAgICBjb250ZW50OiBcIlwiO1xuICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgY2xlYXI6IGJvdGg7XG4gICB9XG59XG5cblxuXG4iLCJAbWl4aW4gZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIkBtaXhpbiBob3Zlci1vbntcbiAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUsICYub257IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3ZlcntcbiAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUgeyBAY29udGVudDsgfVxufVxuIiwiLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuQG1peGluIHRleHQtaGlkZSB7XG4gIGZvbnQ6IDAvMCBhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG59XG4iLCIvLyAvKiBwcmVmaXggKi9cbkBtaXhpbiBwcmVmaXhlcigkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzOigpKXtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXN7XG4gICAgI3snLScrJHByZWZpeCsnLScrJHByb3BlcnR5fTokdmFsdWU7XG4gIH1cbiAgI3skcHJvcGVydHl9IDogJHZhbHVlO1xufVxuXG4gIC8vIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgcm90YXRlKDQ1ZGVnKSwgd2Via2l0IG1zKTsgb3IgKFwid2Via2l0XCIsIFwibW96XCIpXG5cbiAvL2Nzc1xuICAvLyAuc2VsZWN0b3Ige1xuICAvLyAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAvLyAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC8vICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAvLyB9XG5cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuIiwiLy8gbWFrZS1hcmVhIOuvueyKpOyduFxuLy8g6riw67O46rCS7J20IG51bGzroZwg7IWL7YyF65CY7Ja0IOyeiOuKlCDsmpTshozripQg7J247J6Q6rCAIOyghOuLrOuQmOyngCDslYrsnYQg7IucIOy7tO2MjOydvCDrkJjsp4Ag7JWK7Iq164uI64ukLlxuLy8gW+unpOqwnOuzgOyImF1cbi8vICRtYXgtd2lkdGgg6riw67O46rCSOiBudWxsXG4vLyAkZ3V0dGVyLXdpZHRoIOq4sOuzuOqwkjogbnVsbFxuLy8gJHdpZHRoIOq4sOuzuOqwkjogMTAwJVxuLy8gZXgpIEBpbmNsdWRlIG1ha2UtYXJlYSggJG1heC13aWR0aDogJG1heC13aWR0aCwgJGd1dHRlci13aWR0aDogJGFyZWEtZ3V0dGVyLXdpZHRoICk7XG4vLyBleCkgQGluY2x1ZGUgbWFrZS1hcmVhKCAkd2lkdGg6IDE2MDBweCApO1xuLy9AbWl4aW4gbWFrZS1hcmVhKCAkbWF4LXdpZHRoOiBudWxsLCAkZ3V0dGVyLXdpZHRoOiBudWxsLCAkd2lkdGg6IDEwMCUgKSB7XG4vLyAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gIHdpZHRoOiAkd2lkdGg7XG4vLyAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuLy8gIG1hcmdpbi1yaWdodDogYXV0bztcbi8vICBtYXJnaW4tbGVmdDogYXV0bztcbi8vICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyLXdpZHRoO1xuLy8gIHBhZGRpbmctbGVmdDogJGd1dHRlci13aWR0aDtcbi8vfVxuXG5AbWl4aW4gbWFrZS1hcmVhKCAkYXJlYS1pbmZvOiAkZ19kZWZhdWx0LWFyZWEgKSB7XG4gICR3aWR0aDogMTAwJTtcbiAgQGlmICBtYXAtaGFzLWtleSgkYXJlYS1pbmZvLCB3aWR0aCkge1xuICAgICR3aWR0aCA6IG1hcC1nZXQoJGFyZWEtaW5mbywgd2lkdGgpXG4gIH0gQGVsc2Uge1xuICAgICR3aWR0aCA6IDEwMCVcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIG1heC13aWR0aDogbWFwLWdldCgkYXJlYS1pbmZvLCBtYXgtd2lkdGgpO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiBtYXAtZ2V0KCRhcmVhLWluZm8sIGd1dHRlci13aWR0aCk7XG4gIHBhZGRpbmctbGVmdDogbWFwLWdldCgkYXJlYS1pbmZvLCBndXR0ZXItd2lkdGgpO1xufVxuXG4iLCIvLyBtYWtlLXJvdyDrr7nsiqTsnbhcbi8vIFvrp6TqsJzrs4DsiJhdXG4vLyAkZ3JpZC1ndXR0ZXIg6riw67O46rCSOiAkZ3JpZC1ndXR0ZXItd2lkdGhcbi8vICRncmlkLWd1dHRlciDsoITri6zrkJwg6rCS7JeQIOuUsOudvOyEnCBtYXJnaW4tcmlnaHQsIG1hcmdpbi1sZWZ0IOqwkuydhCDshYvtjIXtlbQg7KSN64uI64ukLlxuLy8gZXgpIEBpbmNsdWRlIG1ha2Utcm93KCAkZ3JpZC1ndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCk7XG5AbWl4aW4gbWFrZS1yb3coICRncmlkLWd1dHRlciA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyO1xuICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlcjtcbiAgQGluY2x1ZGUgY2xlYXIoKTtcbn1cblxuLy8gbWFrZS1jb2wtc2V0IOuvueyKpOyduFxuLy8gW+unpOqwnOuzgOyImF1cbi8vICRncmlkLWNvbC1jbnQg6riw67O46rCSOiAkZ3JpZC1jb2x1bW5zXG4vLyAkZ3JpZC1jb2wtY250IOyghOuLrOuQnCDqsJLsnZgg6rCc7IiY66eM7YKB7J2YIGNvbCxwdWxsLHB1c2gsb2Zmc2V0IOuTseydhCDrp4zrk6TslrTspI3ri4jri6QuXG4vLyBleCkgQGluY2x1ZGUgbWFrZS1jb2wtc2V0KCk7XG4vLyBleCkgQGluY2x1ZGUgbWFrZS1jb2wtc2V0KCRncmlkLWNvbC1jbnQ6IDUpO1xuQG1peGluIG1ha2UtY29sLXNldCggJGdyaWQtY29sLWluZm86ICRnX2dyaWQtY29sLWluZm8gKSB7XG4gICRncmlkLWNvbC1uYW1lOiBudWxsO1xuICBAaWYgIG1hcC1oYXMta2V5KCRncmlkLWNvbC1pbmZvLCBncmlkLWNvbC1uYW1lKSB7XG4gICAgJGdyaWQtY29sLW5hbWUgOiBtYXAtZ2V0KCRncmlkLWNvbC1pbmZvLCBncmlkLWNvbC1uYW1lKVxuICB9IEBlbHNlIHtcbiAgICAkZ3JpZC1jb2wtbmFtZSA6IG51bGxcbiAgfVxuICAgIEBpbmNsdWRlIG1ha2UtY29sKCBtYXAtZ2V0KCRncmlkLWNvbC1pbmZvLCBncmlkLWNvbC1jbnQpLCAkZ3JpZC1jb2wtbmFtZSApO1xuICBAaW5jbHVkZSBtYWtlLXB1bGwoIG1hcC1nZXQoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLWNudCksICRncmlkLWNvbC1uYW1lICk7XG4gIEBpbmNsdWRlIG1ha2UtcHVzaCggbWFwLWdldCgkZ3JpZC1jb2wtaW5mbywgZ3JpZC1jb2wtY250KSwgJGdyaWQtY29sLW5hbWUgKTtcbiAgQGluY2x1ZGUgbWFrZS1vZmZzZXQoIG1hcC1nZXQoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLWNudCksICRncmlkLWNvbC1uYW1lICk7XG59XG5cblxuQG1peGluIG1ha2UtY29sKCAkZ3JpZC1jb2wtY250OiAkZ3JpZC1jb2wtY250LCAkY29sLW5hbWU6ICRjb2wtbmFtZSApIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRwb2ludCBpbiAkZ19tZWRpYS1icmVha3BvaW50cyB7XG4gICAgQGlmICRicmVha3BvaW50ID09IHhzIHtcbiAgICAgIC4jeyRjb2wtbmFtZX1jb2wge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuI3skY29sLW5hbWV9Y29sLWF1dG8ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH07XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xuICAgICAgICAuI3skY29sLW5hbWV9Y29sLSN7JGl9IHtcbiAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3skcG9pbnR9KSB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1jb2wtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuI3skY29sLW5hbWV9Y29sLSN7JGJyZWFrcG9pbnR9LWF1dG8ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9O1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xuICAgICAgICAgIC4jeyRjb2wtbmFtZX1jb2wtI3skYnJlYWtwb2ludH0tI3skaX0ge1xuICAgICAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoJGkgLyAkZ3JpZC1jb2wtY250KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtcHVsbCggJGdyaWQtY29sLWNudDogJGdyaWQtY29sLWNudCwgJGNvbC1uYW1lOiAkY29sLW5hbWUgKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkcG9pbnQgaW4gJGdfbWVkaWEtYnJlYWtwb2ludHMge1xuICAgIEBpZiAkYnJlYWtwb2ludCA9PSB4cyB7XG4gICAgICAuI3skY29sLW5hbWV9cHVsbC0wIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xuICAgICAgICAuI3skY29sLW5hbWV9cHVsbC0jeyRpfSB7XG4gICAgICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoJGkgLyAkZ3JpZC1jb2wtY250KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7JHBvaW50fSkge1xuICAgICAgICAuI3skY29sLW5hbWV9cHVsbC0jeyRicmVha3BvaW50fS0wIHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xuICAgICAgICAgIC4jeyRjb2wtbmFtZX1wdWxsLSN7JGJyZWFrcG9pbnR9LSN7JGl9IHtcbiAgICAgICAgICAgIHJpZ2h0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXB1c2goICRncmlkLWNvbC1jbnQ6ICRncmlkLWNvbC1jbnQsICRjb2wtbmFtZTogJGNvbC1uYW1lICkge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJHBvaW50IGluICRnX21lZGlhLWJyZWFrcG9pbnRzIHtcbiAgICBAaWYgJGJyZWFrcG9pbnQgPT0geHMge1xuICAgICAgLiN7JGNvbC1uYW1lfXB1c2gtMCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xuICAgICAgICAuI3skY29sLW5hbWV9cHVzaC0jeyRpfSB7XG4gICAgICAgICAgbGVmdDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3skcG9pbnR9KSB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1wdXNoLSN7JGJyZWFrcG9pbnR9LTAge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2wtY250IHtcbiAgICAgICAgICAuI3skY29sLW5hbWV9cHVzaC0jeyRicmVha3BvaW50fS0jeyRpfSB7XG4gICAgICAgICAgICBsZWZ0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLW9mZnNldCggJGdyaWQtY29sLWNudDogJGdyaWQtY29sdW1ucywgJGNvbC1uYW1lOiAkY29sLW5hbWUgKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkcG9pbnQgaW4gJGdfbWVkaWEtYnJlYWtwb2ludHMge1xuICAgICRwb2ludDogbWVkaWEtcXVlcnktbWluLXZhbCgkYnJlYWtwb2ludCk7XG4gICAgQGlmICRicmVha3BvaW50ID09IHhzIHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCAtIDEge1xuICAgICAgICAuI3skY29sLW5hbWV9b2Zmc2V0LSN7JGl9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3skcG9pbnR9KSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCAtIDEge1xuICAgICAgICAgIC4jeyRjb2wtbmFtZX1vZmZzZXQtI3skYnJlYWtwb2ludH0tI3skaX0ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoJGkgLyAkZ3JpZC1jb2wtY250KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gdHJpYW5nbGUo4pa2KSwgYXJyb3coPikg7IKs7Jqp67KVXG4vLyAtIOuwqe2WpSA6IHRvcCwgYm90dG9tLCBsZWZ0LCByaWdodFxuLy8gKHRyaWFuZ2xlKOKWtinsnYAgdG9wLWxlZnQvcmlnaHQsIGJvdHRvbS1sZWZ0L3JpZ2h0IOuwqe2WpeuPhCDqsIDriqUpXG4vLyBAaW5jbHVkZSB0cmlhbmdsZShcIuyCvOqwge2Yleuwqe2WpVwiLCDqsIDroZxweCwg7IS466GccHgsICPsu6zrn6wpO1xuLy8gQGluY2x1ZGUgYXJyb3coXCLtmZTsgrTtkZzrsKntlqVcIiwg6rCA66GccHgsIOyEuOuhnHB4LCDshKDqtbXquLAsICPsu6zrn6wpO1xuLy8g7LC46rOgIHVybCA6IGh0dHA6Ly9hcHBzLmVreS5oay9jc3MtdHJpYW5nbGUtZ2VuZXJhdG9yL1xuXG4vLyDsgrzqsIHtmJUg4pa2XG5AbWl4aW4gdHJpYW5nbGUoJGRpcmVjdGlvbiwgJHdpZHRoU2l6ZSwgJGhlaWdodFNpemUsICRjb2xvcikge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgQGlmICRkaXJlY3Rpb249PVwidG9wXCIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkd2lkdGhTaXplIC8gMikgJGhlaWdodFNpemU7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInRvcC1yaWdodFwiIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR3aWR0aFNpemUgJGhlaWdodFNpemUgMDtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJGhlaWdodFNpemUgLyAyKSAwICgkaGVpZ2h0U2l6ZSAvIDIpICR3aWR0aFNpemU7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbS1yaWdodFwiIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwICR3aWR0aFNpemUgJHdpZHRoU2l6ZTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tXCIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0U2l6ZSAoJHdpZHRoU2l6ZSAvIDIpIDA7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbS1sZWZ0XCIge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoU2l6ZSAwIDAgJHdpZHRoU2l6ZTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJGhlaWdodFNpemUgLyAyKSAkd2lkdGhTaXplICgkaGVpZ2h0U2l6ZSAvIDIpIDA7XG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInRvcC1sZWZ0XCIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkd2lkdGhTaXplICR3aWR0aFNpemUgMCAwO1xuICB9XG59XG4vLyDtmZTsgrTtkZwgPlxuQG1peGluIGFycm93KCRkaXJlY3Rpb24sICR3aWR0aCwgJGhlaWdodCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbnRlbnQ6XCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogZmxvb3IoJHdpZHRoIC8gMS40MTQpO1xuICBoZWlnaHQ6IGZsb29yKCRoZWlnaHQqKCR3aWR0aC8kaGVpZ2h0KSAvIDEuNDE0KTtcbiAgYm9yZGVyLXRvcDogJGJvcmRlciBzb2xpZCAkY29sb3I7XG4gIGJvcmRlci1yaWdodDogJGJvcmRlciBzb2xpZCAkY29sb3I7XG4gIEBpZiAkZGlyZWN0aW9uID09IFwidG9wXCIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIntcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uPT1cImxlZnRcIiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tXCIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgfVxufVxuXG4vL+yggeyaqSDtm4QsIG1hcmdpbuydtOuCmCB0cmFzbmZvcm3snLzroZwg7JyE7LmYIOyhsOygiC4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vIOuyhO2KvCDsgqzsnbTspojrs4Qg7IOd7ISxXG5AbWl4aW4gYnV0dG9uLXNpemUtcHgoJGJ0bi1zaXplIDogJGdfYnRuLXNpemUpIHtcbiAgLy8gQmFzZSBzdHlsZXNcbiAgJWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MgbGluZWFyLGJvcmRlciAuM3MgbGluZWFyO1xuICB9XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRidG4tc2l6ZSl7XG4gICAgLmJ0bi0jeyRrZXl9IHtcbiAgICAgIEBleHRlbmQgJWJ0bjtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgICAgQGlmICgka2V5MiA9PSBtZWRpYSkge1xuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTMpIHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMyk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2V7XG4gICAgICAgICAgQGlmICggdHlwZS1vZigkdmFsMikgPT0gbWFwICkgeyAvLyBvbmUgZGVwdGggY2xhc3Mg7JWI7JeQIOy2lOqwgCBjbGFzcyDsg53shLFcbiAgICAgICAgICAgIC4jeyRrZXkyfSB7XG4gICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDIpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSB7IC8vIG9uZSBkZXB0aCBjbGFzcyDrsoTtirxcbiAgICAgICAgICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ0bi1kaXNhYmxlZCgpIHtcbiAgJi5kaXNhYmxlZCB7XG4gICAgQGNvbnRlbnQ7XG4gICAgcG9pbnRlci1ldmVudHM6bm9uZTtcbiAgfVxufVxuXG4vLyDrsoTtirwg7Iqk7YOA7J28IOyEpOygle2VtOyjvOq4sFxuQG1peGluIGJ1dHRvbi1zdHlsZSgkYnRuLWdyb3VwIDogJGdfYnRuLWdyb3VwKXtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnRuLWdyb3VwIHtcbiAgICAuYnRuLSN7JGtleX0sXG4gICAgLmJ0bi0jeyRrZXl9OnZpc2l0ZWR7XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XG4gICAgICAgIEBpZiAoJGtleTIgPT0gbWVkaWEpIHsgLy8gbWVkaWFcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXkzKSB7XG4gICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDMpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9QGVsc2UgaWYoJGtleTIgPT0gaG92ZXIpeyAvLyBob3ZlclxuICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLW9uIHtcbiAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMiB7XG4gICAgICAgICAgICAgIC8vIEBpZigka2V5NCAhPSBiYWNrZ3JvdW5kLWNvbG9yKXsgLy8gYmFja2dyb3VuZC1jb2xvciDsnbTsmbjsnZgg64KY66i47KeAIOy2nOugpVxuICAgICAgICAgICAgICAgICN7JGtleTR9OiAjeyR2YWw0fTtcbiAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gQGlmKG1hcF9oYXNfa2V5KG1hcC1nZXQoJHZhbCxob3ZlciksYmFja2dyb3VuZC1jb2xvcikpeyAvL2hvdmVyIG1hcOyXkCBiYWNrZ3JvdW5kLWNvbG9yIOqwkuydtCDsnojsnLzrqbQg6re46rKD7J2EIOy2nOugpVxuICAgICAgICAgICAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCR2YWwyLGJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgLy8gQGVsc2UgaWYobWFwX2hhc19rZXkoJHZhbCxiYWNrZ3JvdW5kLWNvbG9yKSl7IC8v7JeG7Jy866m0IOq4sOuzuCDshKTsoJXqsJLsl5AgZGFya2Vu7Jy866GcIOyggeyaqVxuICAgICAgICAgICAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmtlbihtYXAtZ2V0KCR2YWwsYmFja2dyb3VuZC1jb2xvciksIDE1JSk7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgfVxuICAgICAgICB9QGVsc2UgaWYoJGtleTIgPT0gZGlzYWJsZWQpeyAvLyBkaXNhYmxlZFxuICAgICAgICAgIEBpbmNsdWRlIGJ0bi1kaXNhYmxlZCB7XG4gICAgICAgICAgICBAaWYgKCB0eXBlLW9mKCR2YWwyKSA9PSBtYXAgKSB7XG4gICAgICAgICAgICAgIEBlYWNoICRrZXk1LCAkdmFsNSBpbiAkdmFsMiB7XG4gICAgICAgICAgICAgICAgI3ska2V5NX06ICN7JHZhbDV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9QGVsc2V7XG4gICAgICAgICAgQGlmICggdHlwZS1vZigkdmFsMikgPT0gbWFwICkgeyAvLyBvbmUgZGVwdGggY2xhc3Mg7JWI7JeQIOy2lOqwgCBjbGFzcyDsg53shLFcbiAgICAgICAgICAgIC4jeyRrZXkyfSB7XG4gICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDIpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSB7IC8vIG9uZSBkZXB0aCBjbGFzcyDsvZTrk5wg7Lac66ClXG4gICAgICAgICAgICAjeyRrZXkyfTogI3skdmFsMn07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkBtaXhpbiBtYWtlLWNhcmQtc2V0KCRjYXJkLWluZm8pIHtcbiAgJWNhcmQtd3JhcHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkY2FyZC1pbmZvIHtcbiAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XG4gICAgICBAaWYgJGtleTIgPT0gXCJ3cmFwXCIge1xuICAgICAgICAuY2FyZC0jeyRrZXkyfS0jeyRrZXl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVjYXJkLXdyYXA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogbWFwLWdldCgkdmFsMiwgbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkdmFsMiwgcGFkZGluZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkdmFsMiwgYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICBtYXAtZ2V0KCR2YWwyLCBib3JkZXItc3R5bGUpIHtcbiAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogbWFwLWdldCgkdmFsMiwgYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRrZXkyID09IFwiaGVhZGVyXCIge1xuICAgICAgICAuY2FyZC13cmFwLSN7JGtleX17XG4gICAgICAgICAgLmNhcmQtI3ska2V5Mn0ge1xuICAgICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkdmFsMiwgcGFkZGluZyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCR2YWwyLCBiYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAgbWFwLWdldCgkdmFsMiwgYm9yZGVyLXN0eWxlKSB7XG4gICAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkdmFsMiwgZm9udC1zaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAuY2FyZC13cmFwLSN7JGtleX17XG4gICAgICAgICAgLmNhcmQtI3ska2V5Mn0ge1xuICAgICAgICAgICAgcGFkZGluZzogbWFwLWdldCgkdmFsMiwgcGFkZGluZyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCR2YWwyLCBiYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAgbWFwLWdldCgkdmFsMiwgYm9yZGVyLXN0eWxlKSB7XG4gICAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIOuLpCDrgpjriITqs6Ag7ZWY64KY66GcIO2Vqey5mOuKlOqyjCDsoovsp4Ag7JWK7J2E6rmMPz8/Pz8/P1xuLy8g7IOB7IaN7J2YIOqzhOuFkOydhCDsoIHsmqntlbTslbwg7ZWY64qU6rCAPz9cbi8vIOyDgeyGjeydhCDsoIHsmqntlZjrqbQg7L2U65Oc6rCAIOyhsOq4iCDrs7XsnqHtlbTsp4jrk69cbi8vIOyVhOyYiCB3cmFwLCBoZWFkZXIsIGJvZHksIGZvb3RlciDrgpjriITripTrjZjsp4AsIOyngOq4iOyymOufvCDsspjrpqztlZjripTqsowg64KY7J2E65OvXG4iLCIvLyBQYWdpbmF0aW9uXG5AbWl4aW4gcGFnaW5hdGlvbi1saW5rcygkcGFnZS1pdGVtKXtcbiAgd2lkdGg6bWFwLWdldCgkcGFnZS1pdGVtLCB3aWR0aCk7XG4gIGhlaWdodDptYXAtZ2V0KCRwYWdlLWl0ZW0sIGhlaWdodCk7XG4gIGxpbmUtaGVpZ2h0Om1hcC1nZXQoJHBhZ2UtaXRlbSwgaGVpZ2h0KTsgLy8gaGVpZ2h06rCS6rO8IOuPmeydvFxuXG4gIC8vcGFkZGluZzptYXAtZ2V0KCRwYWdlLWl0ZW0sIHBhZGRpbmcpOyAtPiDsgq3soJzsmIjsoJUg67O066WYLi5cbiAgbWFyZ2luOm1hcC1nZXQoJHBhZ2UtaXRlbSwgbWFyZ2luKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRwYWdlLWl0ZW0sIHRoZW1lLWNvbG9yKTtcbiAgYm9yZGVyOiBtYXAtZ2V0KCRwYWdlLWl0ZW0sIGJvcmRlcik7XG4gIGJvcmRlci1yaWdodDptYXAtZ2V0KCRwYWdlLWl0ZW0sIGJvcmRlci1yaWdodCk7XG5cbiAgYm9yZGVyLXJhZGl1czptYXAtZ2V0KCRwYWdlLWl0ZW0sIGJvcmRlci1yYWRpdXMpO1xuICBmb250LXNpemU6bWFwLWdldCgkcGFnZS1pdGVtLCBmb250LXNpemUpO1xuICBmb250LXdlaWdodDptYXAtZ2V0KCRwYWdlLWl0ZW0sIGZvbnQtd2VpZ2h0KTtcbiAgZm9udC1mYW1pbHk6bWFwLWdldCgkcGFnZS1pdGVtLCBmb250LWZhbWlseSk7XG4gIGxldHRlci1zcGFjaW5nOm1hcC1nZXQoJHBhZ2UtaXRlbSwgbGV0dGVyLXNwYWNpbmcpO1xuICBjb2xvcjptYXAtZ2V0KCRwYWdlLWl0ZW0sIGZvbnQtY29sb3IpO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJHBhZ2UtaXRlbSwgaG92ZXItdGhlbWUtY29sb3IpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6bWFwLWdldCgkcGFnZS1pdGVtLGhvdmVyLXRoZW1lLWNvbG9yKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjpkYXJrZW4oIG1hcC1nZXQoJHBhZ2UtaXRlbSwgdGhlbWUtY29sb3IpLCAxNSUpO1xuICAgIH1cbiAgICBjb2xvcjptYXAtZ2V0KCRwYWdlLWl0ZW0sIGhvdmVyLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJHBhZ2UtaXRlbSwgaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG59XG4vLyDslaHti7DruIwg65Cg7IucXG5AbWl4aW4gcGFnaW5hdGlvbi1hY3RpdmUoJHBhZ2UtYWN0aXZlLWl0ZW0pe1xuICBiYWNrZ3JvdW5kLWNvbG9yOm1hcC1nZXQoJHBhZ2UtYWN0aXZlLWl0ZW0sIGFjdGl2ZS10aGVtZSk7XG4gIGNvbG9yOm1hcC1nZXQoJHBhZ2UtYWN0aXZlLWl0ZW0sYWN0aXZlLWNvbG9yKTtcbiAgQGVhY2ggJGtleTIsICR2YWwyIGluIChtYXAtZ2V0KCRwYWdlLWFjdGl2ZS1pdGVtLGFjdGl2ZS1zdHlsZSkpe1xuICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcbiAgfVxufVxuLy8g65SkIOuQoOyLnFxuQG1peGluIHBhZ2luYXRpb24tZGlzYWJsZWQoJHBhZ2UtZGlzYWJsZWQtaXRlbSl7XG4gIG9wYWNpdHk6bWFwLWdldCgkcGFnZS1kaXNhYmxlZC1pdGVtLCBkaW0tb3BhY2l0eSk7XG4gIHBvaW50ZXItZXZlbnRzOm5vbmU7XG4gIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAobWFwLWdldCgkcGFnZS1kaXNhYmxlZC1pdGVtLGRpc2FibGVkLXN0eWxlKSl7XG4gICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xuICB9XG59XG5cbi8vIOyymOydjCDsnbTsoIQg64uk7J2MIOuBnSBhcnJvdyDqtIDroKgg7Luk7Iqk7YWAXG5AbWl4aW4gcGFnaW5hdGlvbi1hcnJvd3MoJHBhZ2UtYXJyb3ctc3R5bGUpIHtcbiAgQGVhY2ggJGtleTIsICR2YWwyIGluICRwYWdlLWFycm93LXN0eWxlIHtcbiAgICAjeyRrZXkyfTogI3skdmFsMn07XG4gIH1cbn0iLCJAbWl4aW4gbWFrZS1mb3JtLXdyYXAoICRmb3JtLXdyYXAtaW5mbyA6ICRnX2Zvcm0td3JhcCApIHtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAoJGZvcm0td3JhcC1pbmZvKXtcbiAgICAuZm9ybS13cmFwLSN7JGtleX0ge1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xuICAgICAgICBAaWYodHlwZS1vZigkdmFsMikgIT0gbWFwKSB7XG4gICAgICAgICAgI3ska2V5Mn0gOiAjeyR2YWwyfTtcbiAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAuI3ska2V5Mn0ge1xuICAgICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICR2YWwyIHtcbiAgICAgICAgICAgICAgQGlmKHR5cGUtb2YoJHZhbDMpICE9IG1hcCkgeyAvL2Nhc2NhZGluZ+ycvOuhnCDrqLzsoIAg7Lac66ClXG4gICAgICAgICAgICAgICAgICAjeyRrZXkzfTogI3skdmFsM307XG4gICAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICAgICAgQGlmKCRrZXkzID09IG1lZGlhKXtcbiAgICAgICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5NCkge1xuICAgICAgICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDQpO1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1AZWxzZSBpZigka2V5MyA9PSBcIiZcIikge1xuICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMywgXCJcIiwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIC4jeyRrZXkzfSB7XG4gICAgICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJGtleTMpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC8q7YWN7Iqk7Yq4IOuwleyKpCovXG5AbWl4aW4gbWFrZS1maWVsZC1kZWZhdWx0KCkge1xuICAlZmllbGQtYmFzZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICBAZWFjaCAka2V5LCAkdmFsIGluICgkZ19maWVsZC1zdHlsZSkge1xuICAgIC5maWVsZC0jeyRrZXl9IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIC5maWVsZC0jeyRrZXl9IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAuZmllbGQtI3ska2V5fSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgIC5maWVsZC0jeyRrZXl9IGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAuZmllbGQtI3ska2V5fSBzZWxlY3QsXG4gICAgLmZpZWxkLSN7JGtleX0gdGV4dGFyZWF7XG4gICAgICBAZXh0ZW5kICVmaWVsZC1iYXNlO1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICgkdmFsKSB7XG4gICAgICAgIEBpZiggJGtleTIgPT0gXCJpbnB1dF9kZWZhdWx0XCIpIHtcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gKCR2YWwyKSB7XG4gICAgICAgICAgICBAaWYoIHR5cGUtb2YoJHZhbDMpICE9IG1hcCkge1xuICAgICAgICAgICAgICAjeyRrZXkzfSA6ICN7JHZhbDN9O1xuICAgICAgICAgICAgfUBlbHNlIGlmKCRrZXkzID09ICdmb2N1cy1zdHlsZScpe1xuICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgICAgI3ska2V5NH0gOiAjeyR2YWw0fTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1AZWxzZSBpZigka2V5MyA9PSAncGxhY2Vob2xkZXItc3R5bGUnKXtcbiAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXJ7XG4gICAgICAgICAgICAgICAgQGVhY2ggJGtleTQsICR2YWw0IGluICR2YWwzIHtcbiAgICAgICAgICAgICAgICAgICN7JGtleTR9IDogI3skdmFsNH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgICAgI3ska2V5NH0gOiAjeyR2YWw0fTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgICAgI3ska2V5NH0gOiAjeyR2YWw0fTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1AZWxzZSBpZiAoJGtleTMgPT0gJ21lZGlhJykge1xuICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5NCkge1xuICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsNCk7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWVsZC0jeyRrZXl9IHNlbGVjdHtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAoJHZhbCkge1xuICAgICAgICBAaWYoICRrZXkyID09IFwic2VsZWN0XCIpIHtcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgQGlmICgka2V5MyA9PSBtZWRpYSkge1xuICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5NCkge1xuICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsNCk7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAjeyRrZXkzfSA6ICN7JHZhbDN9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZWxkLSN7JGtleX0gdGV4dGFyZWF7XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gKCR2YWwpIHtcbiAgICAgICAgQGlmKCAka2V5MiA9PSBcInRleHRhcmVhXCIpIHtcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgQGlmICgka2V5MyA9PSAnbWVkaWEnKSB7XG4gICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXk0KSB7XG4gICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw0KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICAgICN7JGtleTN9IDogI3skdmFsM307XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmllbGQtI3ska2V5fS5uby11bmRlcmxpbmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIC8qdGV4dGFyZWEqL1xuQG1peGluIG1ha2UtdGV4dC1hcmVhKCkge1xuICBAZWFjaCAka2V5LCAkdmFsIGluICgkZ190ZXh0LWFyZWEtc3R5bGUpIHtcbiAgICAudGV4dGFyZWEtI3ska2V5fSB0ZXh0YXJlYXtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgICAgQGlmKCRrZXkyID09IG1lZGlhKSB7XG4gICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICR2YWwyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5Mykge1xuICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwzKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAjeyRrZXkyfSA6ICN7JHZhbDJ9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXNpemU6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIC8q7IWA66CJ7Yq4IOuwleyKpCovXG5AbWl4aW4gbWFrZS1zZWxlY3Rib3goKSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRnX3NlbGVjdC1zdHlsZSkge1xuICAgIC5zZWxlY3QtI3ska2V5fSBzZWxlY3R7XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XG4gICAgICAgIEBpZiggdHlwZS1vZigkdmFsMikgIT0gbWFwKXtcbiAgICAgICAgICAjeyRrZXkyfSA6ICN7JHZhbDJ9O1xuICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTMpIHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMyk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICB9XG4gIH1cbn1cblxuLy8gLyrsnbTrr7jsp4Ag7LK07YGsICYg652865SU7JikKi9cbkBtaXhpbiBtYWtlLWNoZWNrYm94LWltZyggJGNoZWNrLWJveC1pbmZvOiAkZ19jaGVjay1ib3gtaW1nICkge1xuICBAZWFjaCAka2V5LCAkdmFsIGluICgkY2hlY2stYm94LWluZm8pIHtcbiAgICAuY2tieC0jeyRrZXl9e1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICgkdmFsKSB7XG4gICAgICAgIEBpZih0eXBlLW9mKCR2YWwyKSAhPSBtYXApIHtcbiAgICAgICAgICAjeyRrZXkyfSA6ICN7JHZhbDJ9O1xuICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgIEBpZigka2V5MiA9PSBjaGVja2JveC1zdHlsZSkge1xuICAgICAgICAgICAuY3VzdG9tLWNoZWNrZWQge1xuICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwyKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgICB9QGVsc2UgaWYoJGtleTIgPT0gY2hlY2tlZC1zdHlsZSl7XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICZbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCxcbiAgICAgICAgICAgICAgJlt0eXBlPWNoZWNrYm94XTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkIHtcbiAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9QGVsc2UgaWYoJGtleTIgPT0gdGV4dC1zdHlsZSl7XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDIpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjZWVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gLyrtg5zqt7gg7LK07YGsJiDrnbzrlJTsmKQqL1xuQG1peGluIG1ha2UtY2hlY2tib3gtdGFnKCAkY2hlY2stYm94LWluZm86ICRnX2NoZWNrLWJveC10YWcgKSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRjaGVjay1ib3gtaW5mbykge1xuICAgIC8vIOuzgOyImCDshKDslrhcbiAgICAkd2lkdGggOiBmYWxzZTtcbiAgICAkaGVpZ2h0IDogZmFsc2U7XG4gICAgLmNrYngtI3ska2V5fXtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAoJHZhbCkge1xuICAgICAgICBAaWYodHlwZS1vZigkdmFsMikgIT0gbWFwKSB7XG4gICAgICAgICAgI3ska2V5Mn0gOiAjeyR2YWwyfTtcbiAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICBAaWYoJGtleTIgPT0gY2hlY2tib3gtc3R5bGUpIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcbiAgICAgICAgICAgICAgICBAaWYgKCRrZXkzID09IHdpZHRoKXtcbiAgICAgICAgICAgICAgICAgICR3aWR0aDogJHZhbDM7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOi0ocm91bmQoJHZhbDMgLyAyKSk7XG4gICAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTUwJSksIHdlYmtpdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoJGtleTMgPT0gaGVpZ2h0KXtcbiAgICAgICAgICAgICAgICAgICRoZWlnaHQ6ICR2YWwzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1AZWxzZSBpZigka2V5MiA9PSBjaGVja2VkLXN0eWxlKSB7XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICZbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCxcbiAgICAgICAgICAgICAgJlt0eXBlPWNoZWNrYm94XTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogcm91bmQoKCR3aWR0aCAtICgkd2lkdGggLyAyKSkgLyAyKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJHZhbDIsIHdpZHRoKSA9PSBmYWxzZSBhbmQgJHdpZHRoKXsgXG4gICAgICAgICAgICAgICAgICAvLyBjaGVja2VkIG1hcOyXkCB3aWR0aOqwgCDsnojripTsp4Ag7LK07YGsIOyXhuycvOuptCBjaGVja2JveCBtYXAg7J2YIOuwmOyCrOydtOymiOuhnCDqsIDsoLjsmLRcbiAgICAgICAgICAgICAgICAgICR2YWwyIDogbWFwLXNldCgkdmFsMix3aWR0aCxyb3VuZCgkd2lkdGggLyAyKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZihtYXAtaGFzLWtleSgkdmFsMiwgaGVpZ2h0KSA9PSBmYWxzZSBhbmQgJGhlaWdodCl7IFxuICAgICAgICAgICAgICAgICAgLy8gY2hlY2tlZCBtYXDsl5AgaGVpZ2h0IOyeiOuKlOyngCDssrTtgawg7JeG7Jy866m0IGNoZWNrYm94IG1hcCDsnZgg67CY7IKs7J207KaI66GcIOqwgOyguOyYtFxuICAgICAgICAgICAgICAgICAgJHZhbDIgOiBtYXAtc2V0KCR2YWwyLGhlaWdodCxyb3VuZCgkaGVpZ2h0IC8gMikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDIge1xuICAgICAgICAgICAgICAgICAgQGlmICgka2V5NCA9PSB3aWR0aCl7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6LShyb3VuZCgkdmFsNCAvIDIpKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC01MCUpLCB3ZWJraXQpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgI3ska2V5NH06ICN7JHZhbDR9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1AZWxzZSBpZigka2V5MiA9PSB0ZXh0LXN0eWxlKXtcbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMik7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICAgICYuZGlzYWJsZWR7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBjb2xvcjogI2VlZTtcbiAgICAgICAgbGFiZWw6YmVmb3Jle1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogI2VlZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jaXJjbGU6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuICAgICAgJi5jaXJjbGUgaW5wdXQge1xuICAgICAgICAmW3R5cGU9cmFkaW9dOmNoZWNrZWQgfiAuY3VzdG9tLWNoZWNrZWQsXG4gICAgICAgICZbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBtaW4td2lkdGg6ICR3aWR0aDtcbiAgICAgIG1pbi1oZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG4iLCIvL3JwLXRhYmxlXG5AbWl4aW4gbWFrZS1ycC10YWJsZSgkcnAtdGFibGUtaW5mbyA6ICRnX3JwLXRhYmxlKSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRycC10YWJsZS1pbmZvKXtcbiAgICAucnAtdGFibGUtI3ska2V5fSB7XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XG4gICAgICAgIEBpZih0eXBlLW9mKCR2YWwyKSAhPSBtYXApIHtcbiAgICAgICAgICAjeyRrZXkyfSA6ICN7JHZhbDJ9O1xuICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgIC4jeyRrZXkyfSB7XG4gICAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgICBAaWYodHlwZS1vZigkdmFsMykgIT0gbWFwKSB7IC8vY2FzY2FkaW5n7Jy866GcIOuovOyggCDstpzroKVcbiAgICAgICAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcbiAgICAgICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICAgICBAaWYoJGtleTMgPT0gbWVkaWEpe1xuICAgICAgICAgICAgICAgICAgQGVhY2ggJGtleTQsICR2YWw0IGluICR2YWwzIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXk0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsNCk7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfUBlbHNlIGlmKCRrZXkzID09IFwiJlwiKSB7XG4gICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwzLCBcIlwiLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAgICAgLiN7JGtleTN9IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkdmFsMyk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5cblxuIiwiLy8vKiB0YWIgKi9cbkBtaXhpbiB0YWItaXRlbXMoJHRhYi1ncm91cCA6ICRnX3RhYi1ncm91cCkge1xuICBAZWFjaCAka2V5LCAkdmFsIGluICgkdGFiLWdyb3VwKXtcbiAgICBAaWYoJGtleSA9PSB0YWItd3JhcC1kZWZhdWx0KXtcbiAgICAgIC50YWItd3JhcCB7XG4gICAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgICAgICBAaWYoJGtleTIgPT0gbWVkaWEpe1xuICAgICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICR2YWwyIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXkzKSB7XG4gICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMyk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9QGVsc2Uge1xuICAgICAgLnRhYi13cmFwLiN7JGtleX0ge1xuICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbCB7XG4gICAgICAgICAgQGlmKHR5cGUtb2YoJHZhbDQpICE9IG1hcCApIHsgLy9jYXNjYWRpbmfsnLzroZwg66i87KCAIOy2nOugpVxuICAgICAgICAgICAgI3ska2V5NH06ICN7JHZhbDR9O1xuICAgICAgICAgIH1AZWxzZSB7IC8vbWVkaWEsIGFjdGl2ZSwgc3ViQ2xhc3NcbiAgICAgICAgICAgIC4jeyRrZXk0fSB7XG4gICAgICAgICAgICAgIEBlYWNoICRrZXk1LCAkdmFsNSBpbiAkdmFsNCB7XG4gICAgICAgICAgICAgICAgQGlmKHR5cGUtb2YoJHZhbDUpICE9IG1hcCkgeyAvL2Nhc2NhZGluZ+ycvOuhnCDrqLzsoIAg7Lac66ClXG4gICAgICAgICAgICAgICAgICAjeyRrZXk1fTogI3skdmFsNX07XG4gICAgICAgICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIEBpZigka2V5NSA9PSBtZWRpYSl7XG4gICAgICAgICAgICAgICAgICAgIEBlYWNoICRrZXk2LCAkdmFsNiBpbiAkdmFsNSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXk2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1AZWxzZSBpZiAoJGtleTUgPT0gYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCR2YWw1KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmKCRrZXk1ID09IFwiJlwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsNSwgXCJcIiwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgIC4jeyRrZXk1fSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAgICAg67CU65SUKOqxsOydmCDqs6DsoJXtmJUg6rO17Ya1KVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5ib2R5e1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC00MDA7XG4gIG1pbi13aWR0aDozMjBweDtcbn1cbmh0bWwuYm90dG9tLXNoZWV0LW9wZW4sXG5odG1sLm1vZGFsLW9wZW4sXG5ib2R5LmJvdHRvbS1zaGVldC1vcGVue1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLm0tbmF2LW9wZW4gYm9keXtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuYm9keS5tb2RhbC1vcGVuIHtcbiAgcGFkZGluZy1yaWdodDowICFpbXBvcnRhbnQ7XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgICAgICDqs7XthrUg66CI7J207JWE7JuDICjqs6DsoJXtmJUg6rO17Ya1KVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jcGFnZS1jb250ZW50LXdyYXBwZXJ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgICBtaW4taGVpZ2h0OiA4MDBweDtcbiAgICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICAg7ISc67iM7Y6Y7J207KeAIOqzte2GtSDroIjsnbTslYTsm4Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnN1Yi1hcnRpY2xlLXdyYXAge1xuICBwYWRkaW5nLXRvcDogNzVweDtcbiAgcGFkZGluZy1ib3R0b206IDc1cHg7XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIH1cbn1cbi8v7ISc67iM7Y6Y7J207KeAIOyDgeuLqOyYgeyXrVxuLnN1Yi10b3B7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA0MzBweDtcbiAgJltkYXRhLXNsaWRlPVwic2xpZGVcIl0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgJltkYXRhLXNsaWRlPVwic2xpZGVcIl1+KiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vei1pbmRleDogNTA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAuYmctb3ZlcmxheXtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgYm90dG9tOjA7XG4gICAgbGVmdDowO1xuICAgIHJpZ2h0OjA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICB6LWluZGV4OiAwO1xuICB9XG4gIC5zdWItdG9wLWltYWdle1xuICAgIC5pbWctYmd7XG4gICAgICBoZWlnaHQ6IDQzMHB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIH1cbiAgfVxuICAuc3ViLXRvcC1pbm5lcntcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOjU1JTtcbiAgICBsZWZ0OjA7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGNvbG9yOiNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICAuc3ViLXRvcC10ZXh0e1xuICAgIGxpbmUtaGVpZ2h0OiAzLjE7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWxhdG87XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgLnN1Yi10b3AtdGl0bGV7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgfVxuICB9XG4gIC8q7Yyo656g65+t7IqkIO2aqOqzvCovXG4gIFtkYXRhLXNjcm9sbD0nYmdQYXJhbGxheCddIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHotaW5kZXg6IC0xMDA7XG4gIH1cbn1cblxuLy/shJzruIztjpjsnbTsp4Ag7YOt66mU64m0XG4uc3ViLXRhYi13cmFwe1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNzBweDtcbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICBoZWlnaHQ6IDY1cHg7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgIGhlaWdodDogNjVweDtcbiAgICB9XG4gIH1cbiAgJi5maXhlZC10b3B7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgIH1cbiAgfVxufVxuLnN1Yi10YWJ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA3MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgaGVpZ2h0OiA2NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmZpeGVkLXRvcCAme1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6MDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgfVxuICAudGFiLWxpc3Qtd3JhcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmxpc3R7XG4gICAgICBmbGV4OjAgMCBhdXRvO1xuICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgZm9udC1zaXplOjEzcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtMzAwO1xuICAgICAgY29sb3I6ICM2NjY7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICAgIGZsZXgtYmFzaXM6IDE1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgfVxuICAgICAgJjpob3ZlcntcbiAgICAgICAgY29sb3I6JGdfcG9pbnQtdGhlbWUtY29sb3IyO1xuICAgICAgfVxuICAgICAgJi5vbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6ICRnX3BvaW50LXRoZW1lLWNvbG9yMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgYXtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnX3BvaW50LXRoZW1lLWNvbG9yMjtcbiAgICAgICAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgICAgICAgIGJvdHRvbTotMXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDE4cHggNXB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICAgIHBhZGRpbmc6IDI0cHggMTBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgICAgIHBhZGRpbmc6IDIycHggMTBweCAyM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgIO2DgOydtO2LgCDshKTsoJVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmNvbW1vbi10aXRsZS13cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjhweDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICB9XG4gIC50aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY3O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIGZvbnQgOiB7XG4gICAgICBzaXplOiAyOHB4O1xuICAgICAgZmFtaWx5OiAkZm9udC00MDA7XG4gICAgICB3ZWlnaHQ6IDQwMDtcbiAgICB9XG4gICAgY29sb3I6IzAwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgZm9udC1zaXplOiAzN3B4O1xuICAgIH1cbiAgICAmOjpiZWZvcmV7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOjA7XG4gICAgICBsZWZ0OjUwJTtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ19wb2ludC10aGVtZS1jb2xvcjI7XG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkZ19wb2ludC10aGVtZS1jb2xvcjIgMCUsICRnX3BvaW50LWZvbnQtY29sb3IgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkZ19wb2ludC10aGVtZS1jb2xvcjIgMCUsICRnX3BvaW50LWZvbnQtY29sb3IgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRnX3BvaW50LXRoZW1lLWNvbG9yMiAwJSwgJGdfcG9pbnQtZm9udC1jb2xvciAxMDAlKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyRnX3BvaW50LXRoZW1lLWNvbG9yMicsIGVuZENvbG9yc3RyPSckZ19wb2ludC1mb250LWNvbG9yJywgR3JhZGllbnRUeXBlPTEpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3ViLXRpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMS42NjtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgZm9udCA6IHtcbiAgICAgIHNpemU6IDE2cHg7XG4gICAgICBmYW1pbHk6ICRmb250LTMwMDtcbiAgICAgIHdlaWdodDogMzAwO1xuICAgIH1cbiAgICBjb2xvcjogIzY2NjtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY4O1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICDshJzruIztjpjsnbTsp4Dtg4DsnbTti4Ag7ISk7KCVXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5jb21tb24tc3ViLXRpdGxlLXdyYXAge1xuICBsaW5lLWhlaWdodDogMS42NjtcbiAgbWFyZ2luLWJvdHRvbToyNXB4O1xuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LTQwMDtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gIH1cbiAgLnN1Yi10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LTMwMDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6IzY2NjtcbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgIO2RuO2EsFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5mb290ZXJ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMDIwMjA7XG4gIGZvbnQtc2l6ZToxM3B4O1xuICBjb2xvcjojYWFhO1xuICAuZm9vdGVyLXRvcC13cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBmb250LXNpemU6MTJweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pe1xuICAgICAgZm9udC1zaXplOjE0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiA1OHB4O1xuICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgfVxuICAgIC5mb290ZXItbG9nbyB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgd2lkdGg6MTAzcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICBmbGV4OjEgMSAwcHg7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjIwcHg7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvb3Rlci1ib3R0b20td3JhcCB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNThweDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDonJztcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIG1hcmdpbjoyMHB4IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiM1NTU7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICBtYXJnaW46MzBweCAwO1xuICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDoxMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvcHlyaWdodCB7XG4gICAgbWFyZ2luLXRvcDozMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICBtYXJnaW4tdG9wOjE1cHg7XG4gICAgfVxuICAgIGZvbnQ6IHtcbiAgICAgIGZhbWlseTokZm9udC1sYXRvO1xuICAgICAgd2VpZ2h0OjMwMDtcbiAgICB9XG4gIH1cbn1cbi8vIHN1Yi1ib3R0b21cbi5zdWItYm90dG9tLXdyYXB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzMwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2JnX3N1Yl9ib3R0b21fbS5qcGcpO1xuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2JnX3N1Yl9ib3R0b20uanBnKTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cbiAgLmlubmVyLWNvbnRlbnR7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6MCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAudGl0bGV7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS40NztcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICB9XG4gIH1cbiAgLmRlc2N7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGNvbG9yOiAjYmJiO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU3O1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgfVxuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBidG4tZ28tdG9wXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiRidG5TaXplOiA1NXB4OyAvL+uyhO2KvCDtgazquLBcbiRidG5NYXJnaW46ICgkZ19tYXgtd2lkdGggLSAoJGdfYXJlYS1ndXR0ZXItd2lkdGggKiAyKSkvMjtcbmZvb3RlciB7XG4gIC5idG4tZ28tdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIGJvdHRvbTogMTVweDtcbiAgICB3aWR0aDogJGJ0blNpemU7XG4gICAgaGVpZ2h0OiAkYnRuU2l6ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9mb290ZXJfYnRudG9wX2ljb24uc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOjE2cHggMjBweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXM7XG4gICAgei1pbmRleDogMTtcbiAgICAmLmJvdHRvbS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC03MHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgICAgdG9wOiAtNzVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKDEzMzBweCkge1xuICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAvLyByaWdodDogY2FsYyg1MCUgLSAjeyRidG5NYXJnaW59KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAgICAg7YC166mU64m0XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5xdWljay1tZW51e1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDowO1xuICAgIHRvcDogMTAwcHg7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgei1pbmRleDogNjAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbiwgdHJhbnNmb3JtIC42cywgKFwid2Via2l0XCIpKTtcbiAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoOTBweCksIChcIndlYmtpdFwiKSk7XG4gICAgJi5vcGVue1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMCksIChcIndlYmtpdFwiKSk7XG4gICAgfVxuICAgIC5idG4tdG9nZ2xle1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDotMXB4O1xuICAgICAgICBsZWZ0OiAtNDFweDtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0Om5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCB0cmFuc2Zvcm0gLjZzLCAoXCJ3ZWJraXRcIikpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCByb3RhdGUoMTgwZGVnKSwgKFwid2Via2l0XCIpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLm9wZW4gLmJ0bi10b2dnbGUgaXtcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCByb3RhdGUoMGRlZyksIChcIndlYmtpdFwiKSk7XG4gICAgfVxuICAgIC5xdWljay1tZW51LWhlYWRlcntcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgIH1cbiAgICAucXVpY2stbWVudS1ib2R5e1xuICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICAgIGF7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjZTFlMWUxO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnF1aWNrLW1lbnUtZm9vdGVyIGF7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICAgICAgICBib3JkZXItbGVmdDo1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6NXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTo1cHggc29saWQgIzMzMztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc3RhbGtlci1tZW51LmZpeGVke1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxu7JW96rSALyDqsJzsnbjsoJXrs7TsspjrpqwvIOqwnOyduOygleuztOyImOynkSDrqqjri6wg7Iqk7YOA7J28IOy7pOyKpO2FgFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5baWQqPSdtb2RhbC1pbmZvJ10gLm1vZGFsLWNvbnRlbnR7XG4gICAgcGFkZGluZzogNDBweCAyMHB4O1xuICAgID4gKiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxMHB4O1xuICAgIH1cbiAgICBwLFxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgfVxuICAgIHRhYmxlIHtcbiAgICAgICAgbWFyZ2luOjEwcHg7XG4gICAgICAgIGJvcmRlcjoxcHggI2RkZCBzb2xpZDtcbiAgICAgICAgdGgsXG4gICAgICAgIHRke1xuICAgICAgICAgICAgcGFkZGluZzo4cHggMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjMwcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOjFweCAjZWVlIHNvbGlkO1xuICAgICAgICB9XG4gICAgICAgIHRyOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgdGgsXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDowO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5idG4tY2xvc2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA0MHB4O1xuICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICB3aWR0aDoyMHB4O1xuICAgICAgaGVpZ2h0OjIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgIGJvcmRlcjowO1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoL3ZpZXdzL3Jlcy9pbWdzL21vZGFsL3BvcHVwX2Nsb3NlX2J0bi5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOmNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcblxuICAgIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIOyYgeyDgSDrqqjri6xcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI3ZpZGVvLW1vZGFse1xuICBwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDtcbiAgLm1vZGFsLWRpYWxvZ3tcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAubW9kYWwtY29udGVudHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLy8gbWluLWhlaWdodDogMTAwdmg7XG4gICAgLy8gcGFkZGluZzogMTAwcHggMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC44KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLnZpZGVvLXRpdGxle1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGZvbnQgOiB7XG4gICAgICAgIHNpemU6IDE4cHg7XG4gICAgICAgIGZhbWlseTogJGZvbnQtNTAwO1xuICAgICAgICB3ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZpZGVve1xuICAgICAgd2lkdGg6MTAwJSFpbXBvcnRhbnQ7XG4gICAgICBtYXgtd2lkdGg6IDExNTBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL21vZGFsL3BvcHVwX2Nsb3NlX2J0bi5zdmcpO1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICB9XG4gIH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICAgICAgICAgICAg7Yyd7JeFXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbltpZCo9J3BvcHVwXyddIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG5cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWF4KG1kKSB7XG4gICAgdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcblxuICAgIC5iZyB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICYuZmFkZUluIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLnBvcHVwLWJvdHRvbS13cmFwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KTtcbiAgICBjb2xvcjogIzc3NztcblxuICAgIC5idG4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLXBvcHVwIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAgICAg7JyI64+E7JqwIO2MneyXhVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ud2luZG93LXBvcHVwLXdyYXAge1xuICAud2luZG93LXBvcHVwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgLmFyZWEge1xuICAgICAgcGFkZGluZzogNTBweCAxN3B4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNnB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC53aW5kb3ctcG9wdXAtaGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgIC5sb2dvLWltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgfVxuXG4gICAgICAudGl0bGUtd3JhcCB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2Mge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjY7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndpbmRvdy1wb3B1cC1ib2R5IHtcbiAgICAgIC5maWVsZC1zdHlsZTQge1xuICAgICAgICAucm93IHtcbiAgICAgICAgICBtYXJnaW46IDAgLTVweDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5mb3JtLXRpdGxlIHtcbiAgICAgICAgICAgICYuZm9jdXMge1xuICAgICAgICAgICAgICBjb2xvcjogJGdfcG9pbnQtdGhlbWUtY29sb3IyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5pbnB1dF9kZWZhdWx0OmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdfcG9pbnQtdGhlbWUtY29sb3IyO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAud2luZG93LXBvcHVwLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgfVxufSIsIlxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICDtlITroZzsoJ3tirgg6rO17Ya1IOyVjOumvCDtjJ3sl4Ug7Luk7Iqk7YWAXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNhbGVydF9tb2RhbHtcbiAgei1pbmRleDogMTUwMDtcbn1cbi5hbGVydC1tb2RhbHtcbiAgcGFkZGluZzowIDE1cHggIWltcG9ydGFudDtcbiAgLm1vZGFsLWRpYWxvZ3tcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDQ3MHB4O1xuICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICYubW9kYWwtbGd7XG4gICAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgIH1cbiAgfVxuICAubW9kYWwtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAubW9kYWwtaGVhZGVye1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDY5cHg7XG4gICAgcGFkZGluZzogMjVweCAyMHB4IDE4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTowO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgIGhlaWdodDogODhweDtcbiAgICAgIHBhZGRpbmc6IDM2cHggNTBweCAyNnB4O1xuICAgIH1cbiAgICAubW9kYWwtdGl0bGV7XG4gICAgICBsaW5lLWhlaWdodDogMS43MztcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICB9XG4gIC5tb2RhbC1ib2R5e1xuICAgIHBhZGRpbmc6IDAgMjBweCAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XG4gICAgICBwYWRkaW5nOiAwIDUwcHggNDBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAubW9kYWwtZm9vdGVye1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwIDIwcHggMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxuICAuYnRuLWNsb3Nle1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDU2JTtcbiAgICByaWdodDogMjBweDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvbW9kYWwvcG9wdXBfY2xvc2VfYnRuLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvbnRhaW47XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgIHJpZ2h0OiA1MHB4O1xuICAgIH1cbiAgfVxufVxuXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIO2ajOybkOqwgOyehSwg7ZqM7JuQ7KCV67O0IOyImOyglSwg7KO866y4IO2PvCDqs7XthrVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmZvcm0td3JhcC10YWJsZSB7XG4gIC8qIOydveq4sOyghOyaqSAqL1xuICAmLmZvcm0tcmVhZC1vbmx5IHtcbiAgICAuZm9ybS13cmFwIHtcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ19ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb3JtLWJvZHkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWJhc2lzOiA1NjBweDtcbiAgICAgIHNwYW57XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC53cml0ZS1mb3JtLWNvbnRlbnR7XG4gICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgIH1cbiAgfVxuICAubmVjZXMge1xuICAgIGNvbG9yOiAkZ19wb2ludC10aGVtZS1jb2xvcjtcbiAgfVxuICAubm9uLW5lY2VzIHtcbiAgICBjb2xvcjogIzg4ODtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi8qIOyekeyEsSDtj7wg6rO17Ya1ICovXG4ud3JpdGUtZm9ybS10aXRsZS13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1mYW1pbHk6ICRmb250LTUwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbn1cblxuLndyaXRlLWZvcm0tdGl0bGUge1xuICBmbGV4LWdyb3c6IDE7XG4gIGZsZXgtc2hyaW5rOiAxO1xuICBmbGV4LWJhc2lzOiBhdXRvO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgJisud3JpdGUtZm9ybS1pbmZvIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gIH1cbn1cblxuLndyaXRlLWZvcm0taW5mbyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDkwcHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bTtcbn1cblxuLndyaXRlLWZvcm0tY29udGVudCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnX2JvcmRlci1jb2xvcjtcbn1cblxuLyog7Y+8IOy9mO2FkOy4oCDqs7XthrUgKi9cbi5mb3JtLXRpdGxlIHtcbiAgLm5lY2VzIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgIGNvbG9yOiRnX3BvaW50LXRoZW1lLWNvbG9yO1xuICB9XG4gICYuYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5mb3JtLWJvZHkge1xuICAuaGFzLWJ0bi10eXBlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LXNocmluazogMTtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgW2NsYXNzKj1cImJ0bi1cIl0ge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgIH1cbiAgfVxuICAuY2hlY2tib3gtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5ja2J4LXRhZy0xIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tcG9zdHNjcmlwdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZG90dW07XG4gIH1cbn1cblxuLyog7KCB66a96riILCDsoITtmZTrsojtmLgsIOyjvOyGjCDsvZjthZDsuKAg6rCc67OEIOyKpO2DgOydvCAqL1xuLmhhcy13b24tdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIzcHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLndvbi10eHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMTA2cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bTtcbiAgfVxufVxuLmFkZHJlc3MtZm9ybS13cmFwIHtcbiAgLmZvcm0tdGl0bGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLmZvcm0tYm9keSB7XG4gICAgaW5wdXQsXG4gICAgc2VsZWN0IHtcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucGhvbmUtZm9ybS13cmFwIHtcbiAgLmZvcm0tYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBzZWxlY3QsXG4gICAgaW5wdXQge1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAzMy4zMzMlO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWF4KDQxM3B4KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuaWNvbi1oeXBoZW4ge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiA1cHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG1hcmdpbjogMCA0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi52LW1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cbi52LXRvcCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbn1cbi5wb2ludC1jb2xvciB7XG4gIGNvbG9yOiRnX3BvaW50LWZvbnQtY29sb3IgIWltcG9ydGFudDtcbn1cbi5wb2ludC1jb2xvcjIge1xuICBjb2xvcjokZ19wb2ludC1mb250LWNvbG9yMiAhaW1wb3J0YW50O1xufVxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHsgLy8g64KY64iU7Iqk7YCY7Ja0IOyCrOyaqeyLnCDtlbTri7nquIDsnpAg7JWI67O07J6EXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSAhaW1wb3J0YW50O1xufVxuLnBvcHVwLXR3b2J0bi13cmFwIHsgLy8gcG9wdXAg67KE7Yq8IDLqsJzsnbzrlYxcbiAgZGlzcGxheTpmbGV4O1xuICBtYXgtd2lkdGg6NDEwcHg7XG4gIG1hcmdpbjowIGF1dG87XG4gICYgPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6JGZvbnQtNTAwO1xuICAgIGZsZXg6MSAxIDBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICB9XG59XG4ubG9hZGluZy1tZXNzYWdlIHsgLy9sb2FpbmcgYWpheCBjZW50ZXIg7KCV66CsXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4vKiDtjpjsnbTsp4Drs4Qg6rO17Ya1IOyCrO2VrSDrhKPripQg67aA67aEICovXG4vL+qzte2GtSDrsoTtirwgYXJyb3dcbi50eHQtYXJyb3d7XG4gICY6YWZ0ZXJ7XG4gICAgY29udGVudDpcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogMTFweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL21haW4vbWFpbl9idG5fYXJyb3cucG5nKSBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcbiAgfVxufVxuLy8g7ISc67iM7Y6Y7J207KeAIOyDgeuLqCDruYTso7zslrwg7JiB7JetXG4uY29tbW9uLXRpdGxlLXdyYXAudG9we1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbn1cbi52aXN1YWwtYXJ0aWNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMzB2dztcbiAgbWluLWhlaWdodDogNDk1cHg7XG4gIG1heC1oZWlnaHQ6IDU2N3B4O1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgIG1pbi1oZWlnaHQ6IDM3NXB4O1xuICAgIGhlaWdodDogMzc1cHg7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgIGhlaWdodDogMzl2dztcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oMTQwMHB4KXtcbiAgICBoZWlnaHQ6IDMydnc7XG4gIH1cblxuICAvL+ydtOuvuOyngFxuICAuaW1nLXdyYXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogODUuNSU7XG4gICAgbWF4LXdpZHRoOiA0MjBweDtcbiAgICB0b3A6IC02MHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIFxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgIHdpZHRoOiA1OCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oMTQwMHB4KSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgICAuaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICBpbWd7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLy/rsLDqsr1cbiAgLmJnLXdyYXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogODUlO1xuICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICB3aWR0aDogODAlO1xuICAgIH1cbiAgfVxuICAvL+2FjeyKpO2KuFxuICAuYXJlYSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC50aXRsZS13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1NXB4O1xuICAgIGxlZnQ6IDEzLjUlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICB0b3A6NTAlO1xuICAgICAgbGVmdDogNDVweDtcbiAgICAgIGJvdHRvbTphdXRvO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oeGwpe1xuICAgICAgbGVmdDogMjBweDtcbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcbiAgICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgICBmb250LXNpemU6IDQycHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuc3ViLXRpdGxlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjUzO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKHhsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuW2RhdGEtc2xpY2s9XCJ0cnVlXCJdIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNlcnZpY2UtZ3JvdXAgeyAvLyDtlbTri7kg7Y6Y7J207KeAIOqzte2GtVxuICAmLnN1Yi1hcnRpY2xlLXdyYXAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIC50aXRsZS13cmFwIHtcbiAgICAuZGVzYyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICBmb250LXNpemU6MTNweDtcbiAgICAgIGNvbG9yOiM2NjY7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb21tb24tc3ViLXRpdGxlLXdyYXAge1xuICAgIC5pbmZvIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNDI7XG4gICAgICBtYXJnaW4tYm90dG9tOjU1cHg7XG4gICAgICBmb250LXNpemU6MjhweDtcbiAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgICAgZm9udC1zaXplOjMycHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgICBmb250LXNpemU6NDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zZWMtcGFnZS13cmFwIHtcbiAgbWF4LXdpZHRoOiA1NTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgcGFkZGluZy1ib3R0b206NDBweDtcbiAgfVxuICAuc2VjLXBhZ2UtaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICAgIHotaW5kZXg6IDE7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgY29udGVudDonJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHRvcDowO1xuICAgICAgcmlnaHQ6MjBweDtcbiAgICAgIGJvdHRvbTowO1xuICAgICAgbWFyZ2luLXJpZ2h0OjIwcHg7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwyNXB4KTtcbiAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoMHB4LDI1cHgpO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNDBweCw0MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNDBweCw0MHB4KTtcbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cbiAgfVxuICAuc2VjLXBhZ2UtdGV4dC13cmFwIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIG1hcmdpbi10b3A6NTBweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgd2lkdGg6NTAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiA0JTtcbiAgICAgIC8vIHBhZGRpbmc6IDAgNCU7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbih4bCl7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDclO1xuICAgICAgLy8gcGFkZGluZzogMCA0JSAwIDclO1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgbGluZS1oZWlnaHQ6MS40MjtcbiAgICAgIG1hcmdpbi1ib3R0b206MjBweDtcbiAgICAgIGZvbnQtc2l6ZToyNXB4O1xuICAgICAgY29sb3I6IzAwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTo0MHB4O1xuICAgICAgICBmb250LXNpemU6MzVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRlc2Mge1xuICAgICAgbGluZS1oZWlnaHQ6MS42NjtcbiAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgY29sb3I6IzY2NjtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2VjLXBhZ2Utc3RlcCB7IC8v7J207Jqp7KCI7LCoXG4gIG1hcmdpbi10b3A6NzBweDtcbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICBtYXJnaW4tYm90dG9tOjcwcHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICBtYXJnaW4tdG9wOjEwMHB4O1xuICB9XG4gIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTo1MHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICBtYXJnaW4tYm90dG9tOjYwcHg7XG4gICAgfVxuICB9XG4gIC5zZXJ2aWNlLXN0ZXAgeyAvL3NldCDslYTsnbTsvZhcbiAgICAuY29sLW1kLTIwIHsgLy8gZ3JpZCA1XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7O1xuICAgICAgfVxuICAgIH1cbiAgICBkbCB7XG4gICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiMzMzM7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOjQwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICAgIC8vIHRvcDogNTAlO1xuICAgICAgICAgIC8vIG1hcmdpbi10b3A6IC04cHg7XG4gICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICB3aWR0aDoyMHB4O1xuICAgICAgICAgIGhlaWdodDoxNnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6dXJsKC92aWV3cy9yZXMvaW1ncy9wYWdlL3NlcnZpY2Uvc2VydmljZV9zdGVwX2Fycm93X2ljb25fcmlnaHQuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206MjBweDtcbiAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIH1cbiAgICBkZCB7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgcGFkZGluZy10b3A6ODBweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246dG9wIGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHNsaWRlIOqzte2GtVxuLnNlcnZpY2UtZ3JvdXAge1xuICAuc2xpZGUtY3VzdG9tLXdyYXAge1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1heCg0MjlweCl7IC8vbWF4XG4gICAgICAuc2xpY2stbGF5b3V0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6LTIwcHg7XG4gICAgICB9XG4gICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgb3V0bGluZTpub25lO1xuICB9XG4gIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgd2lkdGg6NDVweDtcbiAgICBoZWlnaHQ6NDVweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9zZXJ2aWNlL3NlcnZpY2Vfc2xpZGVfYXJyb3dfaWNvbl9yaWdodC5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcbiAgICBmb250LXNpemU6MDtcbiAgICBjb2xvcjojZmZmO1xuICAgIG9wYWNpdHk6Ljc7XG4gICAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5Oi4zO1xuICAgIH1cbiAgfVxuICAuc2xpY2stcHJldiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2Uvc2VydmljZS9zZXJ2aWNlX3NsaWRlX2Fycm93X2ljb25fbGVmdC5zdmcpO1xuICB9XG59XG4uc2VjLXBhZ2UtZmxvdyB7IC8v7Z2Q66aE64+EXG4gIHBhZGRpbmc6ODBweCAwIDEyMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOnVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9zZXJ2aWNlL3NlcnZpY2VfYmdfaW1nXzAxX20uanBnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgIHBhZGRpbmc6MDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9zZXJ2aWNlL3NlcnZpY2VfYmdfaW1nXzAxLmpwZyk7XG4gIH1cbiAgLnNsaWNrLWFyZWEge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGxlZnQ6IDk2cHg7XG4gICAgdG9wOiA1N3B4O1xuICAgIHdpZHRoOiAxOTVweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgbGVmdDogMTEzcHg7XG4gICAgICB0b3A6IDE0MHB4O1xuICAgICAgd2lkdGg6IDIzMXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgbGVmdDogMTI0cHg7XG4gICAgICB0b3A6IDE0NnB4O1xuICAgICAgd2lkdGg6MjU4cHg7XG4gICAgfVxuICB9XG4gIC5pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIGNvbG9yOiM1NTU7XG4gIH1cbiAgLmZsZXgtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbih4bCl7XG4gICAgICBwYWRkaW5nLWxlZnQ6NDBweDtcbiAgICB9XG4gIH1cbiAgLmZsb3ctYmFzZS1pbWcge1xuICAgIHdpZHRoOiAzOTBweDsgLy80MjBweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgcGFkZGluZy10b3A6NzJweDtcbiAgICAgIHdpZHRoOjQ2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgd2lkdGg6NTEwcHg7XG4gICAgfVxuICB9XG4gIC5mbG93LXN0ZXAtd3JhcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6MDtcbiAgICBib3R0b206IC00MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6MzNweCAzMHB4IDE4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuOCk7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLDAsMCwuMDUpO1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICBwb3NpdGlvbjppbmhlcml0O1xuICAgICAgcGFkZGluZzowO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICBwYWRkaW5nLWxlZnQ6NDBweDtcbiAgICB9XG4gIH1cbiAgLmZsb3ctc3RlcCB7XG4gICAgZm9udC1zaXplOjE2cHg7XG4gICAgY29sb3I6Izc3NztcbiAgICAmID4gKiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTdweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbGluZS1oZWlnaHQ6MS42O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OjIwcHg7XG4gICAgICBmb250LXNpemU6MTVweDtcbiAgICB9XG4gICAgLnN0ZXAtdGV4dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNjtcbiAgICAgIC8vIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgY29udGVudDonJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IC02cHg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGhlaWdodDoycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5hY3RpdmUge1xuICAgICAgY29sb3I6JGdfcG9pbnQtZm9udC1jb2xvcjtcbiAgICAgIC5zdGVwLXRleHQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRnX3BvaW50LXRoZW1lLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGlja1NsaWRlRmxvdyB7XG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICM5OTk7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IC02OXB4O1xuICAgICAgbWFyZ2luLXRvcDotMjNweDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgIGxlZnQ6IC04MHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgICAgbGVmdDogLTkwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIGxlZnQ6aW5oZXJpdDtcbiAgICAgIHJpZ2h0Oi02OXB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgICAgcmlnaHQ6LTgwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgICAgICByaWdodDotOTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zZWMtcGFnZS1vcmRlciB7IC8v6rKw7KCcIOyInOyEnFxuICBwYWRkaW5nOjgwcHggMCAxNzBweDtcbiAgYmFja2dyb3VuZDp1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2Uvc2VydmljZS9zZXJ2aWNlX2JnX2ltZ18wMi5qcGcpIG5vLXJlcGVhdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICBwYWRkaW5nOjEwMHB4IDAgMTkwcHg7XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBjb2xvcjojZmZmO1xuICB9XG4gIC5pbmZvIHtcbiAgICBjb2xvcjojY2NjO1xuICB9XG59XG4uc2xpZGUtY3VzdG9tLXdyYXAge1xuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oeGwpe1xuICAgICYuc2xpY2stYXJlYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICB9XG4gIH1cbiAgLnNsaWRlQ29udGFpbmVyIHtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6MjkycHg7XG4gICAgfVxuICAgIC5zbGljay1saXN0IHtcbiAgICAgIG92ZXJmbG93OnZpc2libGU7XG4gICAgfVxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgYm90dG9tOi05MHB4O1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAjZmZmO1xuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBsZWZ0OjgwcHg7XG4gICAgfVxuICAgIC5zbGljay1kb3Rze1xuICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5zbGljay1kb3RzLWN1c3RvbSB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICB0b3A6IC0yMHB4O1xuICAgIGxlZnQ6IDUzcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKHNtKXtcbiAgICAgIGxlZnQ6IDU0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICB0b3A6LTcwcHg7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6NTRweDtcbiAgICB9XG4gICAgd2lkdGg6MjQwcHg7XG4gICAgaGVpZ2h0OjJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY1NzViO1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTZweDtcbiAgICAgIGZvbnQ6IHtcbiAgICAgICAgc2l6ZToxM3B4O1xuICAgICAgICBmYW1pbHk6JGZvbnQtbGF0bztcbiAgICAgIH1cbiAgICAgIGNvbG9yOiNmZmY7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6JzAxLic7XG4gICAgICBsZWZ0OiAtMzBweDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OicwNy4nO1xuICAgICAgcmlnaHQ6IC0zMHB4O1xuICAgIH1cbiAgICAuc2xpZGVCYXJ7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgbGVmdDowO1xuICAgICAgdG9wOjA7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246dHJhbnNmb3JtIC41cztcbiAgICB9XG4gIH1cbn1cblxuLy8g7KCE7J6Q6rKw7KCcIO2OmOydtOyngCDsiqTtg4DsnbxcbltjbGFzcyo9XCJwYXltZW50LVwiXSB7XG4gIC5iZy1zeW1ib2wge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9wYXltZW50L3BheW1lbnRfYmdfbS5qcGcpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICAgIG1heC13aWR0aDogMjQ1M3B4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM1LjUlKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC92aWV3cy9yZXMvaW1ncy9wYWdlL3BheW1lbnQvcGF5bWVudF9iZy5qcGcpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmluZm8tbGlzdC13cmFwIHtcbiAgLmluZm8tbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIC5pbWctd3JhcCB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgLmRlc2Mtd3JhcCB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC00MHB4O1xuICAgIH1cbiAgICAvLyDrsJXsiqQg7L2Y7YWQ7LigIOugiOydtOyVhOybg1xuICAgICYucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNDVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC00NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgcGFkZGluZzogMCA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAvLyDsnbTrr7jsp4BcbiAgICAuaW1nLXdyYXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyDrgrTsmqlcbiAgICAuZGVzYy13cmFwIHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgICBwYWRkaW5nOiAwIDQ1cHg7XG4gICAgICB9XG4gICAgICAuaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XG4gICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjdweDtcbiAgICAgICAgfVxuICAgICAgICAmLmljb24tc2hpZWxkIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIGNvbG9yOiAkZ19wb2ludC1mb250LWNvbG9yMjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRlc2Mge1xuICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3N3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjczO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIOuwsOqyvSA6OiDsi6zrs7xcbi5iZy1zeW1ib2wtd3JhcHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOjA7XG4gIGxlZnQ6NTAlO1xuICBtYXgtd2lkdGg6IDE5MjBweDtcbiAgaGVpZ2h0OiA2MDlweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAuYmctc3ltYm9se1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MTY1cHg7XG4gICAgd2lkdGg6IDM2NXB4O1xuICAgIGhlaWdodDogMzQwcHg7XG4gICAgcmlnaHQ6IC0xNXB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9wYWdlX2JnX3N5bWJvbF9tLnBuZyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pe1xuICAgICAgd2lkdGg6IDQ0NXB4O1xuICAgICAgaGVpZ2h0OiA0MjBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgIHRvcDoxMTBweDtcbiAgICAgIHJpZ2h0Oi00OHB4O1xuICAgICAgd2lkdGg6IDgwNnB4O1xuICAgICAgaGVpZ2h0OiA2MDlweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9wYWdlX2JnX3N5bWJvbC5qcGcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyDslaDri4jrqZTsnbTshZggOjog7KKM7Lih7JeQ7IScIHNjYWxlXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGUtbGVmdCB7XG4gIGZyb20ge3RyYW5zZm9ybTpzY2FsZVgoMCk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0O31cbiAgdG8ge3RyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0O31cbn1cbkAtbW96LWtleWZyYW1lcyBzY2FsZS1sZWZ0IHtcbiAgZnJvbSB7dHJhbnNmb3JtOnNjYWxlWCgwKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7fVxuICB0byB7dHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7fVxufVxuQC1vLWtleWZyYW1lcyBzY2FsZS1sZWZ0IHtcbiAgZnJvbSB7dHJhbnNmb3JtOnNjYWxlWCgwKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7fVxuICB0byB7dHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7fVxufVxuQGtleWZyYW1lcyBzY2FsZS1sZWZ0IHtcbiAgZnJvbSB7dHJhbnNmb3JtOnNjYWxlWCgwKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7fVxuICB0byB7dHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7fVxufVxuXG4vLyDslaDri4jrqZTsnbTshZggOjog7Jqw7Lih7JeQ7IScIHNjYWxlXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGUtcmlnaHQge1xuICBmcm9tIHt0cmFuc2Zvcm06c2NhbGVYKDApO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQ7fVxuICB0byB7dHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0O31cbn1cbkAtbW96LWtleWZyYW1lcyBzY2FsZS1yaWdodCB7XG4gIGZyb20ge3RyYW5zZm9ybTpzY2FsZVgoMCk7dHJhbnNmb3JtLW9yaWdpbjpyaWdodDt9XG4gIHRvIHt0cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQ7fVxufVxuQC1vLWtleWZyYW1lcyBzY2FsZS1yaWdodCB7XG4gIGZyb20ge3RyYW5zZm9ybTpzY2FsZVgoMCk7dHJhbnNmb3JtLW9yaWdpbjpyaWdodDt9XG4gIHRvIHt0cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQ7fVxufVxuQGtleWZyYW1lcyBzY2FsZS1yaWdodCB7XG4gIGZyb20ge3RyYW5zZm9ybTpzY2FsZVgoMCk7dHJhbnNmb3JtLW9yaWdpbjpyaWdodDt9XG4gIHRvIHt0cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQ7fVxufVxuXG4vKiDtg63sl5Ag6rSA66Co65CcIOuzuOusuCAqL1xuLmRlZmF1bHQtdGFiIHtcbiAgLnRhYi1jb250IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLnRleHQtd3JhcCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogIzIyMjtcbiAgICB9XG4gIH1cbn1cbi8vIOydtOyaqeyViOuCtCwg7J207Jqp7JqU6riIIOqzte2GtSDsiqTtg4Dsnbxcbi8vZ3VpZGUgYm94XG4uZ3VpZGUtY29udGVudC13cmFwe1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihzbSl7XG4gICAgbWFyZ2luOiAwIC0xMHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgbWFyZ2luOiAwIC0xNXB4O1xuICB9XG59XG4uZ3VpZGUtYm94e1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihzbSl7IFxuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpe1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG4gIC5pbm5lcntcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHBhZGRpbmc6IDMwcHggMzBweCAyNXB4IDMwcHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgIHBhZGRpbmctdG9wOiA0N3B4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKHhsKXtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgfVxuICB9XG4gIC5pbm5lci1jb250e1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pe1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gIH1cbiAgLnRpdGxle1xuICAgIG1hcmdpbi1ib3R0b206IDE5cHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZyl7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyM3B4O1xuICAgIH1cbiAgfVxuICAuZGVzY3tcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzM7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbn1cbi8vIHN1YnBhZ2Ug7YOtIOuqqOuwlOydvCDqs7XthrVcbi5ndWlkZS10YWItd3JhcHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NnB4O1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgfVxufVxuLmd1aWRlLXRhYi1te1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDowO1xuICBsZWZ0OjA7XG4gIHdpZHRoOiAxMDAlO1xuICAuY3VycmVudC10YWJ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDZweDtcbiAgICBwYWRkaW5nOiAxNHB4IDE1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnX3BvaW50LXRoZW1lLWNvbG9yMjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgJjphZnRlcntcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXItdG9wOjJweCBzb2xpZCAjMDAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgIzAwMDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgfVxuICAgICYub3BlbntcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRnX3BvaW50LXRoZW1lLWNvbG9yMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgfVxuICB9XG4gIC50YWJEcm9wRG93bntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiA1MDE7XG4gIH1cbiAgLnRhYi1saXN0e1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBjb2xvcjogIzc3NztcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMCAyNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICAmLmFjdGl2ZXtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cbiAgfVxufVxuLnRhYi1jb250LXdyYXB7XG4gIC5jb21tb24tc3ViLXRpdGxlLXdyYXB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLyog7Iug7LKtLCDrrLjsnZjtlZjquLAg7Y6Y7J207KeAIOqzte2GtSAqL1xuLy8g66y47J2YLCDsi6Dssq0g6riA7JOw6riwXG4uZm9ybS13cmFwIC5mb3JtLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi8vIOyytO2BrOuwleyKpFxuLmNrYngtdGFnLTEgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCxcbi5ja2J4LXRhZy0xIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgfiAuY3VzdG9tLWNoZWNrZWQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA0cHg7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnX3BvaW50LXRoZW1lLWNvbG9yMjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG4vL+yEnOu4jO2OmOydtOyngCDsvZjthZDsuKAg7KCV67O07JiB7JetXG4uY29udC1pbmZvLXdyYXAge1xuICAudGl0bGUtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogIzFiNDU4ZTtcbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICMxYjQ1OGUgMCUsICMwMGFlZWYgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjMWI0NThlIDAlLCAjMDBhZWVmIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMWI0NThlIDAlLCAjMDBhZWVmIDEwMCUpO1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJGdfcG9pbnQtdGhlbWUtY29sb3IyJywgZW5kQ29sb3JzdHI9JyRnX3BvaW50LWZvbnQtY29sb3InLCBHcmFkaWVudFR5cGU9MSk7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIGZvbnQtc2l6ZTogMjlweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgICBmb250LXNpemU6IDM4cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgfVxuICAgICAgJisuc3ViLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnN1Yi10aXRsZSB7XG4gICAgICBsaW5lLWhlaWdodDogMS42NjtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgJisuZGVzYyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICYrLmRlc2Mge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDI2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRlc2Mge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzM7XG4gICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudG9wLWluZm8td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cbiAgICAuZGVzYyB7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIH1cbiAgICAgIC5pY29uLWFycm93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgIG1hcmdpbjogM3B4IDA7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2UvY3MvZGlyZWN0aW9uc19pY29uX2Fycm93X2JvdHRvbS5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XG4gICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIG1hcmdpbjogMXB4IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuJE5BTUVTUEFDRSA6IFwiLmJvYXJkLWNvbnRhY3Qtc3R5bGUxXCI7XG4jeyROQU1FU1BBQ0V9IHtcblxuICAuY29udGFjdC13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuICAgIC8vIOy9mO2FkOy4oCDsmbzsqr1cbiAgICA+LmxlZnQtd3JhcCB7XG4gICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiAzNjZweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIOy9mO2FkOy4oCDsmKTrpbjsqr1cbiAgICA+LnJpZ2h0LXdyYXAge1xuICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiA3MDBweDtcbiAgICAgICAgcGFkZGluZzowIDQwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oeGwpIHtcbiAgICAgICAgZmxleC1iYXNpczogNzMwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLndyaXRlX2lubmVyIHtcbiAgICAgIGZvbnQtc2l6ZTowO1xuICAgIH1cbiAgICAud3JpdGUtZm9ybS10aXRsZXtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJE5BTUVTUEFDRSA6IFwiLmZvcm0td3JhcFwiO1xuICAgICN7JE5BTUVTUEFDRX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjNweDtcbiAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgZm9udC1zaXplOjE0cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pIHtcbiAgICAgICAgJi5uYW1lLXdyYXAsXG4gICAgICAgICYucGhvbmUtd3JhcCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5uYW1lLXdyYXAge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMiU7XG4gICAgICAgIH1cbiAgICAgICAgJi5waG9uZS13cmFwIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tYWlsLXdyYXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAubWFpbC1ib3gge1xuICAgICAgICAgIGZsZXg6MSAxIDBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAubWFpbC1zZWxlY3Qge1xuICAgICAgICAgIHdpZHRoOjE1MHB4O1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihzbSkge1xuICAgICAgICAgICAgd2lkdGg6MjAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGF0YS10eXBlLXdyYXAge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWluLWhlaWdodDo1MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOi0xNXB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIH1cbiAgICAgICAgW2NsYXNzKj1cImNrYngtdGFnLVwiXSB7XG4gICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAxcHgpO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjE1cHg7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKHNtKXtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgY29sb3I6IzU1NTtcbiAgICAgICAgJi5mb2N1cyB7XG4gICAgICAgICAgY29sb3I6JGdfcG9pbnQtdGhlbWUtY29sb3IyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICBib3JkZXItc3R5bGU6c29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjokZ19ib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmc6MTVweCAxMHB4O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihzbSl7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6MTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4gICAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXN7XG4gICAgICAgIGJvcmRlci1jb2xvcjokZ19wb2ludC10aGVtZS1jb2xvcjI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG4gICAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl17XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICAgIH1cbiAgICAgIC5pbnB1dC10ZXh0YXJlYXtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTM1cHg7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICBib3JkZXItc3R5bGU6c29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjokZ19ib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC8v7JW96rSA64+Z7J2YIOyytO2BrOuwleyKpFxuICAgICAgJi5hZ3JlZW1lbnQtY29udGFpbmVyIHtcbiAgICAgICAgLmZvcm0tY29udCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgJi5hbGwtY2hlY2t7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ19ib3JkZXItY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yaWdodC13cmFwIHtcbiAgICAuZm9ybS1idG4ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICAg67KE7Yq8IHdyYXBcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmJ0bi13cmFwIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGNsZWFyO1xuICAgIG1hcmdpbi1yaWdodDogLTVweDtcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcblxuICAgIFtjbGFzcyo9Y29sLV0ge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgfVxuICB9XG59XG5cbi5idG4td3JhcC1zdHlsZTIge1xuICBtYXgtd2lkdGg6IDQzMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGNsZWFyO1xuICAgIG1hcmdpbi1yaWdodDogLTVweDtcbiAgICBtYXJnaW4tbGVmdDogLTVweDtcblxuICAgIFtjbGFzcyo9Y29sLV0ge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgfVxuICB9XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgICAgICBhamF4642U67O06riwIOuyhO2KvCjsiqTtlLzrhIgpXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5zcGlubmVyIHtcbiAgbWFyZ2luOiAxMDBweCBhdXRvO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLnNwaW5uZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ19wb2ludC10aGVtZS1jb2xvcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzay1zdHJldGNoZGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBzay1zdHJldGNoZGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbn1cblxuLnNwaW5uZXIgLnJlY3QyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjFzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjFzO1xufVxuXG4uc3Bpbm5lciAucmVjdDMge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG59XG5cbi5zcGlubmVyIC5yZWN0NCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcbn1cblxuLnNwaW5uZXIgLnJlY3Q1IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjhzO1xuICBhbmltYXRpb24tZGVsYXk6IC0wLjhzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stc3RyZXRjaGRlbGF5IHtcbiAgMCUsIDQwJSwgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMC40KSB9XG4gIDIwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMS4wKSB9XG59XG5cbkBrZXlmcmFtZXMgc2stc3RyZXRjaGRlbGF5IHtcbiAgMCUsIDQwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC40KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XG4gIH0gIFxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEuMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxLjApO1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAgICAgYWpheOuNlOuztOq4sCDrsoTtirwo7Iqk7ZS864SIMilcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnNwaW5uZXIyIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiAxMDBweCBhdXRvO1xufVxuLnNwaW5uZXIyIC5zay1jdWJlIHtcbiAgd2lkdGg6IDMzJTtcbiAgaGVpZ2h0OiAzMyU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGZsb2F0OiBsZWZ0O1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stY3ViZUdyaWRTY2FsZURlbGF5IDEuM3MgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogc2stY3ViZUdyaWRTY2FsZURlbGF5IDEuM3MgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG59XG4uc3Bpbm5lcjIgLnNrLWN1YmUxIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cbi5zcGlubmVyMiAuc2stY3ViZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xufVxuLnNwaW5uZXIyIC5zay1jdWJlMyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XG59XG4uc3Bpbm5lcjIgLnNrLWN1YmU0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4xcztcbn1cbi5zcGlubmVyMiAuc2stY3ViZTUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xufVxuLnNwaW5uZXIyIC5zay1jdWJlNiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG4uc3Bpbm5lcjIgLnNrLWN1YmU3IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzO1xuICBhbmltYXRpb24tZGVsYXk6IDBzO1xufVxuLnNwaW5uZXIyIC5zay1jdWJlOCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjFzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuMXM7XG59XG4uc3Bpbm5lcjIgLnNrLWN1YmU5IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWN1YmVHcmlkU2NhbGVEZWxheSB7XG4gIDAlLCA3MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNEKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzRCgxLCAxLCAxKTtcbiAgfSBcbiAgMzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzRCgwLCAwLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMCwgMCwgMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2stY3ViZUdyaWRTY2FsZURlbGF5IHtcbiAgMCUsIDcwJSwgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM0QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNEKDEsIDEsIDEpO1xuICB9IFxuICAzNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNEKDAsIDAsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzRCgwLCAwLCAxKTtcbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgICAgICDqs4TsgrDquLAg7Iqk7YOA7J28MVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY2FsYy13cmFwLXN0eWxlMXtcbiAgcGFkZGluZzowO1xufVxuLmNhbGMtd3JhcC1zdHlsZTEgPiAqe1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIHdpZHRoOiAyNnB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZ19ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yaWdodDpub25lO1xuICBjb2xvcjojY2NjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY2FsYy13cmFwLXN0eWxlMSAub3B0aW9uLWNhbGMubWludXN7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2J0bl9jYWxjX21pbnVzLnBuZyk7XG59XG4uY2FsYy13cmFwLXN0eWxlMSAub3B0aW9uLWNhbGMucGx1c3tcbiAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ19ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2J0bl9jYWxjX3BsdXMucG5nKTtcbn1cbi5jYWxjLXdyYXAtc3R5bGUxIC5vcHRpb24tY2FsYy5wbHVzLnJvdW5ke1xuICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwO1xufVxuLmNhbGMtd3JhcC1zdHlsZTEgLm9wdGlvbi1jYWxjLm1pbnVzLnJvdW5ke1xuICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xufVxuLmNhbGMtd3JhcC1zdHlsZTEgW2NsYXNzKj1fbnVtXXtcbiAgd2lkdGg6IDMwcHg7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjojMjIyO1xufVxuLmNhbGMtd3JhcC1zdHlsZTEgLm9wdGlvbi1jYWxje1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5jYWxjLXdyYXAtc3R5bGUxIC5lZGl0X2NhcnRfYnRue1xuICB3aWR0aDogOTBweDtcbiAgbWFyZ2luLWxlZnQ6NTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yO1xuICBjb2xvcjojMjIyO1xufVxuLmNvbW1vbi10YWIgLnRhYi1zZWxlY3R7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAg7IOB7ZKI66y47J2YLCDtm4TquLAg66qo64usIOqzte2GtVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ucmV2aWV3LXdyaXRlLXdyYXAge1xuICAuZGVmYXVsdC1yZXZpZXctZm9ybXtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZG90dW07XG4gICAgZm9udC1zaXplOjEycHg7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICB9XG59XG4uZGVmYXVsdC1yZXZpZXctZm9ybSB7XG4gIC5vcmRlci1pbmZveyAvLyB0aXRsZVxuICAgIHN0cm9uZyB7XG4gICAgICBmb250IDoge1xuICAgICAgICBzaXplOjIwcHg7XG4gICAgICAgIGZhbWlseTokZm9udC01MDA7XG4gICAgICAgIHdlaWdodDo1MDA7XG4gICAgICB9XG4gICAgfVxuICAgIHNwYW57XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6MTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cbiAgfVxuICAucmV2aWV3LWlucHV0c3tcbiAgICBtYXJnaW4tdG9wOjI1cHg7XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgIzIyMjtcbiAgICBkbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDc1cHg7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ19ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA5NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBkdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAxOHB4O1xuICAgICAgd2lkdGg6NzVweDtcbiAgICAgIHBhZGRpbmctbGVmdDoxNHB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBmb250IDoge1xuICAgICAgICBzaXplOjEzcHg7XG4gICAgICAgIHdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obGcpIHtcbiAgICAgICAgd2lkdGg6OTVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgZGQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLWhlaWdodDo0OXB4O1xuICAgICAgcGFkZGluZzogMTZweCAxMHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKSB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlcjowO1xuICAgICAgY29sb3I6ICMyMjI7XG4gICAgICByZXNpemU6bm9uZTtcbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6I2M0YzRjNDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpbGUtYXR0YWNoLXdyYXAgeyAvLyDsnbTrr7jsp4Ag65Ox66GdXG4gICAgICBwYWRkaW5nOiAyMHB4IDE0cHggMTBweDtcbiAgICAgIC50aXRsZS13cmFwIHtcbiAgICAgICAgcG9zaXRpb246aW5pdGlhbDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIC5zdWItdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZToxMXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgY29sb3I6Izk5OTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbnRlbnQtd3JhcHtcbiAgICAgICAgcGFkZGluZzogMTBweCAwIDAgODVweDtcbiAgICAgICAgbWluLWhlaWdodDogMTA1cHg7XG4gICAgICB9XG4gICAgICAuZmlsZS1pbnB1dC10cmlnZ2VyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDQ0cHg7XG4gICAgICAgIHdpZHRoOjc1cHg7XG4gICAgICAgIGhlaWdodDo3NXB4O1xuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRnX2JvcmRlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9yZXZpZXdfcGx1c19pY29uLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNjY2M7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjojZGRkO1xuICAgICAgICAgIG9wYWNpdHk6LjQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJhdGluZy13cmFweyAvL+uzhOygkFxuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDoxMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykge1xuICAgICAgcGFkZGluZy1sZWZ0OjIwcHg7XG4gICAgfVxuICB9XG4gIC5zdG9yZWQtZmlsZS1hcHBlbmQtd3JhcCxcbiAgLmZpbGUtYXR0YWNoZWQtd3JhcCB7XG4gICAgJiA+ICoge1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIHdpZHRoOjc1cHg7XG4gICAgICBoZWlnaHQ6NzVweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6MTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206MTBweDtcbiAgICB9XG4gIH1cbiAgLnJldmlldy1pbmZvLXdyYXAge1xuICAgIG1hcmdpbi10b3A6MTBweDtcbiAgICAucmV2aWV3LWluZm8ge1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDoxLjgxO1xuICAgICAgcGFkZGluZy1sZWZ0OjEwcHg7XG4gICAgICBmb250LXNpemU6MTFweDtcbiAgICAgIGNvbG9yOiM5OTk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6Jy0nO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDowO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubW9kYWwtZm9vdGVye1xuICAgIHBhZGRpbmc6IDQwcHggMCAwO1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBwYWRkaW5nOiAwIDIwcHggMzBweDtcbiAgICAvLyB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgIFxuICAgIH1cbiAgfVxuICAub3JkZXItbnVtYmVye1xuICAgIGhlaWdodDo0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAjY2NjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIH1cbiAgc3Ryb25ne1xuICAgIG1hcmdpbi1yaWdodDoyMnB4XG4gIH1cbiAgLm9yZGVyLWluZm8gLm9yZGVyLWltZ3tcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMjBweDtcbiAgICB3aWR0aDo2MHB4O1xuICAgIGhlaWdodDo2NnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIHNtYWxse1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICB9XG4gIH1cbiAgLnJldmlldy1idG4td3JhcHtcbiAgICBwYWRkaW5nOjIwcHggMCAwO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAuYnRue1xuICAgICAgd2lkdGg6ODVweDtcbiAgICAgIGhlaWdodDozNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6bm9ybWFsO1xuICAgICAgbWFyZ2luOiAwIDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cbiAgfVxuICAuY3VzLWJ0bi13cmFwe1xuICAgIGhlaWdodDogNDBweDtcbiAgfVxuICAvKiDsg4HtkojrrLjsnZgg66qo64usICovXG4gIC5xbmEtcHtcbiAgICBsaW5lLWhlaWdodDoxLjY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC50ZXh0LWZpZWxke1xuICAgIGxpbmUtaGVpZ2h0OjIwcHg7XG4gIH1cbn1cblxuLyog7ZuE6riwIOyEoO2DnSDrpqzsiqTtirgg66qo64usICovXG4ucmV2aWV3LXNlbGVjdGVkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLnJldmlldy1zZWxlY3RlZC1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjIyO1xuICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzIyMjtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWF4KG1kKSB7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ19ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgfVxuICAucmV2aWV3LWl0ZW0td3JhcCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgcGFkZGluZzogMTVweCAxMHB4IDE1cHggMTBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICAgICYgPiAqe1xuICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIH1cblxuICAgIC5pdGVtLW9wdGlvbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yZXZpZXctbGlzdC1idG4td3JhcCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206N3B4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgfVxuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICAgICAgIO2MjOydvOyyqOu2gFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZmlsZS1hdHRhY2hlZC13cmFwLFxuLnByZXZpZXdfd3JhcCxcbi5pbWdfcHJldmlldyB7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuLnByZXZpZXdfd3JhcF9saXN0e1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgd2lkdGg6NzVweDtcbiAgbWFyZ2luLXJpZ2h0OjVweDtcbn1cbi5wcmV2aWV3X3dyYXBfbGlzdCAucHJldmlld193cmFwX2xpc3RfaW1nIGltZ3tcbiAgaGVpZ2h0OiA3NXB4O1xufVxuLnByZXZpZXdfd3JhcF9saXN0IC5wcmV2aWV3X3dyYXBfbGlzdF90ZXh0e1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY29sb3I6Izg4ODtcbn1cbi5wcmV2aWV3X3dyYXBfbGlzdCAucHJldmlld193cmFwX2xpc3RfYnRue1xuICBsYWJlbCB7XG4gICAgaGVpZ2h0OjEwMCU7XG4gIH1cblxufVxuLnByZXZpZXdfd3JhcF9saXN0IC5wcmV2aWV3X2RlbF9maWxlLFxuLnByZXZpZXdfd3JhcF9saXN0IC5wcmV2aWV3X2RlbF9maWxlX2NoZWNre1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIHJpZ2h0OjA7XG4gIHdpZHRoOjIzcHg7XG4gIGhlaWdodDoyM3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOnVybCgvdmlld3MvcmVzL2ltZ3MvYm9hcmQvYm9hcmRfY2xvc2VfaWNvbi5qcGcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcbn1cbi5wcmV2aWV3X3dyYXBfbGlzdCAucHJldmlld19kZWxfZmlsZV9jaGVjayBpbnB1dFt0eXBlPWNoZWNrYm94XXtcbiAgZGlzcGxheTogbm9uZTtcbn0iLCIuYmxvY2stcmV2ZWFsZXJfX2NvbnRlbnR7XG4gIG9wYWNpdHk6IDA7XG59XG4uYmxvY2stcmV2ZWFsZXJfX2VsZW1lbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7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 */
