.payment-process {
  padding-bottom: 0;
}

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

.payment-process .sub-article-01 {
  position: relative;
  padding: 25px 0 80px;
}

@media screen and (min-width: 544px) {
  .payment-process .sub-article-01 {
    padding-top: 40px;
  }
}

@media screen and (min-width: 992px) {
  .payment-process .sub-article-01 {
    padding: 70px 0 100px;
  }
}

.payment-process .sub-article-01 .bg-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -33%;
  width: 100%;
  height: 668px;
  background-color: #f2fafd;
}

@media screen and (min-width: 544px) {
  .payment-process .sub-article-01 .bg-wrap {
    height: 580px;
  }
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-01 .bg-wrap {
    margin-left: -300px;
    height: 372px;
  }
}

.payment-process .sub-article-01 .box-list-wrap {
  display: flex;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

@media screen and (min-width: 544px) {
  .payment-process .sub-article-01 .box-list-wrap {
    margin-bottom: 80px;
  }
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-01 .box-list-wrap {
    flex-wrap: nowrap;
  }
}

.payment-process .sub-article-01 .box-list-wrap.row {
  margin-left: -14px;
  margin-right: -14px;
}

.payment-process .sub-article-01 .box-list-wrap.row .col {
  width: 95%;
  margin: 0 auto;
  padding: 0 14px;
  margin-bottom: 20px;
}

.payment-process .sub-article-01 .box-list-wrap.row .col > * {
  height: 100%;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-01 .box-list-wrap.row .col {
    width: 100%;
    margin-bottom: 0;
  }
}

.payment-process .sub-article-01 .box-list-wrap .box-list {
  flex: 1 1 100%;
  min-height: 158px;
  padding: 20px 30px;
  background-color: #fff;
  box-shadow: 0px 0px 8px 3px rgba(0, 0, 0, 0.05);
}

@media screen and (min-width: 544px) {
  .payment-process .sub-article-01 .box-list-wrap .box-list {
    min-height: 144px;
    padding: 29px 30px;
  }
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-01 .box-list-wrap .box-list {
    min-height: 198px;
    padding: 42px 30px;
  }
}

.payment-process .sub-article-01 .box-list-wrap .box-list .title {
  line-height: 1.94;
  margin-bottom: 2px;
  font-size: 18px;
  color: #000;
}

.payment-process .sub-article-01 .box-list-wrap .box-list .desc {
  line-height: 1.73;
  font-size: 15px;
  color: #666;
}

.payment-process .sub-article-02 {
  padding: 70px 0 70px;
  background-color: #f8f8f8;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 {
    padding: 90px 0 100px;
  }
}

.payment-process .sub-article-02 .common-sub-title-wrap {
  margin-bottom: 55px;
}

.payment-process .sub-article-02 .common-sub-title-wrap .desc-notice {
  position: relative;
  line-height: 1.66;
  margin-top: 10px;
  color: #777;
  padding-left: 30px;
  font-size: 15px;
}

.payment-process .sub-article-02 .common-sub-title-wrap .desc-notice::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  width: 20px;
  height: 20px;
  background-image: url(/views/res/imgs/page/page_info_icon.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50%;
  vertical-align: middle;
}

.payment-process .sub-article-02 .cycle-list-wrap {
  display: block;
}

.payment-process .sub-article-02 .cycle-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 55px;
  padding-bottom: 50px;
  border-bottom: 1px solid #ddd;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .cycle-list {
    margin-bottom: 35px;
    padding-bottom: 40px;
  }
}

.payment-process .sub-article-02 .cycle-list.border-none {
  border-bottom: 0;
}

.payment-process .sub-article-02 .cycle-list:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .cycle-list {
    flex-wrap: nowrap;
  }
}

.payment-process .sub-article-02 .cycle-list .info-wrap {
  flex: 1 1 100%;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .cycle-list .info-wrap {
    flex: 0 1 426px;
    margin-right: 10px;
    margin-bottom: 0;
    padding-top: 40px;
  }
}

.payment-process .sub-article-02 .cycle-list .img-wrap {
  flex: 1 1 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .cycle-list .img-wrap {
    flex: 1 1 50%;
  }
  .payment-process .sub-article-02 .cycle-list .img-wrap .img {
    margin-left: auto;
    margin-right: -10px;
  }
}

.payment-process .sub-article-02 .title-wrap {
  margin-bottom: 18px;
  color: #000;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .title-wrap {
    margin-bottom: 40px;
  }
}

.payment-process .sub-article-02 .title-wrap .title {
  line-height: 1.44;
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .title-wrap .title {
    line-height: 1.3;
    font-size: 20px;
  }
}

.payment-process .sub-article-02 .title-wrap .sub-title {
  line-height: 1.66;
  font-size: 15px;
}

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

.payment-process .sub-article-02 .example-wrap {
  text-align: center;
}

.payment-process .sub-article-02 .example-wrap .title {
  position: relative;
  margin-bottom: 10px;
  padding-left: 12px;
  line-height: 1.66;
  font-size: 15px;
  color: #555;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .example-wrap .title {
    line-height: 1.81;
    font-size: 16px;
  }
}

.payment-process .sub-article-02 .example-wrap .title::before {
  content: '';
  position: absolute;
  top: 13px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #555;
}

.payment-process .sub-article-02 .example-wrap .example-list-wrap {
  display: flex;
  justify-content: center;
  margin-bottom: 15px;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .example-wrap .example-list-wrap {
    justify-content: normal;
    margin-bottom: 30px;
  }
}

.payment-process .sub-article-02 .example-wrap .example-list-wrap:first-child {
  margin-bottom: 0;
}

.payment-process .sub-article-02 .example-wrap .example-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex: 1 1 100%;
  max-width: 105px;
  min-height: 105px;
  border: 1px solid #bbb;
  color: #555;
  text-align: center;
}

.payment-process .sub-article-02 .example-wrap .example-list:last-child {
  border-color: #1b458e;
  color: #1b458e;
}

.payment-process .sub-article-02 .example-wrap .example-list .text {
  display: inline-block;
  flex: 1 0 100%;
  line-height: 1.57;
  font-size: 14px;
  letter-spacing: -0.03em;
}

.payment-process .sub-article-02 .example-wrap .example-list .text.three-lines {
  line-height: 1.33;
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .example-wrap .example-list .text {
    line-height: 1.73;
    font-size: 15px;
  }
}

@media screen and (min-width: 768px) {
  .payment-process .sub-article-02 .example-wrap .example-list {
    max-width: 116px;
    min-height: 116px;
  }
}

.payment-process .sub-article-02 .example-wrap .icon-arrow {
  flex: 0 1 37px;
  min-width: 30px;
  display: inline-block;
  background-image: url(/views/res/imgs/page/payment/process_icon_arrow.svg);
  background-repeat: no-repeat;
  background-size: 17px 14px;
  background-position: 50%;
  text-indent: -9999px;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0L3BhZ2UvcGF5bWVudC9wcm9jZXNzLmNzcyIsInNvdXJjZXMiOlsibGF5b3V0L3BhZ2UvcGF5bWVudC9wcm9jZXNzLnNjc3MiLCJyZXMvc2Nzcy9fX3ZhcmlhYmxlcy5zY3NzIiwicmVzL3Njc3MvdmFyaWFibGVzX2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwicmVzL3Njc3MvdmFyaWFibGVzX2NvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJyZXMvc2Nzcy92YXJpYWJsZXNfY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsInJlcy9zY3NzL3ZhcmlhYmxlc19jb21wb25lbnRzL190YWJsZS5zY3NzIiwicmVzL3Njc3MvdmFyaWFibGVzX2NvbXBvbmVudHMvX3RhYi5zY3NzIiwicmVzL3Njc3MvdmFyaWFibGVzX2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsInJlcy9zY3NzL19fbWl4aW5zLnNjc3MiLCJyZXMvc2Nzcy9taXhpbnMvX21lZGlhLXF1ZXJ5LnNjc3MiLCJyZXMvc2Nzcy9taXhpbnMvX21hcC5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19jbGVhci5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19mbG9hdC5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19zY3JlZW5yZWFkZXIuc2NzcyIsInJlcy9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19wcmVmaXhlci5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJyZXMvc2Nzcy9taXhpbnMvX2FyZWEuc2NzcyIsInJlcy9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL190cmlhbmdsZS5zY3NzIiwicmVzL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJyZXMvc2Nzcy9taXhpbnMvX2NhcmRzLnNjc3MiLCJyZXMvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsInJlcy9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsInJlcy9zY3NzL21peGlucy9fdGFibGVzLnNjc3MiLCJyZXMvc2Nzcy9taXhpbnMvX3RhYi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJyZXMvc2Nzcy9fX3ZhcmlhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwicmVzL3Njc3MvX19taXhpbnMuc2Nzc1wiO1xuXG4ucGF5bWVudC1wcm9jZXNze1xuICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAvL+2OmOydtOyngCDqs7XthrVcbiAgLmNvbW1vbi1zdWItdGl0bGUtd3JhcCB7XG4gICAgLnRpdGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vMS4g7KCV7IKw7ZSE66Gc7IS47IqkXG4gIC5zdWItYXJ0aWNsZS0wMXtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzoyNXB4IDAgODBweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pe1xuICAgICAgcGFkZGluZy10b3A6NDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKGxnKXtcbiAgICAgIHBhZGRpbmc6NzBweCAwIDEwMHB4O1xuICAgIH1cbiAgICAuYmctd3JhcHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDowO1xuICAgICAgbGVmdDo1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTMzJTtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBoZWlnaHQ6IDY2OHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZmFmZDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihzbSl7XG4gICAgICAgIGhlaWdodDogNTgwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgICBtYXJnaW4tbGVmdDogLTMwMHB4O1xuICAgICAgICBoZWlnaHQ6IDM3MnB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYm94LWxpc3Qtd3JhcHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKHNtKXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgfVxuICAgICAgJi5yb3d7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi0xNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LTE0cHg7XG4gICAgICAgIC5jb2x7XG4gICAgICAgICAgd2lkdGg6OTUlO1xuICAgICAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMCAxNHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgPiAqe1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYm94LWxpc3R7XG4gICAgICAgIGZsZXg6MSAxIDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1OHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggOHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oc20pe1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDE0NHB4O1xuICAgICAgICAgIHBhZGRpbmc6MjlweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgICAgbWluLWhlaWdodDogMTk4cHg7XG4gICAgICAgICAgcGFkZGluZzo0MnB4IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxle1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk0O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgY29sb3I6IzAwMDtcbiAgICAgICAgfVxuICAgICAgICAuZGVzY3tcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS43MztcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgY29sb3I6ICM2NjY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8wMi4g7KCV7IKw7KO86riwXG4gIC5zdWItYXJ0aWNsZS0wMiB7XG4gICAgcGFkZGluZzogNzBweCAwIDcwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpe1xuICAgICAgcGFkZGluZzogOTBweCAwIDEwMHB4O1xuICAgIH1cbiAgICAuY29tbW9uLXN1Yi10aXRsZS13cmFwe1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICAgIC5kZXNjLW5vdGljZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjY7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGNvbG9yOiAjNzc3O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDoycHg7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDoyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvcGFnZS9wYWdlX2luZm9faWNvbi5zdmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY3ljbGUtbGlzdC13cmFwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuY3ljbGUtbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICB9XG4gICAgICAmLmJvcmRlci1ub25le1xuICAgICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgIGJvcmRlci1ib3R0b206MDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICB9XG4gICAgICAuaW5mby13cmFwIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgICAgZmxleDogMCAxIDQyNnB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgcGFkZGluZy10b3A6NDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmltZy13cmFwIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgICBmbGV4OiAxIDEgNTAlO1xuICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvL+2DgOydtO2LgFxuICAgIC50aXRsZS13cmFwe1xuICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIH1cbiAgICAgIC50aXRsZXtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4obWQpIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnN1Yi10aXRsZXtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvL+yYiOyLnFxuICAgIC5leGFtcGxlLXdyYXAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLnRpdGxle1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS42NjtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODE7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOjEzcHg7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIHdpZHRoOjRweDtcbiAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmV4YW1wbGUtbGlzdC13cmFwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBub3JtYWw7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5leGFtcGxlLWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXg6MSAxIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTA1cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwNXB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYmJiO1xuICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWI0NThlO1xuICAgICAgICAgIGNvbG9yOiAjMWI0NThlO1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTc7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICYudGhyZWUtbGluZXMge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihtZCl7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43MztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKG1kKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTZweDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmljb24tYXJyb3d7XG4gICAgICAgIGZsZXg6MCAxIDM3cHg7XG4gICAgICAgIG1pbi13aWR0aDogMzBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2UvcGF5bWVudC9wcm9jZXNzX2ljb25fYXJyb3cuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxN3B4IDE0cHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLy8vLy9kZWZhdWx0Ly8vLy9cbi8vY29sb3JcbiRnX3doaXRlOiAjZmZmICFkZWZhdWx0O1xuJGdfYmxhY2s6ICMwMDAgIWRlZmF1bHQ7XG4kZ19yZWQ6ICNjZDIwMDA7XG5cbiRnX3BvaW50LWZvbnQtY29sb3I6ICMwMGFlZWY7XG4kZ19wb2ludC1mb250LWNvbG9yMjogIzFiNDU4ZTtcbiRnX3BvaW50LXRoZW1lLWNvbG9yOiAjMDBhZWVmO1xuJGdfcG9pbnQtdGhlbWUtY29sb3IyOiAjMWI0NThlO1xuJGdfYm9yZGVyLWNvbG9yIDogI2RkZDtcblxuLy9mb250XG4vLy1mb250LWZhbWlseVxuJGdfZm9udC1mYW1pbHk6IChcbiAgc3lzdGVtOiAnIFwi66eR7J2AIOqzoOuUlVwiLCBcIk1hbGd1biBHb3RoaWNcIiwgXCLslaDtlIwgU0Qg7IKw64+M6rOg65SVIE5lb1wiLCBcIkFwcGxlIFNEIEdvdGhpYyBOZW9cIiwgc2Fucy1zZXJpZiAnLFxuICBub3RvOiAnXCJOb3RvIFNhbnMgS1JcIiwgc2Fucy1zZXJpZicsXG4gIGxhdG8gOiAnXCJMYXRvXCIsIHNhbnMtc2VyaWYnLFxuICBkb3R1bTogJ1wiRG90dW1cIiwgc2Fucy1zZXJpZicsXG4pO1xuXG4kZm9udC1zeXN0ZW06ICN7bWFwLWdldCgkZ19mb250LWZhbWlseSwgc3lzdGVtKX07XG4kZm9udC1ub3RvOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIG5vdG8pfTtcbiRmb250LWxhdG86ICN7bWFwLWdldCgkZ19mb250LWZhbWlseSwgbGF0byl9OyAvLzEwMChUKSwzMDAoTCksNDAwKFIpLDcwMChCKSw5MDAoQilcbiRmb250LWRvdHVtOiAje21hcC1nZXQoJGdfZm9udC1mYW1pbHksIGRvdHVtKX07XG5cbi8vLWRlZmF1bHQgZm9udCDshKTsoJVcbiRmb250LTMwMCA6ICRmb250LW5vdG87XG4kZm9udC00MDAgOiAkZm9udC1ub3RvO1xuJGZvbnQtNTAwIDogJGZvbnQtbm90bztcbiRmb250LTcwMCA6ICRmb250LW5vdG87XG4kZm9udC04MDAgOiAkZm9udC1ub3RvO1xuXG4vLy1mb250LXNpemVcbiRnX2ZvbnQtc2l6ZTooXG4gIHhzOiAxMHB4LFxuICBzbTogMTJweCxcbiAgbWQ6IDE1cHgsXG4gIGxnOiAxOHB4LFxuICB4bDogMjRweCxcbik7XG5cbi8vLWZvbnQtd2VpZ2h0XG4kZ19mb250LXdlaWdodHM6IDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDA7XG5cbi8vLWxldHRlci1zcGFjaW5nXG5cbi8vLy8vbWVkaWEvLy8vL1xuJGdfbWVkaWEtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NDRweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbik7XG5cbi8vLy8vbGF5b3V0Ly8vLy9cbi8vYXJlYVxuJGdfbWF4LXdpZHRoOiAxMTQwcHg7XG4kZ19hcmVhLWd1dHRlci13aWR0aDogMjBweDtcblxuLy9ncmlkXG4kZ19ncmlkLWNvbHVtbnM6IDEyO1xuJGdfZ3JpZC1ndXR0ZXItd2lkdGg6IDElO1xuXG4kZ19kZWZhdWx0LWFyZWE6IChcbiAgbWF4LXdpZHRoOiAkZ19tYXgtd2lkdGgsXG4gIGd1dHRlci13aWR0aDogJGdfYXJlYS1ndXR0ZXItd2lkdGgsXG4gIHdpZHRoOiAxMDAlXG4pO1xuJGdfZnVsbC1hcmVhOiAoXG4gIG1heC13aWR0aDogMTc1MHB4LFxuICBndXR0ZXItd2lkdGg6ICRnX2FyZWEtZ3V0dGVyLXdpZHRoLFxuICB3aWR0aDogMTAwJVxuKTtcbiRnX25vZ3V0dGVyLWFyZWE6IChcbiAgbWF4LXdpZHRoOiAkZ19tYXgtd2lkdGhcbik7XG5cbi8vZ3JpZFxuJGdfZ3JpZC1jb2wtaW5mbzogKFxuICBncmlkLWNvbC1jbnQ6IDEyLFxuICBncmlkLWNvbC1uYW1lOiBudWxsXG4pO1xuJGdyaWQtY29sNS1pbmZvOiAoXG4gIGdyaWQtY29sLWNudDogNSxcbiAgZ3JpZC1jb2wtbmFtZTogZml2ZS1cbik7XG5cbi8vLy8vVVRJTElUSUVTLy8vLy9cbi8vY2xlYXJcblxuLy9zcGFjaW5nXG4kc3BhY2VyczooXG4gIDA6IDAsXG4gIDU6IDVweCxcbiAgMTA6IDEwcHgsXG4gIDE1OiAxNXB4LFxuICAyMDogMjBweCxcbiAgMjU6IDI1cHgsXG4gIDMwOiAzMHB4LFxuICA0MDogNDBweCxcbiAgNTA6IDUwcHgsXG4gIDYwOiA2MHB4LFxuICA3MDogNzBweCxcbiAgODA6IDgwcHgsXG4gIDkwOiA5MHB4LFxuICAxMDA6IDEwMHB4LFxuICAxMjA6IDEyMHB4LFxuKTtcblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ly9cblxuLy8vLy9DT01QT05FTlRTLy8vLy9cbkBpbXBvcnQgXCJ2YXJpYWJsZXNfY29tcG9uZW50cy9fYnV0dG9uXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzX2NvbXBvbmVudHMvX2Zvcm1zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzX2NvbXBvbmVudHMvX2NhcmRzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzX2NvbXBvbmVudHMvX3RhYmxlXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzX2NvbXBvbmVudHMvX3RhYlwiO1xuQGltcG9ydCBcInZhcmlhYmxlc19jb21wb25lbnRzL19wYWdpbmF0aW9uXCI7XG4vLyBAaW1wb3J0IFwidmFyaWFibGVzX2NvbXBvbmVudHMvX3Rvb2x0aXBcIjsgLy8g7IKs7Jqp7ZWY7KeAIOyViuuKlCDrtoDrtoTsnYAg7KO87ISdICggYmFzZS5zY3NzIOyXkOuPhCDso7zshJ0gKVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vL1xuIiwiLy8gX2J1dHRvblxuJGdfYnRuLXNpemU6ICh4czogKCAvLyDrsLDshqHsobDtmows7ZuE6riw7J6R7ISxXG4gICAgd2lkdGg6IDUwcHgsXG4gICAgaGVpZ2h0OiAzN3B4LFxuICAgIGxpbmUtaGVpZ2h0OiAzN3B4LFxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICBmb250LXNpemU6IDEycHgsXG4gICksXG4gIHNtOiAoIC8vIO2ajOybkOqwgOyehSwg66eI7J207Y6Y7J207KeALCDqsozsi5ztjJAsIHBvcHVwIGJ0biDqtIDroKgg67KE7Yq8XG4gICAgd2lkdGg6IDkwcHgsXG4gICAgaGVpZ2h0OiAzN3B4LFxuICAgIGxpbmUtaGVpZ2h0OiAzN3B4LFxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICBmb250LXNpemU6IDEycHgsXG4gICksXG4gIG1kOiAoIC8v7J2867CYIO2OmOydtOyngFxuICAgIHdpZHRoOiAyMTBweCxcbiAgICBoZWlnaHQ6IDU1cHgsXG4gICAgbGluZS1oZWlnaHQ6IDU1cHgsXG4gICAgZm9udC1zaXplOiAxNXB4LFxuICApLFxuICBsZzogKCAvL+yepeuwlOq1rOuLiFxuICAgIHdpZHRoOjI2NXB4LFxuICAgIGhlaWdodDogNDBweCxcbiAgICBsaW5lLWhlaWdodDogNDBweCxcbiAgICBmb250LXNpemU6IDE1cHgsXG4gICAgZm9udC13ZWlnaHQ6NTAwLFxuICApLFxuICB4bDogKCAvL+uhnOq3uOyduCwg7ZqM7JuQ6rCA7J6FLCDslYTsnbTrlJQm67mE67CA67KI7Zi4IOywvuq4sCDtlIzroZzsmrBcbiAgICBoZWlnaHQ6IDUwcHgsXG4gICAgbGluZS1oZWlnaHQ6IDUwcHgsXG4gICAgZm9udC1zaXplOiAxNXB4LFxuICAgIGZvbnQtd2VpZ2h0OjUwMCxcbiAgICBtZWRpYTogKG1kOiAoaGVpZ2h0OiA1NXB4LFxuICAgICAgICBsaW5lLWhlaWdodDogNTVweCxcbiAgICAgICkpKSxcbiAgZnVsbC1zbSA6ICggLy8g6rKM7Iuc7YyQ7JeQ7IScIOyCrOyaqVxuICAgIHdpZHRoOjEwMCUsXG4gICAgaGVpZ2h0OiA0MnB4LFxuICAgIGxpbmUtaGVpZ2h0OiA0MnB4LFxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICBmb250LXNpemU6IDEycHgsXG4gICAgbWVkaWEgOiAobWQgOiAod2lkdGg6IDkwcHgsXG4gICAgICAgIGhlaWdodDogMzdweCxcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM3cHgsXG4gICAgICApLFxuICAgICkpLFxuICBmdWxsLW1kOiAoIC8v7J2867CYIO2OmOydtOyngFxuICAgIHdpZHRoOiAxMDAlLFxuICAgIG1heC13aWR0aDogMjEwcHgsXG4gICAgaGVpZ2h0OiA1NXB4LFxuICAgIGxpbmUtaGVpZ2h0OiA1NXB4LFxuICAgIGZvbnQtc2l6ZTogMTVweCxcbiAgKSxcbiAgcG9wdXA6ICggLy9wb3B1cCDrsoTtirxcbiAgICBtYXgtd2lkdGg6MjEwcHgsXG4gICAgbGluZS1oZWlnaHQ6IDU1cHgsXG4gICAgaGVpZ2h0OiA1NXB4LFxuICApLFxuICBmdWxsOih3aWR0aDogMTAwJSxcbiAgKSxcbik7XG5cbiRnX2J0bi1ncm91cCA6ICggLy8g67KE7Yq8IOyKpO2DgOydvCDshKTsoJXtlZjquLBcbiAgcG9pbnQgOiAoIC8vIGRlZmF1bHRcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ19wb2ludC10aGVtZS1jb2xvcjIsXG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudCxcbiAgICBob3ZlciA6IChiYWNrZ3JvdW5kLWNvbG9yOiMwYjJkNjcsXG4gICAgKSksXG4gIHN1Yi1wb2ludCA6KGJhY2tncm91bmQtY29sb3I6JGdfcG9pbnQtdGhlbWUtY29sb3IsXG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudCxcbiAgICBob3ZlciA6IChiYWNrZ3JvdW5kLWNvbG9yOiMwNzkwZDAsXG4gICAgKSksXG4gIHN0eWxlMiA6ICggLy8g7ZqM7JuQ6rCA7J6FLCDslYTsnbTrlJQm67mE67CA67KI7Zi4IOywvuq4sFxuICAgIGJvcmRlcjoxcHggc29saWQgI2NjYyxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwLFxuICAgIGNvbG9yOiAjNTU1LFxuICApLFxuICBzdHlsZTMgOiAoIC8vIOyjvOusuOy3qOyGjCwg7KO866y466as7Iqk7Yq46rKA7IOJXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NSxcbiAgICBjb2xvcjogI2ZmZixcbiAgKSxcbiAgb3V0bGluZS1zdHlsZTEgOiAoIC8vIOuhnOq3uOyduCwg7KO866y47IOB7IS467O06riwLCBjdXN0b20yXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiNmZmYsXG4gICAgY29sb3I6IzU1NSAhaW1wb3J0YW50LFxuICAgIGhvdmVyIDogKGJhY2tncm91bmQtY29sb3I6I2YyZjJmMixcbiAgICApKSxcbiAgb3V0bGluZS1zdHlsZTIgOiAoIC8vIOq4gOyTsOq4sFxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMjIsXG4gICAgYmFja2dyb3VuZC1jb2xvcjojZmZmLFxuICAgIGNvbG9yOiMyMjIsXG4gICksXG4gIG91dGxpbmUtc3R5bGUzOiAoYm9yZGVyOiAxcHggc29saWQgI2ZmZixcbiAgICBjb2xvciA6I2ZmZixcbiAgICBob3ZlcjogKGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50LFxuICAgICkpLFxuKTsiLCIvLyBfZm9ybVxuJGdfZm9ybS13cmFwOiAodGFibGUgOiAoIC8vLmZvcm0td3JhcC10YWJsZSAo7ZqM7JuQ6rCA7J6FJuygleuztCwg7KO866y46rKw7KCcJuuCtOyXrSlcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxuICAgIGZvcm0td3JhcDogKCAvLy5mb3JtLXdyYXAtZmxleCAuZm9ybS13cmFwXG4gICAgICBkaXNwbGF5OiBmbGV4LFxuICAgICksXG4gICAgZm9ybS10aXRsZTogKCAvLy5mb3JtLXdyYXAtZmxleCAuZm9ybS10aXRsZVxuICAgICAgZGlzcGxheTogZmxleCxcbiAgICAgIGZsZXgtZ3JvdzogMCxcbiAgICAgIGZsZXgtc2hyaW5rOiAxLFxuICAgICAgZmxleC1iYXNpczogOTBweCxcbiAgICAgIG1pbi13aWR0aDogOTBweCxcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNSxcbiAgICAgIHBhZGRpbmc6IDE5cHggMTBweCxcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1kb3R1bSxcbiAgICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICAgIG1lZGlhOiAoc206IChmbGV4LWJhc2lzOiAxMDAlLFxuICAgICAgICAgIG1heC13aWR0aDoxNTBweCxcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHgsXG4gICAgICAgICksXG4gICAgICAgIG1kOiAobWF4LXdpZHRoOjIwM3B4LFxuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweCxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKSxcbiAgICBmb3JtLWJvZHk6ICggLy8uZm9ybS13cmFwLWZsZXggLmZvcm0tYm9keVxuICAgICAgZmxleC1ncm93OiAwLFxuICAgICAgZmxleC1zaHJpbms6IDEsXG4gICAgICBmbGV4LWJhc2lzOiA0MDNweCxcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNSxcbiAgICAgIHBhZGRpbmc6IFwiMTBweFwiLFxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWRvdHVtLFxuICAgICAgZm9udC1zaXplOiAxMnB4LFxuICAgICksXG4gICksXG4gIHN0eWxlMSA6ICggLy8uZm9ybS13cmFwLXN0eWxlMSAo7IKs7JeF7ISk66qF7ZqMIO2MneyXhSDsgqzsmqkgLyBwcmVzZW50YXRpb25faW5zZXJ0LnBocClcbiAgICBtYXJnaW4tYm90dG9tOiAtMjRweCxcbiAgICBmb3JtLXdyYXA6ICggLy8uZm9ybS13cmFwLWZsZXggLmZvcm0td3JhcFxuICAgICAgbWFyZ2luLWJvdHRvbTogMjRweCxcbiAgICApLFxuICAgIGZvcm0tdGl0bGU6ICggLy8uZm9ybS13cmFwLWZsZXggLmZvcm0tdGl0bGVcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweCxcbiAgICAgIGZvbnQtc2l6ZTogMTVweCxcbiAgICAgIGNvbG9yOiAjNTU1LFxuICAgICksXG4gICAgZm9ybS1ib2R5OiAoIC8vLmZvcm0td3JhcC1mbGV4IC5mb3JtLWJvZHlcbiAgICAgIGZvbnQtc2l6ZTogMTVweCxcbiAgICApLFxuICApLFxuKTtcbi8vX2lucHV0XG4kZ19maWVsZC1zdHlsZTogKCAvLyggZm9ybeyXkOyEnCDqsJnsnbQgJ2lucHV0LHNlbGVjdCx0ZXh0YXJlYScgc3R5bGXsnbQg7ZWo6ruYIOyCrOyaqeyLnCApXG4gIHN0eWxlMTogKCAvL+q0gOumrOyekFxuICAgIGlucHV0X2RlZmF1bHQgOiAoIC8vLmZpZWxkLXN0eWxlMSBpbnB1dCAuLlxuICAgICAgaGVpZ2h0OmF1dG8sXG4gICAgICBwYWRkaW5nOiAwIDAgNXB4IDAsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50LFxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNWQ2ZDgsXG4gICAgICBmb2N1cy1zdHlsZSA6IChib3JkZXI6MXB4IHNvbGlkICRnX3BvaW50LXRoZW1lLWNvbG9yLFxuICAgICAgKSxcbiAgICAgIHBsYWNlaG9sZGVyLXN0eWxlIDogKGNvbG9yOiAjY2NjZmQ2LFxuICAgICAgKSxcbiAgICApLFxuICAgIHNlbGVjdCA6ICggLy8uZmllbGQtc3R5bGUxIHNlbGVjdCAuLlxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTAwcHggYm90dG9tIDUwJSxcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2J0bl9zZWxlY3RfYXJyb3dfc3QwMS5zdmcpLFxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDdweCxcbiAgICApLFxuICAgIHRleHRhcmVhIDogKCAvLy5maWVsZC1zdHlsZTEgdGV4dGFyZWEgLi5cbiAgICAgIGhlaWdodDoxNTBweCxcbiAgICAgIHBhZGRpbmcgOiA1cHgsXG4gICAgICBib3JkZXI6MXB4IHNvbGlkICNkZGQsXG4gICAgKSxcbiAgKSxcbiAgc3R5bGUyOiAoIC8v7ZqM7JuQ6rCA7J6FLCDtmozsm5DsoJXrs7QsIOyjvOusuOqysOygnCwg7KO866y47ZmV7J24IO2PvFxuICAgIGlucHV0X2RlZmF1bHQgOiAoZmxleC1ncm93OiAxLFxuICAgICAgZmxleC1zaHJpbms6IDAsXG4gICAgICBmbGV4LWJhc2lzOiAxMDAlLFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yLFxuICAgICAgaGVpZ2h0OiAzN3B4LFxuICAgICAgcGFkZGluZzogMCAxMHB4LFxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWRvdHVtLFxuICAgICAgZm9udC1zaXplOiAxMnB4LFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbSxcbiAgICAgIHBsYWNlaG9sZGVyLXN0eWxlIDogKGNvbG9yOiAjYWFhLFxuICAgICAgKSxcbiAgICApLFxuICAgIHNlbGVjdCA6ICggLy8gKO2ajOybkOqwgOyehSztmozsm5DsoJXrs7QpIOyXsOudveyymFxuICAgICAgcGFkZGluZzogMCAyMHB4IDAgMTBweCxcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDVweCBib3R0b20gNTAlLFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vYnRuX3NlbGVjdF9hcnJvd19zdDAyLnN2ZyksXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggN3B4LFxuICAgICAgbWVkaWE6KG1kOihwYWRkaW5nOiAwIDM1cHggMCAxMHB4LFxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggYm90dG9tIDUwJSxcbiAgICAgICAgKSkpLFxuICAgIHRleHRhcmVhIDogKG1heC13aWR0aDppbml0aWFsLFxuICAgICAgaGVpZ2h0OjEwMHB4LFxuICAgICAgcGFkZGluZyA6IDEwcHgsXG4gICAgKSksXG4gIHN0eWxlMzogKCAvL+uhnOq3uOyduCwg7ZqM7JuQ6rCA7J6FIO2UjOuhnOyasCAvL+yImOygleyZhOujjFxuICAgIGlucHV0X2RlZmF1bHQgOiAoYm9yZGVyOiAxcHggc29saWQgI2RkZCxcbiAgICAgIGhlaWdodDogNTBweCxcbiAgICAgIHBhZGRpbmc6IDAgMTBweCxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50LFxuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWRvdHVtLFxuICAgICAgZm9udC1zaXplOiAxMnB4LFxuICAgICAgcGxhY2Vob2xkZXItc3R5bGUgOiAoY29sb3I6ICNhYWEsXG4gICAgICApLFxuICAgICAgbWVkaWE6IChtZDogKGhlaWdodDo1NXB4LFxuICAgICAgICApKSksXG4gICAgc2VsZWN0IDogKG92ZXJmbG93OiBoaWRkZW4sXG4gICAgKSksXG4gIHN0eWxlNDogKCAvLyjsgqzsl4XshKTrqoXtmowg7Yyd7JeFIOyCrOyaqSAvIHByZXNlbnRhdGlvbl9pbnNlcnQucGhwKVxuICAgIGlucHV0X2RlZmF1bHQgOiAoYm9yZGVyOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yLFxuICAgICAgaGVpZ2h0OiA1MHB4LFxuICAgICAgcGFkZGluZzoxNXB4IDEwcHgsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgICAgIGZvbnQtc2l6ZTogMTRweCxcbiAgICAgIHBsYWNlaG9sZGVyLXN0eWxlIDogKGNvbG9yOiAjYWFhLFxuICAgICAgICBmb250LXdlaWdodDozMDAsXG4gICAgICApLFxuICAgICAgbWVkaWE6IChtZDogKGZvbnQtc2l6ZTogMTVweCxcbiAgICAgICAgICBwYWRkaW5nOjE1cHgsXG4gICAgICAgICkpKSxcbiAgICBzZWxlY3QgOiAocGFkZGluZy1yaWdodDogMzBweCxcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDIwcHggY2VudGVyLFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC92aWV3cy9yZXMvaW1ncy9jb21tb24vY29tbW9uX2Fycm93X2ljb25fZG93bi5zdmcpLFxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDdweCxcbiAgICApLFxuICApKTtcblxuLy9fdGV4dGFyZWFcbiRnX3RleHQtYXJlYS1zdHlsZTogKCAvLygg7Y6Y7J207KeA7JeQ7IScIOyCrOyaqeyLnCApXG4gIHN0eWxlMTogKCAvLy50ZXh0YXJlYS1zdHlsZTEgdGV4dGFyZWEge31cbiAgICAvLyDsgqzsmqnsi5wgY3NzIOy2lOqwgFxuICApLFxuKTtcblxuLy9fc2VsZWN0XG4kZ19zZWxlY3Qtc3R5bGU6ICggLy8uc2VsZWN0LXN0eWxlMSBzZWxlY3Qge30gKCDtjpjsnbTsp4Dsl5DshJwg7IKs7Jqp7IucIClcbiAgc3R5bGUxOiAoIC8vIOyDge2SiCDrpqzsiqTtirgsIOyDgeyEuCwg66eI7J207Y6Y7J207KeAIFxuICAgIHdpZHRoOiAxMDAlLFxuICAgIGhlaWdodDogNTBweCxcbiAgICBsaW5lLWhlaWdodDogNDdweCxcbiAgICBwYWRkaW5nOiAwIDEwcHgsXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yLFxuICAgIGZvbnQtc2l6ZTogMTVweCxcbiAgICBjb2xvcjogIzU1NSxcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MiUgNTAlLFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvdmlld3MvcmVzL2ltZ3MvY29tbW9uL2NvbW1vbl9hcnJvd19pY29uX2Rvd24uc3ZnKSxcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGluaXRpYWwsXG4gICAgYmFja2dyb3VuZC1jb2xvcjojZmZmLFxuICAgIG1lZGlhOiAoc206IChwYWRkaW5nOiAwIDE1cHgsXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkwJSA1MCUsXG4gICAgICApKSksXG4gIHN0eWxlMjogKCAvLyDqsozsi5ztjJAg6riA7JOw6riwICjqsozsi5zrrLwg7YOA7J6FKVxuICAgIHdpZHRoOiAxMjBweCxcbiAgICBoZWlnaHQ6IDM3cHgsXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdfYm9yZGVyLWNvbG9yLFxuICAgIHBhZGRpbmc6IDAgMTBweCxcbiAgICBmb250LXNpemU6IDEycHgsXG4gICAgY29sb3I6ICMyMjIsXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTAlIDUwJSxcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9jb21tb25fYXJyb3dfaWNvbl9kb3duLnN2ZyksXG4gICAgYmFja2dyb3VuZC1zaXplOiBpbml0aWFsLFxuICApLFxuKTtcblxuLy9fY2hlY2stYm94XG4kZ19jaGVjay1ib3gtaW1nOiAoaW1nLTEgOiAoZGlzcGxheTpmbGV4LFxuICAgIGFsaWduLWl0ZW1zIDogZmxleC1zdGFydCxcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHgsXG4gICAgY29sb3I6IzY2NixcbiAgICBjaGVja2JveC1zdHlsZSA6IChkaXNwbGF5OiBpbmxpbmUtYmxvY2ssXG4gICAgICB3aWR0aDogMjJweCxcbiAgICAgIG1pbi13aWR0aDogMjJweCxcbiAgICAgIGhlaWdodDogMjJweCxcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKC92aWV3cy9yZXMvaW1ncy9wYWdlL2ltZ19jaGVja2JveDAyX29mZi5zdmcpLFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSxcbiAgICApLFxuICAgIGNoZWNrZWQtc3R5bGUgOiAoYmFja2dyb3VuZC1pbWFnZTogdXJsKC92aWV3cy9yZXMvaW1ncy9wYWdlL2ltZ19jaGVja2JveDAyX29uLnN2ZyksXG4gICAgKSxcbiAgICB0ZXh0LXN0eWxlIDogKGRpc3BsYXk6IGZsZXgsXG4gICAgICBmbGV4LXdyYXA6IHdyYXAsXG4gICAgICBsaW5lLWhlaWdodDoxLjUsXG4gICAgICBwYWRkaW5nLWxlZnQ6N3B4LFxuICAgICAgZm9udC1zaXplOiAxNHB4LFxuICAgICAgY2hlY2sgOiAoY29sb3I6I2ZmOGUyYSxcbiAgICAgICksXG4gICAgKSxcbiAgKSxcbiAgaW1nLTIgOiAoZGlzcGxheTppbmxpbmUtYmxvY2ssXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4LFxuICAgIGNoZWNrYm94LXN0eWxlIDogKGRpc3BsYXk6IGlubGluZS1ibG9jayxcbiAgICAgIHdpZHRoOiAzMnB4LFxuICAgICAgaGVpZ2h0OiAzMnB4LFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2UvaW1nX2NoZWNrYm94MDFfb2ZmLnBuZyksXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlLFxuICAgICksXG4gICAgY2hlY2tlZC1zdHlsZSA6IChiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3ZpZXdzL3Jlcy9pbWdzL3BhZ2UvaW1nX2NoZWNrYm94MDFfb24ucG5nKSxcbiAgICApLFxuICAgIHRleHQtc3R5bGUgOiAoZGlzcGxheTogaW5saW5lLWJsb2NrLFxuICAgICAgcGFkZGluZy1sZWZ0OjRweCxcbiAgICAgIGZvbnQtc2l6ZTogMTRweCxcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUsXG4gICAgKSxcbiAgKSxcbik7XG4kZ19jaGVjay1ib3gtdGFnOiAodGFnLTEgOiAoIC8vIOyVhOydtOuUlOyggOyepSAvLyDslb3qtIDrj5nsnZggLy8g6rKw7KCc7IiY64uoIC8v67Cw7Iah7KeAIOyEoO2DnSAvLyDrsLDshqHsp4Dsl60g7ISg7YOdXG4gICAgcG9zaXRpb246IHJlbGF0aXZlLFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayxcbiAgICBtYXJnaW4tcmlnaHQ6MzBweCwgLy9zZWxmXG4gICAgY2hlY2tib3gtc3R5bGUgOiAoIC8vICY6YmVmb3JlXG4gICAgICB0b3A6OXB4LFxuICAgICAgd2lkdGg6IDIycHgsXG4gICAgICBoZWlnaHQ6IDIycHgsXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjLFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICApLFxuICAgIGNoZWNrZWQtc3R5bGUgOiAoIC8vLmN1c3RvbS1jaGVja2VkXG4gICAgICBsZWZ0OjAsXG4gICAgICB0b3A6OXB4LFxuICAgICAgd2lkdGg6IDIycHgsXG4gICAgICBoZWlnaHQ6IDIycHgsXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ19wb2ludC10aGVtZS1jb2xvcjIsXG4gICAgKSxcbiAgICB0ZXh0LXN0eWxlIDogKCAvLy50ZXh0XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUsXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2ssXG4gICAgICBsaW5lLWhlaWdodDogMSxcbiAgICAgIHBhZGRpbmctbGVmdDogMzFweCwgLy8g67CV7Iqk7YGs6riwICsg67CV7Iqk7JmAIO2FjeyKpO2KuCDsgqzsnbTsnZgg6rCE6rKpXG4gICAgICBmb250LXNpemU6IDE1cHgsXG4gICAgICBjb2xvcjogIzAwMCxcbiAgICApLFxuICApLFxuICB0YWctMiA6IChwb3NpdGlvbjogcmVsYXRpdmUsXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrLFxuICAgIG1hcmdpbi1yaWdodDoxNXB4LCAvL3NlbGZcbiAgICBjaGVja2JveC1zdHlsZSA6ICggLy8gJjpiZWZvcmVcbiAgICAgIHdpZHRoOiAxN3B4LFxuICAgICAgaGVpZ2h0OiAxN3B4LFxuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCxcbiAgICApLFxuICAgIGNoZWNrZWQtc3R5bGUgOiAoIC8vLmN1c3RvbS1jaGVja2VkXG4gICAgICAvLyB3aWR0aDo5cHgsXG4gICAgICAvLyBoZWlnaHQ6IDlweCxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTUsXG4gICAgKSxcbiAgICB0ZXh0LXN0eWxlIDogKCAvLy50ZXh0XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHgsIC8vIOuwleyKpO2BrOq4sCArIOuwleyKpOyZgCDthY3siqTtirgg7IKs7J207J2YIOqwhOqyqVxuICAgICAgZm9udC1zaXplOiAxNHB4LFxuICAgICksXG4gICkpOyIsIi8vIF9jYXJkXG4kZ19jYXJkLXdyYXA6IChcbiAgZGVmYXVsdDogKFxuICAgIHdyYXA6IChcbiAgICAgIHBhZGRpbmc6IDAgMzBweCxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYsXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4LFxuICAgICAgYm9yZGVyLXN0eWxlOiAoIGJvcmRlcjogXCIxcHggc29saWQgI2U3ZTllZVwiICksXG4gICAgICBib3JkZXItcmFkaXVzOiA1cHhcbiAgICApLFxuICAgIGhlYWRlcjogKFxuICAgICAgcGFkZGluZzogMjVweCAwLFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICAgIGJvcmRlci1zdHlsZTogKCBib3JkZXItYm90dG9tOiBcIjFweCBzb2xpZCAjZTdlOWVlXCIgKSxcbiAgICAgIGZvbnQtc2l6ZTogMTZweFxuICAgICksXG4gICAgYm9keTogKFxuICAgICAgcGFkZGluZzogMzBweCAwLFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZlxuICAgICksXG4gICAgZm9vdGVyOiAoXG4gICAgICBwYWRkaW5nOiAyNXB4IDAsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxuICAgICAgYm9yZGVyLXN0eWxlOiAoIGJvcmRlci10b3A6IFwiMXB4IHNvbGlkICNlN2U5ZWVcIiApXG4gICAgKVxuICApXG4pO1xuIiwiLy8gX3RhYmxlXG4kZ19ycC10YWJsZTogKFxuICBzdHlsZTE6IChcbiAgICBmb250LWZhbWlseTokZm9udC1kb3R1bSxcbiAgICBjb2xvcjojMjIyLFxuICAgIHJwLXRhYmxlOiAoXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzIyMlxuICAgICksXG4gICAgcnAtdGhlYWQ6IChcbiAgICAgIGRpc3BsYXk6IG5vbmUsXG4gICAgICBtZWRpYTogKFxuICAgICAgICBtZDogKFxuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLFxuICAgICAgICAgIHdpZHRoOiAxMDAlLFxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkLFxuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCxcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICApLFxuICAgIHJwLXRoOiAoXG4gICAgICBtZWRpYTogKFxuICAgICAgICBtZDogKFxuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwsXG4gICAgICAgICAgcGFkZGluZzogMThweCA1cHgsXG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4LFxuICAgICAgICAgIGNvbG9yOiAjODg4LFxuICAgICAgICApLFxuICAgICAgKVxuICAgICksXG4gICAgcnAtdHI6IChcbiAgICAgIGRpc3BsYXk6IGJsb2NrLFxuICAgICAgcGFkZGluZzogOXB4IDVweCxcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkLFxuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNXMsXG4gICAgICAvLyBcIiZcIiA6IChcbiAgICAgIC8vICAgXCI6aG92ZXJcIiA6IChcbiAgICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhLFxuICAgICAgICAvLyApLFxuICAgICAgICAvLyBcIi5ub25lLWhvdmVyOmhvdmVyXCIgOiAoXG4gICAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICAgICAgLy8gKSxcbiAgICAgIC8vICksXG4gICAgICBtZWRpYTogKFxuICAgICAgICBtZDogKFxuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLFxuICAgICAgICAgIHdpZHRoOiAxMDAlLFxuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCxcbiAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkLFxuICAgICAgICApLFxuICAgICAgKVxuICAgICksXG4gICAgcnAtdGQ6IChcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayxcbiAgICAgIHBhZGRpbmc6IDVweCxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50LFxuICAgICAgZm9udC1zaXplOiAxMXB4LFxuICAgICAgXCImXCIgOiAoXG4gICAgICAgIFwiLnRkLWJsb2NrXCIgOiAoXG4gICAgICAgICAgZGlzcGxheSA6IGJsb2NrXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBtZWRpYTogKFxuICAgICAgICBtZDogKFxuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwsXG4gICAgICAgICAgd2lkdGg6IDEwMCUsXG4gICAgICAgICAgcGFkZGluZzogMTZweCA1cHgsXG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4LFxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUsXG4gICAgICAgICAgXCImXCIgOiAoXG4gICAgICAgICAgICBcIi50ZC1ibG9ja1wiIDogKFxuICAgICAgICAgICAgICBkaXNwbGF5IDogdGFibGUtY2VsbFxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgIClcbiAgICApLFxuICApXG4pO1xuIiwiLy8gX3RhYlxuJGdfdGFiLWdyb3VwIDogKCAvLyAudGFiLXdyYXAgPiAudGFiLWxpc3RcbiAgdGFiLXdyYXAtZGVmYXVsdCA6ICggXG4gICAgZGlzcGxheTogYmxvY2ssXG4gICAgbWFyZ2luLWJvdHRvbTo2MHB4LFxuICAgIGZvbnQtc2l6ZTogMCxcbiAgICBjb2xvcjogIzAwMCxcbiAgICB0ZXh0LWFsaWduOmNlbnRlcixcbiAgKSxcbiAgYm94LXN0eWxlIDogKCBcbiAgICB0YWItbGlzdCA6ICggXG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jayxcbiAgICAgIHdpZHRoOjE0MHB4LFxuICAgICAgcGFkZGluZzoxM3B4IDEwcHgsXG4gICAgICBib3JkZXI6MXB4IHNvbGlkICNiYmIsXG4gICAgICBib3JkZXItcmlnaHQ6IDAsXG4gICAgICBmb250LXNpemU6IDE1cHgsXG4gICAgICBjb2xvcjogIzc3Nzc3NyxcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYsXG4gICAgICBjdXJzb3I6cG9pbnRlcixcbiAgICAgIGFjdGl2ZSA6ICggLy8udGFiLWxpc3QuYWN0aXZlXG4gICAgICAgIGJvcmRlci1jb2xvcjokZ19wb2ludC1mb250LWNvbG9yMixcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdfcG9pbnQtdGhlbWUtY29sb3IyLFxuICAgICAgICBjb2xvcjogJGdfd2hpdGUsXG4gICAgICApLFxuICAgICAgXCImXCIgOiAoXG4gICAgICAgIFwiOmxhc3QtY2hpbGRcIiA6IChcbiAgICAgICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNiYmIsXG4gICAgICAgIClcbiAgICAgIClcbiAgICApLFxuICApLFxuKTtcbiIsIlxuLy8gX3BhZ2luYXRpb24gXG4kZ19wYWdlLWl0ZW0tZ3JvdXAgOiAoIC8vICjrqoXsua0gOiBhIO2DnOq3uCBwYWdlLWxpbmsg66GcKOyKpO2DgOydvCkgIC8gcGFnZS1pdGVtIOydtCDqsIHsnpDsnZggd3JhcCAo6rCE6rKp7KGw7KCVKS8g7KCE7LK066W8IC5wYWdpbmF0aW9u7J20IOqwkOyLuOqzoCDsnojsnYwpXG4gIC8vIGRlZmF1bHRcbiAgLy8gd2lkdGg6MjBweCxcbiAgaGVpZ2h0OjIwcHgsXG5cbiAgLy9wYWRkaW5nOjIwcHgsXG4gIC8vIG1hcmdpbjowIC0xcHgsXG4gIC8vIHRoZW1lLWNvbG9yOiAjZmZmLFxuICAvLyBib3JkZXIgOiAxcHggc29saWQgIzIyMixcbiAgLy9ib3JkZXItcmFkaXVzOiAzcHgsXG4gIC8vYm9yZGVyLXJhZGl1cy1mLWw6IDNweCwgLy8g7LKr67KI7Ke4IOuniOyngOuniSDrsoTtirwg7L2U64SIIHJhZGl1c1xuICAvL2JvcmRlci1yaWdodCA6IG5vbmUsIC8vIOuyhO2KvOydtCDrtpnslrTsnojripQg6rK97JqwXG4gIC8vYm9yZGVyLXN0eWxlOiAoIC8vIGxhc3QtY2hpbGTsl5Ag7KCB7Jqp65CoXG4gIC8vXHRib3JkZXItcmlnaHQgOiBcIjFweCBzb2xpZCAjZTFlMWUxXCIsXG4gIC8vKSxcblxuICBmb250LXNpemU6MTNweCxcbiAgZm9udC13ZWlnaHQ6NDAwLFxuICAvLyBsZXR0ZXItc3BhY2luZzotMC4wNWVtLFxuICBmb250LWNvbG9yOiNhYWEsXG4gIGZvbnQtZmFtaWx5OiRmb250LWxhdG8sXG4gIC8vIGhvdmVyXG4gIGhvdmVyLXRoZW1lLWNvbG9yOiNmZmYsXG4gIC8vIGhvdmVyLWJvcmRlci1jb2xvciA6ICNkZGQsXG4gIGhvdmVyLWNvbG9yOiMwMDAsXG5cbiAgLy8gYWN0aXZlXG4gIC8vIGFjdGl2ZS10aGVtZTojZjJmMmYyLFxuICBhY3RpdmUtY29sb3I6IzAwMCxcbiAgYWN0aXZlLXN0eWxlOiAoIC8vIOy7pOyKpO2FgOyaqVxuICAgIC8qIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ19wb2ludC10aGVtZS1jb2xvciwgKi9cbiAgICBmb250LXdlaWdodDpib2xkLFxuICApLFxuXG4gIC8vIGRpc2FibGVkXG4gIGRpbS1vcGFjaXR5IDogLjUsXG4gIC8vZGlzYWJsZWQtc3R5bGU6ICggLy8g7Luk7Iqk7YWA7JqpXG4gIC8vXHQvL+uyhO2KvOyXkOyEnOuKlCBtYXAtaGFzLWtleeqwkuydhCDsnbTsmqntlbTshJwg7YKk6rCS7J20IOyeh+ycvOuptCDrp7XsnZgg7YKk6rCS6rO8IOuyqOulmOuhnCDstpzroKVcbiAgLy9cdC8v7Y6Y7J207KeA64Sk7J207IWY7JeQ7ISc64qUIO2CpOqwkuydtCDsnojsnLzrqbQg7JWI7JeQIOuCtOyaqSDqt7jrjIDroZwg7Lac66ClLi5cbiAgLy9cdC8v6rKw6rO8IOqwkuydgCDqsJnsnLzrgpggbWl4aW7rsKnrspXsnbQg64uk66W064ukIO2YhOyerFxuICAvL1x0YmFja2dyb3VuZC1jb2xvcjojMTExLFxuICAvL1x0Y29sb3I6ICMxMTEsXG4gIC8vXHRib3JkZXItYm90dG9tOlwiMnB4IHNvbGlkICMwMjM4OGJcIixcbiAgLy8pLFxuICBhcnJvdy1ncm91cCA6IChcbiAgICBzdGFydCA6ICggLy/su6TsiqTthYBcbiAgICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICAgIGhlaWdodDogXCIxMDAlXCIsXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlIDp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9jb21tb25fYXJyb3dfaWNvbl9zdGFydC5zdmcpLFxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIsXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQsXG4gICAgKSxcbiAgICBwcmV2IDogKFxuICAgICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgICAgaGVpZ2h0OiBcIjEwMCVcIixcbiAgICAgIGJhY2tncm91bmQtaW1hZ2UgOnVybCgvdmlld3MvcmVzL2ltZ3MvYm9hcmQvcGFnaW5hdGlvbl9wcmV2X2ljb24ucG5nKSxcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyLFxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0LFxuICAgICksXG4gICAgbmV4dCA6IChcbiAgICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICAgIGhlaWdodDogXCIxMDAlXCIsXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlIDp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2JvYXJkL3BhZ2luYXRpb25fbmV4dF9pY29uLnBuZyksXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcixcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCxcbiAgICApLFxuICAgIGVuZCA6IChcbiAgICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICAgIGhlaWdodDogXCIxMDAlXCIsXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlIDp1cmwoL3ZpZXdzL3Jlcy9pbWdzL2NvbW1vbi9jb21tb25fYXJyb3dfaWNvbl9lbmQuc3ZnKSxcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyLFxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0LFxuICAgICksXG4gICksXG4pO1xuIiwiLy8gVG9nZ2xlc1xuLy9cbi8vIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBnbG9iYWwgdmFyaWFibGVzIHRvIGVuYWJsZSBjZXJ0YWluIHRoZW1lIGZlYXR1cmVzLlxuXG5AaW1wb3J0IFwibWl4aW5zL19tZWRpYS1xdWVyeVwiO1xuQGltcG9ydCBcIm1peGlucy9fbWFwXCI7XG5cbi8vIFV0aWxpdGllc1xuLy9AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19jbGVhclwiO1xuQGltcG9ydCBcIm1peGlucy9fZmxvYXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2hvdmVyXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbi8vQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9fc2NyZWVucmVhZGVyXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9fcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy9fcHJlZml4ZXJcIjtcbi8vQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuLy9AaW1wb3J0IFwibWl4aW5zL3RyYW5zZm9ybXNcIjtcbi8vQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL19ib3JkZXItcmFkaXVzXCI7XG5cbi8vIC8vIExheW91dFxuLy8gQGltcG9ydCBcIm1peGlucy9uYXZiYXItYWxpZ25cIjtcbi8vQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9fYXJlYVwiO1xuQGltcG9ydCBcIm1peGlucy9fZ3JpZFwiO1xuXG4vLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vLy9cblxuXG4vLyAvLyBDb21wb25lbnRzXG4vL0BpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX3RyaWFuZ2xlXCI7XG5AaW1wb3J0IFwibWl4aW5zL19idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19wYWdpbmF0aW9uXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbi8vQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG4vL0BpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlc1wiO1xuLy9AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuQGltcG9ydCBcIm1peGlucy9fdGFiXCI7XG5cbiIsIi8vIG1lZGlhLXF1ZXJ5LW1pbiDrr7nsiqTsnbhcbi8vIFvrp6TqsJzrs4DsiJhdXG4vLyAkYnJlYWtwb2ludCDquLDrs7jqsJI6IOyXhuydjFxuLy8gJGJyZWFrcG9pbnQg7JeQIOqwgOyaqeqwgOuKpe2VnCDqsJJcbi8vICgxKSAkbWVkaWEtYnJlYWtwb2ludHMg7J2YIO2CpCDqsJIgKHhzLCBzbSwgbWQsIGxnLCB4bCAp7KSRIO2VmOuCmFxuLy8gKDIpIOqzoOyglSBweOqwklxuLy8gJGJyZWFrcG9pbnQg7KCE64us65CcIOqwkuyXkCDrlLDrnbzshJwgQG1lZGlhKG1pbi13aWR0aDogXCLrp6TqsJzrs4DsiJjsl5Ag7ZW064u57ZWY64qUIOqwklwiKSDshYvtjIXtlbTspI3ri4jri6QuXG4vLyAkYnJlYWtwb2ludCDqsJLsnYQg7ZS97IWA66GcIOuEo+uKlOuLpOuptCDtlbTri7kg7ZS97IWA6rCS7J2YIOuvuOuUlOyWtOy/vOumrOulvCDrp4zrk6TslrQg7KSN64uI64ukLlxuLy8gZXgpIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbihsZykgeyBAY29udGVudCB9XG4vLyBleCkgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKDUwMHB4KSB7IEBjb250ZW50IH1cbkBtaXhpbiBtZWRpYS1xdWVyeS1taW4oICRicmVha3BvaW50ICkge1xuICBAaWYgbWFwX2hhc19rZXkoICRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCApe1xuICAgIEBpZiAgJGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IG1hcF9nZXQoJGdfbWVkaWEtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSkge1xuICAgICAgICBAY29udGVudFxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiB1bml0KCRicmVha3BvaW50KSA9PSBcInB4XCIge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50KXsgIEBjb250ZW50ICB9XG4gIH1cbn1cbkBtaXhpbiBtZWRpYS1xdWVyeS1tYXgoICRicmVha3BvaW50ICkge1xuICBAaWYgbWFwX2hhc19rZXkoICRnX21lZGlhLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCApe1xuICAgIEBpZiAgJGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IG1hcF9nZXQoJGdfbWVkaWEtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSkge1xuICAgICAgICBAY29udGVudFxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiB1bml0KCRicmVha3BvaW50KSA9PSBcInB4XCIge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KXsgIEBjb250ZW50ICB9XG4gIH1cbn1cblxuXG4vLyBtZWRpYS1xdWVyeS1taW4tdmFsIO2VqOyImFxuLy8g7KCE7Jet67OA7IiYICRtZWRpYS1icmVha3BvaW50cyBtYXDsnZggdmFsdWXrpbwg67CY7ZmY7ZW0IOykjeuLiOuLpC5cbi8vIOyjvOuhnCBlYWNoIOusuOqzvCDqsJnsnYAgbG9vcCDrrLjsl5DshJwg7Zmc7Jqp65Cp64uI64ukLlxuLy8gZXgpXG4vLyBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXBfa2V5cygkbWVkaWEtYnJlYWtwb2ludHMpIHtcbi8vICAgJHBvaW50OiBtZWRpYS1xdWVyeS1taW4tdmFsKCRicmVha3BvaW50KTtcbi8vICAgQG1lZGlhICggbWluLXdpZHRoOiAjeyRwb2ludH0gKXtcbi8vICAgICAuI3skYnJlYWtwb2ludH0tZi1sIHsgQGluY2x1ZGUgZmxvYXQtbGVmdCB9XG4vLyAgICAgLiN7JGJyZWFrcG9pbnR9LWYtciB7IEBpbmNsdWRlIGZsb2F0LXJpZ2h0IH1cbi8vICAgICAuI3skYnJlYWtwb2ludH0tZi1uIHsgQGluY2x1ZGUgZmxvYXQtbm9uZSB9XG4vLyAgIH1cbi8vIH1cbkBmdW5jdGlvbiBtZWRpYS1xdWVyeS1taW4tdmFsKCAkYnJlYWtwb2ludCApe1xuICBAcmV0dXJuIG1hcF9nZXQoJGdfbWVkaWEtYnJlYWtwb2ludHMsICRicmVha3BvaW50KTtcbn1cblxuXG5cblxuXG5cbiIsIkBmdW5jdGlvbiBtYXAtc2V0KCRtYXAsICRrZXksICR2YWx1ZSkge1xuICAkbmV3OiAoJGtleTogJHZhbHVlKTtcbiAgQHJldHVybiBtYXAtbWVyZ2UoJG1hcCwgJG5ldyk7XG59XG5cblxuLy9wcmVmaXgg7KCc6rGwXG4vL+2DnOq3uOydtOumhCwg7IaN7ISxLCDslYTsnbTrlJQg65OxICDshYDroInthLAg6rCA64ql64+E66GdXG5AZnVuY3Rpb24gbWFrZU1hcFRvQ29kZXMoJG1hcCwgJHByZWZpeDogXCJcIiwgJHNlbGY6IGZhbHNlKSB7XG4gICRjb2RlcyA6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRtYXAge1xuICAgIEBpZiAoIHR5cGUtb2YoJHZhbCkgPT0gbWFwICkge1xuXG4gICAgICBAaWYgKCRrZXkgPT0gXCImXCIpIHtcbiAgICAgICAgJG1ha2U6IG1ha2VNYXBUb0NvZGVzKCR2YWwsIFwiXCIsIHRydWUpO1xuICAgICAgICAkY29kZXM6IG1hcC1tZXJnZSgkY29kZXMsICRtYWtlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc2VsZWN0b3I6IFwiLiN7JHByZWZpeH0jeyRrZXl9XCI7XG5cbiAgICAgICAgQGlmICgkc2VsZikge1xuICAgICAgICAgICRzZWxlY3RvciA6IFwiJiN7JHByZWZpeH0jeyRrZXl9XCI7XG4gICAgICAgIH1cbiAgICAgICAgJG1ha2U6IG1ha2VNYXBUb0NvZGVzKCR2YWwsICRwcmVmaXgpO1xuICAgICAgICAkY29kZXM6IG1hcC1zZXQoJGNvZGVzLCAkc2VsZWN0b3IsICRtYWtlKTtcbiAgICAgIH1cbiAgICAgIFxuICAgIH0gQGVsc2Uge1xuICAgICAgJGNvZGVzOiBtYXAtc2V0KCRjb2RlcywgJGtleSwgJHZhbCk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGNvZGVzO1xufTtcblxuXG5AbWl4aW4gcHJpbnRDb2RlcygkbWFwKSB7XG5cbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkbWFwIHtcbiAgIFxuICAgIEBpZiAoIHR5cGUtb2YoJHZhbCkgPT0gbWFwICkge1xuICAgICAgI3ska2V5fSB7XG4gICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJHZhbCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAjeyRrZXl9IDogI3skdmFsfTtcbiAgICB9XG4gICAgXG4gIH1cbn1cblxuLy8gaXNNYXAg7ZWo7IiYXG4vLyAje2tleX0gOiAje3ZhbHVlfeydmCDtmJXtg5zrpbwg66as7YS07ZW07KO864qUIO2VqOyImFxuLy8gaXNNYXAoJHZhbCwgJGtleSk7XG4vLyBpc01hcCDtlajsiJjsl5DshJwg7J247J6Q66GcIOuEmOyWtOyYqCAnJHZhbCfsl5Ag7ZWg64u565CcIOqwkuydtCBtYXDsnbTrnbzrqbQgaXNtYXDtlajsiJjrpbwg7J6s6reA7Zi47LacIO2VnOuLpC5cbi8vIOyYiOyZuOyggeycvOuhnCDtgqTqsJLsnbQgXCJfXCIg652866m0IGlzUHNldWRv66W8IO2YuOy2nO2VnOuLpC5cbi8vIOy1nOyiheyggeycvOuhnCAje2tleX0gOiAje3ZhbHVlfeydmCDqsJLsnYQg66as7YS07ZWY64+E66GdIOunjOuToOuLpC5cblxuLy9pc1BzZXVkbyDtlajsiJhcbi8v6rCA7IOBIOyEoO2DneyekOulvCDrp4zrk6TslrQg66as7YS07ZW07KO864qUIO2VqOyImFxuLy9cblxuXG4vL0BmdW5jdGlvbiBpc01hcCAoJHZhbCwgJGtleSkge1xuLy8gICRyZXN1bHQgOiAoKTtcbi8vXG4vLyAgQGlmICh0eXBlLW9mKCR2YWwpID09IG1hcCkge1xuLy8gICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xuLy8gICAgICBAaWYgKHR5cGUtb2YoJHZhbDIpID09IG1hcCBhbmQgJGtleSA9PSBudWxsKSB7XG4vLyAgICAgICAgJG1hcCA6IGlzTWFwKCR2YWwyLCAka2V5Mik7XG4vLyAgICAgICAgJG1hcGtleSA6IG1hcC1rZXlzKCRtYXApO1xuLy8gICAgICAgICRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJG1hcGtleSwgbWFwLWdldCgkbWFwLCAjeyRtYXBrZXl9KSk7XG4vLyAgICAgIH0gQGVsc2UgaWYgKHR5cGUtb2YoJHZhbDIpID09IG1hcCBhbmQgJGtleSA9PSBcIl9cIil7XG4vLyAgICAgICAgJHJlc3VsdDogbWFwLXNldCgkcmVzdWx0LCAka2V5MiwgaXNNYXAoJHZhbDIsICRrZXkyKSk7XG4vLyAgICAgIH0gQGVsc2Uge1xuLy8gICAgICAgICRyZXN1bHQ6IG1hcC1zZXQoJHJlc3VsdCwgJGtleTIsICR2YWwyKTtcbi8vICAgICAgfVxuLy8gICAgfVxuLy8gIH0gQGVsc2Uge1xuLy8gICAgJHJlc3VsdDogbWFwLXNldCgkcmVzdWx0LCAkdmFsLCAka2V5KTtcbi8vICB9XG4vL1xuLy8gIEByZXR1cm4gJHJlc3VsdDtcbi8vfTtcblxuXG4vL0BmdW5jdGlvbiBpc1BzZXVkbyAoJGtleSwgJHZhbCkge1xuLy8gICRyZXN1bHQ6IG51bGw7XG4vLyAgQGlmICgka2V5ID09IFwiX1wiKSB7XG4vLyAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XG4vLyAgICAgICRyZXN1bHQ6IGlzTWFwKCRrZXkyLCAkdmFsMik7XG4vLyAgICAgIEByZXR1cm4gaXNNYXAoJGtleTIsICR2YWwyKTtcbi8vICAgIH1cbi8vICB9IEBlbHNlICB7XG4vLyAgICAkcmVzdWx0OiBpc01hcCgka2V5LCAkdmFsKTtcbi8vICAgIEByZXR1cm4gJHJlc3VsdDtcbi8vICB9XG4vL307XG5cblxuIiwiQG1peGluIGNsZWFyKCkge1xuICAmOjphZnRlciB7XG4gICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICBjbGVhcjogYm90aDtcbiAgIH1cbn1cblxuXG5cbiIsIkBtaXhpbiBmbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuQG1peGluIGZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiQG1peGluIGhvdmVyLW9ue1xuICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSwgJi5vbnsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVye1xuICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7IEBjb250ZW50OyB9XG59XG4iLCIvLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5AbWl4aW4gdGV4dC1oaWRlIHtcbiAgZm9udDogMC8wIGEgIWltcG9ydGFudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbn1cbiIsIi8vIC8qIHByZWZpeCAqL1xuQG1peGluIHByZWZpeGVyKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXM6KCkpe1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc3tcbiAgICAjeyctJyskcHJlZml4KyctJyskcHJvcGVydHl9OiR2YWx1ZTtcbiAgfVxuICAjeyRwcm9wZXJ0eX0gOiAkdmFsdWU7XG59XG5cbiAgLy8gQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCByb3RhdGUoNDVkZWcpLCB3ZWJraXQgbXMpOyBvciAoXCJ3ZWJraXRcIiwgXCJtb3pcIilcblxuIC8vY3NzXG4gIC8vIC5zZWxlY3RvciB7XG4gIC8vICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC8vICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLy8gICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC8vIH1cblxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBtYWtlLWFyZWEg66+57Iqk7J24XG4vLyDquLDrs7jqsJLsnbQgbnVsbOuhnCDshYvtjIXrkJjslrQg7J6I64qUIOyalOyGjOuKlCDsnbjsnpDqsIAg7KCE64us65CY7KeAIOyViuydhCDsi5wg7Lu07YyM7J28IOuQmOyngCDslYrsirXri4jri6QuXG4vLyBb66ek6rCc67OA7IiYXVxuLy8gJG1heC13aWR0aCDquLDrs7jqsJI6IG51bGxcbi8vICRndXR0ZXItd2lkdGgg6riw67O46rCSOiBudWxsXG4vLyAkd2lkdGgg6riw67O46rCSOiAxMDAlXG4vLyBleCkgQGluY2x1ZGUgbWFrZS1hcmVhKCAkbWF4LXdpZHRoOiAkbWF4LXdpZHRoLCAkZ3V0dGVyLXdpZHRoOiAkYXJlYS1ndXR0ZXItd2lkdGggKTtcbi8vIGV4KSBAaW5jbHVkZSBtYWtlLWFyZWEoICR3aWR0aDogMTYwMHB4ICk7XG4vL0BtaXhpbiBtYWtlLWFyZWEoICRtYXgtd2lkdGg6IG51bGwsICRndXR0ZXItd2lkdGg6IG51bGwsICR3aWR0aDogMTAwJSApIHtcbi8vICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgd2lkdGg6ICR3aWR0aDtcbi8vICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4vLyAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuLy8gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy8gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXItd2lkdGg7XG4vLyAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyLXdpZHRoO1xuLy99XG5cbkBtaXhpbiBtYWtlLWFyZWEoICRhcmVhLWluZm86ICRnX2RlZmF1bHQtYXJlYSApIHtcbiAgJHdpZHRoOiAxMDAlO1xuICBAaWYgIG1hcC1oYXMta2V5KCRhcmVhLWluZm8sIHdpZHRoKSB7XG4gICAgJHdpZHRoIDogbWFwLWdldCgkYXJlYS1pbmZvLCB3aWR0aClcbiAgfSBAZWxzZSB7XG4gICAgJHdpZHRoIDogMTAwJVxuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRhcmVhLWluZm8sIG1heC13aWR0aCk7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IG1hcC1nZXQoJGFyZWEtaW5mbywgZ3V0dGVyLXdpZHRoKTtcbiAgcGFkZGluZy1sZWZ0OiBtYXAtZ2V0KCRhcmVhLWluZm8sIGd1dHRlci13aWR0aCk7XG59XG5cbiIsIi8vIG1ha2Utcm93IOuvueyKpOyduFxuLy8gW+unpOqwnOuzgOyImF1cbi8vICRncmlkLWd1dHRlciDquLDrs7jqsJI6ICRncmlkLWd1dHRlci13aWR0aFxuLy8gJGdyaWQtZ3V0dGVyIOyghOuLrOuQnCDqsJLsl5Ag65Sw65287IScIG1hcmdpbi1yaWdodCwgbWFyZ2luLWxlZnQg6rCS7J2EIOyFi+2Mhe2VtCDspI3ri4jri6QuXG4vLyBleCkgQGluY2x1ZGUgbWFrZS1yb3coICRncmlkLWd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKTtcbkBtaXhpbiBtYWtlLXJvdyggJGdyaWQtZ3V0dGVyIDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXI7XG4gIG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyO1xuICBAaW5jbHVkZSBjbGVhcigpO1xufVxuXG4vLyBtYWtlLWNvbC1zZXQg66+57Iqk7J24XG4vLyBb66ek6rCc67OA7IiYXVxuLy8gJGdyaWQtY29sLWNudCDquLDrs7jqsJI6ICRncmlkLWNvbHVtbnNcbi8vICRncmlkLWNvbC1jbnQg7KCE64us65CcIOqwkuydmCDqsJzsiJjrp4ztgoHsnZggY29sLHB1bGwscHVzaCxvZmZzZXQg65Ox7J2EIOunjOuTpOyWtOykjeuLiOuLpC5cbi8vIGV4KSBAaW5jbHVkZSBtYWtlLWNvbC1zZXQoKTtcbi8vIGV4KSBAaW5jbHVkZSBtYWtlLWNvbC1zZXQoJGdyaWQtY29sLWNudDogNSk7XG5AbWl4aW4gbWFrZS1jb2wtc2V0KCAkZ3JpZC1jb2wtaW5mbzogJGdfZ3JpZC1jb2wtaW5mbyApIHtcbiAgJGdyaWQtY29sLW5hbWU6IG51bGw7XG4gIEBpZiAgbWFwLWhhcy1rZXkoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLW5hbWUpIHtcbiAgICAkZ3JpZC1jb2wtbmFtZSA6IG1hcC1nZXQoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLW5hbWUpXG4gIH0gQGVsc2Uge1xuICAgICRncmlkLWNvbC1uYW1lIDogbnVsbFxuICB9XG4gICAgQGluY2x1ZGUgbWFrZS1jb2woIG1hcC1nZXQoJGdyaWQtY29sLWluZm8sIGdyaWQtY29sLWNudCksICRncmlkLWNvbC1uYW1lICk7XG4gIEBpbmNsdWRlIG1ha2UtcHVsbCggbWFwLWdldCgkZ3JpZC1jb2wtaW5mbywgZ3JpZC1jb2wtY250KSwgJGdyaWQtY29sLW5hbWUgKTtcbiAgQGluY2x1ZGUgbWFrZS1wdXNoKCBtYXAtZ2V0KCRncmlkLWNvbC1pbmZvLCBncmlkLWNvbC1jbnQpLCAkZ3JpZC1jb2wtbmFtZSApO1xuICBAaW5jbHVkZSBtYWtlLW9mZnNldCggbWFwLWdldCgkZ3JpZC1jb2wtaW5mbywgZ3JpZC1jb2wtY250KSwgJGdyaWQtY29sLW5hbWUgKTtcbn1cblxuXG5AbWl4aW4gbWFrZS1jb2woICRncmlkLWNvbC1jbnQ6ICRncmlkLWNvbC1jbnQsICRjb2wtbmFtZTogJGNvbC1uYW1lICkge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJHBvaW50IGluICRnX21lZGlhLWJyZWFrcG9pbnRzIHtcbiAgICBAaWYgJGJyZWFrcG9pbnQgPT0geHMge1xuICAgICAgLiN7JGNvbC1uYW1lfWNvbCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC4jeyRjb2wtbmFtZX1jb2wtYXV0byB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfTtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1jb2wtI3skaX0ge1xuICAgICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAjeyRwb2ludH0pIHtcbiAgICAgICAgLiN7JGNvbC1uYW1lfWNvbC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC4jeyRjb2wtbmFtZX1jb2wtI3skYnJlYWtwb2ludH0tYXV0byB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH07XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XG4gICAgICAgICAgLiN7JGNvbC1uYW1lfWNvbC0jeyRicmVha3BvaW50fS0jeyRpfSB7XG4gICAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1wdWxsKCAkZ3JpZC1jb2wtY250OiAkZ3JpZC1jb2wtY250LCAkY29sLW5hbWU6ICRjb2wtbmFtZSApIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRwb2ludCBpbiAkZ19tZWRpYS1icmVha3BvaW50cyB7XG4gICAgQGlmICRicmVha3BvaW50ID09IHhzIHtcbiAgICAgIC4jeyRjb2wtbmFtZX1wdWxsLTAge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1wdWxsLSN7JGl9IHtcbiAgICAgICAgICByaWdodDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogI3skcG9pbnR9KSB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1wdWxsLSN7JGJyZWFrcG9pbnR9LTAge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XG4gICAgICAgICAgLiN7JGNvbC1uYW1lfXB1bGwtI3skYnJlYWtwb2ludH0tI3skaX0ge1xuICAgICAgICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoJGkgLyAkZ3JpZC1jb2wtY250KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtcHVzaCggJGdyaWQtY29sLWNudDogJGdyaWQtY29sLWNudCwgJGNvbC1uYW1lOiAkY29sLW5hbWUgKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkcG9pbnQgaW4gJGdfbWVkaWEtYnJlYWtwb2ludHMge1xuICAgIEBpZiAkYnJlYWtwb2ludCA9PSB4cyB7XG4gICAgICAuI3skY29sLW5hbWV9cHVzaC0wIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sLWNudCB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1wdXNoLSN7JGl9IHtcbiAgICAgICAgICBsZWZ0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAjeyRwb2ludH0pIHtcbiAgICAgICAgLiN7JGNvbC1uYW1lfXB1c2gtI3skYnJlYWtwb2ludH0tMCB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbC1jbnQge1xuICAgICAgICAgIC4jeyRjb2wtbmFtZX1wdXNoLSN7JGJyZWFrcG9pbnR9LSN7JGl9IHtcbiAgICAgICAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoJGkgLyAkZ3JpZC1jb2wtY250KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utb2Zmc2V0KCAkZ3JpZC1jb2wtY250OiAkZ3JpZC1jb2x1bW5zLCAkY29sLW5hbWU6ICRjb2wtbmFtZSApIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRwb2ludCBpbiAkZ19tZWRpYS1icmVha3BvaW50cyB7XG4gICAgJHBvaW50OiBtZWRpYS1xdWVyeS1taW4tdmFsKCRicmVha3BvaW50KTtcbiAgICBAaWYgJGJyZWFrcG9pbnQgPT0geHMge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2wtY250IC0gMSB7XG4gICAgICAgIC4jeyRjb2wtbmFtZX1vZmZzZXQtI3skaX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRpIC8gJGdyaWQtY29sLWNudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAjeyRwb2ludH0pIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2wtY250IC0gMSB7XG4gICAgICAgICAgLiN7JGNvbC1uYW1lfW9mZnNldC0jeyRicmVha3BvaW50fS0jeyRpfSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgkaSAvICRncmlkLWNvbC1jbnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvLyB0cmlhbmdsZSjilrYpLCBhcnJvdyg+KSDsgqzsmqnrspVcbi8vIC0g67Cp7ZalIDogdG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0XG4vLyAodHJpYW5nbGUo4pa2KeydgCB0b3AtbGVmdC9yaWdodCwgYm90dG9tLWxlZnQvcmlnaHQg67Cp7Zal64+EIOqwgOuKpSlcbi8vIEBpbmNsdWRlIHRyaWFuZ2xlKFwi7IK86rCB7ZiV67Cp7ZalXCIsIOqwgOuhnHB4LCDshLjroZxweCwgI+y7rOufrCk7XG4vLyBAaW5jbHVkZSBhcnJvdyhcIu2ZlOyCtO2RnOuwqe2WpVwiLCDqsIDroZxweCwg7IS466GccHgsIOyEoOq1teq4sCwgI+y7rOufrCk7XG4vLyDssLjqs6AgdXJsIDogaHR0cDovL2FwcHMuZWt5LmhrL2Nzcy10cmlhbmdsZS1nZW5lcmF0b3IvXG5cbi8vIOyCvOqwge2YlSDilrZcbkBtaXhpbiB0cmlhbmdsZSgkZGlyZWN0aW9uLCAkd2lkdGhTaXplLCAkaGVpZ2h0U2l6ZSwgJGNvbG9yKSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBAaWYgJGRpcmVjdGlvbj09XCJ0b3BcIiB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR3aWR0aFNpemUgLyAyKSAkaGVpZ2h0U2l6ZTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidG9wLXJpZ2h0XCIge1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHdpZHRoU2l6ZSAkaGVpZ2h0U2l6ZSAwO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwiIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6ICgkaGVpZ2h0U2l6ZSAvIDIpIDAgKCRoZWlnaHRTaXplIC8gMikgJHdpZHRoU2l6ZTtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tLXJpZ2h0XCIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgJHdpZHRoU2l6ZSAkd2lkdGhTaXplO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJib3R0b21cIiB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6ICRoZWlnaHRTaXplICgkd2lkdGhTaXplIC8gMikgMDtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tLWxlZnRcIiB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkd2lkdGhTaXplIDAgMCAkd2lkdGhTaXplO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6ICgkaGVpZ2h0U2l6ZSAvIDIpICR3aWR0aFNpemUgKCRoZWlnaHRTaXplIC8gMikgMDtcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidG9wLWxlZnRcIiB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6ICR3aWR0aFNpemUgJHdpZHRoU2l6ZSAwIDA7XG4gIH1cbn1cbi8vIO2ZlOyCtO2RnCA+XG5AbWl4aW4gYXJyb3coJGRpcmVjdGlvbiwgJHdpZHRoLCAkaGVpZ2h0LCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29udGVudDpcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBmbG9vcigkd2lkdGggLyAxLjQxNCk7XG4gIGhlaWdodDogZmxvb3IoJGhlaWdodCooJHdpZHRoLyRoZWlnaHQpIC8gMS40MTQpO1xuICBib3JkZXItdG9wOiAkYm9yZGVyIHNvbGlkICRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyIHNvbGlkICRjb2xvcjtcbiAgQGlmICRkaXJlY3Rpb24gPT0gXCJ0b3BcIiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwie1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb249PVwibGVmdFwiIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJib3R0b21cIiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICB9XG59XG5cbi8v7KCB7JqpIO2bhCwgbWFyZ2lu7J2064KYIHRyYXNuZm9ybeycvOuhnCDsnITsuZgg7KGw7KCILiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy8g67KE7Yq8IOyCrOydtOymiOuzhCDsg53shLFcbkBtaXhpbiBidXR0b24tc2l6ZS1weCgkYnRuLXNpemUgOiAkZ19idG4tc2l6ZSkge1xuICAvLyBCYXNlIHN0eWxlc1xuICAlYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zcyBsaW5lYXIsYm9yZGVyIC4zcyBsaW5lYXI7XG4gIH1cbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAoJGJ0bi1zaXplKXtcbiAgICAuYnRuLSN7JGtleX0ge1xuICAgICAgQGV4dGVuZCAlYnRuO1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xuICAgICAgICBAaWYgKCRrZXkyID09IG1lZGlhKSB7XG4gICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICR2YWwyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5Mykge1xuICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwzKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZXtcbiAgICAgICAgICBAaWYgKCB0eXBlLW9mKCR2YWwyKSA9PSBtYXAgKSB7IC8vIG9uZSBkZXB0aCBjbGFzcyDslYjsl5Ag7LaU6rCAIGNsYXNzIOyDneyEsVxuICAgICAgICAgICAgLiN7JGtleTJ9IHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMik7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IEBlbHNlIHsgLy8gb25lIGRlcHRoIGNsYXNzIOuyhO2KvFxuICAgICAgICAgICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnRuLWRpc2FibGVkKCkge1xuICAmLmRpc2FibGVkIHtcbiAgICBAY29udGVudDtcbiAgICBwb2ludGVyLWV2ZW50czpub25lO1xuICB9XG59XG5cbi8vIOuyhO2KvCDsiqTtg4Dsnbwg7ISk7KCV7ZW07KO86riwXG5AbWl4aW4gYnV0dG9uLXN0eWxlKCRidG4tZ3JvdXAgOiAkZ19idG4tZ3JvdXApe1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRidG4tZ3JvdXAge1xuICAgIC5idG4tI3ska2V5fSxcbiAgICAuYnRuLSN7JGtleX06dmlzaXRlZHtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgICAgQGlmICgka2V5MiA9PSBtZWRpYSkgeyAvLyBtZWRpYVxuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTMpIHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMyk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1AZWxzZSBpZigka2V5MiA9PSBob3Zlcil7IC8vIGhvdmVyXG4gICAgICAgICAgQGluY2x1ZGUgaG92ZXItb24ge1xuICAgICAgICAgICAgQGVhY2ggJGtleTQsICR2YWw0IGluICR2YWwyIHtcbiAgICAgICAgICAgICAgLy8gQGlmKCRrZXk0ICE9IGJhY2tncm91bmQtY29sb3IpeyAvLyBiYWNrZ3JvdW5kLWNvbG9yIOydtOyZuOydmCDrgpjrqLjsp4Ag7Lac66ClXG4gICAgICAgICAgICAgICAgI3ska2V5NH06ICN7JHZhbDR9O1xuICAgICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBAaWYobWFwX2hhc19rZXkobWFwLWdldCgkdmFsLGhvdmVyKSxiYWNrZ3JvdW5kLWNvbG9yKSl7IC8vaG92ZXIgbWFw7JeQIGJhY2tncm91bmQtY29sb3Ig6rCS7J20IOyeiOycvOuptCDqt7jqsoPsnYQg7Lac66ClXG4gICAgICAgICAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHZhbDIsYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICAvLyBAZWxzZSBpZihtYXBfaGFzX2tleSgkdmFsLGJhY2tncm91bmQtY29sb3IpKXsgLy/sl4bsnLzrqbQg6riw67O4IOyEpOygleqwkuyXkCBkYXJrZW7snLzroZwg7KCB7JqpXG4gICAgICAgICAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6ZGFya2VuKG1hcC1nZXQoJHZhbCxiYWNrZ3JvdW5kLWNvbG9yKSwgMTUlKTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1AZWxzZSBpZigka2V5MiA9PSBkaXNhYmxlZCl7IC8vIGRpc2FibGVkXG4gICAgICAgICAgQGluY2x1ZGUgYnRuLWRpc2FibGVkIHtcbiAgICAgICAgICAgIEBpZiAoIHR5cGUtb2YoJHZhbDIpID09IG1hcCApIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGtleTUsICR2YWw1IGluICR2YWwyIHtcbiAgICAgICAgICAgICAgICAjeyRrZXk1fTogI3skdmFsNX07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1AZWxzZXtcbiAgICAgICAgICBAaWYgKCB0eXBlLW9mKCR2YWwyKSA9PSBtYXAgKSB7IC8vIG9uZSBkZXB0aCBjbGFzcyDslYjsl5Ag7LaU6rCAIGNsYXNzIOyDneyEsVxuICAgICAgICAgICAgLiN7JGtleTJ9IHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMik7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IEBlbHNlIHsgLy8gb25lIGRlcHRoIGNsYXNzIOy9lOuTnCDstpzroKVcbiAgICAgICAgICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiQG1peGluIG1ha2UtY2FyZC1zZXQoJGNhcmQtaW5mbykge1xuICAlY2FyZC13cmFwe1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBAZWFjaCAka2V5LCAkdmFsIGluICRjYXJkLWluZm8ge1xuICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgIEBpZiAka2V5MiA9PSBcIndyYXBcIiB7XG4gICAgICAgIC5jYXJkLSN7JGtleTJ9LSN7JGtleX0ge1xuICAgICAgICAgIEBleHRlbmQgJWNhcmQtd3JhcDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCR2YWwyLCBtYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCR2YWwyLCBwYWRkaW5nKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCR2YWwyLCBiYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gIG1hcC1nZXQoJHZhbDIsIGJvcmRlci1zdHlsZSkge1xuICAgICAgICAgICAgI3ska2V5M306ICN7JHZhbDN9O1xuICAgICAgICAgIH1cbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCR2YWwyLCBib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJGtleTIgPT0gXCJoZWFkZXJcIiB7XG4gICAgICAgIC5jYXJkLXdyYXAtI3ska2V5fXtcbiAgICAgICAgICAuY2FyZC0jeyRrZXkyfSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCR2YWwyLCBwYWRkaW5nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHZhbDIsIGJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICBtYXAtZ2V0KCR2YWwyLCBib3JkZXItc3R5bGUpIHtcbiAgICAgICAgICAgICAgI3ska2V5M306ICN7JHZhbDN9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9udC1zaXplOiBtYXAtZ2V0KCR2YWwyLCBmb250LXNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC5jYXJkLXdyYXAtI3ska2V5fXtcbiAgICAgICAgICAuY2FyZC0jeyRrZXkyfSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBtYXAtZ2V0KCR2YWwyLCBwYWRkaW5nKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHZhbDIsIGJhY2tncm91bmQtY29sb3IpO1xuICAgICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICBtYXAtZ2V0KCR2YWwyLCBib3JkZXItc3R5bGUpIHtcbiAgICAgICAgICAgICAgI3ska2V5M306ICN7JHZhbDN9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8g64ukIOuCmOuIhOqzoCDtlZjrgpjroZwg7ZWp7LmY64qU6rKMIOyii+yngCDslYrsnYTquYw/Pz8/Pz8/XG4vLyDsg4Hsho3snZgg6rOE64WQ7J2EIOyggeyaqe2VtOyVvCDtlZjripTqsIA/P1xuLy8g7IOB7IaN7J2EIOyggeyaqe2VmOuptCDsvZTrk5zqsIAg7KGw6riIIOuzteyeoe2VtOyniOuTr1xuLy8g7JWE7JiIIHdyYXAsIGhlYWRlciwgYm9keSwgZm9vdGVyIOuCmOuIhOuKlOuNmOyngCwg7KeA6riI7LKY65+8IOyymOumrO2VmOuKlOqyjCDrgpjsnYTrk69cbiIsIi8vIFBhZ2luYXRpb25cbkBtaXhpbiBwYWdpbmF0aW9uLWxpbmtzKCRwYWdlLWl0ZW0pe1xuICB3aWR0aDptYXAtZ2V0KCRwYWdlLWl0ZW0sIHdpZHRoKTtcbiAgaGVpZ2h0Om1hcC1nZXQoJHBhZ2UtaXRlbSwgaGVpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6bWFwLWdldCgkcGFnZS1pdGVtLCBoZWlnaHQpOyAvLyBoZWlnaHTqsJLqs7wg64+Z7J28XG5cbiAgLy9wYWRkaW5nOm1hcC1nZXQoJHBhZ2UtaXRlbSwgcGFkZGluZyk7IC0+IOyCreygnOyYiOyglSDrs7TrpZguLlxuICBtYXJnaW46bWFwLWdldCgkcGFnZS1pdGVtLCBtYXJnaW4pO1xuXG4gIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHBhZ2UtaXRlbSwgdGhlbWUtY29sb3IpO1xuICBib3JkZXI6IG1hcC1nZXQoJHBhZ2UtaXRlbSwgYm9yZGVyKTtcbiAgYm9yZGVyLXJpZ2h0Om1hcC1nZXQoJHBhZ2UtaXRlbSwgYm9yZGVyLXJpZ2h0KTtcblxuICBib3JkZXItcmFkaXVzOm1hcC1nZXQoJHBhZ2UtaXRlbSwgYm9yZGVyLXJhZGl1cyk7XG4gIGZvbnQtc2l6ZTptYXAtZ2V0KCRwYWdlLWl0ZW0sIGZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0Om1hcC1nZXQoJHBhZ2UtaXRlbSwgZm9udC13ZWlnaHQpO1xuICBmb250LWZhbWlseTptYXAtZ2V0KCRwYWdlLWl0ZW0sIGZvbnQtZmFtaWx5KTtcbiAgbGV0dGVyLXNwYWNpbmc6bWFwLWdldCgkcGFnZS1pdGVtLCBsZXR0ZXItc3BhY2luZyk7XG4gIGNvbG9yOm1hcC1nZXQoJHBhZ2UtaXRlbSwgZm9udC1jb2xvcik7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkcGFnZS1pdGVtLCBob3Zlci10aGVtZS1jb2xvcikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjptYXAtZ2V0KCRwYWdlLWl0ZW0saG92ZXItdGhlbWUtY29sb3IpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmtlbiggbWFwLWdldCgkcGFnZS1pdGVtLCB0aGVtZS1jb2xvciksIDE1JSk7XG4gICAgfVxuICAgIGNvbG9yOm1hcC1nZXQoJHBhZ2UtaXRlbSwgaG92ZXItY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkcGFnZS1pdGVtLCBob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbn1cbi8vIOyVoe2LsOu4jCDrkKDsi5xcbkBtaXhpbiBwYWdpbmF0aW9uLWFjdGl2ZSgkcGFnZS1hY3RpdmUtaXRlbSl7XG4gIGJhY2tncm91bmQtY29sb3I6bWFwLWdldCgkcGFnZS1hY3RpdmUtaXRlbSwgYWN0aXZlLXRoZW1lKTtcbiAgY29sb3I6bWFwLWdldCgkcGFnZS1hY3RpdmUtaXRlbSxhY3RpdmUtY29sb3IpO1xuICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gKG1hcC1nZXQoJHBhZ2UtYWN0aXZlLWl0ZW0sYWN0aXZlLXN0eWxlKSl7XG4gICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xuICB9XG59XG4vLyDrlKQg65Cg7IucXG5AbWl4aW4gcGFnaW5hdGlvbi1kaXNhYmxlZCgkcGFnZS1kaXNhYmxlZC1pdGVtKXtcbiAgb3BhY2l0eTptYXAtZ2V0KCRwYWdlLWRpc2FibGVkLWl0ZW0sIGRpbS1vcGFjaXR5KTtcbiAgcG9pbnRlci1ldmVudHM6bm9uZTtcbiAgQGVhY2ggJGtleTIsICR2YWwyIGluIChtYXAtZ2V0KCRwYWdlLWRpc2FibGVkLWl0ZW0sZGlzYWJsZWQtc3R5bGUpKXtcbiAgICAjeyRrZXkyfTogI3skdmFsMn07XG4gIH1cbn1cblxuLy8g7LKY7J2MIOydtOyghCDri6TsnYwg64GdIGFycm93IOq0gOugqCDsu6TsiqTthYBcbkBtaXhpbiBwYWdpbmF0aW9uLWFycm93cygkcGFnZS1hcnJvdy1zdHlsZSkge1xuICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHBhZ2UtYXJyb3ctc3R5bGUge1xuICAgICN7JGtleTJ9OiAjeyR2YWwyfTtcbiAgfVxufSIsIkBtaXhpbiBtYWtlLWZvcm0td3JhcCggJGZvcm0td3JhcC1pbmZvIDogJGdfZm9ybS13cmFwICkge1xuICBAZWFjaCAka2V5LCAkdmFsIGluICgkZm9ybS13cmFwLWluZm8pe1xuICAgIC5mb3JtLXdyYXAtI3ska2V5fSB7XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gJHZhbCB7XG4gICAgICAgIEBpZih0eXBlLW9mKCR2YWwyKSAhPSBtYXApIHtcbiAgICAgICAgICAjeyRrZXkyfSA6ICN7JHZhbDJ9O1xuICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgIC4jeyRrZXkyfSB7XG4gICAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgICBAaWYodHlwZS1vZigkdmFsMykgIT0gbWFwKSB7IC8vY2FzY2FkaW5n7Jy866GcIOuovOyggCDstpzroKVcbiAgICAgICAgICAgICAgICAgICN7JGtleTN9OiAjeyR2YWwzfTtcbiAgICAgICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICAgICBAaWYoJGtleTMgPT0gbWVkaWEpe1xuICAgICAgICAgICAgICAgICAgQGVhY2ggJGtleTQsICR2YWw0IGluICR2YWwzIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXk0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsNCk7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfUBlbHNlIGlmKCRrZXkzID09IFwiJlwiKSB7XG4gICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwzLCBcIlwiLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAgICAgLiN7JGtleTN9IHtcbiAgICAgICAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2Rlcygka2V5Myk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLyrthY3siqTtirgg67CV7IqkKi9cbkBtaXhpbiBtYWtlLWZpZWxkLWRlZmF1bHQoKSB7XG4gICVmaWVsZC1iYXNlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRnX2ZpZWxkLXN0eWxlKSB7XG4gICAgLmZpZWxkLSN7JGtleX0gaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgLmZpZWxkLSN7JGtleX0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgIC5maWVsZC0jeyRrZXl9IGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgLmZpZWxkLSN7JGtleX0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgIC5maWVsZC0jeyRrZXl9IHNlbGVjdCxcbiAgICAuZmllbGQtI3ska2V5fSB0ZXh0YXJlYXtcbiAgICAgIEBleHRlbmQgJWZpZWxkLWJhc2U7XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gKCR2YWwpIHtcbiAgICAgICAgQGlmKCAka2V5MiA9PSBcImlucHV0X2RlZmF1bHRcIikge1xuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAoJHZhbDIpIHtcbiAgICAgICAgICAgIEBpZiggdHlwZS1vZigkdmFsMykgIT0gbWFwKSB7XG4gICAgICAgICAgICAgICN7JGtleTN9IDogI3skdmFsM307XG4gICAgICAgICAgICB9QGVsc2UgaWYoJGtleTMgPT0gJ2ZvY3VzLXN0eWxlJyl7XG4gICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgICAjeyRrZXk0fSA6ICN7JHZhbDR9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfUBlbHNlIGlmKCRrZXkzID09ICdwbGFjZWhvbGRlci1zdHlsZScpe1xuICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlcntcbiAgICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgICAgI3ska2V5NH0gOiAjeyR2YWw0fTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgICAjeyRrZXk0fSA6ICN7JHZhbDR9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgICAjeyRrZXk0fSA6ICN7JHZhbDR9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfUBlbHNlIGlmICgka2V5MyA9PSAnbWVkaWEnKSB7XG4gICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXk0KSB7XG4gICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw0KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZWxkLSN7JGtleX0gc2VsZWN0e1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICgkdmFsKSB7XG4gICAgICAgIEBpZiggJGtleTIgPT0gXCJzZWxlY3RcIikge1xuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICBAaWYgKCRrZXkzID09IG1lZGlhKSB7XG4gICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXk0KSB7XG4gICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw0KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICAgICN7JGtleTN9IDogI3skdmFsM307XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmllbGQtI3ska2V5fSB0ZXh0YXJlYXtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAoJHZhbCkge1xuICAgICAgICBAaWYoICRrZXkyID09IFwidGV4dGFyZWFcIikge1xuICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICBAaWYgKCRrZXkzID09ICdtZWRpYScpIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGtleTQsICR2YWw0IGluICR2YWwzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTQpIHtcbiAgICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDQpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICAgICAgI3ska2V5M30gOiAjeyR2YWwzfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWVsZC0jeyRrZXl9Lm5vLXVuZGVybGluZSB7XG4gICAgICBib3JkZXItYm90dG9tOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gLyp0ZXh0YXJlYSovXG5AbWl4aW4gbWFrZS10ZXh0LWFyZWEoKSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRnX3RleHQtYXJlYS1zdHlsZSkge1xuICAgIC50ZXh0YXJlYS0jeyRrZXl9IHRleHRhcmVhe1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xuICAgICAgICBAaWYoJGtleTIgPT0gbWVkaWEpIHtcbiAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtcXVlcnktbWluKCRrZXkzKSB7XG4gICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDMpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICN7JGtleTJ9IDogI3skdmFsMn07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gLyrshYDroIntirgg67CV7IqkKi9cbkBtaXhpbiBtYWtlLXNlbGVjdGJveCgpIHtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAoJGdfc2VsZWN0LXN0eWxlKSB7XG4gICAgLnNlbGVjdC0jeyRrZXl9IHNlbGVjdHtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgICAgQGlmKCB0eXBlLW9mKCR2YWwyKSAhPSBtYXApe1xuICAgICAgICAgICN7JGtleTJ9IDogI3skdmFsMn07XG4gICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgQGVhY2ggJGtleTMsICR2YWwzIGluICR2YWwyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXF1ZXJ5LW1pbigka2V5Mykge1xuICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwzKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgIH1cbiAgfVxufVxuXG4vLyAvKuydtOuvuOyngCDssrTtgawgJiDrnbzrlJTsmKQqL1xuQG1peGluIG1ha2UtY2hlY2tib3gtaW1nKCAkY2hlY2stYm94LWluZm86ICRnX2NoZWNrLWJveC1pbWcgKSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCRjaGVjay1ib3gtaW5mbykge1xuICAgIC5ja2J4LSN7JGtleX17XG4gICAgICBAZWFjaCAka2V5MiwgJHZhbDIgaW4gKCR2YWwpIHtcbiAgICAgICAgQGlmKHR5cGUtb2YoJHZhbDIpICE9IG1hcCkge1xuICAgICAgICAgICN7JGtleTJ9IDogI3skdmFsMn07XG4gICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgQGlmKCRrZXkyID09IGNoZWNrYm94LXN0eWxlKSB7XG4gICAgICAgICAgIC5jdXN0b20tY2hlY2tlZCB7XG4gICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDIpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICB9IFxuICAgICAgICAgIH1AZWxzZSBpZigka2V5MiA9PSBjaGVja2VkLXN0eWxlKXtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgJlt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkLFxuICAgICAgICAgICAgICAmW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgfiAuY3VzdG9tLWNoZWNrZWQge1xuICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDIpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1AZWxzZSBpZigka2V5MiA9PSB0ZXh0LXN0eWxlKXtcbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgJGNvZGVzOiBtYWtlTWFwVG9Db2RlcygkdmFsMik7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJGNvZGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY29sb3I6ICNlZWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyAvKu2DnOq3uCDssrTtgawmIOudvOuUlOyYpCovXG5AbWl4aW4gbWFrZS1jaGVja2JveC10YWcoICRjaGVjay1ib3gtaW5mbzogJGdfY2hlY2stYm94LXRhZyApIHtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAoJGNoZWNrLWJveC1pbmZvKSB7XG4gICAgLy8g67OA7IiYIOyEoOyWuFxuICAgICR3aWR0aCA6IGZhbHNlO1xuICAgICRoZWlnaHQgOiBmYWxzZTtcbiAgICAuY2tieC0jeyRrZXl9e1xuICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICgkdmFsKSB7XG4gICAgICAgIEBpZih0eXBlLW9mKCR2YWwyKSAhPSBtYXApIHtcbiAgICAgICAgICAjeyRrZXkyfSA6ICN7JHZhbDJ9O1xuICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgIEBpZigka2V5MiA9PSBjaGVja2JveC1zdHlsZSkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICAgICAgI3ska2V5M306ICN7JHZhbDN9O1xuICAgICAgICAgICAgICAgIEBpZiAoJGtleTMgPT0gd2lkdGgpe1xuICAgICAgICAgICAgICAgICAgJHdpZHRoOiAkdmFsMztcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6LShyb3VuZCgkdmFsMyAvIDIpKTtcbiAgICAgICAgICAgICAgICAgIC8vIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNTAlKSwgd2Via2l0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICgka2V5MyA9PSBoZWlnaHQpe1xuICAgICAgICAgICAgICAgICAgJGhlaWdodDogJHZhbDM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfUBlbHNlIGlmKCRrZXkyID09IGNoZWNrZWQtc3R5bGUpIHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgJlt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkLFxuICAgICAgICAgICAgICAmW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgfiAuY3VzdG9tLWNoZWNrZWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiByb3VuZCgoJHdpZHRoIC0gKCR3aWR0aCAvIDIpKSAvIDIpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIEBpZihtYXAtaGFzLWtleSgkdmFsMiwgd2lkdGgpID09IGZhbHNlIGFuZCAkd2lkdGgpeyBcbiAgICAgICAgICAgICAgICAgIC8vIGNoZWNrZWQgbWFw7JeQIHdpZHRo6rCAIOyeiOuKlOyngCDssrTtgawg7JeG7Jy866m0IGNoZWNrYm94IG1hcCDsnZgg67CY7IKs7J207KaI66GcIOqwgOyguOyYtFxuICAgICAgICAgICAgICAgICAgJHZhbDIgOiBtYXAtc2V0KCR2YWwyLHdpZHRoLHJvdW5kKCR3aWR0aCAvIDIpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCR2YWwyLCBoZWlnaHQpID09IGZhbHNlIGFuZCAkaGVpZ2h0KXsgXG4gICAgICAgICAgICAgICAgICAvLyBjaGVja2VkIG1hcOyXkCBoZWlnaHQg7J6I64qU7KeAIOyytO2BrCDsl4bsnLzrqbQgY2hlY2tib3ggbWFwIOydmCDrsJjsgqzsnbTspojroZwg6rCA7KC47Ji0XG4gICAgICAgICAgICAgICAgICAkdmFsMiA6IG1hcC1zZXQoJHZhbDIsaGVpZ2h0LHJvdW5kKCRoZWlnaHQgLyAyKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsMiB7XG4gICAgICAgICAgICAgICAgICBAaWYgKCRrZXk0ID09IHdpZHRoKXtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDotKHJvdW5kKCR2YWw0IC8gMikpO1xuICAgICAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTUwJSksIHdlYmtpdCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAjeyRrZXk0fTogI3skdmFsNH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfUBlbHNlIGlmKCRrZXkyID09IHRleHQtc3R5bGUpe1xuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwyKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgJi5kaXNhYmxlZHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjZWVlO1xuICAgICAgICBsYWJlbDpiZWZvcmV7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZWVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmNpcmNsZTpiZWZvcmUge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgICAmLmNpcmNsZSBpbnB1dCB7XG4gICAgICAgICZbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jdXN0b20tY2hlY2tlZCxcbiAgICAgICAgJlt0eXBlPWNoZWNrYm94XTpjaGVja2VkIH4gLmN1c3RvbS1jaGVja2VkIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIG1pbi13aWR0aDogJHdpZHRoO1xuICAgICAgbWluLWhlaWdodDogJGhlaWdodDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vcnAtdGFibGVcbkBtaXhpbiBtYWtlLXJwLXRhYmxlKCRycC10YWJsZS1pbmZvIDogJGdfcnAtdGFibGUpIHtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAoJHJwLXRhYmxlLWluZm8pe1xuICAgIC5ycC10YWJsZS0jeyRrZXl9IHtcbiAgICAgIEBlYWNoICRrZXkyLCAkdmFsMiBpbiAkdmFsIHtcbiAgICAgICAgQGlmKHR5cGUtb2YoJHZhbDIpICE9IG1hcCkge1xuICAgICAgICAgICN7JGtleTJ9IDogI3skdmFsMn07XG4gICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgLiN7JGtleTJ9IHtcbiAgICAgICAgICAgIEBlYWNoICRrZXkzLCAkdmFsMyBpbiAkdmFsMiB7XG4gICAgICAgICAgICAgIEBpZih0eXBlLW9mKCR2YWwzKSAhPSBtYXApIHsgLy9jYXNjYWRpbmfsnLzroZwg66i87KCAIOy2nOugpVxuICAgICAgICAgICAgICAgICAgI3ska2V5M306ICN7JHZhbDN9O1xuICAgICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAgIEBpZigka2V5MyA9PSBtZWRpYSl7XG4gICAgICAgICAgICAgICAgICBAZWFjaCAka2V5NCwgJHZhbDQgaW4gJHZhbDMge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw0KTtcbiAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9QGVsc2UgaWYoJGtleTMgPT0gXCImXCIpIHtcbiAgICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDMsIFwiXCIsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICAgICAgICAuI3ska2V5M30ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCR2YWwzKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cblxuXG4iLCIvLy8qIHRhYiAqL1xuQG1peGluIHRhYi1pdGVtcygkdGFiLWdyb3VwIDogJGdfdGFiLWdyb3VwKSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gKCR0YWItZ3JvdXApe1xuICAgIEBpZigka2V5ID09IHRhYi13cmFwLWRlZmF1bHQpe1xuICAgICAgLnRhYi13cmFwIHtcbiAgICAgICAgQGVhY2ggJGtleTIsICR2YWwyIGluICR2YWwge1xuICAgICAgICAgIEBpZigka2V5MiA9PSBtZWRpYSl7XG4gICAgICAgICAgICBAZWFjaCAka2V5MywgJHZhbDMgaW4gJHZhbDIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTMpIHtcbiAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWwzKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgI3ska2V5Mn06ICN7JHZhbDJ9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1AZWxzZSB7XG4gICAgICAudGFiLXdyYXAuI3ska2V5fSB7XG4gICAgICAgIEBlYWNoICRrZXk0LCAkdmFsNCBpbiAkdmFsIHtcbiAgICAgICAgICBAaWYodHlwZS1vZigkdmFsNCkgIT0gbWFwICkgeyAvL2Nhc2NhZGluZ+ycvOuhnCDrqLzsoIAg7Lac66ClXG4gICAgICAgICAgICAjeyRrZXk0fTogI3skdmFsNH07XG4gICAgICAgICAgfUBlbHNlIHsgLy9tZWRpYSwgYWN0aXZlLCBzdWJDbGFzc1xuICAgICAgICAgICAgLiN7JGtleTR9IHtcbiAgICAgICAgICAgICAgQGVhY2ggJGtleTUsICR2YWw1IGluICR2YWw0IHtcbiAgICAgICAgICAgICAgICBAaWYodHlwZS1vZigkdmFsNSkgIT0gbWFwKSB7IC8vY2FzY2FkaW5n7Jy866GcIOuovOyggCDstpzroKVcbiAgICAgICAgICAgICAgICAgICN7JGtleTV9OiAjeyR2YWw1fTtcbiAgICAgICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAgICAgQGlmKCRrZXk1ID09IG1lZGlhKXtcbiAgICAgICAgICAgICAgICAgICAgQGVhY2ggJGtleTYsICR2YWw2IGluICR2YWw1IHtcbiAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1xdWVyeS1taW4oJGtleTYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfUBlbHNlIGlmICgka2V5NSA9PSBhY3RpdmUpIHtcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW50Q29kZXMoJHZhbDUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBAaWYoJGtleTUgPT0gXCImXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAkY29kZXM6IG1ha2VNYXBUb0NvZGVzKCR2YWw1LCBcIlwiLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmludENvZGVzKCRjb2Rlcyk7XG4gICAgICAgICAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgLiN7JGtleTV9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICRjb2RlczogbWFrZU1hcFRvQ29kZXMoJHZhbDUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbnRDb2RlcygkY29kZXMpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLEFBQUEsZ0JBQWdCLENBQUE7RUFDZCxjQUFjLEVBQUUsQ0FBQztDQXNSbEI7O0FTM1FLLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RVRaekMsQUFLSSxnQkFMWSxDQUlkLHNCQUFzQixDQUNwQixNQUFNLENBQUM7SUFFSCxhQUFhLEVBQUUsSUFBSTtHQUV0Qjs7O0FBVEwsQUFhRSxnQkFiYyxDQWFkLGVBQWUsQ0FBQTtFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBQyxXQUFXO0NBNkVwQjs7QVNoRkcsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFVFp6QyxBQWFFLGdCQWJjLENBYWQsZUFBZSxDQUFBO0lBSVgsV0FBVyxFQUFDLElBQUk7R0EyRW5COzs7QVNoRkcsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFVFp6QyxBQWFFLGdCQWJjLENBYWQsZUFBZSxDQUFBO0lBT1gsT0FBTyxFQUFDLFlBQVk7R0F3RXZCOzs7QUE1RkgsQUFzQkksZ0JBdEJZLENBYWQsZUFBZSxDQVNiLFFBQVEsQ0FBQTtFQUNOLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLEdBQUc7RUFDUixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUMsSUFB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 */
