/* $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
 */
.edl-subnav-container {
  position: relative;
  z-index: 101;
}
.edl-subnav-container.edl-subnav--header h2 {
  font-size: 20px;
  line-height: 1.6;
  font-weight: 400;
  background: #3E75CF;
  color: #fff;
  display: block;
  font-weight: 400;
  line-height: 60px;
  margin: 0;
  padding: 0 20px 0 10px;
}
@media screen and (min-width: 510px) {
  .edl-subnav-container.edl-subnav--header h2 {
    font-size: 24px;
    line-height: 1.4;
  }
}
.edl-subnav-container.edl-subnav--header h2 a {
  color: #fff;
  font-weight: 400;
  text-decoration: none;
}
.edl-subnav-container.edl-subnav--header h2 .edl-subnav--indicator {
  cursor: pointer;
  font-size: 40px;
  margin-left: 10px;
  transition: all 0.35s ease-in-out;
  vertical-align: middle;
}
.edl-subnav-container.edl-subnav--header h2[aria-expanded=true] .edl-subnav--indicator {
  transform: rotate(-180deg);
}
.edl-subnav-container.edl-subnav--menu {
  background-color: #fff;
  display: inline-block;
  height: 100%;
  position: absolute;
}
.edl-subnav-container #subnav__target {
  display: inline-block;
}
.edl-subnav-container .menu-container {
  margin: 0;
  padding: 0;
  list-style: none;
  background: #fff;
  border-radius: 0 0 5px 5px;
  display: inline-block;
  height: calc(100% - 120px);
  margin-left: 0;
  min-height: 100vh;
  padding: 0 20px;
  transition: margin 0.35s ease-in-out;
  width: 300px;
}
.edl-subnav-container .menu-container[hidden] {
  display: block;
  margin-left: -400px;
}
.edl-subnav-container .edl-subnav--parent {
  display: block;
}
.edl-subnav-container .edl-subnav--parent > a {
  color: #3D3F42;
  font-family: "Noto Sans", Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.7;
  border-bottom: none;
  border-top: 1px solid #D9DADB;
  display: block;
  font-size: var(--nav-font-size);
  margin: 20px 0;
  padding: 20px 5px 0;
  position: relative;
  text-decoration: none;
}
.edl-subnav-container .edl-subnav--parent > a[aria-expanded=true] {
  margin-bottom: 10px;
}
.edl-subnav-container .edl-subnav--parent > a::after {
  color: #7A7F85;
  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;
  top: 15px;
  transition: all 0.35s ease-in-out;
  transform: translateX(-5px) rotate(90deg);
}
.edl-subnav-container .edl-subnav--parent > a[aria-expanded=true]::after {
  border-color: transparent;
  transform: translateX(-5px) rotate(-90deg);
}
.edl-subnav-container .edl-subnav--parent > a:not(.edl-showhide--trigger) {
  color: #2D62B7;
  font-weight: 700;
}
.edl-subnav-container .edl-subnav--parent > a:not(.edl-showhide--trigger)::after {
  content: "";
  display: none;
}
.edl-subnav-container .edl-subnav--parent .subnav-overview {
  border: none;
  color: #2D62B7;
  /* font-size: var(--nav-font-size); */
  font-weight: 700;
  line-height: 28px;
  margin-top: 0;
}
.edl-subnav-container .edl-subnav--panel {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-left: 25px;
  width: 220px;
}
.edl-subnav-container .edl-subnav--panel a {
  border: none;
  color: #2D62B7;
  /* font-size: var(--nav-font-size); */
  font-weight: 700;
  line-height: 28px;
  text-decoration: none;
}
.edl-subnav-container .edl-subnav--panel a:hover, .edl-subnav-container .edl-subnav--panel a:active {
  color: #3D3F42;
}
.edl-subnav-container .edl-subnav--panel a.is-active {
  text-decoration: underline;
}
.edl-subnav-container .edl-subnav--list:not([hidden]) {
  margin: 0;
  padding: 0;
  list-style: none;
}
.edl-subnav-container .edl-subnav--overview-item {
  border-top: 1px solid #D9DADB;
  padding-top: 20px;
}
.edl-subnav-container .edl-subnav--child {
  margin-bottom: 20px;
}

@media screen and (min-width: 510px) {
  .edl-subnav-container .menu-container {
    height: calc(100% - 140px);
    padding: 0 30px;
    width: 412px;
  }
  .edl-subnav-container .menu-container[hidden] {
    margin-left: -512px;
  }
  .edl-subnav-container.edl-subnav--header h2 {
    line-height: 60px;
  }
  .edl-subnav-container .edl-subnav--parent .subnav-overview {
    font-size: 18px;
    line-height: 28px;
    margin-top: 10px;
  }
  .edl-subnav-container .edl-subnav--panel {
    margin-left: 35px;
    width: 310px;
  }
}
@media screen and (min-width: 1220px) {
  .edl-subnav--wrapper,
  .edl-subnav--wrapper-row {
    background: #3E75CF;
    display: block;
  }
  .edl-subnav--wrapper-row {
    max-width: 1280px;
    margin: auto;
  }
  .edl-subnav-container {
    display: block;
    text-align: center;
  }
  .edl-subnav-container.edl-subnav--header h2 {
    line-height: 36px;
    padding: 15px 0 10px;
  }
  .edl-subnav-container.edl-subnav--header h2 .edl-subnav--indicator {
    display: none;
  }
  .edl-subnav-container.edl-subnav--menu {
    background-color: transparent;
    display: block;
    position: relative;
  }
  .edl-subnav-container .menu-container[hidden], .edl-subnav-container .menu-container {
    background: none;
    display: flex;
    justify-content: space-between;
    margin-bottom: auto;
    margin-left: 0;
    min-height: auto;
    padding-bottom: initial;
    padding-right: 0;
    width: 100%;
    /*
      First two subnav dropdowns start at left edge.
      Note: first `panel` is hidden at desktop; therefore selecting 3.
    */
    /*
      Last two subnav dropdowns start at right edge.
    */
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent:first-child, .edl-subnav-container .menu-container .edl-subnav--parent:first-child {
    display: none;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent, .edl-subnav-container .menu-container .edl-subnav--parent {
    margin-right: 30px;
    /* Removing; these if needed should be in the theme file */
    /*
    & .edl-subnav--panel[aria-labelledby="subnav__tabID_3"] {
      margin-left: -20px;
    }

    & .edl-subnav--panel[aria-labelledby="subnav__tabID_4"] {
      right: 0;
    }

    & .edl-subnav--panel[aria-labelledby="subnav__tabID_5"] {
      right: 0;
    }

    & .edl-subnav--panel[aria-labelledby="subnav__tabID_6"] {
      right: 0;
      min-width: fit-content;

      & .edl-subnav--list {
        column-count: 1;
      }
    }
    */
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--panel:not([hidden]), .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--panel:not([hidden]) {
    display: inline-block;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--panel, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--panel {
    box-shadow: 0 0 10px 0 rgba(61, 63, 66, 0.3);
    border: 1px solid #D9DADB;
    border-radius: 5px;
    background: #fff;
    border: 1px solid #D9DADB;
    border-radius: 5px;
    margin-left: -340px;
    min-width: 710px;
    padding: 30px;
    position: absolute;
    top: 44px;
    text-align: center;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--panel .edl-subnav--children > ul, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--panel .edl-subnav--children > ul {
    column-count: 2;
    column-gap: 30px;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--panel .edl-subnav--child, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--panel .edl-subnav--child {
    margin-bottom: 10px;
    text-align: left;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--panel .edl-subnav--overview-item, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--panel .edl-subnav--overview-item {
    margin: 20px -10px 0;
    padding: 10px 10px 0;
    text-align: left;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--panel .edl-subnav--overview-item p, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--panel .edl-subnav--overview-item p {
    margin-bottom: 0;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--has-panel-1-col + .edl-subnav--panel, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--has-panel-1-col + .edl-subnav--panel {
    margin-left: -155px;
    min-width: -moz-fit-content;
    min-width: fit-content;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent .edl-subnav--has-panel-1-col + .edl-subnav--panel .edl-subnav--list, .edl-subnav-container .menu-container .edl-subnav--parent .edl-subnav--has-panel-1-col + .edl-subnav--panel .edl-subnav--list {
    column-count: 1;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent > a, .edl-subnav-container .menu-container .edl-subnav--parent > a {
    border: none;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 27px;
    margin: 0;
    padding: 0 0 20px 0;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent > a[aria-expanded=false]::after, .edl-subnav-container .menu-container .edl-subnav--parent > a[aria-expanded=false]::after {
    content: "";
    display: none;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent > a[aria-expanded=true]::after, .edl-subnav-container .menu-container .edl-subnav--parent > a[aria-expanded=true]::after {
    background: url("https://www.ebsco.com/themes/custom/cog_ebsco/ebsco_design_library/img/menu-dropdown-indicator.png") center center no-repeat transparent;
    bottom: -44px;
    content: "";
    height: 44px;
    left: calc(50% - 20px);
    position: absolute;
    width: 40px;
    z-index: 1;
    bottom: -46px;
    transform: none;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent a.active-link, .edl-subnav-container .menu-container .edl-subnav--parent a.active-link {
    text-decoration: underline;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent:nth-child(-n+2) .edl-subnav--panel, .edl-subnav-container .menu-container .edl-subnav--parent:nth-child(-n+2) .edl-subnav--panel {
    left: 1vw;
    margin-left: 0;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent:nth-last-child(-n+1) :not(.edl-subnav--has-panel-1-col) ~ .edl-subnav--panel, .edl-subnav-container .menu-container .edl-subnav--parent:nth-last-child(-n+1) :not(.edl-subnav--has-panel-1-col) ~ .edl-subnav--panel {
    right: 1vw;
    margin-left: 0;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent:nth-last-child(2), .edl-subnav-container .menu-container .edl-subnav--parent:nth-last-child(2) {
    margin-right: 0;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent:last-child, .edl-subnav-container .menu-container .edl-subnav--parent:last-child {
    margin-right: 0;
  }
  .edl-subnav-container .menu-container[hidden] .edl-subnav--parent:last-child > a, .edl-subnav-container .menu-container .edl-subnav--parent:last-child > a {
    padding: 0 40px 18px;
    /* &[aria-expanded="true"]::after {
      left: 50%;
    } */
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9wYXR0ZXJucy8wMC1nbG9iYWwvdXRpbHMvX3R5cG9ncmFwaHkuc2NzcyIsIl9wYXR0ZXJucy8wMC1nbG9iYWwvdXRpbHMvX2Z1bmN0aW9ucy5zY3NzIiwiX3BhdHRlcm5zLzAwLWdsb2JhbC91dGlscy9fYnJlYWtwb2ludHMuc2NzcyIsIl9wYXR0ZXJucy8wMy10ZW1wbGF0ZXMvc3ViLW5hdmlnYXRpb24vc3ViLW5hdmlnYXRpb24uc2NzcyIsIl9wYXR0ZXJucy8wMy10ZW1wbGF0ZXMvc3ViLW5hdmlnYXRpb24vc3ViLW5hdmlnYXRpb24uY3NzIiwiX3BhdHRlcm5zLzAwLWdsb2JhbC91dGlscy9fY29sb3JzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL19icmVha3BvaW50LnNjc3MiLCJfcGF0dGVybnMvMDAtZ2xvYmFsL3V0aWxzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxnREFBQTtBQVNBLDRCQUFBO0FBT0EsWUFBQTtBQUlBLDRDQUFBO0FBSUEsT0FBQTtBQUlBLE9BQUE7QUFJQSxPQUFBO0FBSUEsT0FBQTtBQUlBLE9BQUE7QUFLQTs7O0NBQUE7QUF5QkE7O0NBQUE7QUF5QkEsT0FBQTtBQUlBLE9BQUE7QUFJQSxPQUFBO0FDNUZBOzs7Q0FBQTtBQ0pBOzs7O0VBQUE7QUNrQkE7RUFDRSxrQkFBQTtFQUNBLFlBQUE7QUNDRjtBREVJO0VIZ0RJLGVBQUE7RUFFSSxnQkFBQTtFQXlDUixnQkFBQTtFR3hGRSxtQkU5QlE7RUYrQlIsV0VKRTtFRktGLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsU0FBQTtFQUNBLHNCQUFBO0FDQ047QUVxQkk7RUgvQkE7SUhnREksZUFBQTtJQUVJLGdCQUFBO0VJbkNWO0FBQ0Y7QURMTTtFQUNFLFdFWkE7RUZhQSxnQkFBQTtFQUNBLHFCQUFBO0FDT1I7QURKTTtFQUNFLGVBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFD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a0JBQUE7SUFDQSxtQkFBQTtJQUNBLGdCQUFBO0lBQ0EsYUFBQTtJQUNBLGtCQUFBO0lBQ0EsU0FBQTtJQUNBLGtCQUFBO0VDRVI7RURBUTtJQUNFLGVBQUE7SUFDQSxnQkFBQTtFQ0VWO0VEQ1E7SUFDRSxtQkFBQTtJQUNBLGdCQUFBO0VDQ1Y7RURFUTtJQUNFLG9CQUFBO0lBQ0Esb0JBQUE7SUFDQSxnQkFBQTtFQ0FWO0VERVU7SUFDRSxnQkFBQTtFQ0FaO0VES007SUFDRSxtQkFBQTtJQUNBLDJCQUFBO0lBQUEsc0JBQUE7RUNIUjtFREtRO0lBQ0UsZUFBQTtFQ0hWO0VEK0JNO0lBQ0UsWUFBQTtJQUNBLFdFOVRGO0lGK1RFLGVBQUE7SUFDQSxnQkFBQTtJQUNBLGlCQUFBO0lBQ0EsU0FBQTtJQUNBLG1CQUFBO0VDN0JSO0VEK0JRO0lBQ0UsV0FBQTtJQUNBLGFBQUE7RUM3QlY7RURnQ1E7SUEvVlIsaUhBQUE7SUFDQSxhQUFBO0lBQ0EsV0FBQTtJQUNBLFlBQUE7SUFDQSxzQkFBQTtJQUNBLGtCQUFBO0lBQ0EsV0FBQTtJQUNBLFVBQUE7SUEyVlUsYUFBQTtJQUNBLGVBQUE7RUN4QlY7RUQ0Qk07SUFDRSwwQkFBQTtFQzFCUjtFRG9DTTtJQUNFLFNBQUE7SUFDQSxjQUFBO0VDbENSO0VEMENNO0lBQ0UsVUFBQTtJQUNBLGNBQUE7RUN4Q1I7RUQ0Q0k7SUFDRSxlQUFBO0VDMUNOO0VENkNJO0lBQ0UsZUFBQTtFQzNDTjtFRDRDTTtJQUNFLG9CQUFBO0lBRUE7O09BQUE7RUN6Q1I7QUFDRiIsImZpbGUiOiJfcGF0dGVybnMvMDMtdGVtcGxhdGVzL3N1Yi1uYXZpZ2F0aW9uL3N1Yi1uYXZpZ2F0aW9uLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFR5cG9ncmFwaHlcbi8vIEZvbnRzIC8vLy8vLy8vLy8vLy8vL1xuXG4vKiAkYmFzZS1mb250OiAnT3BlbiBTYW5zJywgQXJpYWwsIHNhbnMtc2VyaWY7ICovXG5cbiRiYXNlLWZvbnQ6ICdOb3RvIFNhbnMnLFxuQXJpYWwsXG5zYW5zLXNlcmlmO1xuJGJvZHktZm9udDogJGJhc2UtZm9udDtcbi8vIEZvbnQgU2l6ZXMgLy8vLy8vLy8vLy8vLy8vXG4kYmFzZS1mb250LXNpemU6IDE2cHg7XG5cbi8qICRiYXNlLWxpbmUtaGVpZ2h0OiAxLjY7ICovXG5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjc7XG4vLyBGb250LXNpemUgbWFwcyB0byBiZSB1c2VkIHdpdGggZm9udC1zaXplIG1peC1pbi5cbi8vIEluY2x1ZGVzIHRleHQgc2l6ZSBhbmQgbGluZS1oZWlnaHQuXG4kZm9udC1zaXplLXNtYWxsOiAobnVsbDogKDE0cHgsIDEuNjUpLCApO1xuXG4vKiBkZWZhdWx0ICovXG5cbiRmb250LXNpemUtbWVkaXVtOiAobnVsbDogKCRiYXNlLWZvbnQtc2l6ZSwgJGJhc2UtbGluZS1oZWlnaHQpLCApO1xuXG4vKiBiYXNlIGZvbnQgc2l6ZSB3aXRoIHNob3J0ZXIgbGluZS1oZWlnaHQgKi9cblxuJGZvbnQtc2l6ZS1tZWRpdW0tYWx0OiAobnVsbDogKDE2cHgsIDEuNiksICk7XG5cbi8qIGg1ICovXG5cbiRmb250LXNpemUtbGFyZ2U6IChudWxsOiAoMTZweCwgMS41NiksIGxnOiAoMThweCwgMS41NSksICk7XG5cbi8qIGg0ICovXG5cbiRmb250LXNpemUteC1sYXJnZTogKG51bGw6ICgxOHB4LCAxLjU1KSwgbGc6ICgyMHB4LCAxLjY1KSwgKTtcblxuLyogaDMgKi9cblxuJGZvbnQtc2l6ZS14eC1sYXJnZTogKG51bGw6ICgyMHB4LCAxLjYpLCBsZzogKDI0cHgsIDEuNSksICk7XG5cbi8qIGgyICovXG5cbiRmb250LXNpemUteHh4LWxhcmdlOiAobnVsbDogKDI0cHgsIDEuNSksIGxnOiAoMjhweCwgMS41KSwgeHhsOiAoMzBweCwgMS41KSwgKTtcblxuLyogaDEgKi9cblxuJGZvbnQtc2l6ZS14eHh4LWxhcmdlOiAobnVsbDogKDI4cHgsIDEuNDMpLCBsZzogKDM0cHgsIDEuNDMpLCB4eGw6ICgzOHB4LCAxLjQzKSwgKTtcbiRmb250LXNpemUteHh4eHgtbGFyZ2U6IChudWxsOiAoMzRweCwgNTBweCksIGxnOiAoNDBweCwgNjBweCksIHh4bDogKDQ2cHgsIDY0cHgpLCApO1xuXG4vKlxuVXNlIHRoaXMgbWl4aW4gdG8gYWRkIGZvbnQgc2l6ZXMgZnJvbSB0aGUgbWFwcyBhYm92ZSB3aXRoIGxpbmUtaGVpZ2h0cyBhbmQgbXEncyBpbmNsdWRlZC5cbmVnOiBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS14eHh4LWxhcmdlKTtcbiovXG5cbkBtaXhpbiBmb250LXNpemUoJGZzLW1hcCwgJGZzLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgICBAZWFjaCAkZnMtYnJlYWtwb2ludCxcbiAgICAkZnMtZm9udC1zaXplIGluICRmcy1tYXAge1xuICAgICAgICBAaWYgJGZzLWJyZWFrcG9pbnQ9PW51bGwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1mb250LXNpemUoJGZzLWZvbnQtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgLy8gSWYgJGZzLWZvbnQtc2l6ZSBpcyBhIGtleSB0aGF0IGV4aXN0cyBpblxuICAgICAgICAgICAgLy8gJGZzLWJyZWFrcG9pbnRzLCB1c2UgdGhlIHZhbHVlXG4gICAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGZzLWJyZWFrcG9pbnRzLCAkZnMtYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgICRmcy1icmVha3BvaW50OiBtYXAtZ2V0KCRmcy1icmVha3BvaW50cywgJGZzLWJyZWFrcG9pbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZnMtYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtZm9udC1zaXplKCRmcy1mb250LXNpemUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qXG5VdGlsaXR5IGZ1bmN0aW9uIGZvciBtaXhpbiBmb250LXNpemUuXG4qL1xuXG5AbWl4aW4gbWFrZS1mb250LXNpemUoJGZzLWZvbnQtc2l6ZSkge1xuICAgIC8vIElmICRmcy1mb250LXNpemUgaXMgYSBsaXN0LCBpbmNsdWRlXG4gICAgLy8gYm90aCBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0XG4gICAgQGlmIHR5cGUtb2YoJGZzLWZvbnQtc2l6ZSk9PVwibGlzdFwiIHtcbiAgICAgICAgZm9udC1zaXplOiBudGgoJGZzLWZvbnQtc2l6ZSwgMSk7XG4gICAgICAgIEBpZiAobGVuZ3RoKCRmcy1mb250LXNpemUpID4gMSkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG50aCgkZnMtZm9udC1zaXplLCAyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWZvbnQtc2l6ZTtcbiAgICB9XG59XG5cbi8vIEZvbnQgV2VpZ2h0cyAvLy8vLy8vLy8vLy8vLy9cbiRmb250LXdlaWdodC1saWdodDogMzAwO1xuJGZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbi8vLy8vLy8gRURMIEFEREVEXG5cbi8qIGg0ICovXG5cbiRmb250LXNpemUtc3R5bGUtaDI6IChudWxsOiAoMjRweCwgMzZweCksIHRhYmxldDogKDI4cHgsIDQycHgpLCBkZXNrdG9wOiAoMzBweCwgNDVweCkpO1xuXG4vKiBoMyAqL1xuXG4kZm9udC1zaXplLXN0eWxlLWgzOiAobnVsbDogKDIwcHgsIDEuNiksIHRhYmxldDogKDI0cHgsIDEuNCkpO1xuXG4vKiBoNCAqL1xuXG4kZm9udC1zaXplLXN0eWxlLWg0OiAobnVsbDogKDE4cHgsIDEuNTUpLCB0YWJsZXQ6ICgyMHB4LCAxLjY1KSwgKTtcbkBtaXhpbiBzdHlsZS1ib2R5IHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1yZWd1bGFyO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLW1lZGl1bSk7XG59XG5cbkBtaXhpbiBzdHlsZS1oMiB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc3R5bGUtaDIpO1xuICAgIGNvbG9yOiAkZ3JheTQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQG1peGluIHN0eWxlLWgzIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zdHlsZS1oMyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuQG1peGluIHN0eWxlLWg0IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zdHlsZS1oNCk7XG4gICAgY29sb3I6ICRncmF5NDtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG5AbWl4aW4gc3R5bGUtYmlndGV4dCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUteHh4eHgtbGFyZ2UpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbkBtaXhpbiBmb250YXdlc29tZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbn0iLCIvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZ1bmN0aW9uc1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEZ1bmN0aW9uIHRvIHJldHVybiBhIHZhbHVlIGZyb20gYSBtYXAgYmFzZWQgb24gYSBrZXkuXG5AZnVuY3Rpb24gZ2V0LXZhcigka2V5LCAkbWFwKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRrZXkpO1xuICB9XG5cbiAgQHdhcm4gJ1Vua25vd24gYCN7JGtleX1gIGluIG1hcC4gVHJ5IFwiQGluY2x1ZGUgcHJpbnQoJG1hcCk7XCIgdG8gc2VlIHdoYXRcXCdzIGF2YWlsYWJsZS4nO1xuICBAcmV0dXJuIG51bGw7XG59XG5cbi8qXG5GdW5jdGlvbiBzbyB3ZSBkb24ndCBoYXZlIHRvIHVzZSBtYXAtZ2V0IHdpdGggJGJyZWFrcG9pbnRzLlxuZWc6IGJwKHh4bCkgb3IgQGluY2x1ZGUgYnJlYWtwb2ludChicCh4eGwpKVxuKi9cbkBmdW5jdGlvbiBicCgka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAka2V5KTtcbiAgfVxuXG4gIEB3YXJuIFwiVW5rbm93biBgI3ska2V5fWAgaW4gJGJyZWFrcG9pbnRzLlwiO1xuXG4gIEByZXR1cm4gbnVsbDtcbn1cbiIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCcmVha3BvaW50c1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGJwLXhzbTogMzc1cHg7XG4kYnAtc206IDc2OHB4O1xuJGJwLW1kOiAxMDI1cHg7XG4kYnAtbGc6IDEyMDBweDtcbiRicC14bGc6IDE0ODBweDtcblxuLyogU3RhbmRhcmQgcmFuZ2VzIGZyb20gZGVzaWduXG4gKiAgIFwiZGVza3RvcFwiIDogOTYxIGFuZCB1cFxuICogICBcInRhYmxldFwiICA6IDUxMCB0aHJ1IDk2MFxuICogICBcIm1vYmlsZVwiICA6IDMyMCB0aHJ1IDUwOVxuICovXG4kYnJlYWtwb2ludHM6ICh4eHhsIDogKHNjcmVlbiAxMjgxcHgpLFxuICBzdWJuYXYtZGVzayA6IChzY3JlZW4gMTIyMHB4KSxcbiAgc3VibmF2LWR5bmFtZWQtZGVzayA6IChzY3JlZW4gMTAwMHB4KSxcbiAgeHhsIDogKHNjcmVlbiAxMTIxcHgpLFxuICB4bCA6IChzY3JlZW4gOTYxcHgpLFxuICBkZXNrdG9wIDogKHNjcmVlbiA5NjFweCksXG4gIGxnIDogKHNjcmVlbiA4MDFweCksXG4gIG1kIDogKHNjcmVlbiA3MjFweCksXG4gIG1pZCA6IChzY3JlZW4gNjgwcHgpLFxuICB0YWJsZXQgOiAoc2NyZWVuIDUxMHB4KSxcbiAgc20gOiAoc2NyZWVuIDUxMHB4KSxcbiAgeHMgOiAoc2NyZWVuIDQ4MXB4KSxcbiAgeHhzIDogKHNjcmVlbiAzMjFweCksXG4gIHh4bC1tYXg6IChzY3JlZW4gKG1heC13aWR0aCAxMjYwcHgpKSxcbiAgeGwtbWF4IDogKHNjcmVlbiAobWF4LXdpZHRoIDExMjBweCkpLFxuICB0YWJsZXQtbWF4IDogKHNjcmVlbiAobWF4LXdpZHRoIDk2MHB4KSksXG4gIGxnLW1heCA6IChzY3JlZW4gKG1heC13aWR0aCA5NjBweCkpLFxuICBtZC1tYXggOiAoc2NyZWVuIChtYXgtd2lkdGggODAwcHgpKSxcbiAgc20tbWF4IDogKHNjcmVlbiAobWF4LXdpZHRoIDcyMHB4KSksXG4gIG1vYmlsZS1tYXggOiAoc2NyZWVuIChtYXgtd2lkdGggNTA5cHgpKSxcbiAgeHMtbWF4IDogKHNjcmVlbiAobWF4LXdpZHRoIDUwOXB4KSksXG4gIHh4cy1tYXg6IChzY3JlZW4gKG1heC13aWR0aCA0ODBweCkpLFxuICBicC1uYXYgOiAoc2NyZWVuIDgyMHB4KSxcbik7XG4iLCIvLyBJbXBvcnQgc2l0ZSB1dGlsaXRpZXNcbkBpbXBvcnQgJy4uLy4uLzAwLWdsb2JhbC91dGlscy9pbml0JztcblxuQG1peGluIHN1Ym5hdi1saW5rIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJG1hcmtldC1ibHVlNjtcbiAgLyogZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTsgKi9cbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG5cbkBtaXhpbiB0b2dnbGUtYXJyb3cge1xuICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGltZy1kaXJ9L21lbnUtZHJvcGRvd24taW5kaWNhdG9yLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xuICBib3R0b206IC00NHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMjBweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtaXhpbiBibG9jay1zaGFkb3cge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAwICRncmF5NC0tdHJhbnMzMDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXkxO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5lZGwtc3VibmF2LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAxO1xuXG4gICYuZWRsLXN1Ym5hdi0taGVhZGVyIHtcbiAgICAmIGgyIHtcbiAgICAgIEBpbmNsdWRlIHN0eWxlLWgzO1xuXG4gICAgICBiYWNrZ3JvdW5kOiAkbWFya2V0LWJsdWU7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMCAxMHB4O1xuXG4gICAgICAmIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYgLmVkbC1zdWJuYXYtLWluZGljYXRvciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2UtaW4tb3V0O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuXG4gICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5lZGwtc3VibmF2LS1pbmRpY2F0b3Ige1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmVkbC1zdWJuYXYtLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYgI3N1Ym5hdl9fdGFyZ2V0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAmIC5tZW51LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdDtcblxuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNXB4IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHRyYW5zaXRpb246IG1hcmdpbiAwLjM1cyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDogMzAwcHg7XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogLTQwMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLmVkbC1zdWJuYXYtLXBhcmVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmID4gYSB7XG4gICAgICBAaW5jbHVkZSBzdHlsZS1ib2R5O1xuXG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5MTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTtcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgcGFkZGluZzogMjBweCA1cHggMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICRncmF5MztcbiAgICAgICAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KSByb3RhdGUoOTBkZWcpO1xuICAgICAgfVxuXG4gICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KSByb3RhdGUoLTkwZGVnKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmVkbC1zaG93aGlkZS0tdHJpZ2dlcikge1xuICAgICAgICBjb2xvcjogJG1hcmtldC1ibHVlNjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmIC5zdWJuYXYtb3ZlcnZpZXcge1xuICAgICAgQGluY2x1ZGUgc3VibmF2LWxpbms7XG5cbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gIH1cblxuICAmIC5lZGwtc3VibmF2LS1wYW5lbCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdDtcblxuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIHdpZHRoOiAyMjBweDtcblxuICAgICYgYSB7XG4gICAgICBAaW5jbHVkZSBzdWJuYXYtbGluaztcblxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYgYTpob3ZlcixcbiAgICAmIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkZ3JheTQ7XG4gICAgfVxuXG4gICAgJiBhLmlzLWFjdGl2ZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICAmIC5lZGwtc3VibmF2LS1saXN0Om5vdChbaGlkZGVuXSkge1xuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG4gIH1cblxuICAmIC5lZGwtc3VibmF2LS1vdmVydmlldy1pdGVtIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXkxO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICB9XG5cbiAgJiAuZWRsLXN1Ym5hdi0tY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxufVxuXG4vLyAjIyMjIyMjIyMjIFRBQkxFVCAjIyMjIyMjIyMjIC8vXG5AaW5jbHVkZSBicmVha3BvaW50KGJwKHRhYmxldCkpIHtcbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIHtcbiAgICAmIC5tZW51LWNvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0MHB4KTtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgIHdpZHRoOiA0MTJweDtcblxuICAgICAgJltoaWRkZW5dIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC01MTJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmVkbC1zdWJuYXYtLWhlYWRlciB7XG4gICAgICAmIGgyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZWRsLXN1Ym5hdi0tcGFyZW50IHtcbiAgICAgICYgLnN1Ym5hdi1vdmVydmlldyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZWRsLXN1Ym5hdi0tcGFuZWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICB3aWR0aDogMzEwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vICMjIyMjIyMjIyMgREVTS1RPUCAjIyMjIyMjIyMjIC8vXG5AaW5jbHVkZSBicmVha3BvaW50KGJwKHN1Ym5hdi1kZXNrKSkge1xuICAuZWRsLXN1Ym5hdi0td3JhcHBlcixcbiAgLmVkbC1zdWJuYXYtLXdyYXBwZXItcm93IHtcbiAgICBiYWNrZ3JvdW5kOiAkbWFya2V0LWJsdWU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZWRsLXN1Ym5hdi0td3JhcHBlci1yb3cge1xuICAgIG1heC13aWR0aDogMTI4MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJi5lZGwtc3VibmF2LS1oZWFkZXIgaDIge1xuICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgMTBweDtcblxuICAgICAgJiAuZWRsLXN1Ym5hdi0taW5kaWNhdG9yIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgJi5lZGwtc3VibmF2LS1tZW51IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAgICYgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0sXG4gICAgJiAubWVudS1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy1ib3R0b206IGluaXRpYWw7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICYgLmVkbC1zdWJuYXYtLXBhcmVudDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYgLmVkbC1zdWJuYXYtLXBhcmVudCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDozMHB4O1xuXG4gICAgICAgICYgLmVkbC1zdWJuYXYtLXBhbmVsOm5vdChbaGlkZGVuXSkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICYgLmVkbC1zdWJuYXYtLXBhbmVsIHtcbiAgICAgICAgICBAaW5jbHVkZSBibG9jay1zaGFkb3c7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXkxO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTM0MHB4O1xuICAgICAgICAgIG1pbi13aWR0aDogNzEwcHg7XG4gICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA0NHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICYgLmVkbC1zdWJuYXYtLWNoaWxkcmVuID4gdWwge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICAgICAgY29sdW1uLWdhcDogMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmIC5lZGwtc3VibmF2LS1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmIC5lZGwtc3VibmF2LS1vdmVydmlldy1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAtMTBweCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAmIHAge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgLmVkbC1zdWJuYXYtLWhhcy1wYW5lbC0xLWNvbCArIC5lZGwtc3VibmF2LS1wYW5lbCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNTVweDtcbiAgICAgICAgICBtaW4td2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICAgICAgJiAuZWRsLXN1Ym5hdi0tbGlzdCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogUmVtb3Zpbmc7IHRoZXNlIGlmIG5lZWRlZCBzaG91bGQgYmUgaW4gdGhlIHRoZW1lIGZpbGUgKi9cbiAgICAgICAgLypcbiAgICAgICAgJiAuZWRsLXN1Ym5hdi0tcGFuZWxbYXJpYS1sYWJlbGxlZGJ5PVwic3VibmF2X190YWJJRF8zXCJdIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmIC5lZGwtc3VibmF2LS1wYW5lbFthcmlhLWxhYmVsbGVkYnk9XCJzdWJuYXZfX3RhYklEXzRcIl0ge1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiAuZWRsLXN1Ym5hdi0tcGFuZWxbYXJpYS1sYWJlbGxlZGJ5PVwic3VibmF2X190YWJJRF81XCJdIHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgLmVkbC1zdWJuYXYtLXBhbmVsW2FyaWEtbGFiZWxsZWRieT1cInN1Ym5hdl9fdGFiSURfNlwiXSB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgbWluLXdpZHRoOiBmaXQtY29udGVudDtcblxuICAgICAgICAgICYgLmVkbC1zdWJuYXYtLWxpc3Qge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAqL1xuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcblxuICAgICAgICAgICZbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b2dnbGUtYXJyb3c7XG5cbiAgICAgICAgICAgIGJvdHRvbTogLTQ2cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiBhLmFjdGl2ZS1saW5rIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8qXG4gICAgICAgIEZpcnN0IHR3byBzdWJuYXYgZHJvcGRvd25zIHN0YXJ0IGF0IGxlZnQgZWRnZS5cbiAgICAgICAgTm90ZTogZmlyc3QgYHBhbmVsYCBpcyBoaWRkZW4gYXQgZGVza3RvcDsgdGhlcmVmb3JlIHNlbGVjdGluZyAzLlxuICAgICAgKi9cbiAgICAgICYgLmVkbC1zdWJuYXYtLXBhcmVudDpudGgtY2hpbGQoLW4rMikge1xuICAgICAgICAmIC5lZGwtc3VibmF2LS1wYW5lbCB7XG4gICAgICAgICAgbGVmdDogMXZ3O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qXG4gICAgICAgIExhc3QgdHdvIHN1Ym5hdiBkcm9wZG93bnMgc3RhcnQgYXQgcmlnaHQgZWRnZS5cbiAgICAgICovXG4gICAgICAmIC5lZGwtc3VibmF2LS1wYXJlbnQ6bnRoLWxhc3QtY2hpbGQoLW4rMSkge1xuICAgICAgICAmIDpub3QoLmVkbC1zdWJuYXYtLWhhcy1wYW5lbC0xLWNvbCkgfiAuZWRsLXN1Ym5hdi0tcGFuZWwge1xuICAgICAgICAgIHJpZ2h0OiAxdnc7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiAuZWRsLXN1Ym5hdi0tcGFyZW50Om50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAmIC5lZGwtc3VibmF2LS1wYXJlbnQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgIHBhZGRpbmc6IDAgNDBweCAxOHB4O1xuXG4gICAgICAgICAgLyogJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTo6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIH0gKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvKiAkYmFzZS1mb250OiAnT3BlbiBTYW5zJywgQXJpYWwsIHNhbnMtc2VyaWY7ICovXG4vKiAkYmFzZS1saW5lLWhlaWdodDogMS42OyAqL1xuLyogZGVmYXVsdCAqL1xuLyogYmFzZSBmb250IHNpemUgd2l0aCBzaG9ydGVyIGxpbmUtaGVpZ2h0ICovXG4vKiBoNSAqL1xuLyogaDQgKi9cbi8qIGgzICovXG4vKiBoMiAqL1xuLyogaDEgKi9cbi8qXG5Vc2UgdGhpcyBtaXhpbiB0byBhZGQgZm9udCBzaXplcyBmcm9tIHRoZSBtYXBzIGFib3ZlIHdpdGggbGluZS1oZWlnaHRzIGFuZCBtcSdzIGluY2x1ZGVkLlxuZWc6IEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXh4eHgtbGFyZ2UpO1xuKi9cbi8qXG5VdGlsaXR5IGZ1bmN0aW9uIGZvciBtaXhpbiBmb250LXNpemUuXG4qL1xuLyogaDQgKi9cbi8qIGgzICovXG4vKiBoNCAqL1xuLypcbkZ1bmN0aW9uIHNvIHdlIGRvbid0IGhhdmUgdG8gdXNlIG1hcC1nZXQgd2l0aCAkYnJlYWtwb2ludHMuXG5lZzogYnAoeHhsKSBvciBAaW5jbHVkZSBicmVha3BvaW50KGJwKHh4bCkpXG4qL1xuLyogU3RhbmRhcmQgcmFuZ2VzIGZyb20gZGVzaWduXG4gKiAgIFwiZGVza3RvcFwiIDogOTYxIGFuZCB1cFxuICogICBcInRhYmxldFwiICA6IDUxMCB0aHJ1IDk2MFxuICogICBcIm1vYmlsZVwiICA6IDMyMCB0aHJ1IDUwOVxuICovXG4uZWRsLXN1Ym5hdi1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMTtcbn1cbi5lZGwtc3VibmF2LWNvbnRhaW5lci5lZGwtc3VibmF2LS1oZWFkZXIgaDIge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGJhY2tncm91bmQ6ICMzRTc1Q0Y7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAyMHB4IDAgMTBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUxMHB4KSB7XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lci5lZGwtc3VibmF2LS1oZWFkZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIuZWRsLXN1Ym5hdi0taGVhZGVyIGgyIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyLmVkbC1zdWJuYXYtLWhlYWRlciBoMiAuZWRsLXN1Ym5hdi0taW5kaWNhdG9yIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDQwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZS1pbi1vdXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIuZWRsLXN1Ym5hdi0taGVhZGVyIGgyW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmVkbC1zdWJuYXYtLWluZGljYXRvciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyLmVkbC1zdWJuYXYtLW1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyICNzdWJuYXZfX3RhcmdldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDAuMzVzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMzAwcHg7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IC00MDBweDtcbn1cbi5lZGwtc3VibmF2LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCA+IGEge1xuICBjb2xvcjogIzNEM0Y0MjtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDlEQURCO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmc6IDIwcHggNXB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgPiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGNvbG9yOiAjN0E3Rjg1O1xuICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IFByb1wiO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB0b3A6IDE1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlLWluLW91dDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpIHJvdGF0ZSg5MGRlZyk7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCA+IGFbYXJpYS1leHBhbmRlZD10cnVlXTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCkgcm90YXRlKC05MGRlZyk7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCA+IGE6bm90KC5lZGwtc2hvd2hpZGUtLXRyaWdnZXIpIHtcbiAgY29sb3I6ICMyRDYyQjc7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCA+IGE6bm90KC5lZGwtc2hvd2hpZGUtLXRyaWdnZXIpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCAuc3VibmF2LW92ZXJ2aWV3IHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzJENjJCNztcbiAgLyogZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTsgKi9cbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhbmVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMjVweDtcbiAgd2lkdGg6IDIyMHB4O1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYW5lbCBhIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzJENjJCNztcbiAgLyogZm9udC1zaXplOiB2YXIoLS1uYXYtZm9udC1zaXplKTsgKi9cbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5lZGwtc3VibmF2LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFuZWwgYTpob3ZlciwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYW5lbCBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjM0QzRjQyO1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYW5lbCBhLmlzLWFjdGl2ZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1saXN0Om5vdChbaGlkZGVuXSkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLW92ZXJ2aWV3LWl0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q5REFEQjtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG4uZWRsLXN1Ym5hdi1jb250YWluZXIgLmVkbC1zdWJuYXYtLWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTEwcHgpIHtcbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNDBweCk7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIHdpZHRoOiA0MTJweDtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0ge1xuICAgIG1hcmdpbi1sZWZ0OiAtNTEycHg7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyLmVkbC1zdWJuYXYtLWhlYWRlciBoMiB7XG4gICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgLnN1Ym5hdi1vdmVydmlldyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYW5lbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgd2lkdGg6IDMxMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjIwcHgpIHtcbiAgLmVkbC1zdWJuYXYtLXdyYXBwZXIsXG4gIC5lZGwtc3VibmF2LS13cmFwcGVyLXJvdyB7XG4gICAgYmFja2dyb3VuZDogIzNFNzVDRjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZWRsLXN1Ym5hdi0td3JhcHBlci1yb3cge1xuICAgIG1heC13aWR0aDogMTI4MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIuZWRsLXN1Ym5hdi0taGVhZGVyIGgyIHtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMTBweDtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIuZWRsLXN1Ym5hdi0taGVhZGVyIGgyIC5lZGwtc3VibmF2LS1pbmRpY2F0b3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyLmVkbC1zdWJuYXYtLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0sIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiBpbml0aWFsO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLypcbiAgICAgIEZpcnN0IHR3byBzdWJuYXYgZHJvcGRvd25zIHN0YXJ0IGF0IGxlZnQgZWRnZS5cbiAgICAgIE5vdGU6IGZpcnN0IGBwYW5lbGAgaXMgaGlkZGVuIGF0IGRlc2t0b3A7IHRoZXJlZm9yZSBzZWxlY3RpbmcgMy5cbiAgICAqL1xuICAgIC8qXG4gICAgICBMYXN0IHR3byBzdWJuYXYgZHJvcGRvd25zIHN0YXJ0IGF0IHJpZ2h0IGVkZ2UuXG4gICAgKi9cbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudDpmaXJzdC1jaGlsZCwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50OmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXJbaGlkZGVuXSAuZWRsLXN1Ym5hdi0tcGFyZW50LCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAvKiBSZW1vdmluZzsgdGhlc2UgaWYgbmVlZGVkIHNob3VsZCBiZSBpbiB0aGUgdGhlbWUgZmlsZSAqL1xuICAgIC8qXG4gICAgJiAuZWRsLXN1Ym5hdi0tcGFuZWxbYXJpYS1sYWJlbGxlZGJ5PVwic3VibmF2X190YWJJRF8zXCJdIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICB9XG5cbiAgICAmIC5lZGwtc3VibmF2LS1wYW5lbFthcmlhLWxhYmVsbGVkYnk9XCJzdWJuYXZfX3RhYklEXzRcIl0ge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJiAuZWRsLXN1Ym5hdi0tcGFuZWxbYXJpYS1sYWJlbGxlZGJ5PVwic3VibmF2X190YWJJRF81XCJdIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgICYgLmVkbC1zdWJuYXYtLXBhbmVsW2FyaWEtbGFiZWxsZWRieT1cInN1Ym5hdl9fdGFiSURfNlwiXSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1pbi13aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICYgLmVkbC1zdWJuYXYtLWxpc3Qge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICB9XG4gICAgfVxuICAgICovXG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lcltoaWRkZW5dIC5lZGwtc3VibmF2LS1wYXJlbnQgLmVkbC1zdWJuYXYtLXBhbmVsOm5vdChbaGlkZGVuXSksIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCAuZWRsLXN1Ym5hdi0tcGFuZWw6bm90KFtoaWRkZW5dKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXJbaGlkZGVuXSAuZWRsLXN1Ym5hdi0tcGFyZW50IC5lZGwtc3VibmF2LS1wYW5lbCwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50IC5lZGwtc3VibmF2LS1wYW5lbCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDYxLCA2MywgNjYsIDAuMyk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0Q5REFEQjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRDlEQURCO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBtYXJnaW4tbGVmdDogLTM0MHB4O1xuICAgIG1pbi13aWR0aDogNzEwcHg7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0NHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudCAuZWRsLXN1Ym5hdi0tcGFuZWwgLmVkbC1zdWJuYXYtLWNoaWxkcmVuID4gdWwsIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCAuZWRsLXN1Ym5hdi0tcGFuZWwgLmVkbC1zdWJuYXYtLWNoaWxkcmVuID4gdWwge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAzMHB4O1xuICB9XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXJbaGlkZGVuXSAuZWRsLXN1Ym5hdi0tcGFyZW50IC5lZGwtc3VibmF2LS1wYW5lbCAuZWRsLXN1Ym5hdi0tY2hpbGQsIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCAuZWRsLXN1Ym5hdi0tcGFuZWwgLmVkbC1zdWJuYXYtLWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lcltoaWRkZW5dIC5lZGwtc3VibmF2LS1wYXJlbnQgLmVkbC1zdWJuYXYtLXBhbmVsIC5lZGwtc3VibmF2LS1vdmVydmlldy1pdGVtLCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgLmVkbC1zdWJuYXYtLXBhbmVsIC5lZGwtc3VibmF2LS1vdmVydmlldy1pdGVtIHtcbiAgICBtYXJnaW46IDIwcHggLTEwcHggMDtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXJbaGlkZGVuXSAuZWRsLXN1Ym5hdi0tcGFyZW50IC5lZGwtc3VibmF2LS1wYW5lbCAuZWRsLXN1Ym5hdi0tb3ZlcnZpZXctaXRlbSBwLCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgLmVkbC1zdWJuYXYtLXBhbmVsIC5lZGwtc3VibmF2LS1vdmVydmlldy1pdGVtIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lcltoaWRkZW5dIC5lZGwtc3VibmF2LS1wYXJlbnQgLmVkbC1zdWJuYXYtLWhhcy1wYW5lbC0xLWNvbCArIC5lZGwtc3VibmF2LS1wYW5lbCwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50IC5lZGwtc3VibmF2LS1oYXMtcGFuZWwtMS1jb2wgKyAuZWRsLXN1Ym5hdi0tcGFuZWwge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTU1cHg7XG4gICAgbWluLXdpZHRoOiBmaXQtY29udGVudDtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudCAuZWRsLXN1Ym5hdi0taGFzLXBhbmVsLTEtY29sICsgLmVkbC1zdWJuYXYtLXBhbmVsIC5lZGwtc3VibmF2LS1saXN0LCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgLmVkbC1zdWJuYXYtLWhhcy1wYW5lbC0xLWNvbCArIC5lZGwtc3VibmF2LS1wYW5lbCAuZWRsLXN1Ym5hdi0tbGlzdCB7XG4gICAgY29sdW1uLWNvdW50OiAxO1xuICB9XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXJbaGlkZGVuXSAuZWRsLXN1Ym5hdi0tcGFyZW50ID4gYSwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50ID4gYSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICB9XG4gIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXJbaGlkZGVuXSAuZWRsLXN1Ym5hdi0tcGFyZW50ID4gYVthcmlhLWV4cGFuZGVkPWZhbHNlXTo6YWZ0ZXIsIC5lZGwtc3VibmF2LWNvbnRhaW5lciAubWVudS1jb250YWluZXIgLmVkbC1zdWJuYXYtLXBhcmVudCA+IGFbYXJpYS1leHBhbmRlZD1mYWxzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lcltoaWRkZW5dIC5lZGwtc3VibmF2LS1wYXJlbnQgPiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06OmFmdGVyLCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgPiBhW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9lYnNjb19kZXNpZ25fbGlicmFyeS9pbWcvbWVudS1kcm9wZG93bi1pbmRpY2F0b3IucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xuICAgIGJvdHRvbTogLTQ0cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgei1pbmRleDogMTtcbiAgICBib3R0b206IC00NnB4O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudCBhLmFjdGl2ZS1saW5rLCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQgYS5hY3RpdmUtbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lcltoaWRkZW5dIC5lZGwtc3VibmF2LS1wYXJlbnQ6bnRoLWNoaWxkKC1uKzIpIC5lZGwtc3VibmF2LS1wYW5lbCwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50Om50aC1jaGlsZCgtbisyKSAuZWRsLXN1Ym5hdi0tcGFuZWwge1xuICAgIGxlZnQ6IDF2dztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudDpudGgtbGFzdC1jaGlsZCgtbisxKSA6bm90KC5lZGwtc3VibmF2LS1oYXMtcGFuZWwtMS1jb2wpIH4gLmVkbC1zdWJuYXYtLXBhbmVsLCAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyIC5lZGwtc3VibmF2LS1wYXJlbnQ6bnRoLWxhc3QtY2hpbGQoLW4rMSkgOm5vdCguZWRsLXN1Ym5hdi0taGFzLXBhbmVsLTEtY29sKSB+IC5lZGwtc3VibmF2LS1wYW5lbCB7XG4gICAgcmlnaHQ6IDF2dztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudDpudGgtbGFzdC1jaGlsZCgyKSwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50Om50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lcltoaWRkZW5dIC5lZGwtc3VibmF2LS1wYXJlbnQ6bGFzdC1jaGlsZCwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuZWRsLXN1Ym5hdi1jb250YWluZXIgLm1lbnUtY29udGFpbmVyW2hpZGRlbl0gLmVkbC1zdWJuYXYtLXBhcmVudDpsYXN0LWNoaWxkID4gYSwgLmVkbC1zdWJuYXYtY29udGFpbmVyIC5tZW51LWNvbnRhaW5lciAuZWRsLXN1Ym5hdi0tcGFyZW50Omxhc3QtY2hpbGQgPiBhIHtcbiAgICBwYWRkaW5nOiAwIDQwcHggMThweDtcbiAgICAvKiAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjphZnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgfSAqL1xuICB9XG59IiwiLy8gRUJTQ08gTmF2eVxuJGVic2NvLW5hdnk6ICMwMDJmNTY7XG4kZWJzY28tbmF2eS0taG92ZXI6ICMwMDI0NDI7XG4kZWJzY28tbmF2eTA1OiAjMDAyRjU2O1xuXG4vLyBNYXJrZXQgQmx1ZVxuJG1hcmtldC1ibHVlOiAjM0U3NUNGO1xuJG1hcmtldC1ibHVlLS1ob3ZlcjogIzJENjJCNztcbiRtYXJrZXQtYmx1ZTY6ICMyRDYyQjc7XG4kbWFya2V0LWJsdWUtLXRpbnQzOiAjOEJBQ0UyO1xuJG1hcmtldC1ibHVlLS1kYXJrMDogIzI1NTA5NjtcbiRtYXJrZXQtYmx1ZTc6ICMyNTUwOTY7XG4kbWFya2V0LS1ibHVlLS1kYXJrMTogIzFEM0Y3NTtcbiRtYXJrZXQtYmx1ZTg6ICMxRDNGNzU7XG4kbWFya2V0LS1ibHVlLS1saWdodDA6ICM2NTkxRDk7XG5cbi8vIExhZ29vblxuJGxhZ29vbjogIzAwNzU4RDtcbiRsYWdvb24tLWhvdmVyOiAjMDA2NDc5O1xuXG4vLyBEaXNjb1xuJGRpc2NvOiAjQjQxNzgyO1xuJGRpc2NvLS1ob3ZlcjogIzkwMTI2ODtcbiRkaXNjby0tdGludDM6ICNEMjc0QjQ7XG5cbi8vIFR1cnRsZVxuJHR1cnRsZTogIzI2ODc0MjtcbiR0dXJ0bGUtLWhvdmVyOiAjMUQ2NzMyO1xuXG4vLyBCdXR0ZXJcbiRidXR0ZXIwNTogI0ZBQjczQztcblxuLy8gQ29tbW9uIENvbG9yc1xuJHdoaXRlOiAjZmZmO1xuJHdoaXRlLS1zZW1pOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4kd2hpdGUtLXNoZWVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xuJHdoaXRlLS10cmFuc3BhcmVudDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiR3aGl0ZS0tbWlkOiByZ2JhKDI1NSwyNTUsMjU1LDAuNTUpO1xuJGJsYWNrOiAjMDAwO1xuJG92ZXJsYXktLXNlbWk6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRibGFjay0tcGl0Y2g6ICMwMDBFMTk7XG5cbi8vIEdyYXlzXG4kZ3JheTA6ICNFRkVGRUY7XG4kZ3JheTE6ICNEOURBREI7XG4kZ3JheTI6ICNCOEJCQkY7XG4kZ3JheTM6ICM3QTdGODU7XG4kZ3JheTQ6ICMzRDNGNDI7XG4vLyAkZ3JheTQgMzAlIG9wYWNpdHlcbiRncmF5NC0tdHJhbnMzMDogcmdiYSg2MSwgNjMsIDY2LCAwLjMpO1xuJGdyYXk1OiAjMjcyOTJBO1xuJGdyYXk2OiAjOEQ5MDk1O1xuXG4vLyBDb2xvciBVc2FnZXNcbiR0ZXh0LWNvbG9yOiAkZ3JheTQ7XG4kbGluay1jb2xvcjogJG1hcmtldC1ibHVlNjtcbiRwYWdlLWhlYWRlci1jb2xvcjogJHdoaXRlO1xuJHBhZ2UtZm9vdGVyLWNvbG9yOiAkZWJzY28tbmF2eTtcblxuLy8gQnV0dG9uIFNoYWRvd3NcbiRidG4tc2hhZG93OiByZ2JhKDM5LCA0MSwgNDIsIDAuMjUpO1xuJGJ0bi1zaGFkb3ctLWhvdmVyOiByZ2JhKDM5LCA0MSwgNDIsIDAuMzUpO1xuXG4vLyBCb3ggU2hhZG93c1xuJGJveC1zaGFkb3c6IDAgMnB4IDJweCAwICRidG4tc2hhZG93O1xuJGJveC1zaGFkb3ctLWhvdmVyOiAwIDJweCA0cHggMnB4ICRidG4tc2hhZG93LS1ob3ZlcjtcbiRib3gtc2hhZG93LS1ob3ZlcjI6IDAgMTBweCAxMHB4IC02cHggJGJ0bi1zaGFkb3ctLWhvdmVyO1xuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWl4aW5zXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQ2xlYXJmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IGFjY2Vzc2libGUuXG4vLyBAc2VlIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xufVxuXG4vLyBUdXJucyBvZmYgdGhlIGVsZW1lbnQtaW52aXNpYmxlIGVmZmVjdC5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGNsaXA6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiBieSBkZWZhdWx0LCBidXQgdmlzaWJsZSB3aGVuIGZvY3VzZWQuXG5AbWl4aW4gZWxlbWVudC1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiBmb3Igd29ya2luZyB3aXRoIFNhc3MgbWFwcy5cbi8vIEV4YW1wbGU6IEBpbmNsdWRlIHByaW50KCRjb25maWd1cmF0aW9uKTtcbkBtaXhpbiBwcmludCgkZGVjbGFyYXRpb25zKSB7XG4gIEBlYWNoICRwcm9wZXJ0eSwgJHZhbHVlIGluICRkZWNsYXJhdGlvbnMge1xuICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICB9XG59XG5cbi8vIHZlcnRpY2FsIGFsaWduIG1peGluXG5AbWl4aW4gdmVydGljYWwtYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8gaG9yaXpvbnRhbCBhbGlnbiBtaXhpblxuQG1peGluIGhvcml6b250YWwtYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLyBjZW50ZXIgYWxpZ24gbWl4aW5cbkBtaXhpbiBjZW50ZXItYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vIFJlc2V0IGxpc3QgKGkuZS4gbWVudXMpXG5AbWl4aW4gcmVzZXQtbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiJdfQ== */
