/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].use[1]!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].use[3]!../cmsplugins/cmsplugin_snow_sticky_navigation/assets/scss/cmsplugin_snow_sticky_navigation.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Define the sticky nav component styles.
 *
 * This component is used on product pages.
 * @copyright Copyright (c) 2017 SteelSeries
 */
/**
 * File containing all the SCSS Variables
 */
/**
 * File containing all the SCSS Variables
 */
@-webkit-keyframes sticky-nav__appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes sticky-nav__appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.sticky-nav-container {
  height: 55px;
  display: none;
}
@media (min-width: 992px) {
  .sticky-nav-container {
    display: block;
  }
}

.sticky-nav {
  top: 0;
  z-index: 1100;
  width: 100%;
  border-bottom: 1px solid hsl(0deg, 0%, 92%);
  padding: 0 1em;
}
@media (min-width: 992px) {
  .sticky-nav {
    padding: 0 2em;
  }
}
.sticky-nav.sticky-nav__theme-light {
  background: hsl(0deg, 0%, 100%);
  color: hsl(0deg, 0%, 7%);
}
.sticky-nav.sticky-nav__theme-light .sticky-nav-brand {
  color: hsl(0deg, 0%, 7%);
}
.sticky-nav.sticky-nav__theme-light .sticky-nav__list-item {
  color: hsl(0deg, 0%, 7%);
}
.sticky-nav.sticky-nav__theme-light .sticky-nav__list-item:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.sticky-nav.sticky-nav__theme-dark {
  background: hsl(0deg, 0%, 0%);
  color: hsl(0deg, 0%, 100%);
}
.sticky-nav.sticky-nav__theme-dark .sticky-nav-brand {
  color: hsl(0deg, 0%, 100%);
}
.sticky-nav.sticky-nav__theme-dark .sticky-nav__list-item {
  color: hsl(0deg, 0%, 100%);
}
.sticky-nav.sticky-nav__theme-dark .sticky-nav__list-item:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
.sticky-nav.is-sticky {
  position: fixed;
  border-bottom: none;
  -webkit-box-shadow: 0 0 11px rgba(18, 18, 18, 0.11);
          box-shadow: 0 0 11px rgba(18, 18, 18, 0.11);
}
.sticky-nav.is-sticky .sticky-nav__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-animation: sticky-nav__appear 500ms forwards;
          animation: sticky-nav__appear 500ms forwards;
}
.sticky-nav.is-sticky .sticky_nav__list {
  display: none;
}
@media (min-width: 992px) {
  .sticky-nav.is-sticky .sticky_nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.sticky-nav.is-sticky .sticky-nav__list-item {
  border-radius: 0;
}

.sticky-nav__inner {
  position: relative;
  height: 100%;
}

.sticky-nav-brand {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sticky-nav-brand svg {
  height: auto;
  width: 30px;
}

.sticky-nav__left,
.sticky-nav__right {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.sticky-nav__left {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1;
  font-family: Replica Pro;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 1;
}
.sticky-nav__left svg {
  position: relative;
  top: -1px;
  margin-right: 5px;
}

.sticky-nav__list {
  display: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
@media (min-width: 992px) {
  .sticky-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.sticky-nav__list-item {
  height: 100%;
  -webkit-transition: all 100ms ease;
  transition: all 100ms ease;
  -webkit-transition-property: border-color, background-color, font-weight;
  transition-property: border-color, background-color, font-weight;
  display: inline-block;
  font-size: 1.6rem;
  white-space: nowrap;
  line-height: 55px;
  padding: 0 0.5em;
  text-decoration: none;
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}
@media (min-width: 1200px) {
  .sticky-nav__list-item {
    padding: 0 0.75em;
  }
}
@media (min-width: 1600px) {
  .sticky-nav__list-item {
    padding: 0 1.25em;
  }
}
.sticky-nav__list-item:hover {
  text-decoration: none;
}
.sticky-nav__list-item:active {
  outline: none;
}
.sticky-nav__list-item.is-active {
  -webkit-box-shadow: 0 -2px 0 0 hsl(18deg, 98%, 50%) inset;
          box-shadow: 0 -2px 0 0 hsl(18deg, 98%, 50%) inset;
  text-decoration: none;
  font-weight: bold;
  outline: none;
}
.sticky-nav__list-item:focus {
  outline-offset: -5px;
}

.sticky-nav__right {
  position: absolute;
  top: 2px;
  bottom: 0;
  right: 0;
  display: none;
  opacity: 0;
  text-align: right;
}
.sticky-nav__right .button {
  display: block;
  padding: 0.4em 1em;
  font-size: 1.75rem;
  font-weight: bold;
}

.sticky-nav__price {
  position: relative;
  margin-right: 10px;
}
.sticky-nav__price .amount {
  font-size: 1.8rem;
  font-weight: 600;
}

.sticky-nav__shipping {
  font-size: 1.4rem;
  color: hsl(140deg, 56%, 32%);
  display: block;
}

.anchor {
  line-height: 0;
  font-size: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi4vY3NzL2Ntc3BsdWdpbl9zbm93X3N0aWNreV9uYXZpZ2F0aW9uLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7RUFBQTtBQ0FBOztFQUFBO0FBQUE7O0VBQUE7QURZQTtFQUNFO0lBQ0U7RUFDRjtFQUNBO0lBQ0U7RUFDRjtBQUNGO0FBUEE7RUFDRTtJQUNFO0VBQ0Y7RUFDQTtJQUNFO0VBQ0Y7QUFDRjtBQUVBO0VBQ0UsWUFaa0I7RUFhbEI7QUFBRjtBRXVDSTtFRnpDSjtJQUtJO0VBQ0Y7QUFDRjs7QUFFQTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QUFBRjtBRTBCSTtFRmhDSjtJQVNJO0VBQ0Y7QUFDRjtBQUNFO0VBQ0UsK0JDdENJO0VEdUNKLHdCQ2hCTztBRGlCWDtBQUNJO0VBQ0Usd0JDbkJLO0FEb0JYO0FBQ0k7RUFDRSx3QkN0Qks7QUR1Qlg7QUFDTTtFQUNFO0FBQ1I7QUFHRTtFQUNFLDZCQ3BESTtFRHFESiwwQkN0REk7QURxRFI7QUFHSTtFQUNFLDBCQ3pERTtBRHdEUjtBQUdJO0VBQ0UsMEJDNURFO0FEMkRSO0FBR007RUFDRTtBQURSO0FBTUU7RUFDRTtFQUNBO0VBQ0E7VUFBQTtBQUpKO0FBTUk7RUFDRTtFQUFBO0VBQUE7RUFDQTtVQUFBO0FBSk47QUFPSTtFQUNFO0FBTE47QUVqQkk7RUZxQkE7SUFLSTtJQUFBO0lBQUE7RUFMTjtBQUNGO0FBUUk7RUFDRTtBQU5OOztBQVdBO0VBQ0U7RUFDQTtBQVJGOztBQVdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7TUFBQTtVQUFBO0FBUkY7QUFVRTtFQUNFO0VBQ0E7QUFSSjs7QUFhQTs7RUFFRTtNQUFBO1VBQUE7QUFWRjs7QUFhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQUE7RUFBQTtFQUNBO0FBWkY7QUFjRTtFQUNFO0VBQ0E7RUFDQTtBQVpKOztBQWtCQTtFQUNFO0VBQ0E7TUFBQTtVQUFBO0VBQ0E7TUFBQTtVQUFBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QUFoQkY7QUU5RUk7RUZzRko7SUFXSTtJQUFBO0lBQUE7RUFmRjtBQUNGOztBQWtCQTtFQUNFO0VBQ0E7RUFBQTtFQUNBO0VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQSxpQkFoS2tCO0VBaUtsQjtFQUNBO0VBQ0E7RUFDQTtBQWZGO0FFakdJO0VGcUdKO0lBY0k7RUFkRjtBQUNGO0FFdEdJO0VGcUdKO0lBa0JJO0VBYkY7QUFDRjtBQWVFO0VBQ0U7QUFiSjtBQWdCRTtFQUNFO0FBZEo7QUFpQkU7RUFDRTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0FBZko7QUFrQkU7RUFDRTtBQWhCSjs7QUFzQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBQXBCRjtBQXNCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBcEJKOztBQXdCQTtFQUNFO0VBQ0E7QUFyQkY7QUF1QkU7RUFDRTtFQUNBO0FBckJKOztBQXlCQTtFQUNFO0VBQ0EsNEJDNUxVO0VENkxWO0FBdEJGOztBQTBCQTtFQUNFO0VBQ0E7QUF2QkYsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uLi9jbXNwbHVnaW5zL2Ntc3BsdWdpbl9zbm93X3N0aWNreV9uYXZpZ2F0aW9uL2Fzc2V0cy9zY3NzL2Ntc3BsdWdpbl9zbm93X3N0aWNreV9uYXZpZ2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBEZWZpbmUgdGhlIHN0aWNreSBuYXYgY29tcG9uZW50IHN0eWxlcy5cbiAqXG4gKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIG9uIHByb2R1Y3QgcGFnZXMuXG4gKiBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgMjAxNyBTdGVlbFNlcmllc1xuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcblxuJHN0aWNreS1uYXYtaGVpZ2h0OiA1NXB4O1xuXG5Aa2V5ZnJhbWVzIHN0aWNreS1uYXZfX2FwcGVhciB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnN0aWNreS1uYXYtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAkc3RpY2t5LW5hdi1oZWlnaHQ7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zdGlja3ktbmF2IHtcbiAgdG9wOiAwOyAvLyBUb3Agd2lsbCBiZSBhZGp1c3RlZCBieSBKUy4gSXQncyBhIE5PT1AgdW50aWwgcG9zaXRpb24gYmVjb21lcyBmaXhlZC5cbiAgei1pbmRleDogMTEwMDtcbiAgLy8gaGVpZ2h0OiAkc3RpY2t5LW5hdi1oZWlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktMjAwO1xuICBwYWRkaW5nOiAwIDFlbTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgcGFkZGluZzogMCAyZW07IC8vIEFsaWduIHdpdGggbmF2aWdhdGlvblxuICB9XG5cbiAgJi5zdGlja3ktbmF2X190aGVtZS1saWdodCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGNvbG9yOiAkZ3JheS05MDA7XG5cbiAgICAuc3RpY2t5LW5hdi1icmFuZCB7XG4gICAgICBjb2xvcjogJGdyYXktOTAwO1xuICAgIH1cbiAgICAuc3RpY2t5LW5hdl9fbGlzdC1pdGVtIHtcbiAgICAgIGNvbG9yOiAkZ3JheS05MDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4xKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zdGlja3ktbmF2X190aGVtZS1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIC5zdGlja3ktbmF2LWJyYW5kIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIC5zdGlja3ktbmF2X19saXN0LWl0ZW0ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaXMtc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIDAgMTFweCByZ2JhKCRncmF5LTkwMCwgMC4xMSk7XG5cbiAgICAuc3RpY2t5LW5hdl9fcmlnaHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFuaW1hdGlvbjogc3RpY2t5LW5hdl9fYXBwZWFyIDUwMG1zIGZvcndhcmRzO1xuICAgIH1cblxuICAgIC5zdGlja3lfbmF2X19saXN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIC8vIEJyZWFrcG9pbnQgbXVzdCBtYXRjaCBuYXZpZ2F0aW9uIG1vYmlsZSBicmVha3BvaW50XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN0aWNreS1uYXZfX2xpc3QtaXRlbSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uc3RpY2t5LW5hdl9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnN0aWNreS1uYXYtYnJhbmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGZsZXg6IDE7XG5cbiAgc3ZnIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDMwcHg7XG4gIH1cbn1cblxuLy8gTGVmdDogcHJvZHVjdCBuYW1lXG4uc3RpY2t5LW5hdl9fbGVmdCxcbi5zdGlja3ktbmF2X19yaWdodCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5zdGlja3ktbmF2X19sZWZ0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcblxuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiBSZXBsaWNhIFBybztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBvcGFjaXR5OiAxO1xuXG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4vLyBDZW50ZXI6IG5hdmlnYXRpb24gaXRlbXNcblxuLnN0aWNreS1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4uc3RpY2t5LW5hdl9fbGlzdC1pdGVtIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyLWNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yLCBmb250LXdlaWdodDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6ICRzdGlja3ktbmF2LWhlaWdodDtcbiAgcGFkZGluZzogMCAwLjVlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIHBhZGRpbmc6IDAgMC43NWVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgIHBhZGRpbmc6IDAgMS4yNWVtO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAtMnB4IDAgMCAkb3JhbmdlLTUwMCBpbnNldDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtNXB4O1xuICB9XG59XG5cbi8vIFJpZ2h0IHNpZGU6IGJ1dHRvbiBhbmQgcHJpY2VcblxuLnN0aWNreS1uYXZfX3JpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcblxuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjRlbSAxZW07XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5zdGlja3ktbmF2X19wcmljZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gIC5hbW91bnQge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbn1cblxuLnN0aWNreS1uYXZfX3NoaXBwaW5nIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGNvbG9yOiAkZ3JlZW4tNzAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRkYgZml4OiBhbmNob3JzIGZvciBzZWN0aW9uIGp1bXBzXG4uYW5jaG9yIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbiIsIi8qKlxuICogRmlsZSBjb250YWluaW5nIGFsbCB0aGUgU0NTUyBWYXJpYWJsZXNcbiAqL1xuXG4vLyBiYXNlIGIvd1xuJHdoaXRlOiBoc2woMCwgMCUsIDEwMCUpO1xuJGJsYWNrOiBoc2woMCwgMCUsIDAlKTtcblxuLy8gZ2xvcmlvdXMgb3JhbmdlXG4kb3JhbmdlLTEwMDogaHNsKDI1LCA5NSUsIDk1JSk7XG4kb3JhbmdlLTIwMDogaHNsKDI1LCA5NSUsIDg4JSk7XG4kb3JhbmdlLTMwMDogaHNsKDE4LCA5NSUsIDc4JSk7XG4kb3JhbmdlLTQwMDogaHNsKDE4LCA5OCUsIDY1JSk7XG4kb3JhbmdlLTUwMDogaHNsKDE4LCA5OCUsIDUwJSk7XG4kb3JhbmdlLTYwMDogaHNsKDE4LCA5OCUsIDQwJSk7XG4kb3JhbmdlLTcwMDogaHNsKDE4LCAxMDAlLCAzMyUpO1xuJG9yYW5nZS04MDA6IGhzbCgxOCwgMTAwJSwgMjUlKTtcbiRvcmFuZ2UtOTAwOiBoc2woMTgsIDEwMCUsIDE2JSk7XG5cbi8vIHN1YnRsZSBncmF5XG4kZ3JheS0xMDA6IGhzbCgwLCAwJSwgOTYlKTtcbiRncmF5LTIwMDogaHNsKDAsIDAlLCA5MiUpO1xuJGdyYXktMzAwOiBoc2woMCwgMCUsIDg2JSk7XG4kZ3JheS00MDA6IGhzbCgwLCAwJSwgNzUlKTtcbiRncmF5LTUwMDogaHNsKDIxNywgNSUsIDYwJSk7XG4kZ3JheS02MDA6IGhzbCgwLCAwJSwgNDYlKTtcbiRncmF5LTcwMDogaHNsKDAsIDAlLCAzNCUpO1xuJGdyYXktODAwOiBoc2woMCwgMCUsIDIyJSk7XG4kZ3JheS05MDA6IGhzbCgwLCAwJSwgNyUpO1xuXG4vLyB2aWN0b3J5IHllbGxvd1xuJHllbGxvdy0xMDA6IGhzbCg1MSwgNzUlLCA5NiUpO1xuJHllbGxvdy0yMDA6IGhzbCg1MSwgNzUlLCA5MiUpO1xuJHllbGxvdy0zMDA6IGhzbCg1MSwgOTElLCA4NyUpO1xuJHllbGxvdy00MDA6IGhzbCg1MSwgODklLCA3OCUpO1xuJHllbGxvdy01MDA6IGhzbCg1MSwgOTAlLCA2MCUpO1xuJHllbGxvdy02MDA6IGhzbCg1MSwgOTAlLCA0NSUpO1xuJHllbGxvdy03MDA6IGhzbCg0OCwgOTYlLCAzNSUpO1xuJHllbGxvdy04MDA6IGhzbCg0OCwgMTAwJSwgMjUlKTtcbiR5ZWxsb3ctOTAwOiBoc2woNDgsIDEwMCUsIDE2JSk7XG5cbi8vIGVtZXJhbGQgZ3JlZW5cbiRncmVlbi0xMDA6IGhzbCgxMzUsIDc1JSwgOTYlKTtcbiRncmVlbi0yMDA6IGhzbCgxMzUsIDc1JSwgOTIlKTtcbiRncmVlbi0zMDA6IGhzbCgxMzUsIDc1JSwgODUlKTtcbiRncmVlbi00MDA6IGhzbCgxMzUsIDc1JSwgNzUlKTtcbiRncmVlbi01MDA6IGhzbCgxNDAsIDczJSwgNTYlKTtcbiRncmVlbi02MDA6IGhzbCgxNDAsIDcxJSwgNDUlKTtcbiRncmVlbi03MDA6IGhzbCgxNDAsIDU2JSwgMzIlKTtcbiRncmVlbi04MDA6IGhzbCgxNDAsIDgwJSwgMjIlKTtcbiRncmVlbi05MDA6IGhzbCgxNDAsIDEwMCUsIDE2JSk7XG5cbi8vIHVsdHJhbWFyaW5lIGJsdWVcbiRibHVlLTEwMDogaHNsKDIzMCwgNjAlLCA5NyUpO1xuJGJsdWUtMjAwOiBoc2woMjMwLCA2MCUsIDg4JSk7XG4kYmx1ZS0zMDA6IGhzbCgyMzAsIDYwJSwgNzUlKTtcbiRibHVlLTQwMDogaHNsKDIzNSwgNjAlLCA2MCUpO1xuJGJsdWUtNTAwOiBoc2woMjQzLCA2NSUsIDQwJSk7XG4kYmx1ZS02MDA6IGhzbCgyNDMsIDY1JSwgMzMlKTtcbiRibHVlLTcwMDogaHNsKDI0MywgNjclLCAyNSUpO1xuJGJsdWUtODAwOiBoc2woMjQzLCA3NSUsIDIwJSk7XG4kYmx1ZS05MDA6IGhzbCgyNDMsIDEwMCUsIDE2JSk7XG5cbi8vIGxveWFsIHB1cnBsZVxuJHB1cnBsZS0xMDA6IGhzbCgyNDUsIDYzJSwgOTUlKTtcbiRwdXJwbGUtMjAwOiBoc2woMjQ1LCA2MyUsIDgyJSk7XG4kcHVycGxlLTMwMDogaHNsKDI1MCwgNjMlLCA3MiUpO1xuJHB1cnBsZS00MDA6IGhzbCgyNjEsIDYzJSwgNjAlKTtcbiRwdXJwbGUtNTAwOiBoc2woMjYxLCA2MyUsIDUzJSk7XG4kcHVycGxlLTYwMDogaHNsKDI2MSwgNjMlLCA0MyUpO1xuJHB1cnBsZS03MDA6IGhzbCgyNjEsIDYzJSwgMzMlKTtcbiRwdXJwbGUtODAwOiBoc2woMjYxLCA2MyUsIDIzJSk7XG4kcHVycGxlLTkwMDogaHNsKDI2MSwgMTAwJSwgMTYlKTtcblxuLy8gcmFjaW5nIHJlZFxuJHJlZC0xMDA6IGhzbCgxNSwgNzUlLCA5NiUpO1xuJHJlZC0yMDA6IGhzbCgyMCwgNzUlLCA4OSUpO1xuJHJlZC0zMDA6IGhzbCg1LCAxMDAlLCA3NSUpO1xuJHJlZC00MDA6IGhzbCgwLCAxMDAlLCA2MyUpO1xuJHJlZC01MDA6IGhzbCgzNTIsIDk1JSwgNDYlKTtcbiRyZWQtNjAwOiBoc2woMzUyLCA5NSUsIDM4JSk7XG4kcmVkLTcwMDogaHNsKDM1MiwgOTYlLCAzMCUpO1xuJHJlZC04MDA6IGhzbCgzNTIsIDk0JSwgMjIlKTtcbiRyZWQtOTAwOiBoc2woMzUyLCAxMDAlLCAxNiUpO1xuXG4vLyBTb2NpYWwgY29sb3JzXG4kZmFjZWJvb2stYmx1ZTogaHNsKDIyMSwgNDQlLCA0MSUpO1xuJHR3aXR0ZXItYmx1ZTogaHNsKDIwMywgODklLCA1MyUpO1xuJGluc3RhZ3JhbS1waW5rOiBoc2woMzM2LCA2OSUsIDUyJSk7XG4keW91dHViZS1yZWQ6IGhzbCgwLCAxMDAlLCA1MCUpO1xuJGRpc2NvcmQtcHVycGxlOiBoc2woMjI3LCA1OCUsIDY1JSk7XG4kdHdpdGNoLXB1cnBsZTogaHNsKDI2MSwgNDMlLCA0NSUpO1xuJHJlZGRpdC1vcmFuZ2U6IGhzbCgxNiwgMTAwJSwgNTAlKTtcbiRsaW5rZWRpbi1ibHVlOiBoc2woMjAxLCAxMDAlLCAzNSUpO1xuJHRpa3Rvay1ibGFjazogaHNsKDAsIDAlLCAwJSk7XG5cbi8vIFByb2R1Y3Qgc3BlY2lmaWMgc3dhdGNoZXNcbiRnYWlhLWdyZWVuOiBoc2woNjIsIDcyJSwgNTQlKTtcblxuLy8gTW9tZW50c1xuJG1vbWVudHMtYmx1ZTogIzE2MTkxZTtcbiRtb21lbnRzLWhhd2tlcy1ibHVlOiAjZDBkOWY2O1xuJG1vbWVudHMtaGF3a2VzLWdyYXk6ICNhN2FlYzQ7XG4kbW9tZW50cy1tYXJ0aW5pcXVlOiAjMzIzOTQzO1xuXG4kbW9tZW50cy1wcmltYXJ5LXB1cnBsZS05MDogIzRiNjBkZjtcbiRtb21lbnRzLXNlY29uZGFyeS1ncmV5LTEwOiAjMmMzMDM0O1xuXG4kbW9tZW50cy1iYWNrZ3JvdW5kLWNvbG9yOiAjMTYxOTFlO1xuJG1vbWVudHMtYmFja2dyb3VuZC1jb2xvci1saWdodGVyOiAjMTkxYzIwO1xuJG1vbWVudHMtYWNjZW50LWNvbG9yOiAjNTE2OGY0O1xuJG1vbWVudHMtY29udHJhc3QtY29sb3I6ICNkMGQ5ZjY7XG4kbW9tZW50cy1hY2NlbnQtY29sb3ItZmFkZTogcmdiYSgkbW9tZW50cy1hY2NlbnQtY29sb3IsIDAuMyk7XG4kbW9tZW50cy1hY2NlbnQtY29sb3ItZmFkZWQ6ICMxZjI1Mzk7XG4kbW9tZW50cy1iYWNrZ3JvdW5kLWNvbG9yLWdyYXk6ICMyOTMyMzk7XG5cbi8vIFNjYWZmb2xkaW5nXG4kYm9keS1iZzogJGJsYWNrO1xuXG4vLyBUeXBvZ3JhcGh5XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90byxcbiAgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsXG4gIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4kZm9udC1mYW1pbHktYmFzZTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG5cbiRmb250LXNpemUtaDE6IDUuMnJlbTtcbiRmb250LXNpemUtaDI6IDMuMnJlbTtcbiRmb250LXNpemUtaDM6IDIuNHJlbTtcbiRmb250LXNpemUtaDQ6IDEuN3JlbTtcbiRmb250LXNpemUtaDU6IDEuNXJlbTtcbiRmb250LXNpemUtaDY6IDEuMnJlbTtcblxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBcIlJlcGxpY2EgUHJvXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYm9keS1mb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90byxcbiAgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsXG4gIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDkwMDtcblxuLy8gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuJHNjcmVlbi14cy1taW46IDQ4MHB4OyAvLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuJHNjcmVlbi1zbS1taW46IDc2OHB4OyAvLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbiRzY3JlZW4tbWQtbWluOiA5OTJweDsgLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRzY3JlZW4tbGctbWluOiAxMjAwcHg7IC8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJHNjcmVlbi14bC1taW46IDE2MDBweDsgLy8gRXh0cmEgTGFyZ2Ugc2NyZWVuIC8gZnVsbCBoZFxuXG4kc2NyZWVuLXhsLW1heDogMTkyMHB4OyAvLyBAVE9ETzogdGhpcyBzaG91bGRuJ3QgYmUgbmVlZGVkP1xuJHNjcmVlbi1sZy1tYXg6ICgkc2NyZWVuLXhsLW1pbiAtIDEpO1xuXG4vLyBHcmlkIHN5c3RlbVxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAzMHB4O1xuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogJHNjcmVlbi1tZC1taW47XG5cbi8vIENvbnRhaW5lciBzaXplc1xuJGNvbnRhaW5lci13aWRlLWRlc2t0b3A6IDE0MDBweDtcbiRjb250YWluZXIteGxhcmdlLWRlc2t0b3A6ICgxNTQwICsgJGdyaWQtZ3V0dGVyLXdpZHRoKTtcbiRjb250YWluZXIteGw6ICRjb250YWluZXIteGxhcmdlLWRlc2t0b3A7XG5cbi8vIE5hdmJhclxuJG5hdmJhci1oZWlnaHQ6IDY0cHg7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6IDA7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogJHdoaXRlO1xuJG5hdmJhci1kZWZhdWx0LWJnOiAkZ3JheS05MDA7XG5cbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAkd2hpdGU7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogJHdoaXRlO1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6IHRyYW5zcGFyZW50O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAkd2hpdGU7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICRncmF5LTkwMDtcblxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogJGdyYXktNDAwO1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogJHdoaXRlO1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICRncmF5LTYwMDtcblxuLy8gTmF2c1xuJG5hdi1saW5rLXBhZGRpbmc6IDEwcHggMzBweDtcblxuLy8gRm9ybXNcbiRib3JkZXItcmFkaXVzLWJhc2U6IDA7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAkZ3JheS0zMDA7XG5cbi8vIFBhdGggdmFyaWFibGVzXG4kaW1nOiBcIi4uL2ltZ1wiO1xuXG4vLyBHcmlkIHYyXG5cbiRncmlkLWNvbHVtbnM6IDEyO1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA3NjhweCxcbiAgbWQ6IDk5MnB4LFxuICBsZzogMTIwMHB4LFxuICB4bDogMTYwMHB4LFxuICAvLyB1bHRyYXdpZGUgYnJlYWtwb2ludCB0byBiZSBkZWxldGVkXG4gIHV3OiAyMDAwcHgsXG4pO1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiAoXG4gICAgNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgsXG4gICksXG4gIG1kOiAoXG4gICAgOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgsXG4gICksXG4gIGxnOiAoXG4gICAgMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoLFxuICApLFxuICB4bDogKFxuICAgIDE1NDBweCArICRncmlkLWd1dHRlci13aWR0aCxcbiAgKSxcbiAgLy8gdWx0cmF3aWRlIGJyZWFrcG9pbnQgdG8gYmUgZGVsZXRlZFxuICB1dzpcbiAgICAoXG4gICAgICAxOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgsXG4gICAgKSxcbik7XG5cbi8vIFRvb2x0aXBzXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogMjUwcHg7XG5cbi8vIFRoaXMgaXMgcHJvYmFibHkgd2hlcmUgd2Ugd2FudCB0byBnbywgYnV0IGZvciBub3csIHRoZSBncmlkIGlzIGFsaWduZWRcbi8vIHdpdGggdGhlIGN1cnJlbnQgb25lLlxuLy8gJGdyaWQtYnJlYWtwb2ludHM6IChcbi8vICAgeHM6IDAsXG4vLyAgIHNtOiA2MDBweCxcbi8vICAgbWQ6IDkwMHB4LFxuLy8gICBsZzogMTIwMHB4LFxuLy8gICB4bDogMTgwMHB4XG4vLyApO1xuLy8gJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4vLyAgIHNtOiA1NDBweCxcbi8vICAgbWQ6IDg0MHB4LFxuLy8gICBsZzogMTE0MHB4LFxuLy8gICB4bDogMTc0MHB4XG4vLyApO1xuLy8gJGdyaWQtZ3V0dGVyLXdpZHRoOiAzMHB4O1xuIiwiQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuXG4vLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAycHgsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/