@charset "UTF-8";
/* Colors */
.txt-l1 {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  height: auto;
}

.txt-l2 {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  height: auto;
}

.txt-l3 {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  height: auto;
}

.txt-l4 {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  height: auto;
}

.txt-l5 {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  height: auto;
}

.txt-l6 {
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  height: auto;
}

/* 單行省略 */
.text-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

main {
  margin-top: 88px;
}
@media (max-width: 1440px) {
  main {
    margin-top: 130px;
  }
}
@media (max-width: 575px) {
  main {
    margin-top: 123px;
  }
}

body.en .goTop p {
  writing-mode: vertical-lr;
}

.goTop {
  border-radius: 8px 0px 0px 8px;
  background: linear-gradient(180deg, #014b99 0%, #0267b9 100%);
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  width: 40px;
  padding: 16px 10px 20px 10px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  position: fixed;
  bottom: 160px;
  right: 0;
  z-index: 900;
  cursor: pointer;
  transition: 0.3s linear;
}
@media (max-width: 575px) {
  .goTop {
    bottom: 140px;
  }
}
.goTop:hover {
  transition: 0.3s linear;
  background: #1a5ea5;
}
.goTop:active {
  transition: 0.3s linear;
  background: #4d83ba;
}
.goTop.active {
  transition: 0.3s linea;
  background: #b3cae1;
}
.goTop.active:hover {
  transition: 0.3s linear;
  background: #1a5ea5;
}
.goTop p {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  padding-left: 2px;
}

.shadow {
  box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05) !important;
}
@media (max-width: 575px) {
  .shadow {
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05) !important;
  }
}

.radius-custom {
  border-radius: 8px;
}

ol,
ul {
  margin-bottom: 0;
}

.banner-img img {
  max-height: 352px;
}

.self-container {
  max-width: 1506px;
  margin: auto;
}

.container-padding {
  margin: 56px 40px;
}

.mt-56 {
  padding-top: 56px;
}

.mb-32 {
  margin-bottom: 32px;
}

.mt-32 {
  margin-top: 32px;
}

.p-32 {
  padding: 32px;
}

.mb-112 {
  margin-bottom: 112px;
}

@media (max-width: 991.98px) {
  .banner-inner {
    padding-bottom: 48px;
    max-width: calc(100vw - 80px);
    margin: auto;
    text-align: center;
  }
}
@media (max-width: 575.98px) {
  .mt-56 {
    padding-top: 32px;
  }
  .mb-112 {
    margin-bottom: 56px;
  }
  .banner-inner {
    padding: 32px 0;
  }
  .container {
    padding-left: 40px;
    padding-right: 40px;
  }
  .before-box {
    margin-bottom: 20px;
    text-align: center;
  }
}
.lg-h5-sm-h4 {
  font-size: var(--h5-font-size);
  line-height: var(--h5-line-height);
}

.story .mb-16 {
  margin-bottom: 16px;
}
.story .mt-12 {
  margin-top: 12px;
}
.story .list-container {
  padding-left: 20px;
  padding-right: 20px;
  margin-bottom: 52px;
}
.story .list-img {
  width: 100%;
  border-radius: 8px;
}
.story .list-img img {
  max-width: 100%;
  max-height: 100%;
}
.story .list-footer {
  width: 100%;
}
.story .list-footer span {
  color: #666;
  float: left;
}
.story .list-footer a {
  float: right;
}
.story .list-footer::after {
  clear: both;
  content: "";
}

.slogan-block {
  border-top: 4px solid #ffd600;
  padding: 56px 72px;
  text-align: center;
}
.slogan-block .slogan-main {
  font-weight: bold;
  margin: 24px 0;
}
.slogan-block .slogan-footer {
  margin-top: 24px;
}
.slogan-block .slogan-footer img, .slogan-block .slogan-footer svg {
  width: 28px;
  height: 28px;
  vertical-align: text-bottom;
}
.slogan-block .btn-action {
  margin-top: 8px;
}

.mb-52 {
  margin-bottom: 52px;
}

@media (min-width: 576px) and (max-width: 991.98px) {
  .story {
    overflow-x: auto;
  }
  .story .container {
    margin-left: 40px;
    margin-right: 0;
  }
  .md-width {
    width: max-content;
  }
  .row-cols-sm-auto .col {
    width: 400px;
  }
}
@media (max-width: 575.98px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
  .lg-h5-sm-h4 {
    font-size: var(--h4-font-size);
    line-height: var(--h4-line-height);
  }
  .slogan-block {
    padding: 32px 42px;
  }
  .slogan-block .slogan-footer img, .slogan-block .slogan-footer svg {
    width: 20px;
    height: 20px;
    vertical-align: sub;
  }
  .story .list-container {
    border-bottom: 1px solid #999;
    margin-bottom: 16px;
  }
  .story .list-container:last-child {
    border: 0;
    margin-bottom: 40px;
  }
  .story .list-img {
    min-width: 128px;
    min-height: 128px;
    width: 128px;
    height: 128px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .story .list-img img {
    height: 100%;
    max-width: initial;
    max-height: initial;
  }
  .story .list-body {
    width: calc(100% - 128px);
    padding-left: 16px;
    position: relative;
  }
  .story .list-body .list-title {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    height: 48px;
    overflow: hidden;
    text-overflow: initial;
    white-space: initial;
  }
  .story .list-body .list-footer {
    position: absolute;
    bottom: 0;
  }
  .btn-action {
    width: 100%;
  }
}
/*# sourceURL=webpack://./src/views/pages/portal-career/story/story.scss */
/*# sourceURL=webpack://./src/assets/styles/vendors/_variables.scss */
/*# sourceURL=webpack://./src/assets/styles/vendors/_mixins.scss */
/*# sourceURL=webpack://./src/assets/styles/vendors/_custom.scss */
/*# sourceURL=webpack://./src/views/pages/portal-career/joblist.scss */
/*# sourceURL=webpack://./node_modules/bootstrap/scss/mixins/_breakpoints.scss */
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy92aWV3cy9wYWdlcy9wb3J0YWwtY2FyZWVyL3N0b3J5L3N0b3J5LnNjc3MiLCJ3ZWJwYWNrOi8vLi9zcmMvYXNzZXRzL3N0eWxlcy92ZW5kb3JzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8uL3NyYy9hc3NldHMvc3R5bGVzL3ZlbmRvcnMvX21peGlucy5zY3NzIiwid2VicGFjazovLy4vc3JjL2Fzc2V0cy9zdHlsZXMvdmVuZG9ycy9fY3VzdG9tLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zcmMvdmlld3MvcGFnZXMvcG9ydGFsLWNhcmVlci9qb2JsaXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ21CaEIsV0FBQTtBQ1BBO0VBVkUsY0FBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSw0QkFBQTtFQUNBLHFCQUlpQjtFQUhqQixZQUFBO0FGRUY7O0FFR0E7RUFiRSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLDRCQUFBO0VBQ0EscUJBT2lCO0VBTmpCLFlBQUE7QUZjRjs7QUVOQTtFQWhCRSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLDRCQUFBO0VBQ0EscUJBVWlCO0VBVGpCLFlBQUE7QUYwQkY7O0FFZEE7RUFwQkUsY0FBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSw0QkFBQTtFQUNBLHFCQWNpQjtFQWJqQixZQUFBO0FGc0NGOztBRXRCQTtFQXhCRSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLDRCQUFBO0VBQ0EscUJBa0JpQjtFQWpCakIsWUFBQTtBRmtERjs7QUU5QkE7RUE1QkUsY0FBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSw0QkFBQTtFQUNBLHFCQXNCaUI7RUFyQmpCLFlBQUE7QUY4REY7O0FFdENBLFNBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSxtQkFBQTtBRnlDRjs7QUdyRUE7RUFDRSxnQkFBQTtBSHdFRjtBR3ZFRTtFQUZGO0lBR0ksaUJBQUE7RUgwRUY7QUFDRjtBR3pFRTtFQUxGO0lBTUksaUJBQUE7RUg0RUY7QUFDRjs7QUd2RUk7RUFDRSx5QkFBQTtBSDBFTjs7QUdyRUE7RUFDRSw4QkFBQTtFQUNBLDZEQUFBO0VBQ0EsK0NBQUE7RUFDQSxhQUFBO0VBQ0EsV0FBQTtFQUNBLDRCQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQUNBLFFBQUE7RUFDQSxlQUFBO0VBQ0EsYUFBQTtFQUNBLFFBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0FId0VGO0FHdkVFO0VBaEJGO0lBaUJJLGFBQUE7RUgwRUY7QUFDRjtBR3pFRTtFQUNFLHVCQUFBO0VBQ0EsbUJBQUE7QUgyRUo7QUd6RUU7RUFDRSx1QkFBQTtFQUNBLG1CQUFBO0FIMkVKO0FHekVFO0VBQ0Usc0JBQUE7RUFDQSxtQkFBQTtBSDJFSjtBRzFFSTtFQUNFLHVCQUFBO0VBQ0EsbUJBQUE7QUg0RU47QUd6RUU7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7QUgyRUo7O0FHdkVBO0VBQ0UsMkRBQUE7QUgwRUY7QUd6RUU7RUFGRjtJQUdJLDJEQUFBO0VINEVGO0FBQ0Y7O0FHekVBO0VBQ0Usa0JBQUE7QUg0RUY7O0FHekVBOztFQUVFLGdCQUFBO0FINEVGOztBSTFKRTtFQUNFLGlCQUFBO0FKNkpKOztBSTFKQTtFQUNFLGlCQUFBO0VBQ0EsWUFBQTtBSjZKRjs7QUkzSkE7RUFDRSxpQkFBQTtBSjhKRjs7QUk1SkE7RUFDRSxpQkFBQTtBSitKRjs7QUk3SkE7RUFDRSxtQkFBQTtBSmdLRjs7QUk5SkE7RUFDRSxnQkFBQTtBSmlLRjs7QUkvSkE7RUFDRSxhQUFBO0FKa0tGOztBSWhLQTtFQUNFLG9CQUFBO0FKbUtGOztBS3JISTtFRHpDRjtJQUNFLG9CQUFBO0lBQ0EsNkJBQUE7SUFDQSxZQUFBO0lBQ0Esa0JBQUE7RUprS0Y7QUFDRjtBSzlISTtFRGhDRjtJQUNFLGlCQUFBO0VKaUtGO0VJL0pBO0lBQ0UsbUJBQUE7RUppS0Y7RUkvSkE7SUFDRSxlQUFBO0VKaUtGO0VJL0pBO0lBQ0Usa0JBQUE7SUFDQSxtQkFBQTtFSmlLRjtFSS9KQTtJQUNFLG1CQUFBO0lBQ0Esa0JBQUE7RUppS0Y7QUFDRjtBQTFOQTtFQUNFLDhCQUFBO0VBQ0Esa0NBQUE7QUE0TkY7O0FBek5FO0VBQ0UsbUJBQUE7QUE0Tko7QUExTkU7RUFDRSxnQkFBQTtBQTROSjtBQTFORTtFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQkFBQTtBQTROSjtBQTFORTtFQUNFLFdBQUE7RUFDQSxrQkFBQTtBQTROSjtBQTNOSTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtBQTZOTjtBQTFORTtFQUNFLFdBQUE7QUE0Tko7QUEzTkk7RUFDRSxXQUFBO0VBQ0EsV0FBQTtBQTZOTjtBQTNOSTtFQUNFLFlBQUE7QUE2Tk47QUEzTkk7RUFDRSxXQUFBO0VBQ0EsV0FBQTtBQTZOTjs7QUF6TkE7RUFDRSw2QkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7QUE0TkY7QUExTkk7RUFDRSxpQkFBQTtFQUNBLGNBQUE7QUE0Tk47QUExTkk7RUFDRSxnQkFBQTtBQTROTjtBQTNOTTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsMkJBQUE7QUE2TlI7QUF6TkU7RUFDRSxlQUFBO0FBMk5KOztBQXhOQTtFQUNFLG1CQUFBO0FBMk5GOztBS2pNSTtFTHRCRjtJQUNFLGdCQUFBO0VBMk5GO0VBMU5FO0lBQ0UsaUJBQUE7SUFDQSxlQUFBO0VBNE5KO0VBek5BO0lBQ0Usa0JBQUE7RUEyTkY7RUF4TkU7SUFDRSxZQUFBO0VBME5KO0FBQ0Y7QUtoT0k7RUxVRjtJQUNFLGtCQUFBO0lBQ0EsbUJBQUE7RUF5TkY7RUF2TkE7SUFDRSw4QkFBQTtJQUNBLGtDQUFBO0VBeU5GO0VBdk5BO0lBQ0Usa0JBQUE7RUF5TkY7RUF2Tkk7SUFDRSxXQUFBO0lBQ0EsWUFBQTtJQUNBLG1CQUFBO0VBeU5OO0VBbk5JO0lBQ0UsNkJBQUE7SUFDQSxtQkFBQTtFQXFOTjtFQXBOTTtJQUNFLFNBQUE7SUFDQSxtQkFBQTtFQXNOUjtFQW5OSTtJQUNFLGdCQUFBO0lBQ0EsaUJBQUE7SUFDQSxZQUFBO0lBQ0EsYUFBQTtJQUNBLGdCQUFBO0lBQ0EsYUFBQTtJQUNBLHVCQUFBO0lBQ0EsbUJBQUE7RUFxTk47RUFwTk07SUFDRSxZQUFBO0lBQ0Esa0JBQUE7SUFDQSxtQkFBQTtFQXNOUjtFQW5OSTtJQUNFLHlCQUFBO0lBQ0Esa0JBQUE7SUFDQSxrQkFBQTtFQXFOTjtFQW5OUTtJQUNFLHFCQUFBO0lBQ0EsNEJBQUE7SUFDQSxvQkFBQTtJQUNBLFlBQUE7SUFDQSxnQkFBQTtJQUNBLHNCQUFBO0lBQ0Esb0JBQUE7RUFxTlY7RUFuTlE7SUFDRSxrQkFBQTtJQUNBLFNBQUE7RUFxTlY7RUEvTUE7SUFDRSxXQUFBO0VBaU5GO0FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICdAc3R5bGVzL3ZlbmRvcnMvX2N1c3RvbS5zY3NzJztcclxuQGltcG9ydCAnLi4vam9ibGlzdC5zY3NzJztcclxuXHJcbi5sZy1oNS1zbS1oNCB7XHJcbiAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpO1xyXG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XHJcbn1cclxuLnN0b3J5IHtcclxuICAubWItMTYge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICB9XHJcbiAgLm10LTEyIHtcclxuICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgfVxyXG4gIC5saXN0LWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTJweDtcclxuICB9XHJcbiAgLmxpc3QtaW1nIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgaW1nIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAubGlzdC1mb290ZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBzcGFuIHtcclxuICAgICAgY29sb3I6ICM2NjY7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uc2xvZ2FuLWJsb2NrIHtcclxuICBib3JkZXItdG9wOiA0cHggc29saWQgJHllbGxvdy0yMDA7XHJcbiAgcGFkZGluZzogNTZweCA3MnB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAuc2xvZ2FuIHtcclxuICAgICYtbWFpbiB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICBtYXJnaW46IDI0cHggMDtcclxuICAgIH1cclxuICAgICYtZm9vdGVyIHtcclxuICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgaW1nLCBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmJ0bi1hY3Rpb24ge1xyXG4gICAgbWFyZ2luLXRvcDogOHB4OyBcclxuICB9XHJcbn1cclxuLm1iLTUyIHtcclxuICBtYXJnaW4tYm90dG9tOiA1MnB4O1xyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oc20sIGxnKSB7IC8vIOS4reOAgeWwj+e2slxyXG4gIC5zdG9yeSB7XHJcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5tZC13aWR0aCB7XHJcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgfVxyXG4gIC5yb3ctY29scy1zbS1hdXRvIHtcclxuICAgIC5jb2wge1xyXG4gICAgICB3aWR0aDogNDAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkgeyAvLyDlsI/ntrJcclxuICAuY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgfVxyXG4gIC5sZy1oNS1zbS1oNCB7XHJcbiAgICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XHJcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDQtbGluZS1oZWlnaHQpO1xyXG4gIH1cclxuICAuc2xvZ2FuLWJsb2NrIHtcclxuICAgIHBhZGRpbmc6IDMycHggNDJweDtcclxuICAgIC5zbG9nYW4tZm9vdGVyIHtcclxuICAgICAgaW1nLCBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zdG9yeSB7XHJcbiAgICAubGlzdCB7XHJcbiAgICAgICYtY29udGFpbmVyIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk5OTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLWltZyB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMjhweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMjhweDtcclxuICAgICAgICB3aWR0aDogMTI4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMjhweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xyXG4gICAgICAgICAgbWF4LWhlaWdodDogaW5pdGlhbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi1ib2R5IHtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTI4cHgpO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLmxpc3Qge1xyXG4gICAgICAgICAgJi10aXRsZSB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IGluaXRpYWw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmLWZvb3RlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYnRuLWFjdGlvbiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbiIsIiRncmlkLWJyZWFrcG9pbnRzOiAoXHJcbiAgeHM6IDAsXHJcbiAgc206IDU3NnB4LFxyXG4gIG1kOiA3NjhweCxcclxuICBsZzogOTkycHgsXHJcbiAgeGw6IDEyMDBweCxcclxuICB4eGw6IDE5MjBweCxcclxuKTtcclxuXHJcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxyXG4gIHNtOiA1NDBweCxcclxuICBtZDogNzIwcHgsXHJcbiAgbGc6IDk2MHB4LFxyXG4gIHhsOiAxMTQwcHgsXHJcbiAgeHhsOiAxMTUycHgsXHJcbik7XHJcblxyXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ1BpbmdGYW5nIFRDJywgJ05vdG8gU2FucyBUQycsICdTRiBQcm8gVGV4dCcsICdSb2JvdG8nLCBIZWx2ZXRpY2EsIEFyaWFsO1xyXG5cclxuLyogQ29sb3JzICovXHJcbiRncmF5LTkwMDogIzMzMztcclxuJGdyYXktMTAwOiAjZjVmNWY1O1xyXG4kYmx1ZTogIzFjNGU3OTtcclxuJGJsdWUtMzAwOiAjMmU4OWFlO1xyXG4kYm9yZGVyLWNvbG9yOiAjOTk5OTk5O1xyXG4kd2hpdGU6ICNmZmZmZmY7XHJcbiR0b21hdG86ICNmOTY5MzQ7XHJcblxyXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogJGJsdWU7XHJcbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAkYmx1ZTtcclxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogJGJsdWU7XHJcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I6ICRibHVlO1xyXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogJGJsdWU7XHJcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICRibHVlO1xyXG4iLCIvLyB0ZXh0Ym94OiDpmZDliLbmloflrZfmnIDlpKfooYzmlbhcclxuQG1peGluIHRleHRib3goJGxpbmUpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICBkaXNwbGF5OiAtbW96LWJveDtcclxuICBkaXNwbGF5OiAtbXMtYm94O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG4udHh0LWwxIHtcclxuICBAaW5jbHVkZSB0ZXh0Ym94KDEpO1xyXG59XHJcbi50eHQtbDIge1xyXG4gIEBpbmNsdWRlIHRleHRib3goMik7XHJcbn1cclxuLnR4dC1sMyB7XHJcbiAgQGluY2x1ZGUgdGV4dGJveCgzKTtcclxufVxyXG5cclxuLnR4dC1sNCB7XHJcbiAgQGluY2x1ZGUgdGV4dGJveCg0KTtcclxufVxyXG5cclxuLnR4dC1sNSB7XHJcbiAgQGluY2x1ZGUgdGV4dGJveCg1KTtcclxufVxyXG5cclxuLnR4dC1sNiB7XHJcbiAgQGluY2x1ZGUgdGV4dGJveCg2KTtcclxufVxyXG5cclxuLyog5Zau6KGM55yB55WlICovXHJcbi50ZXh0LWVsbGlwc2lzIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiLy8gQGltcG9ydCAnaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9ib290c3RyYXBANS4zLjAvZGlzdC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MnO1xyXG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnLi92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICcuL21peGlucyc7XHJcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy92YXJpYWJsZXMnO1xyXG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvdmFyaWFibGVzLWRhcmsnO1xyXG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvbWFwcyc7XHJcbkBpbXBvcnQgJ35ib290c3RyYXAvc2Nzcy9taXhpbnMnO1xyXG5AaW1wb3J0ICd+Ym9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzJztcclxuXHJcbm1haW4ge1xyXG4gIG1hcmdpbi10b3A6IDg4cHg7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NDBweCkge1xyXG4gICAgbWFyZ2luLXRvcDogMTMwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xyXG4gICAgbWFyZ2luLXRvcDogMTIzcHg7XHJcbiAgfVxyXG59XHJcblxyXG5ib2R5LmVuIHtcclxuICAuZ29Ub3Age1xyXG4gICAgcCB7XHJcbiAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZ29Ub3Age1xyXG4gIGJvcmRlci1yYWRpdXM6IDhweCAwcHggMHB4IDhweDtcclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMDE0Yjk5IDAlLCAjMDI2N2I5IDEwMCUpO1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgd2lkdGg6IDQwcHg7XHJcbiAgcGFkZGluZzogMTZweCAxMHB4IDIwcHggMTBweDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZ2FwOiA0cHg7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGJvdHRvbTogMTYwcHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgei1pbmRleDogOTAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0cmFuc2l0aW9uOiAwLjNzIGxpbmVhcjtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcclxuICAgIGJvdHRvbTogMTQwcHg7XHJcbiAgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyBsaW5lYXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMWE1ZWE1O1xyXG4gIH1cclxuICAmOmFjdGl2ZSB7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGxpbmVhcjtcclxuICAgIGJhY2tncm91bmQ6ICM0ZDgzYmE7XHJcbiAgfVxyXG4gICYuYWN0aXZlIHtcclxuICAgIHRyYW5zaXRpb246IDAuM3MgbGluZWE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjYjNjYWUxO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgbGluZWFyO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMWE1ZWE1O1xyXG4gICAgfVxyXG4gIH1cclxuICBwIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHBhZGRpbmctbGVmdDogMnB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYWRvdyB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XHJcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSkgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5yYWRpdXMtY3VzdG9tIHtcclxuICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbn1cclxuXHJcbm9sLFxyXG51bCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4iLCIvLyBAaW1wb3J0ICdAc3R5bGVzL3ZlbmRvcnMvX2N1c3RvbS5zY3NzJztcclxuJHllbGxvdy0yMDA6ICNmZmQ2MDA7XHJcbiR5ZWxsb3ctNDAwOiAjZjk2OTM0O1xyXG4kdGFibGUtY29sb3I6ICM3NDgyOGY7XHJcblxyXG4uYmFubmVyLWltZyB7XHJcbiAgaW1nIHtcclxuICAgIG1heC1oZWlnaHQ6IDM1MnB4O1xyXG4gIH1cclxufVxyXG4uc2VsZi1jb250YWluZXIge1xyXG4gIG1heC13aWR0aDogMTUwNnB4O1xyXG4gIG1hcmdpbjogYXV0bztcclxufVxyXG4uY29udGFpbmVyLXBhZGRpbmcge1xyXG4gIG1hcmdpbjogNTZweCA0MHB4O1xyXG59XHJcbi5tdC01NiB7XHJcbiAgcGFkZGluZy10b3A6IDU2cHg7XHJcbn1cclxuLm1iLTMyIHtcclxuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG59XHJcbi5tdC0zMiB7XHJcbiAgbWFyZ2luLXRvcDogMzJweDtcclxufVxyXG4ucC0zMiB7XHJcbiAgcGFkZGluZzogMzJweDtcclxufVxyXG4ubWItMTEyIHtcclxuICBtYXJnaW4tYm90dG9tOiAxMTJweDtcclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgLy8g5Lit44CB5bCP57ayXHJcbiAgLmJhbm5lci1pbm5lciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDgwcHgpO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgLm10LTU2IHtcclxuICAgIHBhZGRpbmctdG9wOiAzMnB4O1xyXG4gIH1cclxuICAubWItMTEyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDU2cHg7XHJcbiAgfVxyXG4gIC5iYW5uZXItaW5uZXIge1xyXG4gICAgcGFkZGluZzogMzJweCAwO1xyXG4gIH1cclxuICAuY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgfVxyXG4gIC5iZWZvcmUtYm94IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */