/**
 * Variables
 */

/* Breakpoints */

/* Specific breakpoint for global & dropdown navigation */

:root {

  /* Brand colors */

  /* Filters - Used for adjusting icon color. Generated using `npm run color-to-filter -- <options>`. */

  /* Typography */ /* 32px */ /* 24px */ /* 20px */ /* 18px - Lede */ /* 16px - Body */ /* 14px */ /* 12px - Sub, Caption */ /* 48px - Headline */ /* 40px - H1 */ /* 32px - H2 */ /* 24px - H3 */ /* 18px - H4 */ /* 16px - H5 */ /* 14px - H6 */ /* 1.6 x font size */ /* 1.2 x font size */ /* 14px always */

  /* Spacing */ /* 4px */ /* 8px */ /* 12px */ /* 16px */ /* 24px */ /* 32px */ /* 40px */ /* 48px */ /* 56px */ /* 64px */ /* 72px */ /* 80px */ /* 88px */

  /* Layout */

  /* Ratios */ /* 100%:56.25% = 16:9 */

  /* Utility */
}

@media (max-width: 719px) {
  :root { /* 24px */ /* 20px */ /* 18px */ /* 16px - Lede */ /* 14px - Body */ /* 12px */ /* 10px - Sub, Caption */ /* 36px - Headline */ /* 30px - H1 */ /* 24px - H2 */ /* 20px - H3 */ /* 18px - H4 */ /* 16px - H5 */ /* 14px - H6 */
  }
}

:root {

  /* Brand colors */

  /* Alert Colors */

  /* Design */

  /* Typography */ /* 10px */ /* 40px */

  /* Form */

  /* Header */

  /* Spacing Extra */

  /* Heading Sizes Extra */ /* 20px - H3 Tiles large to x-large */

  /* Tiles */
}

/**
 * Global Header
 *
 * Markup: global-header.twig
 *
 * Style guide: Grouped Components.global-header
 */

@media (min-width: 720px) {

.global__toggle {
    display: none
}
  }

.global__toggle__menu {
  border: 0 none;
  background-color: rgb(255, 255, 255);
}

/**
 * Logo
 *
 * Markup: logo.twig
 *
 * Style guide: Elements.logo
 */

/**
 * Primary Header
 *
 * A simple inline version of the Primary Header that contains Logo, Navigation and Search
 *
 * Markup: primary-header.twig
 *
 * Style guide: Grouped Components.global-header.primary-header
 */

.global__primary {
  background-color: rgb(255, 255, 255);
  font-size: 0.875rem;
  color: rgb(0, 0, 0)
}

@media (max-width: 719px) {

  .global__primary {
  font-size: 0.75rem
  }
}

.global__primary .section__content {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
            justify-content: space-between;
  }

.global__primary__nav {
  display: none
}

@media (min-width: 720px) {

.global__primary__nav {
    display: -webkit-box;
    display: flex
}
  }

.global__primary__nav--open {
  display: block;
  width: 100%;
}

.global__primary__search {
  margin-top: 1.5rem
}

@media (min-width: 720px) and (max-width: 945px) {

.global__primary__search {
    display: none
}
  }

@media (min-width: 720px) {

.global__primary__search {
    margin-top: 0;
    margin-left: 1.5rem
}
  }

.global__primary__search label {
    display: none;
  }

.global__primary__search__input {
  width: 100%;
}

/**
 * Primary Header Stacked
 *
 * A version of the Primary Navigation which is stacked. The Logo and Search appear in the same row and a new row is created below to contain
 * the main Navigation. Additional styles and markup allow for left and right sections of the navigation, background colour to stretch full screen and padding to suit this layout.
 *
 * Markup: primary-header--stacked.twig
 *
 * Style guide: Grouped Components.global-header.primary-header-stacked
 */

.global__primary--stacked .section__content {
    padding: 0;
  }

.global__primary--stacked .global__primary__nav-menu {
    background-color: rgb(230, 236, 241)
  }

@media (max-width: 719px) {

.global__primary--stacked .global__primary__nav-menu {
      background-color: rgb(255, 255, 255)
  }
    }

.global__primary--stacked .nav {
    padding-left: 0;
    width: 100%
  }

@media (min-width: 720px) {

.global__primary--stacked .nav {
      width: auto
  }
    }

.global__primary--stacked .nav__level-1 {
    width: 100%;
  }

.global__primary--stacked .global__primary__search {
    margin: 0.5rem 0;
  }

.global__primary__logo-search {
  -webkit-box-flex: 0;
          flex: 0 0 100%;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
          justify-content: space-between;
  padding: 0 1.5rem
}

@media (max-width: 719px) {

.global__primary__logo-search .global__primary__nav {
      background-color: rgb(255, 255, 255);
      margin-left: -1.5rem;
      margin-right: -1.5rem;
      width: calc(100vw - 3rem);
      padding: 0 1.5rem
  }
    }

.global__primary__nav-menu {
  display: none;
  -webkit-box-flex: 0;
          flex: 0 0 100%;
  -webkit-box-pack: justify;
          justify-content: space-between;
  padding: 0.5rem 0
}

@media (min-width: 720px) {

.global__primary__nav-menu {
    display: -webkit-box;
    display: flex
}
  }

.global__primary__nav-menu.global__primary__nav--open {
    display: -webkit-box;
    display: flex;
  }

.global__primary__nav-menu .section__content {
    width: 100%;
    padding: 0 1.5rem;
  }

.global__primary__nav-menu .button {
    margin-top: 0.25rem;
  }

.global__primary__nav-menu .nav {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    margin-top: 0
  }

@media (min-width: 720px) {

.global__primary__nav-menu .nav {
      padding-left: 0.5rem
  }
    }

.global__primary__nav-left,
.global__primary__nav-right {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%
}

.global__primary__nav-left > *, .global__primary__nav-right > * {
    width: 100%;
  }

@media (min-width: 720px) {

.global__primary__nav-left,
.global__primary__nav-right {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-pack: center;
            justify-content: center;
    -webkit-box-align: center;
            align-items: center;
    width: auto
}

    .global__primary__nav-left > *, .global__primary__nav-right > * {
      width: auto;
    }
  }

/**
 * Secondary Header
 *
 * Markup: secondary-header.twig
 *
 * Style guide: Elements.secondary-header
 */

.global__secondary {
  background-color: rgb(10, 65, 122);
  font-size: 0.875rem;
  color: rgb(255, 255, 255)
}

@media (max-width: 719px) {

  .global__secondary {
  font-size: 0.75rem
  }
}

.global__secondary .section__content {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
  }

.global__secondary a {
    color: rgb(255, 255, 255);
    text-decoration: none
  }

.global__secondary a:hover,
    .global__secondary a:focus {
      text-decoration: underline;
    }

.global__secondary__nav {
  display: none
}

@media (min-width: 720px) {

.global__secondary__nav {
    display: inline-block
}
  }

/**
 * Global Footer
 *
 * Markup: global-footer.twig
 *
 * Style guide: Grouped Components.footer
 */

.global__footer {
  background-color: rgb(10, 65, 122);
  color: rgb(255, 255, 255);
  font-size: 0.875rem
}

@media (max-width: 719px) {

  .global__footer {
  font-size: 0.75rem
  }
}

.global__footer a {
    color: rgb(255, 255, 255);
  }

@media (max-width: 719px) {

.global__footer__logo {
    margin-bottom: 4rem;
    text-align: center
}
  }

.global__footer__meta {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid rgb(255, 255, 255);
  text-align: center;
  line-height: 2
}

@media (min-width: 720px) {

.global__footer__meta {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between
}
  }

@media (max-width: 719px) {

.global__footer__meta .nav--inline > ul > li {
      display: block
  }
    }

/**
 * Secondary Menu
 *
 * Markup: secondary-menu.twig
 *
 * Style guide: Components.secondary-menu
 */

.global__secondary__nav ul {
    font-size: 0.875rem;
  }

@media (max-width: 719px) {

  .global__secondary__nav ul {
    font-size: 0.75rem
  }
}

.global__secondary__nav a {
    font-size: 0.875rem;
  }

@media (max-width: 719px) {

  .global__secondary__nav a {
    font-size: 0.75rem
  }
}

@media (max-width: 945px) {
    .global__secondary__nav.nav--inline {
      display: block
    }

      .global__secondary__nav.nav--inline > ul {
        display: -webkit-box;
        display: flex;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
                justify-content: space-between
      }

        .global__secondary__nav.nav--inline > ul > li {
          width: calc(50% - 0.5rem);
          margin-left: 0;
          margin-bottom: 0.5rem;
        }

      .global__secondary__nav.nav--inline a {
        border: 1px solid rgb(10, 65, 122);
        border-radius: 3px;
        height: 3.5rem;
        line-height: 1;
        display: -webkit-box;
        display: flex;
        -webkit-box-pack: center;
                justify-content: center;
        -webkit-box-align: center;
                align-items: center;
        text-align: center;
        padding: 0.5rem;
      }
  }

@media (max-width: 945px) {

.global__secondary {
    display: none;
    margin-top: 1rem;
    border-top: 1px solid rgb(194, 196, 199)
}

    .global__secondary.section--top-xs {
      padding-top: 2rem;
    }

    .global__secondary.global__secondary--show-mobile {
      display: block;
    }
  }

@media (max-width: 945px) {

.global__secondary .section__content {
      padding-left: 0.25rem;
      padding-right: 0.25rem
  }

      .global__secondary .section__content > div {
        width: 100%;
      }
    }

@media (min-width: 946px) {
      .global__secondary .section__content > *:last-child {
        margin-left: auto;
      }
    }

/* Fix for logo__search in styleguide */

.global__primary__logo-search {
  padding-top: 1rem;
  padding-bottom: 1rem
}

@media (max-width: 945px) {

.global__primary__logo-search {
    max-width: 100vw
}

    .global__primary__logo-search .global__primary__nav {
      -webkit-box-flex: 0;
              flex: 0 0 100vw;
    }
  }

@media (max-width: 539px) {
    .global__primary__logo-search .global__primary__nav {
      padding: 0;
      margin: 0;
      -webkit-box-flex: 0;
              flex: 0 0 calc(100vw - .5rem);
    }
  }

@media (max-width: 945px) {
  .global__toggle {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
  }

  .global__primary__nav-left .nav__level-1 {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-pack: center;
            justify-content: center;
    -webkit-box-align: center;
            align-items: center;
    width: 100%;
  }

  .global__primary__nav-menu {
    display: none;
    padding: 0
  }

    .global__primary__nav-menu .nav {
      padding-left: 0;
    }
      .global__primary__logo-search .global__primary__nav--open .global__primary__search {
        display: block;
        width: 100%;
      }

  .global__primary__nav-left,
  .global__primary__nav-right,
  .global__primary__nav-left > *,
  .global__primary__nav-right > * {
    width: 100%;
  }
    .global__primary--stacked .global__primary__nav-menu {
      background-color: rgb(255, 255, 255);
    }
}

@media (min-width: 720px) and (max-width: 945px) {
    .global__primary__logo-search .global__primary__nav--open {
      -webkit-box-flex: 0;
              flex: 0 0 calc(100vw - 3rem);
    }
}

.global__secondary .section__content {
    max-width: calc(1180px - 3rem);
  }

@media (min-width: 946px) {

.global__primary__nav-left,
.global__primary__nav-right,
.global__primary__nav-left > *,
.global__primary__nav-right > * {
    width: 100%
}
  }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AcG54LW1peHRhcGUvY29uc3RhbnRzL3NyYy9jb25zdGFudHMuY3NzIiwiLi4vLi4vLi4vLi4vc3JjL192YXJpYWJsZXMuY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BwbngtbWl4dGFwZS9nbG9iYWwvc3JjL19nbG9iYWwuY3NzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2Vjb25kYXJ5LW1lbnUvc2Vjb25kYXJ5LW1lbnUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztFQUVFOztBQUVGLGdCQUFnQjs7QUFvQmhCLHlEQUF5RDs7QUFJekQ7O0VBeUJFLGlCQUFpQjs7RUFhakIscUdBQXFHOztFQWdCckcsZUFBZSxFQUtTLFNBQVMsRUFDUixTQUFTLEVBQ1QsU0FBUyxFQUNULGdCQUFnQixFQUNwQixnQkFBZ0IsRUFDWixTQUFTLEVBQ1Qsd0JBQXdCLEVBRXZCLG9CQUFvQixFQUNuQixjQUFjLEVBQ2pCLGNBQWMsRUFDWixjQUFjLEVBQ1osY0FBYyxFQUNqQixjQUFjLEVBQ1QsY0FBYyxFQUV4QixvQkFBb0IsRUFDbEIsb0JBQW9CLEVBQ2hCLGdCQUFnQjs7RUFNMUMsWUFBWSxFQUNZLFFBQVEsRUFDVixRQUFRLEVBQ04sU0FBUyxFQUNkLFNBQVMsRUFDUCxTQUFTLEVBQ1gsU0FBUyxFQUNOLFNBQVMsRUFDVixTQUFTLEVBQ04sU0FBUyxFQUNWLFNBQVMsRUFDVixTQUFTLEVBQ1YsU0FBUyxFQUNOLFNBQVM7O0VBTWpDLFdBQVc7O0VBT1gsV0FBVyxFQUNrQix1QkFBdUI7O0VBRXBELFlBQVk7QUFHZDs7QUFFQTtFQUNFLFFBQzRCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNkLGdCQUFnQixFQUNaLGdCQUFnQixFQUNqQixTQUFTLEVBQ1Asd0JBQXdCLEVBRXJCLG9CQUFvQixFQUNwQixjQUFjLEVBQ2pCLGNBQWMsRUFDYixjQUFj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TUFDaEM7RUFZSjs7TUFWSTtRQUNFLFdBQVc7TUFDYjtJQUNGOztBQUVBO01BQ0U7UUFDRSxpQkFBaUI7TUFDbkI7SUFDRjs7QUFJSix1Q0FBdUM7O0FBQ3ZDO0VBQ0UsaUJBQWlCO0VBQ2pCO0FBaUJGOztBQWZFOztBQUpGO0lBS0k7QUFjSjs7SUFaSTtNQUNFLG1CQUFlO2NBQWYsZUFBZTtJQUNqQjtFQUNGOztBQUVBO0lBQ0U7TUFDRSxVQUFVO01BQ1YsU0FBUztNQUNULG1CQUE2QjtjQUE3Qiw2QkFBNkI7SUFDL0I7RUFDRjs7QUFHRjtFQUNFO0lBQ0Usb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1lBQW5CLG1CQUFtQjtFQUNyQjs7RUFFQTtJQUNFLG9CQUFhO0lBQWIsYUFBYTtJQUNiLDRCQUFzQjtJQUF0Qiw2QkFBc0I7WUFBdEIsc0JBQXNCO0lBQ3RCLHdCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIseUJBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQixXQUFXO0VBQ2I7O0VBRUE7SUFDRSxhQUFhO0lBQ2I7RUFLRjs7SUFIRTtNQUNFLGVBQWU7SUFDakI7TUFLRTtRQUNFLGNBQWM7UUFDZCxXQUFXO01BQ2I7O0VBSUo7Ozs7SUFJRSxXQUFXO0VBQ2I7SUFHRTtNQUNFLG9DQUEwQztJQUM1QztBQUVKOztBQUVBO0lBRUk7TUFDRSxtQkFBNEI7Y0FBNUIsNEJBQTRCO0lBQzlCO0FBRUo7O0FBR0U7SUFDRSw4QkFBZ0U7RUFDbEU7O0FBT0E7O0FBSkY7Ozs7SUFLSTtBQUVKO0VBREUiLCJmaWxlIjoic2Vjb25kYXJ5LW1lbnUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWYXJpYWJsZXNcbiAqL1xuXG4vKiBCcmVha3BvaW50cyAqL1xuQGN1c3RvbS1tZWRpYSAtLXgtc21hbGwtdXAgKHdpZHRoID49IDQyMHB4KTtcbkBjdXN0b20tbWVkaWEgLS14LXNtYWxsLWRvd24gKHdpZHRoIDwgNDIwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLXgtc21hbGwtdG8tc21hbGwgKDQyMHB4IDw9IHdpZHRoIDwgNTQwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tc21hbGwtdXAgKHdpZHRoID49IDU0MHB4KTtcbkBjdXN0b20tbWVkaWEgLS1zbWFsbC1kb3duICh3aWR0aCA8IDU0MHB4KTtcbkBjdXN0b20tbWVkaWEgLS1zbWFsbC10by1tZWRpdW0gKDU0MHB4IDw9IHdpZHRoIDwgNzIwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLXVwICh3aWR0aCA+PSA3MjBweCk7XG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLWRvd24gKHdpZHRoIDwgNzIwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS10by1sYXJnZSAoNzIwcHggPD0gd2lkdGggPCA5NDZweCk7XG5cbkBjdXN0b20tbWVkaWEgLS1sYXJnZS11cCAod2lkdGggPj0gOTQ2cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWxhcmdlLWRvd24gKHdpZHRoIDwgOTQ2cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWxhcmdlLXRvLXgtbGFyZ2UgKDk0NnB4IDw9IHdpZHRoIDwgMTEwMHB4KTtcblxuQGN1c3RvbS1tZWRpYSAtLXgtbGFyZ2UtdXAgKHdpZHRoID49IDExMDBweCk7XG5AY3VzdG9tLW1lZGlhIC0teC1sYXJnZS1kb3duICh3aWR0aCA8IDExMDBweCk7XG5cbi8qIFNwZWNpZmljIGJyZWFrcG9pbnQgZm9yIGdsb2JhbCAmIGRyb3Bkb3duIG5hdmlnYXRpb24gKi9cbkBjdXN0b20tbWVkaWEgLS1nbG9iYWwtbmF2LXVwICh3aWR0aCA+PSA3MjBweCk7XG5AY3VzdG9tLW1lZGlhIC0tZ2xvYmFsLW5hdi1kb3duICh3aWR0aCA8IDcyMHB4KTtcblxuOnJvb3Qge1xuICAtLXdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIC0tZ3JleS0wNTogcmdiKDI0MiwgMjQyLCAyNDMpO1xuICAtLWdyZXktMTA6IHJnYigyMzAsIDIzMCwgMjMwKTtcbiAgLS1ncmV5LTI1OiByZ2IoMTk0LCAxOTYsIDE5OSk7XG4gIC0tZ3JleS01MDogcmdiKDEyOCwgMTI4LCAxMjgpO1xuICAtLWdyZXktNzU6IHJnYig3NSwgNzksIDg4KTtcbiAgLS1ibGFjazogcmdiKDAsIDAsIDApO1xuICAtLWJsdWU6IHJnYigwLCA5MiwgMjUwKTtcbiAgLS1ibHVlLTUwOiByZ2IoOTksIDE4MSwgMjIyKTtcbiAgLS1ibHVlLTEwOiByZ2IoMjI5LCAyMzksIDI1NSk7XG4gIC0tYmx1ZS0wNTogcmdiKDIyOSwgMjM5LCAyNTUpO1xuICAtLW9yYW5nZTogcmdiKDI0NywgMTQzLCAyOSk7XG4gIC0tb3JhbmdlLTEwOiByZ2IoMjU0LCAyNDMsIDIzMik7XG4gIC0tZ3JlZW46IHJnYig2OCwgMTYyLCA3Mik7XG4gIC0tZ3JlZW4tMTA6IHJnYigyMzgsIDI0NiwgMjM4KTtcbiAgLS1yZWQ6IHJnYigxOTgsIDQwLCA0MCk7XG4gIC0tcmVkLTEwOiByZ2IoMjQ5LCAyMzMsIDIzMyk7XG4gIC0teWVsbG93OiByZ2IoMjQ5LCAyMTIsIDApO1xuICAtLXllbGxvdy0xMDogcmdiKDI1NCwgMjUwLCAyMjkpO1xuICAtLXB1cnBsZTogcmdiKDEzNiwgNDcsIDExNSk7XG4gIC0tcHVycGxlLTEwOiByZ2IoMjQzLCAyMzQsIDI0MSk7XG4gIC0tb3ZlcmxheS1saWdodDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7XG4gIC0tb3ZlcmxheS1kYXJrOiByZ2JhKDAsIDAsIDAsIC41KTtcblxuICAvKiBCcmFuZCBjb2xvcnMgKi9cbiAgLS1icmFuZC1wcmltYXJ5OiB2YXIoLS1wdXJwbGUpO1xuICAtLWJyYW5kLXByaW1hcnktbGlnaHQ6IHZhcigtLXB1cnBsZS0xMCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5OiB2YXIoLS15ZWxsb3cpO1xuICAtLWJyYW5kLXNlY29uZGFyeS1saWdodDogdmFyKC0teWVsbG93LTEwKTtcbiAgLS1icmFuZC10ZXJ0aWFyeTogdmFyKC0tYmx1ZSk7XG4gIC0tYnJhbmQtdGVydGlhcnktbGlnaHQ6IHZhcigtLWJsdWUtMTApO1xuICAtLWJyYW5kLXJldmVyc2U6IHZhcigtLXdoaXRlKTtcbiAgLS1icmFuZC10ZXh0OiB2YXIoLS1ibGFjayk7XG4gIC0tYnJhbmQtbGluazogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XG4gIC0tYnJhbmQtbGluay1ob3ZlcjogdmFyKC0tYnJhbmQtdGVydGlhcnkpO1xuICAtLWJyYW5kLWJvcmRlcjogdmFyKC0tZ3JleS0xMCk7XG5cbiAgLyogRmlsdGVycyAtIFVzZWQgZm9yIGFkanVzdGluZyBpY29uIGNvbG9yLiBHZW5lcmF0ZWQgdXNpbmcgYG5wbSBydW4gY29sb3ItdG8tZmlsdGVyIC0tIDxvcHRpb25zPmAuICovXG4gIC0tZmlsdGVyLWJsYWNrOiBpbnZlcnQoMCUpIHNlcGlhKDQlKSBzYXR1cmF0ZSgwJSkgaHVlLXJvdGF0ZSg1M2RlZykgYnJpZ2h0bmVzcyg5NCUpIGNvbnRyYXN0KDEwMiUpO1xuICAtLWZpbHRlci13aGl0ZTogaW52ZXJ0KDg5JSkgc2VwaWEoNjAlKSBzYXR1cmF0ZSgwJSkgaHVlLXJvdGF0ZSgzNDFkZWcpIGJyaWdodG5lc3MoMTA0JSkgY29udHJhc3QoMTA3JSk7XG4gIC0tZmlsdGVyLWJyYW5kLXByaW1hcnk6IGludmVydCgyMyUpIHNlcGlhKDg3JSkgc2F0dXJhdGUoMTAyNCUpIGh1ZS1yb3RhdGUoMjc3ZGVnKSBicmlnaHRuZXNzKDg4JSkgY29udHJhc3QoOTElKTtcbiAgLS1maWx0ZXItYnJhbmQtc2Vjb25kYXJ5OiBpbnZlcnQoNzglKSBzZXBpYSg5MSUpIHNhdHVyYXRlKDIwMDUlKSBodWUtcm90YXRlKDM1N2RlZykgYnJpZ2h0bmVzcyg5NSUpIGNvbnRyYXN0KDEwNiUpO1xuICAtLWZpbHRlci1icmFuZC10ZXJ0aWFyeTogaW52ZXJ0KDI4JSkgc2VwaWEoNTklKSBzYXR1cmF0ZSg3MDU2JSkgaHVlLXJvdGF0ZSgyMTVkZWcpIGJyaWdodG5lc3MoOTglKSBjb250cmFzdCgxMDMlKTtcbiAgLS1maWx0ZXItYnJhbmQtbGluazogdmFyKC0tZmlsdGVyLWJyYW5kLXByaW1hcnkpO1xuICAtLWZpbHRlci1icmFuZC1saW5rLWhvdmVyOiB2YXIoLS1maWx0ZXItYnJhbmQtdGVydGlhcnkpO1xuICAtLWZpbHRlci1icmFuZC1yZXZlcnNlOiB2YXIoLS1maWx0ZXItd2hpdGUpO1xuICAtLWZpbHRlci1icmFuZC10ZXh0OiB2YXIoLS1maWx0ZXItYmxhY2spO1xuICAtLWZpbHRlci1ncmV5LTUwOiBpbnZlcnQoNTElKSBzZXBpYSgxJSkgc2F0dXJhdGUoMCUpIGh1ZS1yb3RhdGUoMTA2ZGVnKSBicmlnaHRuZXNzKDk5JSkgY29udHJhc3QoODclKTtcbiAgLS1maWx0ZXItcmVkOiBpbnZlcnQoMjElKSBzZXBpYSg4MyUpIHNhdHVyYXRlKDIzMzMlKSBodWUtcm90YXRlKDM0M2RlZykgYnJpZ2h0bmVzcyg5MSUpIGNvbnRyYXN0KDk2JSk7XG4gIC0tZmlsdGVyLWJsdWU6IGludmVydCgyOSUpIHNlcGlhKDYzJSkgc2F0dXJhdGUoNDYxMiUpIGh1ZS1yb3RhdGUoMjExZGVnKSBicmlnaHRuZXNzKDkyJSkgY29udHJhc3QoMTE1JSk7XG4gIC0tZmlsdGVyLWdyZWVuOiBpbnZlcnQoNDAlKSBzZXBpYSg4JSkgc2F0dXJhdGUoMzc3NCUpIGh1ZS1yb3RhdGUoNzNkZWcpIGJyaWdodG5lc3MoMTMyJSkgY29udHJhc3QoNzQlKTtcbiAgLS1maWx0ZXItb3JhbmdlOiBpbnZlcnQoNjklKSBzZXBpYSgzNSUpIHNhdHVyYXRlKDUwMzUlKSBodWUtcm90YXRlKDM0OWRlZykgYnJpZ2h0bmVzcygxMDMlKSBjb250cmFzdCg5NCUpO1xuXG4gIC8qIFR5cG9ncmFwaHkgKi9cbiAgLS1mb250LWZhbWlseTogXCJJbnRlclwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtZmFtaWx5LXZhcmlhYmxlOiBcIkludGVyIHZhclwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtZmFtaWx5LWhlYWRpbmc6IHZhcigtLWZvbnQtZmFtaWx5KTtcblxuICAtLWZvbnQtc2l6ZS14eHhsOiAycmVtOyAvKiAzMnB4ICovXG4gIC0tZm9udC1zaXplLXh4bDogMS41cmVtOyAvKiAyNHB4ICovXG4gIC0tZm9udC1zaXplLXhsOiAxLjI1cmVtOyAvKiAyMHB4ICovXG4gIC0tZm9udC1zaXplLWw6IDEuMTI1cmVtOyAvKiAxOHB4IC0gTGVkZSAqL1xuICAtLWZvbnQtc2l6ZS1tOiAxcmVtOyAvKiAxNnB4IC0gQm9keSAqL1xuICAtLWZvbnQtc2l6ZS1zOiAwLjg3NXJlbTsgLyogMTRweCAqL1xuICAtLWZvbnQtc2l6ZS14czogMC43NXJlbTsgLyogMTJweCAtIFN1YiwgQ2FwdGlvbiAqL1xuXG4gIC0taGVhZGluZy1zaXplLXh4bDogM3JlbTsgLyogNDhweCAtIEhlYWRsaW5lICovXG4gIC0taGVhZGluZy1zaXplLXhsOiAyLjVyZW07IC8qIDQwcHggLSBIMSAqL1xuICAtLWhlYWRpbmctc2l6ZS1sOiAycmVtOyAvKiAzMnB4IC0gSDIgKi9cbiAgLS1oZWFkaW5nLXNpemUtbTogMS41cmVtOyAvKiAyNHB4IC0gSDMgKi9cbiAgLS1oZWFkaW5nLXNpemUtczogMS4xMjVyZW07IC8qIDE4cHggLSBINCAqL1xuICAtLWhlYWRpbmctc2l6ZS14czogMXJlbTsgLyogMTZweCAtIEg1ICovXG4gIC0taGVhZGluZy1zaXplLXh4czogMC44NzVyZW07IC8qIDE0cHggLSBINiAqL1xuXG4gIC0tbGluZS1oZWlnaHQ6IDEuNjsgLyogMS42IHggZm9udCBzaXplICovXG4gIC0tbGluZS1oZWlnaHQtaDogMS4yOyAvKiAxLjIgeCBmb250IHNpemUgKi9cbiAgLS1saW5lLWhlaWdodC11aTogMC45cmVtOyAvKiAxNHB4IGFsd2F5cyAqL1xuXG4gIC0tZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LWhlYXZ5OiA4MDA7XG5cbiAgLyogU3BhY2luZyAqL1xuICAtLXNwYWNpbmcteHhzOiAwLjI1cmVtOyAvKiA0cHggKi9cbiAgLS1zcGFjaW5nLXhzOiAwLjVyZW07IC8qIDhweCAqL1xuICAtLXNwYWNpbmcteHNzOiAwLjc1cmVtOyAvKiAxMnB4ICovXG4gIC0tc3BhY2luZy1zOiAxcmVtOyAvKiAxNnB4ICovXG4gIC0tc3BhY2luZy1tOiAxLjVyZW07IC8qIDI0cHggKi9cbiAgLS1zcGFjaW5nLWw6IDJyZW07IC8qIDMycHggKi9cbiAgLS1zcGFjaW5nLXhsOiAyLjVyZW07IC8qIDQwcHggKi9cbiAgLS1zcGFjaW5nLXh4bDogM3JlbTsgLyogNDhweCAqL1xuICAtLXNwYWNpbmcteHh4bDogMy41cmVtOyAvKiA1NnB4ICovXG4gIC0tc3BhY2luZy14eHh4bDogNHJlbTsgLyogNjRweCAqL1xuICAtLXNwYWNpbmctdWw6IDQuNXJlbTsgLyogNzJweCAqL1xuICAtLXNwYWNpbmctdXVsOiA1cmVtOyAvKiA4MHB4ICovXG4gIC0tc3BhY2luZy11dXVsOiA1LjVyZW07IC8qIDg4cHggKi9cblxuICAtLW91dGxpbmUtd2lkdGg6IDJweDtcbiAgLS1vdXRsaW5lLW9mZnNldDogdmFyKC0tc3BhY2luZy14eHMpO1xuICAtLW91dGxpbmUtY29sb3I6IHZhcigtLWJyYW5kLXRlcnRpYXJ5KTtcblxuICAvKiBMYXlvdXQgKi9cbiAgLS1jb250YWluZXItbWF4LXdpZHRoLW5hcnJvdzogNTgwcHg7XG4gIC0tY29udGFpbmVyLW1heC13aWR0aC1hbGlnbmVkOiA3NzZweDtcbiAgLS1jb250YWluZXItbWF4LXdpZHRoOiAxMTgwcHg7XG4gIC0tZ3JpZC1nYXA6IHZhcigtLXNwYWNpbmctbSk7XG4gIC0tZ3JpZC1nYXAtbGFyZ2U6IHZhcigtLXNwYWNpbmctbCk7XG5cbiAgLyogUmF0aW9zICovXG4gIC0tcmF0aW8taGVpZ2h0LTE2LTk6IDU2LjI1JTsgLyogMTAwJTo1Ni4yNSUgPSAxNjo5ICovXG5cbiAgLyogVXRpbGl0eSAqL1xuICAtLWJveC1zaGFkb3c6IDAgMCB2YXIoLS1zcGFjaW5nLXhzKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAtLWJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gIDpyb290IHtcbiAgICAtLWZvbnQtc2l6ZS14eHhsOiAxLjVyZW07IC8qIDI0cHggKi9cbiAgICAtLWZvbnQtc2l6ZS14eGw6IDEuMjVyZW07IC8qIDIwcHggKi9cbiAgICAtLWZvbnQtc2l6ZS14bDogMS4xMjVyZW07IC8qIDE4cHggKi9cbiAgICAtLWZvbnQtc2l6ZS1sOiAxcmVtOyAvKiAxNnB4IC0gTGVkZSAqL1xuICAgIC0tZm9udC1zaXplLW06IDAuODc1cmVtOyAvKiAxNHB4IC0gQm9keSAqL1xuICAgIC0tZm9udC1zaXplLXM6IDAuNzVyZW07IC8qIDEycHggKi9cbiAgICAtLWZvbnQtc2l6ZS14czogMC42MjVyZW07IC8qIDEwcHggLSBTdWIsIENhcHRpb24gKi9cblxuICAgIC0taGVhZGluZy1zaXplLXh4bDogMi4yNXJlbTsgLyogMzZweCAtIEhlYWRsaW5lICovXG4gICAgLS1oZWFkaW5nLXNpemUteGw6IDEuODc1cmVtOyAvKiAzMHB4IC0gSDEgKi9cbiAgICAtLWhlYWRpbmctc2l6ZS1sOiAxLjVyZW07IC8qIDI0cHggLSBIMiAqL1xuICAgIC0taGVhZGluZy1zaXplLW06IDEuMjVyZW07IC8qIDIwcHggLSBIMyAqL1xuICAgIC0taGVhZGluZy1zaXplLXM6IDEuMTI1cmVtOyAvKiAxOHB4IC0gSDQgKi9cbiAgICAtLWhlYWRpbmctc2l6ZS14czogMXJlbTsgLyogMTZweCAtIEg1ICovXG4gICAgLS1oZWFkaW5nLXNpemUteHhzOiAwLjg3NXJlbTsgLyogMTRweCAtIEg2ICovXG4gIH1cbn1cbiIsIkBpbXBvcnQgJ0BwbngtbWl4dGFwZS9jb25zdGFudHMvc3JjL2NvbnN0YW50cy5jc3MnO1xuQGltcG9ydCAnQHBueC1taXh0YXBlL2dsb2JhbC9zcmMvX3ZhcnMuY3NzJztcbkBpbXBvcnQgXCJAcG54LW1peHRhcGUvZm9ybS9zcmMvX3ZhcnMuY3NzXCI7XG5AaW1wb3J0IFwiQHBueC1taXh0YXBlL3RpbGVzL3NyYy9fdmFycy5jc3NcIjtcblxuQGN1c3RvbS1tZWRpYSAtLXNpdGUtbWF4LXdpZHRoLXVwICh3aWR0aCA+IDEyMjhweCk7XG5AY3VzdG9tLW1lZGlhIC0tc2l0ZS1tYXgtd2lkdGgtZG93biAod2lkdGggPD0gMTIyOHB4KTtcbkBjdXN0b20tbWVkaWEgLS1zbWFsbC10by1sYXJnZSAoNTQwcHggPD0gd2lkdGggPCA5NDZweCk7XG5cbjpyb290IHtcbiAgLS1wcmltYXJ5LTEwMDogcmdiKDEwLCA2NSwgMTIyKTtcbiAgLS1wcmltYXJ5LTUwOiByZ2IoNjEsIDEwNSwgMTUyKTtcbiAgLS1wcmltYXJ5LTIwOiByZ2IoMTk3LCAyMTAsIDIyMik7XG4gIC0tcHJpbWFyeS0xMDogcmdiKDIzMCwgMjM2LCAyNDEpO1xuICAtLXNlY29uZGFyeS0xMDA6IHJnYig0OCwgMTE2LCAxMTYpO1xuICAtLXNlY29uZGFyeS01MDogcmdiKDc0LCAxNzksIDE3OSk7XG4gIC0tc2Vjb25kYXJ5LTEwOiByZ2IoMjQ0LCAyNDgsIDI0OCk7XG4gIC0tZ3JleXNjYWxlLTEwMDogcmdiKDEzLCAxOCwgMzEpO1xuICAtLWdyZXlzY2FsZS03NTogcmdiKDc0LCA3OCwgODcpO1xuICAtLWdyZXlzY2FsZS01MDogcmdiKDEyNywgMTI3LCAxMjcpO1xuICAtLWdyZXlzY2FsZS0yNTogcmdiKDE5NCwgMTk2LCAxOTkpO1xuICAtLWdyZXlzY2FsZS0xMDogcmdiKDIzMCwgMjMwLCAyMzApO1xuICAtLWdyZXlzY2FsZS0wNTogcmdiKDI0MywgMjQzLCAyNDQpO1xuICAtLXdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIC0tc3VjY2Vzcy0xMDA6IHJnYig2NywgMTYwLCA3MSk7XG4gIC0tc3VjY2Vzcy0xMDogcmdiKDIzNywgMjQ2LCAyMzcpO1xuICAtLWVycm9yLTEwMDogcmdiKDE5OCwgNDAsIDQwKTtcbiAgLS1lcnJvci0xMDogcmdiKDI0OSwgMjMzLCAyMzMpO1xuICAtLXdhcm5pbmctMTAwOiByZ2IoMjQ3LCAxNDMsIDMwKTtcbiAgLS13YXJuaW5nLTEwOiByZ2IoMjU0LCAyNDMsIDIzMik7XG4gIC0tZm9jdXMtMTAwOiByZ2IoMjUsIDExOCwgMjEwKTtcbiAgLS1mb2N1cy0xMDogcmdiKDIzMiwgMjQxLCAyNTApO1xuICAtLWJsdWUtMTAwOiByZ2IoMCwgMTE0LCAyMDYpO1xuICAtLXJlZC0xMDA6IHJnYigxMzcsIDEyLCA4OCk7XG4gIC0teWVsbG93LTEwMDogcmdiKDI0MSwgMTgwLCA1Mik7XG4gIC0tcGFnZS1iZzogcmdiKDI0NyAyNDkgMjUwKTtcbiAgLS1ibGFjay10cmFuc3BhcmVudDogcmdiYSgwLCAwLCAwLCAuMSk7XG4gIC0taGlnaGxpZ2h0LTAxOiB2YXIoLS1ibHVlLTEwMCk7XG4gIC0taGlnaGxpZ2h0LTAyOiB2YXIoLS1yZWQtMTAwKTtcbiAgLS1oaWdobGlnaHQtMDM6IHZhcigtLXllbGxvdy0xMDApO1xuICAtLXRyYW5zcGFyZW50LXdoaXRlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAtLXNlbWktdHJhbnNwYXJlbnQtd2hpdGU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpO1xuICAtLXRyYW5zcGFyZW50LWJyYW5kLXByaW1hcnktbGlnaHQ6IHJnYmEoMjMwLCAyMzYsIDI0MSwgMCk7XG5cbiAgLyogQnJhbmQgY29sb3JzICovXG4gIC0tYnJhbmQtcHJpbWFyeTogdmFyKC0tcHJpbWFyeS0xMDApO1xuICAtLWJyYW5kLXByaW1hcnktbWlkOiB2YXIoLS1wcmltYXJ5LTUwKTtcbiAgLS1icmFuZC1wcmltYXJ5LW1pZC1saWdodDogdmFyKC0tcHJpbWFyeS0yMCk7XG4gIC0tYnJhbmQtcHJpbWFyeS1saWdodDogdmFyKC0tcHJpbWFyeS0xMCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5OiB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LW1pZDogdmFyKC0tcHJpbWFyeS01MCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LWxpZ2h0OiB2YXIoLS1wcmltYXJ5LTEwKTtcbiAgLS1icmFuZC1yZXZlcnNlOiB2YXIoLS13aGl0ZSk7XG4gIC0tYnJhbmQtdGV4dDogdmFyKC0tYmxhY2spO1xuXG4gIC8qIEFsZXJ0IENvbG9ycyAqL1xuICAtLWFsZXJ0LXN1Y2Nlc3MtMTAwOiB2YXIoLS1zdWNjZXNzLTEwMCk7XG4gIC0tYWxlcnQtc3VjY2Vzcy0xMDogdmFyKC0tc3VjY2Vzcy0xMCk7XG4gIC0tYWxlcnQtZXJyb3ItMTAwOiB2YXIoLS1lcnJvci0xMDApO1xuICAtLWFsZXJ0LWVycm9yLTEwOiB2YXIoLS1lcnJvci0xMCk7XG4gIC0tYWxlcnQtd2FybmluZy0xMDA6IHZhcigtLXdhcm5pbmctMTAwKTtcbiAgLS1hbGVydC13YXJuaW5nLTEwOiB2YXIoLS13YXJuaW5nLTEwKTtcblxuICAvKiBEZXNpZ24gKi9cbiAgLS1ib3JkZXItd2lkdGg6IDJweDtcbiAgLS1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1sYXJnZTogNnB4O1xuICAtLWJveC1zaGFkb3c6IDAgMCAxMHB4IHZhcigtLWJsYWNrLXRyYW5zcGFyZW50KTtcblxuICAvKiBUeXBvZ3JhcGh5ICovXG4gIC0tZm9udC1mYW1pbHk6IFwidXJ3LWRpblwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtZmFtaWx5LWhlYWRpbmc6IFwidXJ3LWRpblwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXG4gIC0tZm9udC1zaXplLXh4czogMC42MjVyZW07IC8qIDEwcHggKi9cbiAgLS1mb250LXNpemUteHh4eGw6IDIuNXJlbTsgLyogNDBweCAqL1xuXG4gIC0tZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LWhlYXZ5OiA2MDA7XG5cbiAgLyogRm9ybSAqL1xuICAtLWZvcm0tc3BhY2luZzogdmFyKC0tc3BhY2luZy1zKTtcbiAgLS1mb3JtLWVsZW1lbnQtaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLXhsKTtcblxuICAtLWZvcm0tdGV4dC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gIC0tZm9ybS1kZXNjcmlwdGlvbi1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAtLWZvcm0tdGV4dC1jb2xvcjogdmFyKC0tYmxhY2spO1xuICAtLWZvcm0tcGxhY2Vob2xkZXItY29sb3I6IHZhcigtLWdyZXktNTApO1xuICAtLWZvcm0tY29sb3Itc3VjY2VzczogdmFyKC0tc3VjY2Vzcy0xMDApO1xuICAtLWZvcm0tY29sb3ItZXJyb3I6IHZhcigtLWVycm9yLTEwMCk7XG5cbiAgLS1mb3JtLWJvcmRlci1jb2xvcjogdmFyKC0tZ3JleXNjYWxlLTUwKTtcbiAgLS1mb3JtLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ3JleXNjYWxlLTc1KTtcbiAgLS1mb3JtLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZm9jdXMtMTAwKTtcbiAgLS1mb3JtLWJvcmRlci13aWR0aDogMnB4O1xuICAtLWZvcm0tYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG5cbiAgLyogSGVhZGVyICovXG4gIC0tc3RhY2tlZC1iZzogdmFyKC0tcHJpbWFyeS0xMCk7XG4gIC0tc3RhY2tlZC1tb2JpbGU6IHZhcigtLXdoaXRlKTtcblxuICAvKiBTcGFjaW5nIEV4dHJhICovXG4gIC0tc3BhY2luZy1zeDogLjc1cmVtO1xuICAtLXNwYWNpbmctc206IDEuMjVyZW07XG4gIC0tc3BhY2luZy14bGw6IDEuNzVyZW07XG5cbiAgLyogSGVhZGluZyBTaXplcyBFeHRyYSAqL1xuICAtLWhlYWRpbmctc2l6ZS1zbTogMS4yNXJlbTsgLyogMjBweCAtIEgzIFRpbGVzIGxhcmdlIHRvIHgtbGFyZ2UgKi9cblxuICAvKiBUaWxlcyAqL1xuICAtLXRpbGUtdGV4dC1ob3ZlcjogdmFyKC0td2hpdGUpO1xuICAtLXRpbGUtYmc6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tYnJhbmQtcHJpbWFyeSksIHZhcigtLWJyYW5kLXByaW1hcnktbWlkKSk7XG4gIC0tdGlsZS1iZy1ob3ZlcjogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1icmFuZC1wcmltYXJ5LW1pZCksIHZhcigtLWJyYW5kLXByaW1hcnktbWlkKSk7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICA6cm9vdCB7XG4gICAgLS1oZWFkaW5nLXNpemUteHhsOiAycmVtO1xuICB9XG59XG4iLCIvKipcbiAqIEdsb2JhbCBIZWFkZXJcbiAqXG4gKiBNYXJrdXA6IGdsb2JhbC1oZWFkZXIudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBHcm91cGVkIENvbXBvbmVudHMuZ2xvYmFsLWhlYWRlclxuICovXG5cbi5nbG9iYWxfX3RvZ2dsZSB7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5nbG9iYWxfX3RvZ2dsZV9fbWVudSB7XG4gIGJvcmRlcjogMCBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJnKTtcbn1cblxuLyoqXG4gKiBMb2dvXG4gKlxuICogTWFya3VwOiBsb2dvLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogRWxlbWVudHMubG9nb1xuICovXG5cbi8qKlxuICogUHJpbWFyeSBIZWFkZXJcbiAqXG4gKiBBIHNpbXBsZSBpbmxpbmUgdmVyc2lvbiBvZiB0aGUgUHJpbWFyeSBIZWFkZXIgdGhhdCBjb250YWlucyBMb2dvLCBOYXZpZ2F0aW9uIGFuZCBTZWFyY2hcbiAqXG4gKiBNYXJrdXA6IHByaW1hcnktaGVhZGVyLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogR3JvdXBlZCBDb21wb25lbnRzLmdsb2JhbC1oZWFkZXIucHJpbWFyeS1oZWFkZXJcbiAqL1xuXG4uZ2xvYmFsX19wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1iZyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tcHJpbWFyeS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS10ZXh0KTtcblxuICAmIC5zZWN0aW9uX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuLmdsb2JhbF9fcHJpbWFyeV9fbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5nbG9iYWxfX3ByaW1hcnlfX3NlYXJjaCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbSk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS10by1sYXJnZSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1tKTtcbiAgfVxuXG4gICYgbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmdsb2JhbF9fcHJpbWFyeV9fc2VhcmNoX19pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqIFByaW1hcnkgSGVhZGVyIFN0YWNrZWRcbiAqXG4gKiBBIHZlcnNpb24gb2YgdGhlIFByaW1hcnkgTmF2aWdhdGlvbiB3aGljaCBpcyBzdGFja2VkLiBUaGUgTG9nbyBhbmQgU2VhcmNoIGFwcGVhciBpbiB0aGUgc2FtZSByb3cgYW5kIGEgbmV3IHJvdyBpcyBjcmVhdGVkIGJlbG93IHRvIGNvbnRhaW5cbiAqIHRoZSBtYWluIE5hdmlnYXRpb24uIEFkZGl0aW9uYWwgc3R5bGVzIGFuZCBtYXJrdXAgYWxsb3cgZm9yIGxlZnQgYW5kIHJpZ2h0IHNlY3Rpb25zIG9mIHRoZSBuYXZpZ2F0aW9uLCBiYWNrZ3JvdW5kIGNvbG91ciB0byBzdHJldGNoIGZ1bGwgc2NyZWVuIGFuZCBwYWRkaW5nIHRvIHN1aXQgdGhpcyBsYXlvdXQuXG4gKlxuICogTWFya3VwOiBwcmltYXJ5LWhlYWRlci0tc3RhY2tlZC50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IEdyb3VwZWQgQ29tcG9uZW50cy5nbG9iYWwtaGVhZGVyLnByaW1hcnktaGVhZGVyLXN0YWNrZWRcbiAqL1xuXG4uZ2xvYmFsX19wcmltYXJ5LS1zdGFja2VkIHtcbiAgJiAuc2VjdGlvbl9fY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICYgLmdsb2JhbF9fcHJpbWFyeV9fbmF2LW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YWNrZWQtYmcpO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGFja2VkLWJnLW1vYmlsZSk7XG4gICAgfVxuICB9XG5cbiAgJiAubmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmIC5uYXZfX2xldmVsLTEge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAuZ2xvYmFsX19wcmltYXJ5X19zZWFyY2gge1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy14cykgMDtcbiAgfVxufVxuXG4uZ2xvYmFsX19wcmltYXJ5X19sb2dvLXNlYXJjaCB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLW0pO1xuXG4gICYgLmdsb2JhbF9fcHJpbWFyeV9fbmF2IHtcbiAgICBAbWVkaWEgKC0tbWVkaXVtLWRvd24pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YWNrZWQtYmctbW9iaWxlKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtdmFyKC0tc3BhY2luZy1tKTtcbiAgICAgIG1hcmdpbi1yaWdodDogLXZhcigtLXNwYWNpbmctbSk7XG4gICAgICB3aWR0aDogY2FsYygxMDB2dyAtIHZhcigtLXNwYWNpbmcteHhsKSk7XG4gICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctbSk7XG4gICAgfVxuICB9XG59XG5cbi5nbG9iYWxfX3ByaW1hcnlfX25hdi1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleDogMCAwIDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cykgMDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gICYuZ2xvYmFsX19wcmltYXJ5X19uYXYtLW9wZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAmIC5zZWN0aW9uX19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctbSk7XG4gIH1cblxuICAmIC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgfVxuXG4gICYgLm5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmcteHMpO1xuICAgIH1cbiAgfVxufVxuXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYtbGVmdCxcbi5nbG9iYWxfX3ByaW1hcnlfX25hdi1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcblxuICAmID4gKiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgJiA+ICoge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogU2Vjb25kYXJ5IEhlYWRlclxuICpcbiAqIE1hcmt1cDogc2Vjb25kYXJ5LWhlYWRlci50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IEVsZW1lbnRzLnNlY29uZGFyeS1oZWFkZXJcbiAqL1xuXG4uZ2xvYmFsX19zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktYmcpO1xuICBmb250LXNpemU6IHZhcigtLXNlY29uZGFyeS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQpO1xuXG4gICYgLnNlY3Rpb25fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuLmdsb2JhbF9fc2Vjb25kYXJ5X19uYXYge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLyoqXG4gKiBHbG9iYWwgRm9vdGVyXG4gKlxuICogTWFya3VwOiBnbG9iYWwtZm9vdGVyLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogR3JvdXBlZCBDb21wb25lbnRzLmZvb3RlclxuICovXG5cbi5nbG9iYWxfX2Zvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvb3Rlci1iZyk7XG4gIGNvbG9yOiB2YXIoLS1mb290ZXItdGV4dCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9vdGVyLWZvbnQtc2l6ZSk7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogdmFyKC0tZm9vdGVyLXRleHQpO1xuICB9XG59XG5cbi5nbG9iYWxfX2Zvb3Rlcl9fbG9nbyB7XG4gIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHh4eGwpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uZ2xvYmFsX19mb290ZXJfX21ldGEge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLW0pO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1zKTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWZvb3Rlci10ZXh0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMjtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmIC5uYXYtLWlubGluZSA+IHVsID4gbGkge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0ICcuLi8uLi9fdmFyaWFibGVzLmNzcyc7XG5AaW1wb3J0ICdAcG54LW1peHRhcGUvZ2xvYmFsL3NyYy9fZ2xvYmFsLmNzcyc7XG5cbi8qKlxuICogU2Vjb25kYXJ5IE1lbnVcbiAqXG4gKiBNYXJrdXA6IHNlY29uZGFyeS1tZW51LnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogQ29tcG9uZW50cy5zZWNvbmRhcnktbWVudVxuICovXG5cbi5nbG9iYWxfX3NlY29uZGFyeV9fbmF2IHtcbiAgJiB1bCxcbiAgJiBhIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1sYXJnZS1kb3duKSB7XG4gICAgJi5uYXYtLWlubGluZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgJiA+IHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1zcGFjaW5nLXhzKSk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiBhIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeS0xMDApO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLXh4eGwpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5nbG9iYWxfX3NlY29uZGFyeSB7XG4gIEBtZWRpYSAoLS1sYXJnZS1kb3duKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXMpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmV5c2NhbGUtMjUpO1xuXG4gICAgJi5zZWN0aW9uLS10b3AteHMge1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbCk7XG4gICAgfVxuXG4gICAgJi5nbG9iYWxfX3NlY29uZGFyeS0tc2hvdy1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgJiAuc2VjdGlvbl9fY29udGVudCB7XG4gICAgQG1lZGlhICgtLWxhcmdlLWRvd24pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy14eHMpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy14eHMpO1xuXG4gICAgICAmID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhICgtLWxhcmdlLXVwKSB7XG4gICAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIEZpeCBmb3IgbG9nb19fc2VhcmNoIGluIHN0eWxlZ3VpZGUgKi9cbi5nbG9iYWxfX3ByaW1hcnlfX2xvZ28tc2VhcmNoIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gIEBtZWRpYSAoLS1sYXJnZS1kb3duKSB7XG4gICAgbWF4LXdpZHRoOiAxMDB2dztcblxuICAgICYgLmdsb2JhbF9fcHJpbWFyeV9fbmF2IHtcbiAgICAgIGZsZXg6IDAgMCAxMDB2dztcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwtZG93bikge1xuICAgICYgLmdsb2JhbF9fcHJpbWFyeV9fbmF2IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmbGV4OiAwIDAgY2FsYygxMDB2dyAtIC41cmVtKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLWxhcmdlLWRvd24pIHtcbiAgLmdsb2JhbF9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuZ2xvYmFsX19wcmltYXJ5X19uYXYtbGVmdCAubmF2X19sZXZlbC0xIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5nbG9iYWxfX3ByaW1hcnlfX25hdi1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmIC5uYXYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5nbG9iYWxfX3ByaW1hcnlfX2xvZ28tc2VhcmNoIHtcbiAgICAmIC5nbG9iYWxfX3ByaW1hcnlfX25hdi0tb3BlbiB7XG4gICAgICAmIC5nbG9iYWxfX3ByaW1hcnlfX3NlYXJjaCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ2xvYmFsX19wcmltYXJ5X19uYXYtbGVmdCxcbiAgLmdsb2JhbF9fcHJpbWFyeV9fbmF2LXJpZ2h0LFxuICAuZ2xvYmFsX19wcmltYXJ5X19uYXYtbGVmdCA+ICosXG4gIC5nbG9iYWxfX3ByaW1hcnlfX25hdi1yaWdodCA+ICoge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmdsb2JhbF9fcHJpbWFyeS0tc3RhY2tlZCB7XG4gICAgJiAuZ2xvYmFsX19wcmltYXJ5X19uYXYtbWVudSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdGFja2VkLWJnLW1vYmlsZSk7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdG8tbGFyZ2UpIHtcbiAgLmdsb2JhbF9fcHJpbWFyeV9fbG9nby1zZWFyY2gge1xuICAgICYgLmdsb2JhbF9fcHJpbWFyeV9fbmF2LS1vcGVuIHtcbiAgICAgIGZsZXg6IDAgMCBjYWxjKDEwMHZ3IC0gM3JlbSk7XG4gICAgfVxuICB9XG59XG5cbi5nbG9iYWxfX3NlY29uZGFyeSB7XG4gICYgLnNlY3Rpb25fX2NvbnRlbnQge1xuICAgIG1heC13aWR0aDogY2FsYyh2YXIoLS1jb250YWluZXItbWF4LXdpZHRoKSAtIHZhcigtLXNwYWNpbmcteHhsKSk7XG4gIH1cbn1cblxuLmdsb2JhbF9fcHJpbWFyeV9fbmF2LWxlZnQsXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYtcmlnaHQsXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYtbGVmdCA+ICosXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYtcmlnaHQgPiAqIHtcbiAgQG1lZGlhICgtLWxhcmdlLXVwKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiJdfQ== */