/* $base-font: 'Open Sans', Arial, sans-serif; */
/* $base-line-height: 1.6; */
/* default */
/* base font size with shorter line-height */
/* h5 */
/* h4 */
/* h3 */
/* h2 */
/* h1 */
/*
Use this mixin to add font sizes from the maps above with line-heights and mq's included.
eg: @include font-size($font-size-xxxx-large);
*/
/*
Utility function for mixin font-size.
*/
/* h4 */
/* h3 */
/* h4 */
/*
Function so we don't have to use map-get with $breakpoints.
eg: bp(xxl) or @include breakpoint(bp(xxl))
*/
/* Standard ranges from design
 *   "desktop" : 961 and up
 *   "tablet"  : 510 thru 960
 *   "mobile"  : 320 thru 509
 */
:root {
  /* Standard Requirements:
   * @ mobile
   *     L-R padding is 20px
   *     default font-size is 16px
   * @ tablet
   *     L-R padding is 30px
   *     default font-size is 18px
   * @ desktop
   *     L-R padding is 10px (standard)
   *     default font-size is 18px
   */
  --nav-pad: 20px;
  --nav-font-size: 16px;
}
@media screen and (min-width: 510px) {
  :root {
    --nav-pad: 30px;
    --nav-font-size: 18px;
  }
}
@media screen and (min-width: 961px) {
  :root {
    --nav-pad: 10px;
  }
}

.edl-nav-container {
  font-size: var(--nav-font-size);
  font-weight: 400;
  line-height: 28px;
  background: #002F56;
  display: block;
  position: relative;
  width: 100%;
  z-index: 201;
}

.edl-nav-container:nth-of-type(2) {
  background: transparent;
  position: absolute;
}

.edl-nav-container.is-active {
  z-index: 202;
}

.edl-nav-row {
  display: block;
  position: relative;
  margin: auto;
  max-width: 1280px;
  padding: 0;
}

.edl-navbar {
  align-items: end;
  display: grid;
  grid-template-columns: 1fr 120px 1fr;
  height: 60px;
  margin: 0 var(--nav-pad);
  position: relative;
}
.edl-navbar .edl-navbar_sub-menu {
  align-items: center;
  align-self: center;
  display: flex;
  justify-content: flex-end;
}
.edl-navbar .edl-navbar_sub-menu-item {
  border: transparent;
  color: #fff;
  margin-left: 15px;
  text-decoration: none;
}
.edl-navbar .edl-navbar_sub-menu-item:hover {
  border: transparent;
  text-decoration: none;
}
.edl-navbar .edl-navbar_sub-menu-item:not(.edl-navbar_cta) {
  font-size: 20px;
  height: 20px;
  text-align: center;
  width: 20px;
}
.edl-navbar .edl-navbar_login {
  display: none;
}
.edl-navbar .edl-navbar_site-select {
  display: none;
}
.edl-navbar .edl-navbar_cta {
  display: none;
  font-size: 16px;
}
.edl-navbar .edl-navbar_mobile[aria-expanded=false] :nth-child(1) {
  display: inline;
}
.edl-navbar .edl-navbar_mobile[aria-expanded=false] :nth-child(2) {
  display: none;
}
.edl-navbar .edl-navbar_mobile[aria-expanded=true] :nth-child(1) {
  display: none;
}
.edl-navbar .edl-navbar_mobile[aria-expanded=true] :nth-child(2) {
  color: #fff;
  display: inline;
}
.edl-navbar #actions__panels {
  margin: 0 -20px;
  position: absolute;
  top: 60px;
  width: calc(100% + 40px);
}
.edl-navbar .edl-navbar_search[aria-expanded=true] {
  color: #fff;
}
.edl-navbar #navbar_search__sect0 {
  background: #fff;
  border: none;
  box-shadow: 0 5px 10px 0 rgba(61, 63, 66, 0.3);
  grid-column: 1/span 3;
  left: calc((100% - 100vw) / 2);
  overflow: hidden;
  padding: 25px 0 30px;
  position: absolute;
  text-align: center;
  width: 100vw;
}
.edl-navbar #actionNav__panels #actionNav__sect1 {
  margin: 20px -20px;
}

.edl-navmenu {
  /*
  left: 0;
  position: absolute;
  width: 100%;
  transition: 1s;
  display: grid;
  */
  background: #002F56;
  border-radius: 0 0 5px 5px;
  display: grid;
  grid-template-columns: auto;
  margin: 0;
  padding: 0;
}
.edl-navmenu.edl-showhide--target {
  /*
  left: 0;
  position: absolute;
  width: 100%;
  transition: 1s;
  display: grid;
  */
}
.edl-navmenu.edl-showhide--target[hidden] {
  /*
  left: -100%;
  position: absolute;
  width: 100%;
  transition: 1s;
  display: grid;
  */
}
.edl-navmenu .edl-link-group {
  padding: 0 var(--nav-pad);
  width: 100%;
}
.edl-navmenu .edl-navmenu__mobile-back {
  border: transparent;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  margin: 10px 0 15px;
  text-decoration: none;
}
.edl-navmenu .edl-navmenu__mobile-back:hover {
  border: transparent;
  text-decoration: none;
}
.edl-navmenu .edl-navmenu__mobile-back::before {
  content: "\f104";
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  font-size: 24px;
  font-style: normal;
  font-variant: normal;
  font-weight: 300;
  margin-right: 10px;
  text-rendering: auto;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
}
.edl-navmenu .edl-navmenu__mobile-back[aria-expanded=false] {
  display: none;
}
.edl-navmenu .edl-navmenu__mobile-back[aria-expanded=true] + [aria-owns=mainNav__panels] [aria-expanded=false], .edl-navmenu .edl-navmenu__mobile-back[aria-expanded=true] + [aria-owns=actionNav__panels] [aria-expanded=false] {
  display: none;
}
.edl-navmenu .edl-showhide--container, .edl-navmenu .edl-showhide--target {
  margin: 0;
  padding: 0;
  list-style: none;
}
.edl-navmenu .panel-content, .edl-navmenu .panel-content ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: block;
}
.edl-navmenu .panel-content {
  margin-bottom: 1em;
}
.edl-navmenu .panel-content--simple {
  column-count: 1;
}
.edl-navmenu .panel-content--grouped {
  column-gap: 16px;
  display: grid;
  grid-template-columns: 1fr;
}
.edl-navmenu .panel-content--grouped > li {
  display: block;
}
.edl-navmenu [aria-owns=mainNav__panels] > *, .edl-navmenu [aria-owns=actionNav__panels] > * {
  border-bottom: 1px solid #B8BBBF;
  display: block;
  margin: 20px 0;
  padding: 0 5px 20px;
  position: relative;
}
.edl-navmenu [aria-owns=mainNav__panels] > *:not([aria-expanded=true])::after, .edl-navmenu [aria-owns=actionNav__panels] > *:not([aria-expanded=true])::after {
  color: #fff;
  content: "\f105";
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  font-size: 28px;
  font-style: normal;
  font-variant: normal;
  font-weight: 300;
  position: absolute;
  right: 5px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.edl-navmenu [aria-owns=mainNav__panels] > *:not(.edl-showhide--trigger)::after, .edl-navmenu [aria-owns=actionNav__panels] > *:not(.edl-showhide--trigger)::after {
  content: "";
  display: none;
}
.edl-navmenu [aria-owns=mainNav__panels] > *:last-child, .edl-navmenu [aria-owns=actionNav__panels] > *:last-child {
  border: none;
  padding-bottom: 0;
}
.edl-navmenu [aria-owns=mainNav__panels] > *[aria-expanded=true], .edl-navmenu [aria-owns=actionNav__panels] > *[aria-expanded=true] {
  border: none;
  margin: 0;
  padding-bottom: 15px;
}
.edl-navmenu [aria-owns=mainNav__panels] > *, .edl-navmenu [aria-owns=actionNav__panels] > * {
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}
.edl-navmenu [aria-owns=mainNav__panels] > *:hover, .edl-navmenu [aria-owns=actionNav__panels] > *:hover {
  font-weight: 700;
  text-decoration: none;
}
.edl-navmenu [aria-owns=mainNav__panels] i, .edl-navmenu [aria-owns=actionNav__panels] i {
  font-size: 20px;
  margin-right: 15px;
}
.edl-navmenu [aria-owns=mainNav__panels] .edl-navbar_cta .edl-btn, .edl-navmenu [aria-owns=actionNav__panels] .edl-navbar_cta .edl-btn {
  margin: 5px 0 10px;
  width: 100%;
}
.edl-navmenu #mainNav__panels, .edl-navmenu #actionNav__panels {
  background: #fff;
  border-radius: 0 0 5px 5px;
}
.edl-navmenu #mainNav__panels a, .edl-navmenu #actionNav__panels a {
  border: none;
  color: #2D62B7;
  font-size: var(--nav-font-size);
  font-weight: 700;
  line-height: 28px;
  text-decoration: none;
}
.edl-navmenu #mainNav__panels a:hover, .edl-navmenu #mainNav__panels a:active, .edl-navmenu #actionNav__panels a:hover, .edl-navmenu #actionNav__panels a:active {
  color: #3D3F42;
}
.edl-navmenu #actionNav__panels .site-select li a {
  line-height: 2.5;
}
.edl-navmenu .edl-link-group {
  justify-self: start;
}
.edl-navmenu .edl-navmenu--target[hidden] {
  display: none;
}
.edl-navmenu .nav-icon {
  font-size: var(--nav-font-size);
  font-weight: 400;
  line-height: 28px;
  align-items: center;
  background: url("../png/ebsco-navigation-menu-icon-academiclibraries-45.png") 5px 50%/20px 20px no-repeat;
  border-bottom: 1px solid #B8BBBF;
  display: inline-flex;
  min-height: 60px;
  padding-left: 35px;
  width: 100%;
}
.edl-navmenu .nav-icon--academic {
  background: url("../png/ebsco-navigation-menu-icon-academiclibraries-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--public {
  background: url("../png/ebsco-navigation-menu-byinstitution-icon-publiclibraries-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--health {
  background: url("../png/ebsco-navigation-menu-icon-healthcare-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--govt {
  background: url("../png/ebsco-navigation-menu-byinstitution-icon-government-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--corp {
  background: url("../png/ebsco-navigation-menu-icon-corporations-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--schools {
  background: url("../png/ebsco-navigation-menu-byinstitution-icon-schools-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--publishers {
  background: url("../png/ebsco-navigation-menu-icon-publishers-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--waiting {
  background: url("../png/ebsco-navigation-menu-icon-waitingrooms-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--support {
  background: url("../png/ebsco-navigation-menu-forcustomers-icon-support-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--resources {
  background: url("../png/ebsco-navigation-menu-forcustomers-icon-promoteyourresources-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--training {
  background: url("../png/ebsco-navigation-menu-forcustomers-icon-training-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--login {
  background: url("../png/ebsco-navigation-menu-forcustomers-icon-customerlogin-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--ebscopost-blog {
  background: url("../png/ebsco-navigation-menu-blog-icon-ebscopost-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--health-blog {
  background: url("../png/ebsco-navigation-menu-blog-icon-ebscohealthnotes-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--corp-blog {
  background: url("../png/ebsco-navigation-menu-blog-icon-ebscoforcorporate-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--novelist-blog {
  background: url("../png/ebsco-navigation-menu-blog-icon-novelistblog-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--videos {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-videos-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--ebrochures {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-ebrochures-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--infographics {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-infographics-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--webinars {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-webinars-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--stories {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-successstories-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--whitepapers {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-whitepapers-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .nav-icon--articles {
  background: url("../png/ebsco-navigation-menu-resourcecenter-icon-articles-45.png") 5px 50%/20px 20px no-repeat;
}
.edl-navmenu .panel-content:not(.panel-content--grouped) .nav-icon:last-of-type, .edl-navmenu .nav-icon--with-children {
  border: none;
}
.edl-navmenu .nav-icon--with-children {
  align-items: unset;
  background-position: 5px 5px;
  margin-top: 20px;
}
.edl-navmenu .nav-icon--with-children ul {
  margin: 10px 0 0;
}
.edl-navmenu .nav-icon--with-children li {
  margin-bottom: 10px;
}

.target-content {
  display: block;
  margin: 20px 0 30px;
}
.target-content h3 {
  display: none;
}
.target-content .column-separator hr {
  border: 0;
  border-bottom: 1px solid #D9DADB;
  display: block;
  height: 1px;
  margin: 20px auto;
  padding: 0;
  width: 100%;
}
.target-content .column-group {
  margin-top: 0;
  /* REMOVE FMO
  max-width: 310px;
  */
}
.target-content .column-group .edl-link-group {
  padding-left: 0;
}
.target-content .column-group h4 {
  color: #3D3F42;
  font-family: "Noto Sans", Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.7;
  font-size: var(--nav-font-size);
  margin: 0 0 10px;
}
.target-content .column-group ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.target-content .column-group ul a {
  font-size: var(--nav-font-size);
  border: none;
  color: #2D62B7;
  font-weight: 700;
  text-decoration: none;
}
.target-content .column-group ul a:hover {
  color: #3D3F42;
}
.target-content .column-group li {
  margin-bottom: 10px;
}
.target-content .column-group-wrapper .column-group:nth-child(1) {
  border-bottom: 1px solid #d9dadb;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

@media screen and (min-width: 510px) {
  .edl-navmenu [aria-owns=actionNav__panels] .edl-navbar_cta .edl-btn {
    width: auto;
  }
  .edl-navbar #actions__panels {
    margin: 0 -30px;
    position: fixed;
    top: 80px;
    width: 100%;
    left: 0;
  }
}
@media screen and (min-width: 961px) {
  .edl-nav-container.is-active {
    background: #002F56;
  }
  .edl-nav-container.is-active .edl-site-logo {
    fill: #fff;
  }
  .edl-nav-container.is-active .edl-navbar {
    line-height: 1;
  }
  .edl-nav-container.is-active .edl-navbar .edl-navbar_sub-menu-item {
    color: #fff;
  }
  .edl-nav-container:nth-of-type(2) {
    background: #fff;
  }
  .edl-nav-container:nth-of-type(2) .edl-nav-row {
    padding: 0 10px;
  }
  .edl-navbar {
    height: 80px;
  }
  .edl-navbar .edl-navbar_search {
    order: 2;
  }
  .edl-navbar .edl-navbar_login {
    order: 1;
  }
  .edl-navbar .edl-navbar_site-select {
    order: 3;
  }
  .edl-navbar .edl-navbar_login, .edl-navbar .edl-navbar_site-select {
    display: inline-block;
    position: relative;
  }
  .edl-navbar .edl-navbar_login[aria-expanded=true], .edl-navbar .edl-navbar_site-select[aria-expanded=true] {
    color: #fff;
  }
  .edl-navbar .edl-navbar_cta {
    display: inline-block;
    margin: 0 0 0 15px;
    order: 4;
  }
  .edl-navbar .edl-navbar_mobile {
    display: none;
  }
  .edl-navbar #actions__panels {
    display: grid;
    grid-column: 1;
    grid-row: 2;
    grid-template-columns: 1fr 1px 1fr;
    justify-self: center;
    margin: 0;
    width: 100%;
  }
  .edl-navbar #navbar_login__sect0 {
    box-shadow: 0 0 10px 0 rgba(61, 63, 66, 0.3);
    border: 1px solid #D9DADB;
    border-radius: 5px;
    background: #fff;
    grid-column: none;
    justify-self: center;
    padding: 30px;
  }
  .edl-navbar #navbar_site__sect0 {
    background: #fff;
    grid-column: none;
    justify-self: center;
  }
  #actionMenu__sect0 {
    display: none;
  }
  .edl-navmenu {
    border-radius: unset;
    grid-template-columns: 250px auto;
    margin-left: -5000px;
    padding-left: 5000px;
  }
  .edl-navmenu .edl-showhide--container[aria-owns=mainNav__panels] > * {
    border-bottom: none;
    display: block;
    margin: 20px 0;
    padding: 0 5px 5px;
    position: relative;
  }
  .edl-navmenu .edl-showhide--container[aria-owns=mainNav__panels] > *::after {
    content: "";
    display: none;
  }
  .edl-navmenu .edl-showhide--container[aria-owns=mainNav__panels] > *[aria-expanded=true] {
    font-weight: 700;
    text-decoration: underline;
  }
  .edl-navmenu .edl-showhide--container[aria-owns=mainNav__panels] > *:hover, .edl-navmenu .edl-showhide--container[aria-owns=mainNav__panels] > *:active {
    text-decoration: underline;
  }
  .edl-navmenu .edl-link-group {
    padding: 45px 10px 0;
    width: 100%;
  }
  .edl-navmenu .edl-link-group:first-of-type {
    padding: 20px 30px 25px 0;
  }
  .edl-navmenu #mainNav__panels {
    padding-left: 95px;
  }
  .edl-navmenu .panel-content--simple {
    column-count: 2;
  }
  .edl-navmenu .nav-icon {
    background-size: 40px 40px;
    border: none;
    margin-bottom: 45px;
    min-height: 40px;
    padding-left: 65px;
  }
  .edl-navmenu #mainNav__panels {
    border-radius: unset;
    padding-left: 50px;
  }
  .edl-navmenu .panel-content--grouped {
    grid-template-columns: 1fr 1fr;
  }
  .edl-navmenu .nav-icon--with-children {
    align-items: unset;
    background-position: 0 0;
    margin-top: 0;
    padding-top: 6px;
  }
  .edl-navmenu .nav-icon--with-children ul {
    margin: 10px 0 0;
  }
  .target-content {
    display: grid;
    /* REMOVE FMO
    grid-template-columns: 1fr 60px 1fr;
    */
    margin: 0;
    /* REMOVE FMO
    & .column-group {
      max-width: 175px;
    }
    */
  }
  .target-content h3 {
    font-size: 18px;
    line-height: 1.55;
    color: #3D3F42;
    font-weight: 700;
    display: block;
    grid-column: 1/span 3;
    margin: 0 0 10px;
    max-width: 175px;
  }
}
@media screen and (min-width: 961px) and (min-width: 510px) {
  .target-content h3 {
    font-size: 20px;
    line-height: 1.65;
  }
}
@media screen and (min-width: 961px) {
  .target-content .column-separator {
    align-items: center;
    display: flex;
    justify-items: center;
  }
  .target-content .column-separator hr {
    border: 0;
    border-left: 1px solid #D9DADB;
    display: block;
    height: 100%;
    margin: auto 20px;
    padding: 0;
    width: auto;
  }
  .target-content .column-group-wrapper .column-group:nth-child(1) {
    border-bottom: unset;
  }
  [dir=rtl] .edl-navmenu {
    margin-right: -5000px;
    padding-right: 5000px;
  }
  [dir=rtl] .edl-link-group:first-of-type {
    padding: 20px 0 25px 30px;
  }
  [dir=rtl] .nav-icon {
    background-position: right 0;
    padding-right: 65px;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9wYXR0ZXJucy8wMC1nbG9iYWwvdXRpbHMvX3R5cG9ncmFwaHkuc2NzcyIsIl9wYXR0ZXJucy8wMC1nbG9iYWwvdXRpbHMvX2Z1bmN0aW9ucy5zY3NzIiwiX3BhdHRlcm5zLzAwLWdsb2JhbC91dGlscy9fYnJlYWtwb2ludHMuc2NzcyIsIl9wYXR0ZXJucy8wMy10ZW1wbGF0ZXMvbWFpbi1uYXZpZ2F0aW9uL21haW4tbmF2aWdhdGlvbi5zY3NzIiwiX3BhdHRlcm5zLzAzLXRlbXBsYXRlcy9tYWluLW5hdmlnYXRpb24vbWFpbi1uYXZpZ2F0aW9uLmNzcyIsIi4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsIl9wYXR0ZXJucy8wMC1nbG9iYWwvdXRpbHMvX2NvbG9ycy5zY3NzIiwiX3BhdHRlcm5zLzAwLWdsb2JhbC91dGlscy9fbWl4aW5zLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsZ0RBQUE7QUFTQSw0QkFBQTtBQU9BLFlBQUE7QUFJQSw0Q0FBQTtBQUlBLE9BQUE7QUFJQSxPQUFBO0FBSUEsT0FBQTtBQUlBLE9BQUE7QUFJQSxPQUFBO0FBS0E7OztDQUFBO0FBeUJBOztDQUFBO0FBeUJBLE9BQUE7QUFJQSxPQUFBO0FBSUEsT0FBQTtBQzVGQTs7O0NBQUE7QUNKQTs7OztFQUFBO0FDTEE7RUFDRTs7Ozs7Ozs7OztJQUFBO0VBV0EsZUFBQTtFQUNBLHFCQUFBO0FDd0JGO0FDc0JJO0VGM0RKO0lBZ0JJLGVBQUE7SUFDQSxxQkFBQTtFQ3lCRjtBQUNGO0FDZ0JJO0VGM0RKO0lBcUJJLGVBQUE7RUMwQkY7QUFDRjs7QUQ2QkE7RUEzQ0UsK0JBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBNENBLG1CR2xGYTtFSG1GYixjQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBQ3pCRjs7QUQ0QkE7RUFDRSx1QkFBQTtFQUNBLGtCQUFBO0FDekJGOztBRDRCQTtFQUVFLFlBQUE7QUMxQkY7O0FENkJBO0VBQ0UsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBO0VBQ0EsVUFBQTtBQzFCRjs7QUQ4QkE7RUFDRSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxvQ0FBQTtFQUNBLFlBQUE7RUFDQSx3QkFBQTtFQUNBLGtCQUFBO0FDM0JGO0FEK0JFO0VBQ0UsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFFQSx5QkFBQTtBQzlCSjtBRGdDRTtFQUNFLG1CQUFBO0VBQ0EsV0dqR0k7RUhrR0osaUJBQUE7RUFDQSxxQkFBQTtBQzlCSjtBRGdDSTtFQUNFLG1CQUFBO0VBQ0EscUJBQUE7QUM5Qk47QURpQ0U7RUFDRSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtBQy9CSjtBRG1DRTtFQUNFLGFBQUE7QUNqQ0o7QURvQ0U7RUFDRSxhQUFBO0FDbENKO0FEcUNFO0VBQ0UsYUFBQTtFQUNBLGVIbkphO0FJZ0hqQjtBRHVDSTtFQUNFLGVBQUE7QUNyQ047QUR1Q0k7RUFDRSxhQUFBO0FDckNOO0FEMENJO0VBQ0UsYUFBQTtBQ3hDTjtBRDBDSTtFQUNFLFdHN0lFO0VIOElGLGVBQUE7QUN4Q047QUQ0Q0U7RUFDRSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0Esd0JBQUE7QUMxQ0o7QUQ2Q0k7RUFDRSxXRzFKRTtBRitHUjtBRDhDRTtFQUNFLGdCRzlKSTtFSCtKSixZQUFBO0VBQ0EsOENBQUE7RUFDQSxxQkFBQTtFQUNBLDhCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxZQUFBO0FDNUNKO0FEK0NFO0VBQ0Usa0JBQUE7QUM3Q0o7O0FEa0RBO0VBeklFOzs7Ozs7R0FBQTtFQTRJQSxtQkdqTmE7RUhrTmIsMEJBQUE7RUFDQSxhQUFBO0VBQ0EsMkJBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtBQzFDRjtBRDRDSTtFQW5KRjs7Ozs7O0dBQUE7QUNnSEY7QURzQ007RUFoS0o7Ozs7OztHQUFBO0FDbUlGO0FEa0NFO0VBQ0UseUJBQUE7RUFDQSxXQUFBO0FDaENKO0FEbUNFO0VBQ0UsbUJBQUE7RUFDQSxXR3pNSTtFSDBNSixxQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EscUJBQUE7QUNqQ0o7QURtQ0k7RUFDRSxtQkFBQTtFQUNBLHFCQUFBO0FDakNOO0FEb0NJO0VBQ0UsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLGlDQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxzQkFBQTtFQUNBLG1DQUFBO0FDbENOO0FEc0NFO0VBQ0UsYUFBQTtBQ3BDSjtBRHVDRTtFQUVFLGFBQUE7QUN0Q0o7QUR5Q0U7RUlqTUEsU0FBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtBSDJKRjtBRHlDRTtFSXRNQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VKd01FLGNBQUE7QUN2Q0o7QUQwQ0U7RUFDRSxrQkFBQTtBQ3hDSjtBRDJDRTtFQUNFLGVBQUE7QUN6Q0o7QUQ0Q0U7RUFDRSxnQkFBQTtFQUNBLGFBQUE7RUFDQSwwQkFBQTtBQzFDSjtBRDRDSTtFQUNFLGNBQUE7QUMxQ047QURpREk7RUFDRSxnQ0FBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBQy9DTjtBRGlETTtFQUNFLFdHdFJBO0VIdVJBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSxpQ0FBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxvQkFBQTtFQUNBLG1DQUFBO0FDL0NSO0FEa0RNO0VBQ0UsV0FBQTtFQUNBLGFBQUE7QUNoRFI7QURtRE07RUFDRSxZQUFBO0VBQ0EsaUJBQUE7QUNqRFI7QURvRE07RUFDRSxZQUFBO0VBQ0EsU0FBQTtFQUNBLG9CQUFBO0FDbERSO0FEc0RJO0VBQ0UsV0d0VEU7RUh1VEYsZ0JBQUE7RUFDQSxxQkFBQTtBQ3BETjtBRHNETTtFQUNFLGdCQUFBO0VBQ0EscUJBQUE7QUNwRFI7QUR3REk7RUFDRSxlQUFBO0VBQ0Esa0JBQUE7QUN0RE47QUR5REk7RUFDRSxrQkFBQTtFQUNBLFdBQUE7QUN2RE47QUQyREU7RUFFRSxnQkc3VUk7RUg4VUosMEJBQUE7QUMxREo7QUQ0REk7RUFsVkYsWUFBQTtFQUNBLGNHeEJhO0VIeUJiLCtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQWlWSSxxQkFBQTtBQ3ZETjtBRDBESTtFQUVFLGNHMVVFO0FGaVJSO0FENkRFO0VBQ0UsZ0JBQUE7QUMzREo7QUQ4REU7RUFDRSxtQkFBQTtBQzVESjtBRCtERTtFQUNFLGFBQUE7QUM3REo7QURnRUU7RUFsV0EsK0JBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBbVdFLG1CQUFBO0VBQ0EsaUlBQUE7RUFDQSxnQ0FBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QUM3REo7QURpRUU7RUFDRSxpSUFBQTtBQy9ESjtBRGlFRTtFQUNFLDZJQUFBO0FDL0RKO0FEaUVFO0VBQ0UsMEhBQUE7QUMvREo7QURpRUU7RUFDRSx3SUFBQTtBQy9ESjtBRGlFRTtFQUNFLDRIQUFBO0FDL0RKO0FEaUVFO0VBQ0UscUlBQUE7QUMvREo7QURpRUU7RUFDRSwwSEFBQTtBQy9ESjtBRGlFRTtFQUNFLDRIQUFBO0FDL0RKO0FEbUVFO0VBQ0Usb0lBQUE7QUNqRUo7QURtRUU7RUFDRSxpSkFBQTtBQ2pFSjtBRG1FRTtFQUNFLHFJQUFBO0FDakVKO0FEbUVFO0VBQ0UsMElBQUE7QUNqRUo7QURxRUU7RUFDRSw4SEFBQTtBQ25FSjtBRHFFRTtFQUNFLHFJQUFBO0FDbkVKO0FEcUVFO0VBQ0Usc0lBQUE7QUNuRUo7QURxRUU7RUFDRSxpSUFBQTtBQ25FSjtBRHVFRTtFQUNFLHFJQUFBO0FDckVKO0FEdUVFO0VBQ0UseUlBQUE7QUNyRUo7QUR1RUU7RUFDRSwySUFBQTtBQ3JFSjtBRHVFRTtFQUNFLHVJQUFBO0FDckVKO0FEdUVFO0VBQ0UsNklBQUE7QUNyRUo7QUR1RUU7RUFDRSwwSUFBQTtBQ3JFSjtBRHVFRTtFQUNFLHVJQUFBO0FDckVKO0FEeUVFO0VBRUUsWUFBQTtBQ3hFSjtBRDJFRTtFQUNFLGtCQUFBO0VBRUEsNEJBQUE7RUFDQSxnQkFBQTtBQzFFSjtBRDRFSTtFQUNFLGdCQUFBO0FDMUVOO0FENkVJO0VBQ0UsbUJBQUE7QUMzRU47O0FEZ0ZBO0VBQ0UsY0FBQTtFQUNBLG1CQUFBO0FDN0VGO0FEK0VFO0VBQ0UsYUFBQTtBQzdFSjtBRGtGSTtFQUNFLFNBQUE7RUFDQSxnQ0FBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtBQ2hGTjtBRG9GRTtFQUNFLGFBQUE7RUFDQTs7R0FBQTtBQ2hGSjtBRG9GSTtFQUNFLGVBQUE7QUNsRk47QURxRkk7RUh6YUEsY00vREk7RU5nRUosMkNBMUdRO0VBMkdSLGdCQW5Ca0I7RUFaZCxlQUFBO0VBRUksZ0JBQUE7RUd1Y04sK0JBQUE7RUFDQSxnQkFBQTtBQ2hGTjtBRG1GSTtFSWpkRixTQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0FIaVlGO0FEaUZNO0VBQ0UsK0JBQUE7RUFFQSxZQUFBO0VBQ0EsY0c3aEJPO0VIOGhCUCxnQkh2Y1c7RUd3Y1gscUJBQUE7QUNoRlI7QURrRlE7RUFDRSxjRzNmRjtBRjJhUjtBRHFGSTtFQUNFLG1CQUFBO0FDbkZOO0FEdUZFO0VBQ0UsZ0NBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0FDckZKOztBQ2xhSTtFRjhmRjtJQUNFLFdBQUE7RUN4RkY7RUQyRkE7SUFDRSxlQUFBO0lBQ0EsZUFBQTtJQUNBLFNBQUE7SUFDQSxXQUFBO0lBQ0EsT0FBQTtFQ3pGRjtBQUNGO0FDL2FJO0VGOGdCRjtJQUNFLG1CRzVrQlc7RUZnZmI7RUQ4RkU7SUFDRSxVR2pqQkU7RUZxZE47RUQ4RkU7SUFDRSxjQUFBO0VDNUZKO0VEOEZJO0lBQ0UsV0d2akJBO0VGMmROO0VEaUdBO0lBQ0UsZ0JHN2pCSTtFRjhkTjtFRGlHRTtJQUNFLGVBQUE7RUMvRko7RURtR0E7SUFDRSxZQUFBO0VDakdGO0VEb0dFO0lBQ0UsUUFBQTtFQ2xHSjtFRHFHRTtJQUNFLFFBQUE7RUNuR0o7RURzR0U7SUFDRSxRQUFBO0VDcEdKO0VEdUdFO0lBRUUscUJBQUE7SUFDQSxrQkFBQTtFQ3RHSjtFRHdHSTtJQUNFLFdHMWxCQTtFRm9mTjtFRDBHRTtJQUNFLHFCQUFBO0lBQ0Esa0JBQUE7SUFDQSxRQUFBO0VDeEdKO0VEMkdFO0lBQ0UsYUFBQTtFQ3pHSjtFRDRHRTtJQUNFLGFBQUE7SUFDQSxjQUFBO0lBQ0EsV0FBQTtJQUNBLGtDQUFBO0lBQ0Esb0JBQUE7SUFDQSxTQUFBO0lBQ0EsV0FBQTtFQzFHSjtFRDZHRTtJQXRtQkYsNENBQUE7SUFDQSx5QkFBQTtJQUNBLGtCQUFBO0lBdW1CSSxnQkdybkJFO0lIc25CRixpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsYUFBQTtFQzFHSjtFRDZHRTtJQUVFLGdCRzduQkU7SUg4bkJGLGlCQUFBO0lBQ0Esb0JBQUE7RUM1R0o7RURnSEE7SUFDRSxhQUFBO0VDOUdGO0VEa0hBO0lBQ0Usb0JBQUE7SUFDQSxpQ0FBQTtJQUNBLG9CQUFBO0lBQ0Esb0JBQUE7RUNoSEY7RURrSEU7SUFFRSxtQkFBQTtJQUNBLGNBQUE7SUFDQSxjQUFBO0lBQ0Esa0JBQUE7SUFDQSxrQkFBQTtFQ2pISjtFRG1ISTtJQUNFLFdBQUE7SUFDQSxhQUFBO0VDakhOO0VEb0hJO0lBQ0UsZ0JBQUE7SUFDQSwwQkFBQTtFQ2xITjtFRHFISTtJQUVFLDBCQUFBO0VDcEhOO0VEeUhFO0lBQ0Usb0JBQUE7SUFDQSxXQUFBO0VDdkhKO0VEMEhFO0lBQ0UseUJBQUE7RUN4SEo7RUQySEU7SUFDRSxrQkFBQTtFQ3pISjtFRDRIRTtJQUNFLGVBQUE7RUMxSEo7RUQ2SEU7SUFDRSwwQkFBQTtJQUNBLFlBQUE7SUFDQSxtQkFBQTtJQUNBLGdCQUFBO0lBQ0Esa0JBQUE7RUMzSEo7RUQ4SEU7SUFDRSxvQkFBQTtJQUNBLGtCQUFBO0VDNUhKO0VEK0hFO0lBQ0UsOEJBQUE7RUM3SEo7RURnSUU7SUFDRSxrQkFBQTtJQUVBLHdCQUFBO0lBQ0EsYUFBQTtJQUNBLGdCQUFBO0VDL0hKO0VEaUlJO0lBQ0UsZ0JBQUE7RUMvSE47RURxSUE7SUFDRSxhQUFBO0lBQ0E7O0tBQUE7SUFHQSxTQUFBO0lBV0E7Ozs7S0FBQTtFQ3pJRjtFRGdJRTtJSDlxQkksZUFBQTtJQUVJLGlCQUFBO0lBOENSLGNNbEZJO0lObUZKLGdCQUFBO0lHZ29CRSxjQUFBO0lBQ0EscUJBQUE7SUFDQSxnQkFBQTtJQUNBLGdCQUFBO0VDNUhKO0FBQ0Y7QUMxa0JJO0VGK3JCQTtJSDlxQkksZUFBQTtJQUVJLGlCQUFBO0VJNGpCVjtBQUNGO0FDaGxCSTtFRjhzQkE7SUFDRSxtQkFBQTtJQUNBLGFBQUE7SUFDQSxxQkFBQTtFQzNISjtFRDZISTtJQUNFLFNBQUE7SUFDQSw4QkFBQTtJQUNBLGNBQUE7SUFDQSxZQUFBO0lBQ0EsaUJBQUE7SUFDQSxVQUFBO0lBQ0EsV0FBQTtFQzNITjtFRCtIRTtJQUNFLG9CQUFBO0VDN0hKO0VEbUlFO0lBQ0UscUJBQUE7SUFDQSxxQkFBQTtFQ2pJSjtFRG1JRTtJQUNFLHlCQUFBO0VDaklKO0VEbUlFO0lBQ0UsNEJBQUE7SUFDQSxtQkFBQTtFQ2pJSjtBQUNGIiwiZmlsZSI6Il9wYXR0ZXJucy8wMy10ZW1wbGF0ZXMvbWFpbi1uYXZpZ2F0aW9uL21haW4tbmF2aWdhdGlvbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUeXBvZ3JhcGh5XG4vLyBGb250cyAvLy8vLy8vLy8vLy8vLy9cblxuLyogJGJhc2UtZm9udDogJ09wZW4gU2FucycsIEFyaWFsLCBzYW5zLXNlcmlmOyAqL1xuXG4kYmFzZS1mb250OiAnTm90byBTYW5zJyxcbkFyaWFsLFxuc2Fucy1zZXJpZjtcbiRib2R5LWZvbnQ6ICRiYXNlLWZvbnQ7XG4vLyBGb250IFNpemVzIC8vLy8vLy8vLy8vLy8vL1xuJGJhc2UtZm9udC1zaXplOiAxNnB4O1xuXG4vKiAkYmFzZS1saW5lLWhlaWdodDogMS42OyAqL1xuXG4kYmFzZS1saW5lLWhlaWdodDogMS43O1xuLy8gRm9udC1zaXplIG1hcHMgdG8gYmUgdXNlZCB3aXRoIGZvbnQtc2l6ZSBtaXgtaW4uXG4vLyBJbmNsdWRlcyB0ZXh0IHNpemUgYW5kIGxpbmUtaGVpZ2h0LlxuJGZvbnQtc2l6ZS1zbWFsbDogKG51bGw6ICgxNHB4LCAxLjY1KSwgKTtcblxuLyogZGVmYXVsdCAqL1xuXG4kZm9udC1zaXplLW1lZGl1bTogKG51bGw6ICgkYmFzZS1mb250LXNpemUsICRiYXNlLWxpbmUtaGVpZ2h0KSwgKTtcblxuLyogYmFzZSBmb250IHNpemUgd2l0aCBzaG9ydGVyIGxpbmUtaGVpZ2h0ICovXG5cbiRmb250LXNpemUtbWVkaXVtLWFsdDogKG51bGw6ICgxNnB4LCAxLjYpLCApO1xuXG4vKiBoNSAqL1xuXG4kZm9udC1zaXplLWxhcmdlOiAobnVsbDogKDE2cHgsIDEuNTYpLCBsZzogKDE4cHgsIDEuNTUpLCApO1xuXG4vKiBoNCAqL1xuXG4kZm9udC1zaXplLXgtbGFyZ2U6IChudWxsOiAoMThweCwgMS41NSksIGxnOiAoMjBweCwgMS42NSksICk7XG5cbi8qIGgzICovXG5cbiRmb250LXNpemUteHgtbGFyZ2U6IChudWxsOiAoMjBweCwgMS42KSwgbGc6ICgyNHB4LCAxLjUpLCApO1xuXG4vKiBoMiAqL1xuXG4kZm9udC1zaXplLXh4eC1sYXJnZTogKG51bGw6ICgyNHB4LCAxLjUpLCBsZzogKDI4cHgsIDEuNSksIHh4bDogKDMwcHgsIDEuNSksICk7XG5cbi8qIGgxICovXG5cbiRmb250LXNpemUteHh4eC1sYXJnZTogKG51bGw6ICgyOHB4LCAxLjQzKSwgbGc6ICgzNHB4LCAxLjQzKSwgeHhsOiAoMzhweCwgMS40MyksICk7XG4kZm9udC1zaXplLXh4eHh4LWxhcmdlOiAobnVsbDogKDM0cHgsIDUwcHgpLCBsZzogKDQwcHgsIDYwcHgpLCB4eGw6ICg0NnB4LCA2NHB4KSwgKTtcblxuLypcblVzZSB0aGlzIG1peGluIHRvIGFkZCBmb250IHNpemVzIGZyb20gdGhlIG1hcHMgYWJvdmUgd2l0aCBsaW5lLWhlaWdodHMgYW5kIG1xJ3MgaW5jbHVkZWQuXG5lZzogQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUteHh4eC1sYXJnZSk7XG4qL1xuXG5AbWl4aW4gZm9udC1zaXplKCRmcy1tYXAsICRmcy1icmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICAgQGVhY2ggJGZzLWJyZWFrcG9pbnQsXG4gICAgJGZzLWZvbnQtc2l6ZSBpbiAkZnMtbWFwIHtcbiAgICAgICAgQGlmICRmcy1icmVha3BvaW50PT1udWxsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtZm9udC1zaXplKCRmcy1mb250LXNpemUpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIC8vIElmICRmcy1mb250LXNpemUgaXMgYSBrZXkgdGhhdCBleGlzdHMgaW5cbiAgICAgICAgICAgIC8vICRmcy1icmVha3BvaW50cywgdXNlIHRoZSB2YWx1ZVxuICAgICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRmcy1icmVha3BvaW50cywgJGZzLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAkZnMtYnJlYWtwb2ludDogbWFwLWdldCgkZnMtYnJlYWtwb2ludHMsICRmcy1icmVha3BvaW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGZzLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWZvbnQtc2l6ZSgkZnMtZm9udC1zaXplKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKlxuVXRpbGl0eSBmdW5jdGlvbiBmb3IgbWl4aW4gZm9udC1zaXplLlxuKi9cblxuQG1peGluIG1ha2UtZm9udC1zaXplKCRmcy1mb250LXNpemUpIHtcbiAgICAvLyBJZiAkZnMtZm9udC1zaXplIGlzIGEgbGlzdCwgaW5jbHVkZVxuICAgIC8vIGJvdGggZm9udC1zaXplIGFuZCBsaW5lLWhlaWdodFxuICAgIEBpZiB0eXBlLW9mKCRmcy1mb250LXNpemUpPT1cImxpc3RcIiB7XG4gICAgICAgIGZvbnQtc2l6ZTogbnRoKCRmcy1mb250LXNpemUsIDEpO1xuICAgICAgICBAaWYgKGxlbmd0aCgkZnMtZm9udC1zaXplKSA+IDEpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBudGgoJGZzLWZvbnQtc2l6ZSwgMik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRmcy1mb250LXNpemU7XG4gICAgfVxufVxuXG4vLyBGb250IFdlaWdodHMgLy8vLy8vLy8vLy8vLy8vXG4kZm9udC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG4vLy8vLy8vIEVETCBBRERFRFxuXG4vKiBoNCAqL1xuXG4kZm9udC1zaXplLXN0eWxlLWgyOiAobnVsbDogKDI0cHgsIDM2cHgpLCB0YWJsZXQ6ICgyOHB4LCA0MnB4KSwgZGVza3RvcDogKDMwcHgsIDQ1cHgpKTtcblxuLyogaDMgKi9cblxuJGZvbnQtc2l6ZS1zdHlsZS1oMzogKG51bGw6ICgyMHB4LCAxLjYpLCB0YWJsZXQ6ICgyNHB4LCAxLjQpKTtcblxuLyogaDQgKi9cblxuJGZvbnQtc2l6ZS1zdHlsZS1oNDogKG51bGw6ICgxOHB4LCAxLjU1KSwgdGFibGV0OiAoMjBweCwgMS42NSksICk7XG5AbWl4aW4gc3R5bGUtYm9keSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1tZWRpdW0pO1xufVxuXG5AbWl4aW4gc3R5bGUtaDIge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXN0eWxlLWgyKTtcbiAgICBjb2xvcjogJGdyYXk0O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtaXhpbiBzdHlsZS1oMyB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc3R5bGUtaDMpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbkBtaXhpbiBzdHlsZS1oNCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc3R5bGUtaDQpO1xuICAgIGNvbG9yOiAkZ3JheTQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQG1peGluIHN0eWxlLWJpZ3RleHQge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXh4eHh4LWxhcmdlKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AbWl4aW4gZm9udGF3ZXNvbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XG59IiwiLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGdW5jdGlvbnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBGdW5jdGlvbiB0byByZXR1cm4gYSB2YWx1ZSBmcm9tIGEgbWFwIGJhc2VkIG9uIGEga2V5LlxuQGZ1bmN0aW9uIGdldC12YXIoJGtleSwgJG1hcCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAka2V5KTtcbiAgfVxuXG4gIEB3YXJuICdVbmtub3duIGAjeyRrZXl9YCBpbiBtYXAuIFRyeSBcIkBpbmNsdWRlIHByaW50KCRtYXApO1wiIHRvIHNlZSB3aGF0XFwncyBhdmFpbGFibGUuJztcbiAgQHJldHVybiBudWxsO1xufVxuXG4vKlxuRnVuY3Rpb24gc28gd2UgZG9uJ3QgaGF2ZSB0byB1c2UgbWFwLWdldCB3aXRoICRicmVha3BvaW50cy5cbmVnOiBicCh4eGwpIG9yIEBpbmNsdWRlIGJyZWFrcG9pbnQoYnAoeHhsKSlcbiovXG5AZnVuY3Rpb24gYnAoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGtleSk7XG4gIH1cblxuICBAd2FybiBcIlVua25vd24gYCN7JGtleX1gIGluICRicmVha3BvaW50cy5cIjtcblxuICBAcmV0dXJuIG51bGw7XG59XG4iLCIvLz09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQnJlYWtwb2ludHNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRicC14c206IDM3NXB4O1xuJGJwLXNtOiA3NjhweDtcbiRicC1tZDogMTAyNXB4O1xuJGJwLWxnOiAxMjAwcHg7XG4kYnAteGxnOiAxNDgwcHg7XG5cbi8qIFN0YW5kYXJkIHJhbmdlcyBmcm9tIGRlc2lnblxuICogICBcImRlc2t0b3BcIiA6IDk2MSBhbmQgdXBcbiAqICAgXCJ0YWJsZXRcIiAgOiA1MTAgdGhydSA5NjBcbiAqICAgXCJtb2JpbGVcIiAgOiAzMjAgdGhydSA1MDlcbiAqL1xuJGJyZWFrcG9pbnRzOiAoeHh4bCA6IChzY3JlZW4gMTI4MXB4KSxcbiAgc3VibmF2LWRlc2sgOiAoc2NyZWVuIDEyMjBweCksXG4gIHN1Ym5hdi1keW5hbWVkLWRlc2sgOiAoc2NyZWVuIDEwMDBweCksXG4gIHh4bCA6IChzY3JlZW4gMTEyMXB4KSxcbiAgeGwgOiAoc2NyZWVuIDk2MXB4KSxcbiAgZGVza3RvcCA6IChzY3JlZW4gOTYxcHgpLFxuICBsZyA6IChzY3JlZW4gODAxcHgpLFxuICBtZCA6IChzY3JlZW4gNzIxcHgpLFxuICBtaWQgOiAoc2NyZWVuIDY4MHB4KSxcbiAgdGFibGV0IDogKHNjcmVlbiA1MTBweCksXG4gIHNtIDogKHNjcmVlbiA1MTBweCksXG4gIHhzIDogKHNjcmVlbiA0ODFweCksXG4gIHh4cyA6IChzY3JlZW4gMzIxcHgpLFxuICB4eGwtbWF4OiAoc2NyZWVuIChtYXgtd2lkdGggMTI2MHB4KSksXG4gIHhsLW1heCA6IChzY3JlZW4gKG1heC13aWR0aCAxMTIwcHgpKSxcbiAgdGFibGV0LW1heCA6IChzY3JlZW4gKG1heC13aWR0aCA5NjBweCkpLFxuICBsZy1tYXggOiAoc2NyZWVuIChtYXgtd2lkdGggOTYwcHgpKSxcbiAgbWQtbWF4IDogKHNjcmVlbiAobWF4LXdpZHRoIDgwMHB4KSksXG4gIHNtLW1heCA6IChzY3JlZW4gKG1heC13aWR0aCA3MjBweCkpLFxuICBtb2JpbGUtbWF4IDogKHNjcmVlbiAobWF4LXdpZHRoIDUwOXB4KSksXG4gIHhzLW1heCA6IChzY3JlZW4gKG1heC13aWR0aCA1MDlweCkpLFxuICB4eHMtbWF4OiAoc2NyZWVuIChtYXgtd2lkdGggNDgwcHgpKSxcbiAgYnAtbmF2IDogKHNjcmVlbiA4MjBweCksXG4pO1xuIiwiLy8gSW1wb3J0IHNpdGUgdXRpbGl0aWVzXG5AaW1wb3J0ICcuLi8uLi8wMC1nbG9iYWwvdXRpbHMvaW5pdCc7XG5cbi8vIE1JWElOUyAvLyBTRVRUSU5HUy8vXG5cbjpyb290IHtcbiAgLyogU3RhbmRhcmQgUmVxdWlyZW1lbnRzOlxuICAgKiBAIG1vYmlsZVxuICAgKiAgICAgTC1SIHBhZGRpbmcgaXMgMjBweFxuICAgKiAgICAgZGVmYXVsdCBmb250LXNpemUgaXMgMTZweFxuICAgKiBAIHRhYmxldFxuICAgKiAgICAgTC1SIHBhZGRpbmcgaXMgMzBweFxuICAgKiAgICAgZGVmYXVsdCBmb250LXNpemUgaXMgMThweFxuICAgKiBAIGRlc2t0b3BcbiAgICogICAgIEwtUiBwYWRkaW5nIGlzIDEwcHggKHN0YW5kYXJkKVxuICAgKiAgICAgZGVmYXVsdCBmb250LXNpemUgaXMgMThweFxuICAgKi9cbiAgLS1uYXYtcGFkOiAyMHB4O1xuICAtLW5hdi1mb250LXNpemU6IDE2cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChicCh0YWJsZXQpKSB7XG4gICAgLS1uYXYtcGFkOiAzMHB4O1xuICAgIC0tbmF2LWZvbnQtc2l6ZTogMThweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoYnAoZGVza3RvcCkpIHtcbiAgICAtLW5hdi1wYWQ6IDEwcHg7XG4gIH1cbn1cblxuQG1peGluIG5hdi1saW5rIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJG1hcmtldC1ibHVlNjtcbiAgZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG5cbkBtaXhpbiBuYXYtZm9udC1kZWZhdWx0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG5cbkBtaXhpbiBibG9jay1zaGFkb3cge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAwICRncmF5NC0tdHJhbnMzMDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXkxO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbkBtaXhpbiB0b2dnbGUtYXJyb3cge1xuICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L21lbnUtZHJvcGRvd24taW5kaWNhdG9yLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xuICBib3R0b206IC00NHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMjBweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtaXhpbiBzbGlkZWluIHtcbiAgLypcbiAgbGVmdDogLTEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IDFzO1xuICBkaXNwbGF5OiBncmlkO1xuICAqL1xufVxuXG5AbWl4aW4gc2xpZGVpbi0tYWN0aXZlIHtcbiAgLypcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogMXM7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gICovXG59XG5cbi8vIE5hdmlnYXRpb24gbGF5b3V0OiBjb250YWluZXIgYW5kIHJvd1xuLmVkbC1uYXYtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgbmF2LWZvbnQtZGVmYXVsdDtcblxuICBiYWNrZ3JvdW5kOiAkZWJzY28tbmF2eTA1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMjAxO1xufVxuXG4uZWRsLW5hdi1jb250YWluZXI6bnRoLW9mLXR5cGUoMikge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uZWRsLW5hdi1jb250YWluZXIuaXMtYWN0aXZlIHtcbiAgLy8gSW5jcmVhc2UgeiBmb3IgaWNvbiBtZW51c1xuICB6LWluZGV4OiAyMDI7XG59XG5cbi5lZGwtbmF2LXJvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogYXV0bztcbiAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiAgLy8gRURMIE5BVkJBUlxuLmVkbC1uYXZiYXIge1xuICBhbGlnbi1pdGVtczogZW5kO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxMjBweCAxZnI7XG4gIGhlaWdodDogNjBweDtcbiAgbWFyZ2luOiAwIHZhcigtLW5hdi1wYWQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cblxuICAvLyBBY3Rpb24gTWVudSAmIEZyaWVuZHNcbiAgJiAuZWRsLW5hdmJhcl9zdWItbWVudSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvLyBGQSBpY29ucyBhcmUgMjBweFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgJiAuZWRsLW5hdmJhcl9zdWItbWVudS1pdGVtIHtcbiAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICAmIC5lZGwtbmF2YmFyX3N1Yi1tZW51LWl0ZW06bm90KC5lZGwtbmF2YmFyX2N0YSkge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAyMHB4O1xuICB9XG5cbiAgLy8gTmF2YmFyIEljb24gLSBAbW9iaWxlIChkZWZhdWx0KVxuICAmIC5lZGwtbmF2YmFyX2xvZ2luIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiAuZWRsLW5hdmJhcl9zaXRlLXNlbGVjdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgLmVkbC1uYXZiYXJfY3RhIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuICB9XG5cbiAgJiAuZWRsLW5hdmJhcl9tb2JpbGVbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICAmIDpudGgtY2hpbGQoMSkge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgICAmIDpudGgtY2hpbGQoMikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmIC5lZGwtbmF2YmFyX21vYmlsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgJiA6bnRoLWNoaWxkKDEpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYgOm50aC1jaGlsZCgyKSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgfVxuXG4gICYgI2FjdGlvbnNfX3BhbmVscyB7XG4gICAgbWFyZ2luOiAwIC0yMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDYwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICB9XG4gIC8vIHNpdGUgc2VhcmNoXG4gICAgJiAuZWRsLW5hdmJhcl9zZWFyY2hbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgJiAjbmF2YmFyX3NlYXJjaF9fc2VjdDAge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTBweCAwICRncmF5NC0tdHJhbnMzMDtcbiAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMztcbiAgICBsZWZ0OiBjYWxjKCgxMDAlIC0gMTAwdncpLzIpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMjVweCAwIDMwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwdnc7XG4gIH1cblxuICAmICNhY3Rpb25OYXZfX3BhbmVscyAjYWN0aW9uTmF2X19zZWN0MSB7XG4gICAgbWFyZ2luOiAyMHB4IC0yMHB4O1xuICB9XG59XG5cbi8vIEVETCBOQVZNRU5VXG4uZWRsLW5hdm1lbnUge1xuICAgIEBpbmNsdWRlIHNsaWRlaW4tLWFjdGl2ZTtcblxuICBiYWNrZ3JvdW5kOiAkZWJzY28tbmF2eTA1O1xuICBib3JkZXItcmFkaXVzOiAwIDAgNXB4IDVweDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgICAmLmVkbC1zaG93aGlkZS0tdGFyZ2V0IHtcbiAgICAgIEBpbmNsdWRlIHNsaWRlaW4tLWFjdGl2ZTtcblxuICAgICAgJltoaWRkZW5dIHtcbiAgICAgICAgQGluY2x1ZGUgc2xpZGVpbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgJiAuZWRsLWxpbmstZ3JvdXAge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tbmF2LXBhZCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5lZGwtbmF2bWVudV9fbW9iaWxlLWJhY2sge1xuICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAxMHB4IDAgMTVweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTA0XCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIH1cbiAgfVxuXG4gICYgLmVkbC1uYXZtZW51X19tb2JpbGUtYmFja1thcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmIC5lZGwtbmF2bWVudV9fbW9iaWxlLWJhY2tbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gKyBbYXJpYS1vd25zPVwibWFpbk5hdl9fcGFuZWxzXCJdIFthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0sXG4gICYgLmVkbC1uYXZtZW51X19tb2JpbGUtYmFja1thcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSArIFthcmlhLW93bnM9XCJhY3Rpb25OYXZfX3BhbmVsc1wiXSBbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiAuZWRsLXNob3doaWRlLS1jb250YWluZXIsXG4gICYgLmVkbC1zaG93aGlkZS0tdGFyZ2V0IHtcbiAgICBAaW5jbHVkZSByZXNldC1saXN0O1xuICB9XG5cbiAgJiAucGFuZWwtY29udGVudCxcbiAgJiAucGFuZWwtY29udGVudCB1bCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJiAucGFuZWwtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG5cbiAgJiAucGFuZWwtY29udGVudC0tc2ltcGxlIHtcbiAgICBjb2x1bW4tY291bnQ6IDE7XG4gIH1cblxuICAmIC5wYW5lbC1jb250ZW50LS1ncm91cGVkIHtcbiAgICBjb2x1bW4tZ2FwOiAxNnB4O1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAmPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBUcmlnZ2VyIHBhbmVsXG4gICYgW2FyaWEtb3ducz1cIm1haW5OYXZfX3BhbmVsc1wiXSxcbiAgJiBbYXJpYS1vd25zPVwiYWN0aW9uTmF2X19wYW5lbHNcIl0ge1xuICAgICYgPiAqIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgcGFkZGluZzogMCA1cHggMjBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjpub3QoW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdKTo6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCguZWRsLXNob3doaWRlLS10cmlnZ2VyKTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYgPiAqIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgaSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgJiAuZWRsLW5hdmJhcl9jdGEgLmVkbC1idG4ge1xuICAgICAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJiAjbWFpbk5hdl9fcGFuZWxzLFxuICAmICNhY3Rpb25OYXZfX3BhbmVscyB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuXG4gICAgJiBhIHtcbiAgICAgIEBpbmNsdWRlIG5hdi1saW5rO1xuXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJiBhOmhvdmVyLFxuICAgICYgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICRncmF5NDtcbiAgICB9XG4gIH1cblxuICAmICNhY3Rpb25OYXZfX3BhbmVscyAuc2l0ZS1zZWxlY3QgbGkgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDIuNTtcbiAgfVxuXG4gICYgLmVkbC1saW5rLWdyb3VwIHtcbiAgICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICB9XG5cbiAgJiAuZWRsLW5hdm1lbnUtLXRhcmdldFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiAubmF2LWljb24ge1xuICAgIEBpbmNsdWRlIG5hdi1mb250LWRlZmF1bHQ7XG5cbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUljb24tQWNhZGVtaWNMaWJyYXJpZXMtNDUucG5nJykgNXB4IDUwJSAvIDIwcHggMjBweCBuby1yZXBlYXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5MjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBtaW4taGVpZ2h0OiA2MHB4O1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEluc3RpdHV0aW9uIGljb25zXG4gICYgLm5hdi1pY29uLS1hY2FkZW1pYyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtSWNvbi1BY2FkZW1pY0xpYnJhcmllcy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tcHVibGljIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L0VCU0NPLU5hdmlnYXRpb24tTWVudS1CeUluc3RpdHV0aW9uLUljb24tUHVibGljTGlicmFyaWVzLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG4gICYgLm5hdi1pY29uLS1oZWFsdGgge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUljb24tSGVhbHRoY2FyZS00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tZ292dCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtQnlJbnN0aXR1dGlvbi1JY29uLUdvdmVybm1lbnQtNDUucG5nJykgNXB4IDUwJSAvIDIwcHggMjBweCBuby1yZXBlYXQ7XG4gIH1cbiAgJiAubmF2LWljb24tLWNvcnAge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUljb24tQ29ycG9yYXRpb25zLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG4gICYgLm5hdi1pY29uLS1zY2hvb2xzIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L0VCU0NPLU5hdmlnYXRpb24tTWVudS1CeUluc3RpdHV0aW9uLUljb24tU2Nob29scy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tcHVibGlzaGVycyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtSWNvbi1QdWJsaXNoZXJzLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG4gICYgLm5hdi1pY29uLS13YWl0aW5nIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L0VCU0NPLU5hdmlnYXRpb24tTWVudS1JY29uLVdhaXRpbmdSb29tcy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuXG4gIC8vIEN1c3RvbWVyIFN1cHBvcnQgSWNvbnNcbiAgJiAubmF2LWljb24tLXN1cHBvcnQge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUZvckN1c3RvbWVycy1JY29uLVN1cHBvcnQtNDUucG5nJykgNXB4IDUwJSAvIDIwcHggMjBweCBuby1yZXBlYXQ7XG4gIH1cbiAgJiAubmF2LWljb24tLXJlc291cmNlcyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtRm9yQ3VzdG9tZXJzLUljb24tUHJvbW90ZVlvdXJSZXNvdXJjZXMtNDUucG5nJykgNXB4IDUwJSAvIDIwcHggMjBweCBuby1yZXBlYXQ7XG4gIH1cbiAgJiAubmF2LWljb24tLXRyYWluaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L0VCU0NPLU5hdmlnYXRpb24tTWVudS1Gb3JDdXN0b21lcnMtSWNvbi1UcmFpbmluZy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tbG9naW4ge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUZvckN1c3RvbWVycy1JY29uLUN1c3RvbWVyTG9nSW4tNDUucG5nJykgNXB4IDUwJSAvIDIwcHggMjBweCBuby1yZXBlYXQ7XG4gIH1cblxuICAvLyBCbG9nIGljb25zXG4gICYgLm5hdi1pY29uLS1lYnNjb3Bvc3QtYmxvZyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtQmxvZy1JY29uLUVCU0NPcG9zdC00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0taGVhbHRoLWJsb2cge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUJsb2ctSWNvbi1FQlNDT0hlYWx0aE5vdGVzLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG4gICYgLm5hdi1pY29uLS1jb3JwLWJsb2cge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LUJsb2ctSWNvbi1FQlNDT0ZvckNvcnBvcmF0ZS00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tbm92ZWxpc3QtYmxvZyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtQmxvZy1JY29uLU5vdmVMaXN0QmxvZy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuXG4gIC8vIFJlc291cmNlcyBpY29uc1xuICAmIC5uYXYtaWNvbi0tdmlkZW9zIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L0VCU0NPLU5hdmlnYXRpb24tTWVudS1SZXNvdXJjZUNlbnRlci1JY29uLVZpZGVvcy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tZWJyb2NodXJlcyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtUmVzb3VyY2VDZW50ZXItSWNvbi1lQnJvY2h1cmVzLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG4gICYgLm5hdi1pY29uLS1pbmZvZ3JhcGhpY3Mge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LVJlc291cmNlQ2VudGVyLUljb24tSW5mb2dyYXBoaWNzLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG4gICYgLm5hdi1pY29uLS13ZWJpbmFycyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtUmVzb3VyY2VDZW50ZXItSWNvbi1XZWJpbmFycy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0tc3RvcmllcyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRpbWctZGlyfS9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtUmVzb3VyY2VDZW50ZXItSWNvbi1TdWNjZXNzU3Rvcmllcy00NS5wbmcnKSA1cHggNTAlIC8gMjBweCAyMHB4IG5vLXJlcGVhdDtcbiAgfVxuICAmIC5uYXYtaWNvbi0td2hpdGVwYXBlcnMge1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skaW1nLWRpcn0vRUJTQ08tTmF2aWdhdGlvbi1NZW51LVJlc291cmNlQ2VudGVyLUljb24tV2hpdGVQYXBlcnMtNDUucG5nJykgNXB4IDUwJSAvIDIwcHggMjBweCBuby1yZXBlYXQ7XG4gIH1cbiAgJiAubmF2LWljb24tLWFydGljbGVzIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L0VCU0NPLU5hdmlnYXRpb24tTWVudS1SZXNvdXJjZUNlbnRlci1JY29uLUFydGljbGVzLTQ1LnBuZycpIDVweCA1MCUgLyAyMHB4IDIwcHggbm8tcmVwZWF0O1xuICB9XG5cblxuICAmIC5wYW5lbC1jb250ZW50Om5vdCgucGFuZWwtY29udGVudC0tZ3JvdXBlZCkgLm5hdi1pY29uOmxhc3Qtb2YtdHlwZSxcbiAgJiAubmF2LWljb24tLXdpdGgtY2hpbGRyZW4ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gICYgLm5hdi1pY29uLS13aXRoLWNoaWxkcmVuIHtcbiAgICBhbGlnbi1pdGVtczogdW5zZXQ7XG4gICAgLy8gVG9wLWFsaWduIGljb24gKGluc3RlYWQgb2YgbWlkZGxlKVxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDVweCA1cHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICYgdWwge1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICB9XG5cbiAgICAmIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi50YXJnZXQtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDIwcHggMCAzMHB4O1xuXG4gICYgaDMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmIC5jb2x1bW4tc2VwYXJhdG9yIHtcblxuICAgICYgaHIge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5MTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IDIwcHggYXV0bzs7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJiAuY29sdW1uLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIC8qIFJFTU9WRSBGTU9cbiAgICBtYXgtd2lkdGg6IDMxMHB4O1xuICAgICovXG5cbiAgICAmIC5lZGwtbGluay1ncm91cCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJiBoNCB7XG4gICAgICBAaW5jbHVkZSBzdHlsZS1ib2R5O1xuXG4gICAgICBmb250LXNpemU6IHZhcigtLW5hdi1mb250LXNpemUpO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICB9XG5cbiAgICAmIHVsIHtcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cbiAgICAgICYgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbmF2LWZvbnQtc2l6ZSk7XG5cbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogJG1hcmtldC1ibHVlNjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRncmF5NDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cblxuICAmIC5jb2x1bW4tZ3JvdXAtd3JhcHBlciAuY29sdW1uLWdyb3VwOm50aC1jaGlsZCgxKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOWRhZGI7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG5cbi8vICMjIyMjIyMjIyMgVEFCTEVUICMjIyMjIyMjIyMgLy9cbkBpbmNsdWRlIGJyZWFrcG9pbnQoYnAodGFibGV0KSkge1xuICAuZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1cImFjdGlvbk5hdl9fcGFuZWxzXCJdIC5lZGwtbmF2YmFyX2N0YSAuZWRsLWJ0biB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAuZWRsLW5hdmJhciAjYWN0aW9uc19fcGFuZWxzIHtcbiAgICBtYXJnaW46IDAgLTMwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogODBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwOyAvLyB0byBmaXggdGhlIHNlbGVjdG9yIGxvY2F0aW9uXG4gIH1cbn1cblxuLy8gIyMjIyMjIyMjIyBERVNLVE9QICMjIyMjIyMjIyMgLy9cbkBpbmNsdWRlIGJyZWFrcG9pbnQoYnAoZGVza3RvcCkpIHtcblxuICAuZWRsLW5hdi1jb250YWluZXIuaXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkZWJzY28tbmF2eTA1O1xuXG4gICAgJiAuZWRsLXNpdGUtbG9nbyB7XG4gICAgICBmaWxsOiAkd2hpdGU7XG4gICAgfVxuICAgICYgLmVkbC1uYXZiYXIge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICYgLmVkbC1uYXZiYXJfc3ViLW1lbnUtaXRlbSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmVkbC1uYXYtY29udGFpbmVyOm50aC1vZi10eXBlKDIpIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAmIC5lZGwtbmF2LXJvdyB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG5cbiAgLmVkbC1uYXZiYXIge1xuICAgIGhlaWdodDogODBweDtcblxuICAgIC8vIE5hdmJhciBJY29uIC0gQGRlc2t0b3BcbiAgICAmIC5lZGwtbmF2YmFyX3NlYXJjaCB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICAmIC5lZGwtbmF2YmFyX2xvZ2luIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgICYgLmVkbC1uYXZiYXJfc2l0ZS1zZWxlY3Qge1xuICAgICAgb3JkZXI6IDM7XG4gICAgfVxuXG4gICAgJiAuZWRsLW5hdmJhcl9sb2dpbixcbiAgICAmIC5lZGwtbmF2YmFyX3NpdGUtc2VsZWN0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZWRsLW5hdmJhcl9jdGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDAgMCAxNXB4O1xuICAgICAgb3JkZXI6IDQ7XG4gICAgfVxuXG4gICAgJiAuZWRsLW5hdmJhcl9tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmICNhY3Rpb25zX19wYW5lbHMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxcHggMWZyO1xuICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmICNuYXZiYXJfbG9naW5fX3NlY3QwIHtcbiAgICAgIEBpbmNsdWRlIGJsb2NrLXNoYWRvdztcblxuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgZ3JpZC1jb2x1bW46IG5vbmU7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuXG4gICAgJiAjbmF2YmFyX3NpdGVfX3NlY3QwIHtcblxuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgZ3JpZC1jb2x1bW46IG5vbmU7XG4gICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAjYWN0aW9uTWVudV9fc2VjdDAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBFREwgTkFWTUVOVSBAIGRlc2t0b3BcbiAgLmVkbC1uYXZtZW51IHtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI1MHB4IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IC01MDAwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1MDAwcHg7XG5cbiAgICAmIC5lZGwtc2hvd2hpZGUtLWNvbnRhaW5lclthcmlhLW93bnM9XCJtYWluTmF2X19wYW5lbHNcIl0gPiAqIHtcblxuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBwYWRkaW5nOiAwIDVweCA1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgICYgLmVkbC1saW5rLWdyb3VwIHtcbiAgICAgIHBhZGRpbmc6IDQ1cHggMTBweCAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJiAuZWRsLWxpbmstZ3JvdXA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMjVweCAwO1xuICAgIH1cblxuICAgICYgI21haW5OYXZfX3BhbmVscyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDk1cHg7XG4gICAgfVxuXG4gICAgJiAucGFuZWwtY29udGVudC0tc2ltcGxlIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG5cbiAgICAmIC5uYXYtaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA2NXB4O1xuICAgIH1cblxuICAgICYgI21haW5OYXZfX3BhbmVscyB7XG4gICAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICB9XG5cbiAgICAmIC5wYW5lbC1jb250ZW50LS1ncm91cGVkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICB9XG5cbiAgICAmIC5uYXYtaWNvbi0td2l0aC1jaGlsZHJlbiB7XG4gICAgICBhbGlnbi1pdGVtczogdW5zZXQ7XG4gICAgICAvLyBUb3AtYWxpZ24gaWNvbiAoaW5zdGVhZCBvZiBtaWRkbGUpXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDZweDtcblxuICAgICAgJiB1bCB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVGFyZ2V0IGNvbnRlbnQgQCBkZXNrdG9wXG4gIC50YXJnZXQtY29udGVudCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICAvKiBSRU1PVkUgRk1PXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNjBweCAxZnI7XG4gICAgKi9cbiAgICBtYXJnaW46IDA7XG5cbiAgICAmIGgzIHtcbiAgICAgIEBpbmNsdWRlIHN0eWxlLWg0O1xuXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAzO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgIG1heC13aWR0aDogMTc1cHg7XG4gICAgfVxuXG4gICAgLyogUkVNT1ZFIEZNT1xuICAgICYgLmNvbHVtbi1ncm91cCB7XG4gICAgICBtYXgtd2lkdGg6IDE3NXB4O1xuICAgIH1cbiAgICAqL1xuXG4gICAgJiAuY29sdW1uLXNlcGFyYXRvciB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcblxuICAgICAgJiBociB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JheTE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogYXV0byAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5jb2x1bW4tZ3JvdXAtd3JhcHBlciAuY29sdW1uLWdyb3VwOm50aC1jaGlsZCgxKSB7XG4gICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICB9XG4gIH1cblxuICAvLyBSVEwgQCBkZXNrdG9wXG4gIFtkaXI9XCJydGxcIl0ge1xuICAgICYgLmVkbC1uYXZtZW51IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTUwMDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwMDBweDtcbiAgICB9XG4gICAgJiAuZWRsLWxpbmstZ3JvdXA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMjVweCAzMHB4O1xuICAgIH1cbiAgICAmIC5uYXYtaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwO1xuICAgICAgcGFkZGluZy1yaWdodDogNjVweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qICRiYXNlLWZvbnQ6ICdPcGVuIFNhbnMnLCBBcmlhbCwgc2Fucy1zZXJpZjsgKi9cbi8qICRiYXNlLWxpbmUtaGVpZ2h0OiAxLjY7ICovXG4vKiBkZWZhdWx0ICovXG4vKiBiYXNlIGZvbnQgc2l6ZSB3aXRoIHNob3J0ZXIgbGluZS1oZWlnaHQgKi9cbi8qIGg1ICovXG4vKiBoNCAqL1xuLyogaDMgKi9cbi8qIGgyICovXG4vKiBoMSAqL1xuLypcblVzZSB0aGlzIG1peGluIHRvIGFkZCBmb250IHNpemVzIGZyb20gdGhlIG1hcHMgYWJvdmUgd2l0aCBsaW5lLWhlaWdodHMgYW5kIG1xJ3MgaW5jbHVkZWQuXG5lZzogQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUteHh4eC1sYXJnZSk7XG4qL1xuLypcblV0aWxpdHkgZnVuY3Rpb24gZm9yIG1peGluIGZvbnQtc2l6ZS5cbiovXG4vKiBoNCAqL1xuLyogaDMgKi9cbi8qIGg0ICovXG4vKlxuRnVuY3Rpb24gc28gd2UgZG9uJ3QgaGF2ZSB0byB1c2UgbWFwLWdldCB3aXRoICRicmVha3BvaW50cy5cbmVnOiBicCh4eGwpIG9yIEBpbmNsdWRlIGJyZWFrcG9pbnQoYnAoeHhsKSlcbiovXG4vKiBTdGFuZGFyZCByYW5nZXMgZnJvbSBkZXNpZ25cbiAqICAgXCJkZXNrdG9wXCIgOiA5NjEgYW5kIHVwXG4gKiAgIFwidGFibGV0XCIgIDogNTEwIHRocnUgOTYwXG4gKiAgIFwibW9iaWxlXCIgIDogMzIwIHRocnUgNTA5XG4gKi9cbjpyb290IHtcbiAgLyogU3RhbmRhcmQgUmVxdWlyZW1lbnRzOlxuICAgKiBAIG1vYmlsZVxuICAgKiAgICAgTC1SIHBhZGRpbmcgaXMgMjBweFxuICAgKiAgICAgZGVmYXVsdCBmb250LXNpemUgaXMgMTZweFxuICAgKiBAIHRhYmxldFxuICAgKiAgICAgTC1SIHBhZGRpbmcgaXMgMzBweFxuICAgKiAgICAgZGVmYXVsdCBmb250LXNpemUgaXMgMThweFxuICAgKiBAIGRlc2t0b3BcbiAgICogICAgIEwtUiBwYWRkaW5nIGlzIDEwcHggKHN0YW5kYXJkKVxuICAgKiAgICAgZGVmYXVsdCBmb250LXNpemUgaXMgMThweFxuICAgKi9cbiAgLS1uYXYtcGFkOiAyMHB4O1xuICAtLW5hdi1mb250LXNpemU6IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MTBweCkge1xuICA6cm9vdCB7XG4gICAgLS1uYXYtcGFkOiAzMHB4O1xuICAgIC0tbmF2LWZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYxcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tbmF2LXBhZDogMTBweDtcbiAgfVxufVxuXG4uZWRsLW5hdi1jb250YWluZXIge1xuICBmb250LXNpemU6IHZhcigtLW5hdi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgYmFja2dyb3VuZDogIzAwMkY1NjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDIwMTtcbn1cblxuLmVkbC1uYXYtY29udGFpbmVyOm50aC1vZi10eXBlKDIpIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmVkbC1uYXYtY29udGFpbmVyLmlzLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDIwMjtcbn1cblxuLmVkbC1uYXYtcm93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEyODBweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmVkbC1uYXZiYXIge1xuICBhbGlnbi1pdGVtczogZW5kO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxMjBweCAxZnI7XG4gIGhlaWdodDogNjBweDtcbiAgbWFyZ2luOiAwIHZhcigtLW5hdi1wYWQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9zdWItbWVudSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX3N1Yi1tZW51LWl0ZW0ge1xuICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX3N1Yi1tZW51LWl0ZW06aG92ZXIge1xuICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9zdWItbWVudS1pdGVtOm5vdCguZWRsLW5hdmJhcl9jdGEpIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG59XG4uZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9sb2dpbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9zaXRlLXNlbGVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9jdGEge1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDE2cHg7XG59XG4uZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9tb2JpbGVbYXJpYS1leHBhbmRlZD1mYWxzZV0gOm50aC1jaGlsZCgxKSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX21vYmlsZVthcmlhLWV4cGFuZGVkPWZhbHNlXSA6bnRoLWNoaWxkKDIpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX21vYmlsZVthcmlhLWV4cGFuZGVkPXRydWVdIDpudGgtY2hpbGQoMSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmVkbC1uYXZiYXIgLmVkbC1uYXZiYXJfbW9iaWxlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gOm50aC1jaGlsZCgyKSB7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4uZWRsLW5hdmJhciAjYWN0aW9uc19fcGFuZWxzIHtcbiAgbWFyZ2luOiAwIC0yMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xufVxuLmVkbC1uYXZiYXIgLmVkbC1uYXZiYXJfc2VhcmNoW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5lZGwtbmF2YmFyICNuYXZiYXJfc2VhcmNoX19zZWN0MCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCAwIHJnYmEoNjEsIDYzLCA2NiwgMC4zKTtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAzO1xuICBsZWZ0OiBjYWxjKCgxMDAlIC0gMTAwdncpIC8gMik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDI1cHggMCAzMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMHZ3O1xufVxuLmVkbC1uYXZiYXIgI2FjdGlvbk5hdl9fcGFuZWxzICNhY3Rpb25OYXZfX3NlY3QxIHtcbiAgbWFyZ2luOiAyMHB4IC0yMHB4O1xufVxuXG4uZWRsLW5hdm1lbnUge1xuICAvKlxuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiAxcztcbiAgZGlzcGxheTogZ3JpZDtcbiAgKi9cbiAgYmFja2dyb3VuZDogIzAwMkY1NjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmVkbC1uYXZtZW51LmVkbC1zaG93aGlkZS0tdGFyZ2V0IHtcbiAgLypcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogMXM7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gICovXG59XG4uZWRsLW5hdm1lbnUuZWRsLXNob3doaWRlLS10YXJnZXRbaGlkZGVuXSB7XG4gIC8qXG4gIGxlZnQ6IC0xMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiAxcztcbiAgZGlzcGxheTogZ3JpZDtcbiAgKi9cbn1cbi5lZGwtbmF2bWVudSAuZWRsLWxpbmstZ3JvdXAge1xuICBwYWRkaW5nOiAwIHZhcigtLW5hdi1wYWQpO1xuICB3aWR0aDogMTAwJTtcbn1cbi5lZGwtbmF2bWVudSAuZWRsLW5hdm1lbnVfX21vYmlsZS1iYWNrIHtcbiAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDEwcHggMCAxNXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZWRsLW5hdm1lbnUgLmVkbC1uYXZtZW51X19tb2JpbGUtYmFjazpob3ZlciB7XG4gIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5lZGwtbmF2bWVudSAuZWRsLW5hdm1lbnVfX21vYmlsZS1iYWNrOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNFwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuLmVkbC1uYXZtZW51IC5lZGwtbmF2bWVudV9fbW9iaWxlLWJhY2tbYXJpYS1leHBhbmRlZD1mYWxzZV0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmVkbC1uYXZtZW51IC5lZGwtbmF2bWVudV9fbW9iaWxlLWJhY2tbYXJpYS1leHBhbmRlZD10cnVlXSArIFthcmlhLW93bnM9bWFpbk5hdl9fcGFuZWxzXSBbYXJpYS1leHBhbmRlZD1mYWxzZV0sIC5lZGwtbmF2bWVudSAuZWRsLW5hdm1lbnVfX21vYmlsZS1iYWNrW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gKyBbYXJpYS1vd25zPWFjdGlvbk5hdl9fcGFuZWxzXSBbYXJpYS1leHBhbmRlZD1mYWxzZV0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmVkbC1uYXZtZW51IC5lZGwtc2hvd2hpZGUtLWNvbnRhaW5lciwgLmVkbC1uYXZtZW51IC5lZGwtc2hvd2hpZGUtLXRhcmdldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5lZGwtbmF2bWVudSAucGFuZWwtY29udGVudCwgLmVkbC1uYXZtZW51IC5wYW5lbC1jb250ZW50IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5lZGwtbmF2bWVudSAucGFuZWwtY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbi5lZGwtbmF2bWVudSAucGFuZWwtY29udGVudC0tc2ltcGxlIHtcbiAgY29sdW1uLWNvdW50OiAxO1xufVxuLmVkbC1uYXZtZW51IC5wYW5lbC1jb250ZW50LS1ncm91cGVkIHtcbiAgY29sdW1uLWdhcDogMTZweDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG59XG4uZWRsLW5hdm1lbnUgLnBhbmVsLWNvbnRlbnQtLWdyb3VwZWQgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmVkbC1uYXZtZW51IFthcmlhLW93bnM9bWFpbk5hdl9fcGFuZWxzXSA+ICosIC5lZGwtbmF2bWVudSBbYXJpYS1vd25zPWFjdGlvbk5hdl9fcGFuZWxzXSA+ICoge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0I4QkJCRjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nOiAwIDVweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1tYWluTmF2X19wYW5lbHNdID4gKjpub3QoW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0pOjphZnRlciwgLmVkbC1uYXZtZW51IFthcmlhLW93bnM9YWN0aW9uTmF2X19wYW5lbHNdID4gKjpub3QoW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0pOjphZnRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuLmVkbC1uYXZtZW51IFthcmlhLW93bnM9bWFpbk5hdl9fcGFuZWxzXSA+ICo6bm90KC5lZGwtc2hvd2hpZGUtLXRyaWdnZXIpOjphZnRlciwgLmVkbC1uYXZtZW51IFthcmlhLW93bnM9YWN0aW9uTmF2X19wYW5lbHNdID4gKjpub3QoLmVkbC1zaG93aGlkZS0tdHJpZ2dlcik6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lZGwtbmF2bWVudSBbYXJpYS1vd25zPW1haW5OYXZfX3BhbmVsc10gPiAqOmxhc3QtY2hpbGQsIC5lZGwtbmF2bWVudSBbYXJpYS1vd25zPWFjdGlvbk5hdl9fcGFuZWxzXSA+ICo6bGFzdC1jaGlsZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4uZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1tYWluTmF2X19wYW5lbHNdID4gKlthcmlhLWV4cGFuZGVkPXRydWVdLCAuZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1hY3Rpb25OYXZfX3BhbmVsc10gPiAqW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG4uZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1tYWluTmF2X19wYW5lbHNdID4gKiwgLmVkbC1uYXZtZW51IFthcmlhLW93bnM9YWN0aW9uTmF2X19wYW5lbHNdID4gKiB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1tYWluTmF2X19wYW5lbHNdID4gKjpob3ZlciwgLmVkbC1uYXZtZW51IFthcmlhLW93bnM9YWN0aW9uTmF2X19wYW5lbHNdID4gKjpob3ZlciB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5lZGwtbmF2bWVudSBbYXJpYS1vd25zPW1haW5OYXZfX3BhbmVsc10gaSwgLmVkbC1uYXZtZW51IFthcmlhLW93bnM9YWN0aW9uTmF2X19wYW5lbHNdIGkge1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbn1cbi5lZGwtbmF2bWVudSBbYXJpYS1vd25zPW1haW5OYXZfX3BhbmVsc10gLmVkbC1uYXZiYXJfY3RhIC5lZGwtYnRuLCAuZWRsLW5hdm1lbnUgW2FyaWEtb3ducz1hY3Rpb25OYXZfX3BhbmVsc10gLmVkbC1uYXZiYXJfY3RhIC5lZGwtYnRuIHtcbiAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5lZGwtbmF2bWVudSAjbWFpbk5hdl9fcGFuZWxzLCAuZWRsLW5hdm1lbnUgI2FjdGlvbk5hdl9fcGFuZWxzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG59XG4uZWRsLW5hdm1lbnUgI21haW5OYXZfX3BhbmVscyBhLCAuZWRsLW5hdm1lbnUgI2FjdGlvbk5hdl9fcGFuZWxzIGEge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjMkQ2MkI3O1xuICBmb250LXNpemU6IHZhcigtLW5hdi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmVkbC1uYXZtZW51ICNtYWluTmF2X19wYW5lbHMgYTpob3ZlciwgLmVkbC1uYXZtZW51ICNtYWluTmF2X19wYW5lbHMgYTphY3RpdmUsIC5lZGwtbmF2bWVudSAjYWN0aW9uTmF2X19wYW5lbHMgYTpob3ZlciwgLmVkbC1uYXZtZW51ICNhY3Rpb25OYXZfX3BhbmVscyBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjM0QzRjQyO1xufVxuLmVkbC1uYXZtZW51ICNhY3Rpb25OYXZfX3BhbmVscyAuc2l0ZS1zZWxlY3QgbGkgYSB7XG4gIGxpbmUtaGVpZ2h0OiAyLjU7XG59XG4uZWRsLW5hdm1lbnUgLmVkbC1saW5rLWdyb3VwIHtcbiAganVzdGlmeS1zZWxmOiBzdGFydDtcbn1cbi5lZGwtbmF2bWVudSAuZWRsLW5hdm1lbnUtLXRhcmdldFtoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24ge1xuICBmb250LXNpemU6IHZhcigtLW5hdi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1JY29uLUFjYWRlbWljTGlicmFyaWVzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQjhCQkJGO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogNjBweDtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLWFjYWRlbWljIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1JY29uLUFjYWRlbWljTGlicmFyaWVzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1wdWJsaWMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LUJ5SW5zdGl0dXRpb24tSWNvbi1QdWJsaWNMaWJyYXJpZXMtNDUucG5nXCIpIDVweCA1MCUvMjBweCAyMHB4IG5vLXJlcGVhdDtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLWhlYWx0aCB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtSWNvbi1IZWFsdGhjYXJlLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1nb3Z0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1CeUluc3RpdHV0aW9uLUljb24tR292ZXJubWVudC00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0tY29ycCB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtSWNvbi1Db3Jwb3JhdGlvbnMtNDUucG5nXCIpIDVweCA1MCUvMjBweCAyMHB4IG5vLXJlcGVhdDtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLXNjaG9vbHMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LUJ5SW5zdGl0dXRpb24tSWNvbi1TY2hvb2xzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1wdWJsaXNoZXJzIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1JY29uLVB1Ymxpc2hlcnMtNDUucG5nXCIpIDVweCA1MCUvMjBweCAyMHB4IG5vLXJlcGVhdDtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLXdhaXRpbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LUljb24tV2FpdGluZ1Jvb21zLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1zdXBwb3J0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1Gb3JDdXN0b21lcnMtSWNvbi1TdXBwb3J0LTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1yZXNvdXJjZXMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LUZvckN1c3RvbWVycy1JY29uLVByb21vdGVZb3VyUmVzb3VyY2VzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS10cmFpbmluZyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtRm9yQ3VzdG9tZXJzLUljb24tVHJhaW5pbmctNDUucG5nXCIpIDVweCA1MCUvMjBweCAyMHB4IG5vLXJlcGVhdDtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLWxvZ2luIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1Gb3JDdXN0b21lcnMtSWNvbi1DdXN0b21lckxvZ0luLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1lYnNjb3Bvc3QtYmxvZyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtQmxvZy1JY29uLUVCU0NPcG9zdC00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0taGVhbHRoLWJsb2cge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LUJsb2ctSWNvbi1FQlNDT0hlYWx0aE5vdGVzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1jb3JwLWJsb2cge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LUJsb2ctSWNvbi1FQlNDT0ZvckNvcnBvcmF0ZS00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0tbm92ZWxpc3QtYmxvZyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtQmxvZy1JY29uLU5vdmVMaXN0QmxvZy00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0tdmlkZW9zIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1SZXNvdXJjZUNlbnRlci1JY29uLVZpZGVvcy00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0tZWJyb2NodXJlcyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtUmVzb3VyY2VDZW50ZXItSWNvbi1lQnJvY2h1cmVzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS1pbmZvZ3JhcGhpY3Mge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LVJlc291cmNlQ2VudGVyLUljb24tSW5mb2dyYXBoaWNzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLm5hdi1pY29uLS13ZWJpbmFycyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtUmVzb3VyY2VDZW50ZXItSWNvbi1XZWJpbmFycy00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0tc3RvcmllcyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2Vic2NvX2Rlc2lnbl9saWJyYXJ5L2ltZy9FQlNDTy1OYXZpZ2F0aW9uLU1lbnUtUmVzb3VyY2VDZW50ZXItSWNvbi1TdWNjZXNzU3Rvcmllcy00NS5wbmdcIikgNXB4IDUwJS8yMHB4IDIwcHggbm8tcmVwZWF0O1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0td2hpdGVwYXBlcnMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvRUJTQ08tTmF2aWdhdGlvbi1NZW51LVJlc291cmNlQ2VudGVyLUljb24tV2hpdGVQYXBlcnMtNDUucG5nXCIpIDVweCA1MCUvMjBweCAyMHB4IG5vLXJlcGVhdDtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLWFydGljbGVzIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vZWJzY29fZGVzaWduX2xpYnJhcnkvaW1nL0VCU0NPLU5hdmlnYXRpb24tTWVudS1SZXNvdXJjZUNlbnRlci1JY29uLUFydGljbGVzLTQ1LnBuZ1wiKSA1cHggNTAlLzIwcHggMjBweCBuby1yZXBlYXQ7XG59XG4uZWRsLW5hdm1lbnUgLnBhbmVsLWNvbnRlbnQ6bm90KC5wYW5lbC1jb250ZW50LS1ncm91cGVkKSAubmF2LWljb246bGFzdC1vZi10eXBlLCAuZWRsLW5hdm1lbnUgLm5hdi1pY29uLS13aXRoLWNoaWxkcmVuIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0td2l0aC1jaGlsZHJlbiB7XG4gIGFsaWduLWl0ZW1zOiB1bnNldDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNXB4IDVweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cbi5lZGwtbmF2bWVudSAubmF2LWljb24tLXdpdGgtY2hpbGRyZW4gdWwge1xuICBtYXJnaW46IDEwcHggMCAwO1xufVxuLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0td2l0aC1jaGlsZHJlbiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi50YXJnZXQtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDIwcHggMCAzMHB4O1xufVxuLnRhcmdldC1jb250ZW50IGgzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi50YXJnZXQtY29udGVudCAuY29sdW1uLXNlcGFyYXRvciBociB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOURBREI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRhcmdldC1jb250ZW50IC5jb2x1bW4tZ3JvdXAge1xuICBtYXJnaW4tdG9wOiAwO1xuICAvKiBSRU1PVkUgRk1PXG4gIG1heC13aWR0aDogMzEwcHg7XG4gICovXG59XG4udGFyZ2V0LWNvbnRlbnQgLmNvbHVtbi1ncm91cCAuZWRsLWxpbmstZ3JvdXAge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4udGFyZ2V0LWNvbnRlbnQgLmNvbHVtbi1ncm91cCBoNCB7XG4gIGNvbG9yOiAjM0QzRjQyO1xuICBmb250LWZhbWlseTogXCJOb3RvIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbiAgZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbn1cbi50YXJnZXQtY29udGVudCAuY29sdW1uLWdyb3VwIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLnRhcmdldC1jb250ZW50IC5jb2x1bW4tZ3JvdXAgdWwgYSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbmF2LWZvbnQtc2l6ZSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMyRDYyQjc7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50YXJnZXQtY29udGVudCAuY29sdW1uLWdyb3VwIHVsIGE6aG92ZXIge1xuICBjb2xvcjogIzNEM0Y0Mjtcbn1cbi50YXJnZXQtY29udGVudCAuY29sdW1uLWdyb3VwIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi50YXJnZXQtY29udGVudCAuY29sdW1uLWdyb3VwLXdyYXBwZXIgLmNvbHVtbi1ncm91cDpudGgtY2hpbGQoMSkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZGFkYjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUxMHB4KSB7XG4gIC5lZGwtbmF2bWVudSBbYXJpYS1vd25zPWFjdGlvbk5hdl9fcGFuZWxzXSAuZWRsLW5hdmJhcl9jdGEgLmVkbC1idG4ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5lZGwtbmF2YmFyICNhY3Rpb25zX19wYW5lbHMge1xuICAgIG1hcmdpbjogMCAtMzBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA4MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MXB4KSB7XG4gIC5lZGwtbmF2LWNvbnRhaW5lci5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMwMDJGNTY7XG4gIH1cbiAgLmVkbC1uYXYtY29udGFpbmVyLmlzLWFjdGl2ZSAuZWRsLXNpdGUtbG9nbyB7XG4gICAgZmlsbDogI2ZmZjtcbiAgfVxuICAuZWRsLW5hdi1jb250YWluZXIuaXMtYWN0aXZlIC5lZGwtbmF2YmFyIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuICAuZWRsLW5hdi1jb250YWluZXIuaXMtYWN0aXZlIC5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX3N1Yi1tZW51LWl0ZW0ge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5lZGwtbmF2LWNvbnRhaW5lcjpudGgtb2YtdHlwZSgyKSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICAuZWRsLW5hdi1jb250YWluZXI6bnRoLW9mLXR5cGUoMikgLmVkbC1uYXYtcm93IHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gIH1cbiAgLmVkbC1uYXZiYXIge1xuICAgIGhlaWdodDogODBweDtcbiAgfVxuICAuZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9zZWFyY2gge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX2xvZ2luIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAuZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9zaXRlLXNlbGVjdCB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLmVkbC1uYXZiYXIgLmVkbC1uYXZiYXJfbG9naW4sIC5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX3NpdGUtc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX2xvZ2luW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0sIC5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX3NpdGUtc2VsZWN0W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5lZGwtbmF2YmFyIC5lZGwtbmF2YmFyX2N0YSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDAgMTVweDtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAuZWRsLW5hdmJhciAuZWRsLW5hdmJhcl9tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmVkbC1uYXZiYXIgI2FjdGlvbnNfX3BhbmVscyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgICBncmlkLXJvdzogMjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxcHggMWZyO1xuICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRsLW5hdmJhciAjbmF2YmFyX2xvZ2luX19zZWN0MCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDYxLCA2MywgNjYsIDAuMyk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0Q5REFEQjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBncmlkLWNvbHVtbjogbm9uZTtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICB9XG4gIC5lZGwtbmF2YmFyICNuYXZiYXJfc2l0ZV9fc2VjdDAge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgZ3JpZC1jb2x1bW46IG5vbmU7XG4gICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gIH1cbiAgI2FjdGlvbk1lbnVfX3NlY3QwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5lZGwtbmF2bWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNTBweCBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAtNTAwMHB4O1xuICAgIHBhZGRpbmctbGVmdDogNTAwMHB4O1xuICB9XG4gIC5lZGwtbmF2bWVudSAuZWRsLXNob3doaWRlLS1jb250YWluZXJbYXJpYS1vd25zPW1haW5OYXZfX3BhbmVsc10gPiAqIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHBhZGRpbmc6IDAgNXB4IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmVkbC1uYXZtZW51IC5lZGwtc2hvd2hpZGUtLWNvbnRhaW5lclthcmlhLW93bnM9bWFpbk5hdl9fcGFuZWxzXSA+ICo6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmVkbC1uYXZtZW51IC5lZGwtc2hvd2hpZGUtLWNvbnRhaW5lclthcmlhLW93bnM9bWFpbk5hdl9fcGFuZWxzXSA+ICpbYXJpYS1leHBhbmRlZD10cnVlXSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAuZWRsLW5hdm1lbnUgLmVkbC1zaG93aGlkZS0tY29udGFpbmVyW2FyaWEtb3ducz1tYWluTmF2X19wYW5lbHNdID4gKjpob3ZlciwgLmVkbC1uYXZtZW51IC5lZGwtc2hvd2hpZGUtLWNvbnRhaW5lclthcmlhLW93bnM9bWFpbk5hdl9fcGFuZWxzXSA+ICo6YWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAuZWRsLW5hdm1lbnUgLmVkbC1saW5rLWdyb3VwIHtcbiAgICBwYWRkaW5nOiA0NXB4IDEwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRsLW5hdm1lbnUgLmVkbC1saW5rLWdyb3VwOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmc6IDIwcHggMzBweCAyNXB4IDA7XG4gIH1cbiAgLmVkbC1uYXZtZW51ICNtYWluTmF2X19wYW5lbHMge1xuICAgIHBhZGRpbmctbGVmdDogOTVweDtcbiAgfVxuICAuZWRsLW5hdm1lbnUgLnBhbmVsLWNvbnRlbnQtLXNpbXBsZSB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICB9XG4gIC5lZGwtbmF2bWVudSAubmF2LWljb24ge1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiA2NXB4O1xuICB9XG4gIC5lZGwtbmF2bWVudSAjbWFpbk5hdl9fcGFuZWxzIHtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIH1cbiAgLmVkbC1uYXZtZW51IC5wYW5lbC1jb250ZW50LS1ncm91cGVkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cbiAgLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0td2l0aC1jaGlsZHJlbiB7XG4gICAgYWxpZ24taXRlbXM6IHVuc2V0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gIH1cbiAgLmVkbC1uYXZtZW51IC5uYXYtaWNvbi0td2l0aC1jaGlsZHJlbiB1bCB7XG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgfVxuICAudGFyZ2V0LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgLyogUkVNT1ZFIEZNT1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDYwcHggMWZyO1xuICAgICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIFJFTU9WRSBGTU9cbiAgICAmIC5jb2x1bW4tZ3JvdXAge1xuICAgICAgbWF4LXdpZHRoOiAxNzVweDtcbiAgICB9XG4gICAgKi9cbiAgfVxuICAudGFyZ2V0LWNvbnRlbnQgaDMge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMS41NTtcbiAgICBjb2xvcjogIzNEM0Y0MjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMztcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIG1heC13aWR0aDogMTc1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MXB4KSBhbmQgKG1pbi13aWR0aDogNTEwcHgpIHtcbiAgLnRhcmdldC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MXB4KSB7XG4gIC50YXJnZXQtY29udGVudCAuY29sdW1uLXNlcGFyYXRvciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgfVxuICAudGFyZ2V0LWNvbnRlbnQgLmNvbHVtbi1zZXBhcmF0b3IgaHIge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEOURBREI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogYXV0byAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLnRhcmdldC1jb250ZW50IC5jb2x1bW4tZ3JvdXAtd3JhcHBlciAuY29sdW1uLWdyb3VwOm50aC1jaGlsZCgxKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gIH1cbiAgW2Rpcj1ydGxdIC5lZGwtbmF2bWVudSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNTAwMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwMDBweDtcbiAgfVxuICBbZGlyPXJ0bF0gLmVkbC1saW5rLWdyb3VwOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmc6IDIwcHggMCAyNXB4IDMwcHg7XG4gIH1cbiAgW2Rpcj1ydGxdIC5uYXYtaWNvbiB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2NXB4O1xuICB9XG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEVCU0NPIE5hdnlcbiRlYnNjby1uYXZ5OiAjMDAyZjU2O1xuJGVic2NvLW5hdnktLWhvdmVyOiAjMDAyNDQyO1xuJGVic2NvLW5hdnkwNTogIzAwMkY1NjtcblxuLy8gTWFya2V0IEJsdWVcbiRtYXJrZXQtYmx1ZTogIzNFNzVDRjtcbiRtYXJrZXQtYmx1ZS0taG92ZXI6ICMyRDYyQjc7XG4kbWFya2V0LWJsdWU2OiAjMkQ2MkI3O1xuJG1hcmtldC1ibHVlLS10aW50MzogIzhCQUNFMjtcbiRtYXJrZXQtYmx1ZS0tZGFyazA6ICMyNTUwOTY7XG4kbWFya2V0LWJsdWU3OiAjMjU1MDk2O1xuJG1hcmtldC0tYmx1ZS0tZGFyazE6ICMxRDNGNzU7XG4kbWFya2V0LWJsdWU4OiAjMUQzRjc1O1xuJG1hcmtldC0tYmx1ZS0tbGlnaHQwOiAjNjU5MUQ5O1xuXG4vLyBMYWdvb25cbiRsYWdvb246ICMwMDc1OEQ7XG4kbGFnb29uLS1ob3ZlcjogIzAwNjQ3OTtcblxuLy8gRGlzY29cbiRkaXNjbzogI0I0MTc4MjtcbiRkaXNjby0taG92ZXI6ICM5MDEyNjg7XG4kZGlzY28tLXRpbnQzOiAjRDI3NEI0O1xuXG4vLyBUdXJ0bGVcbiR0dXJ0bGU6ICMyNjg3NDI7XG4kdHVydGxlLS1ob3ZlcjogIzFENjczMjtcblxuLy8gQnV0dGVyXG4kYnV0dGVyMDU6ICNGQUI3M0M7XG5cbi8vIENvbW1vbiBDb2xvcnNcbiR3aGl0ZTogI2ZmZjtcbiR3aGl0ZS0tc2VtaTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuJHdoaXRlLS1zaGVlcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcbiR3aGl0ZS0tdHJhbnNwYXJlbnQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4kd2hpdGUtLW1pZDogcmdiYSgyNTUsMjU1LDI1NSwwLjU1KTtcbiRibGFjazogIzAwMDtcbiRvdmVybGF5LS1zZW1pOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYmxhY2stLXBpdGNoOiAjMDAwRTE5O1xuXG4vLyBHcmF5c1xuJGdyYXkwOiAjRUZFRkVGO1xuJGdyYXkxOiAjRDlEQURCO1xuJGdyYXkyOiAjQjhCQkJGO1xuJGdyYXkzOiAjN0E3Rjg1O1xuJGdyYXk0OiAjM0QzRjQyO1xuLy8gJGdyYXk0IDMwJSBvcGFjaXR5XG4kZ3JheTQtLXRyYW5zMzA6IHJnYmEoNjEsIDYzLCA2NiwgMC4zKTtcbiRncmF5NTogIzI3MjkyQTtcbiRncmF5NjogIzhEOTA5NTtcblxuLy8gQ29sb3IgVXNhZ2VzXG4kdGV4dC1jb2xvcjogJGdyYXk0O1xuJGxpbmstY29sb3I6ICRtYXJrZXQtYmx1ZTY7XG4kcGFnZS1oZWFkZXItY29sb3I6ICR3aGl0ZTtcbiRwYWdlLWZvb3Rlci1jb2xvcjogJGVic2NvLW5hdnk7XG5cbi8vIEJ1dHRvbiBTaGFkb3dzXG4kYnRuLXNoYWRvdzogcmdiYSgzOSwgNDEsIDQyLCAwLjI1KTtcbiRidG4tc2hhZG93LS1ob3ZlcjogcmdiYSgzOSwgNDEsIDQyLCAwLjM1KTtcblxuLy8gQm94IFNoYWRvd3NcbiRib3gtc2hhZG93OiAwIDJweCAycHggMCAkYnRuLXNoYWRvdztcbiRib3gtc2hhZG93LS1ob3ZlcjogMCAycHggNHB4IDJweCAkYnRuLXNoYWRvdy0taG92ZXI7XG4kYm94LXNoYWRvdy0taG92ZXIyOiAwIDEwcHggMTBweCAtNnB4ICRidG4tc2hhZG93LS1ob3ZlcjtcbiIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWl4aW5zXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQ2xlYXJmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IGFjY2Vzc2libGUuXG4vLyBAc2VlIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xufVxuXG4vLyBUdXJucyBvZmYgdGhlIGVsZW1lbnQtaW52aXNpYmxlIGVmZmVjdC5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGNsaXA6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiBieSBkZWZhdWx0LCBidXQgdmlzaWJsZSB3aGVuIGZvY3VzZWQuXG5AbWl4aW4gZWxlbWVudC1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiBmb3Igd29ya2luZyB3aXRoIFNhc3MgbWFwcy5cbi8vIEV4YW1wbGU6IEBpbmNsdWRlIHByaW50KCRjb25maWd1cmF0aW9uKTtcbkBtaXhpbiBwcmludCgkZGVjbGFyYXRpb25zKSB7XG4gIEBlYWNoICRwcm9wZXJ0eSwgJHZhbHVlIGluICRkZWNsYXJhdGlvbnMge1xuICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICB9XG59XG5cbi8vIHZlcnRpY2FsIGFsaWduIG1peGluXG5AbWl4aW4gdmVydGljYWwtYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8gaG9yaXpvbnRhbCBhbGlnbiBtaXhpblxuQG1peGluIGhvcml6b250YWwtYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLyBjZW50ZXIgYWxpZ24gbWl4aW5cbkBtaXhpbiBjZW50ZXItYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vIFJlc2V0IGxpc3QgKGkuZS4gbWVudXMpXG5AbWl4aW4gcmVzZXQtbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiJdfQ== */
