/**
 * 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 */

  /* Tabs */

  /* Grid */

  /* Print */
}

/**
 * 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: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

.global__primary__nav {
  display: none
}

@media (min-width: 720px) {

.global__primary__nav {
    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 {
  flex: 0 0 100%;
  display: flex;
  flex-wrap: wrap;
  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;
  flex: 0 0 100%;
  justify-content: space-between;
  padding: 0.5rem 0
}

@media (min-width: 720px) {

.global__primary__nav-menu {
    display: flex
}
  }

.global__primary__nav-menu.global__primary__nav--open {
    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: flex;
    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: flex;
  flex-direction: column;
  justify-content: 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 {
    flex-direction: row;
    justify-content: 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(1, 33, 105);
  font-size: 0.875rem;
  color: rgb(255, 255, 255)
}

@media (max-width: 719px) {

  .global__secondary {
  font-size: 0.75rem
  }
}

.global__secondary .section__content {
    display: flex;
    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(1, 33, 105);
  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: flex;
    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: flex;
        flex-wrap: wrap;
        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(1, 33, 105);
        border-radius: 3px;
        height: 3.5rem;
        line-height: 1;
        display: flex;
        justify-content: 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 {
      flex: 0 0 100vw;
    }
  }

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

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

  .global__primary__nav-left .nav__level-1 {
    display: flex;
    flex-direction: column;
    justify-content: 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 {
      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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AcG54LW1peHRhcGUvY29uc3RhbnRzL3NyYy9jb25zdGFudHMuY3NzIiwiLi4vLi4vLi4vLi4vc3JjL192YXJpYWJsZXMuY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BwbngtbWl4dGFwZS9nbG9iYWwvc3JjL19nbG9iYWwuY3NzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvc2Vjb25kYXJ5LW1lbnUvc2Vjb25kYXJ5LW1lbnUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztFQUVFOztBQUVGLGdCQUFnQjs7QUFvQmhCLHlEQUF5RDs7QUFJekQ7O0VBeUJFLGlCQUFpQjs7RUFhakIscUdBQXFHOztFQWdCckcsZUFBZSxFQUtTLFNBQVMsRUFDUixTQUFTLEVBQ1QsU0FBUyxFQUNULGdCQUFnQixFQUNwQixnQkFBZ0IsRUFDWixTQUFTLEVBQ1Qsd0JBQXdCLEVBRXZCLG9CQUFvQixFQUNuQixjQUFjLEVBQ2pCLGNBQWMsRUFDWixjQUFjLEVBQ1osY0FBYyxFQUNqQixjQUFjLEVBQ1QsY0FBYyxFQUV4QixvQkFBb0IsRUFDbEIsb0JBQW9CLEVBQ2hCLGdCQUFnQjs7RUFPMUMsWUFBWSxFQUNZLFFBQVEsRUFDVixRQUFRLEVBQ04sU0FBUyxFQUNkLFNBQVMsRUFDUCxTQUFTLEVBQ1gsU0FBUyxFQUNOLFNBQVMsRUFDVixTQUFTLEVBQ04sU0FBUyxFQUNWLFNBQVMsRUFDVixTQUFTLEVBQ1YsU0FBUyxFQUNOLFNBQVM7O0VBTWpDLFdBQVc7O0VBT1gsV0FBVyxFQUNrQix1QkFBdUI7O0VBRXBELFlBQVk7QUFHZDs7QUFFQTtFQUNFLFFBQzRCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNkLGdCQUFnQixFQUNaLGdCQUFnQixFQUNqQixTQUFTLEVBQ1Asd0JBQXdCLEVBRXJCLG9CQUFvQixFQUNwQixjQUFjLEVBQ2pCLGNBQWMsRUFDYixjQUFj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QUNFLGFBQWE7SUFDYjtFQUtGOztJQUhFO01BQ0UsZUFBZTtJQUNqQjtNQUtFO1FBQ0UsY0FBYztRQUNkLFdBQVc7TUFDYjs7RUFJSjs7OztJQUlFLFdBQVc7RUFDYjtJQUdFO01BQ0Usb0NBQTBDO0lBQzVDO0FBRUo7O0FBRUE7SUFFSTtNQUNFLDRCQUE0QjtJQUM5QjtBQUVKOztBQUdFO0lBQ0UsOEJBQWdFO0VBQ2xFOztBQU9BOztBQUpGOzs7O0lBS0k7QUFFSjtFQURFIiwiZmlsZSI6InNlY29uZGFyeS1tZW51LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVmFyaWFibGVzXG4gKi9cblxuLyogQnJlYWtwb2ludHMgKi9cbkBjdXN0b20tbWVkaWEgLS14LXNtYWxsLXVwICh3aWR0aCA+PSA0MjBweCk7XG5AY3VzdG9tLW1lZGlhIC0teC1zbWFsbC1kb3duICh3aWR0aCA8IDQyMHB4KTtcbkBjdXN0b20tbWVkaWEgLS14LXNtYWxsLXRvLXNtYWxsICg0MjBweCA8PSB3aWR0aCA8IDU0MHB4KTtcblxuQGN1c3RvbS1tZWRpYSAtLXNtYWxsLXVwICh3aWR0aCA+PSA1NDBweCk7XG5AY3VzdG9tLW1lZGlhIC0tc21hbGwtZG93biAod2lkdGggPCA1NDBweCk7XG5AY3VzdG9tLW1lZGlhIC0tc21hbGwtdG8tbWVkaXVtICg1NDBweCA8PSB3aWR0aCA8IDcyMHB4KTtcblxuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS11cCAod2lkdGggPj0gNzIwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS1kb3duICh3aWR0aCA8IDcyMHB4KTtcbkBjdXN0b20tbWVkaWEgLS1tZWRpdW0tdG8tbGFyZ2UgKDcyMHB4IDw9IHdpZHRoIDwgOTQ2cHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tbGFyZ2UtdXAgKHdpZHRoID49IDk0NnB4KTtcbkBjdXN0b20tbWVkaWEgLS1sYXJnZS1kb3duICh3aWR0aCA8IDk0NnB4KTtcbkBjdXN0b20tbWVkaWEgLS1sYXJnZS10by14LWxhcmdlICg5NDZweCA8PSB3aWR0aCA8IDExMDBweCk7XG5cbkBjdXN0b20tbWVkaWEgLS14LWxhcmdlLXVwICh3aWR0aCA+PSAxMTAwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLXgtbGFyZ2UtZG93biAod2lkdGggPCAxMTAwcHgpO1xuXG4vKiBTcGVjaWZpYyBicmVha3BvaW50IGZvciBnbG9iYWwgJiBkcm9wZG93biBuYXZpZ2F0aW9uICovXG5AY3VzdG9tLW1lZGlhIC0tZ2xvYmFsLW5hdi11cCAod2lkdGggPj0gNzIwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLWdsb2JhbC1uYXYtZG93biAod2lkdGggPCA3MjBweCk7XG5cbjpyb290IHtcbiAgLS13aGl0ZTogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAtLWdyZXktMDU6IHJnYigyNDIsIDI0MiwgMjQzKTtcbiAgLS1ncmV5LTEwOiByZ2IoMjMwLCAyMzAsIDIzMCk7XG4gIC0tZ3JleS0yNTogcmdiKDE5NCwgMTk2LCAxOTkpO1xuICAtLWdyZXktNTA6IHJnYigxMjgsIDEyOCwgMTI4KTtcbiAgLS1ncmV5LTc1OiByZ2IoNzUsIDc5LCA4OCk7XG4gIC0tYmxhY2s6IHJnYigwLCAwLCAwKTtcbiAgLS1ibHVlOiByZ2IoMCwgOTIsIDI1MCk7XG4gIC0tYmx1ZS01MDogcmdiKDk5LCAxODEsIDIyMik7XG4gIC0tYmx1ZS0xMDogcmdiKDIyOSwgMjM5LCAyNTUpO1xuICAtLWJsdWUtMDU6IHJnYigyMjksIDIzOSwgMjU1KTtcbiAgLS1vcmFuZ2U6IHJnYigyNDcsIDE0MywgMjkpO1xuICAtLW9yYW5nZS0xMDogcmdiKDI1NCwgMjQzLCAyMzIpO1xuICAtLWdyZWVuOiByZ2IoNjgsIDE2MiwgNzIpO1xuICAtLWdyZWVuLTEwOiByZ2IoMjM4LCAyNDYsIDIzOCk7XG4gIC0tcmVkOiByZ2IoMTk4LCA0MCwgNDApO1xuICAtLXJlZC0xMDogcmdiKDI0OSwgMjMzLCAyMzMpO1xuICAtLXllbGxvdzogcmdiKDI0OSwgMjEyLCAwKTtcbiAgLS15ZWxsb3ctMTA6IHJnYigyNTQsIDI1MCwgMjI5KTtcbiAgLS1wdXJwbGU6IHJnYigxMzYsIDQ3LCAxMTUpO1xuICAtLXB1cnBsZS0xMDogcmdiKDI0MywgMjM0LCAyNDEpO1xuICAtLW92ZXJsYXktbGlnaHQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjUpO1xuICAtLW92ZXJsYXktZGFyazogcmdiYSgwLCAwLCAwLCAuNSk7XG5cbiAgLyogQnJhbmQgY29sb3JzICovXG4gIC0tYnJhbmQtcHJpbWFyeTogdmFyKC0tcHVycGxlKTtcbiAgLS1icmFuZC1wcmltYXJ5LWxpZ2h0OiB2YXIoLS1wdXJwbGUtMTApO1xuICAtLWJyYW5kLXNlY29uZGFyeTogdmFyKC0teWVsbG93KTtcbiAgLS1icmFuZC1zZWNvbmRhcnktbGlnaHQ6IHZhcigtLXllbGxvdy0xMCk7XG4gIC0tYnJhbmQtdGVydGlhcnk6IHZhcigtLWJsdWUpO1xuICAtLWJyYW5kLXRlcnRpYXJ5LWxpZ2h0OiB2YXIoLS1ibHVlLTEwKTtcbiAgLS1icmFuZC1yZXZlcnNlOiB2YXIoLS13aGl0ZSk7XG4gIC0tYnJhbmQtdGV4dDogdmFyKC0tYmxhY2spO1xuICAtLWJyYW5kLWxpbms6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xuICAtLWJyYW5kLWxpbmstaG92ZXI6IHZhcigtLWJyYW5kLXRlcnRpYXJ5KTtcbiAgLS1icmFuZC1ib3JkZXI6IHZhcigtLWdyZXktMTApO1xuXG4gIC8qIEZpbHRlcnMgLSBVc2VkIGZvciBhZGp1c3RpbmcgaWNvbiBjb2xvci4gR2VuZXJhdGVkIHVzaW5nIGBucG0gcnVuIGNvbG9yLXRvLWZpbHRlciAtLSA8b3B0aW9ucz5gLiAqL1xuICAtLWZpbHRlci1ibGFjazogaW52ZXJ0KDAlKSBzZXBpYSg0JSkgc2F0dXJhdGUoMCUpIGh1ZS1yb3RhdGUoNTNkZWcpIGJyaWdodG5lc3MoOTQlKSBjb250cmFzdCgxMDIlKTtcbiAgLS1maWx0ZXItd2hpdGU6IGludmVydCg4OSUpIHNlcGlhKDYwJSkgc2F0dXJhdGUoMCUpIGh1ZS1yb3RhdGUoMzQxZGVnKSBicmlnaHRuZXNzKDEwNCUpIGNvbnRyYXN0KDEwNyUpO1xuICAtLWZpbHRlci1icmFuZC1wcmltYXJ5OiBpbnZlcnQoMjMlKSBzZXBpYSg4NyUpIHNhdHVyYXRlKDEwMjQlKSBodWUtcm90YXRlKDI3N2RlZykgYnJpZ2h0bmVzcyg4OCUpIGNvbnRyYXN0KDkxJSk7XG4gIC0tZmlsdGVyLWJyYW5kLXNlY29uZGFyeTogaW52ZXJ0KDc4JSkgc2VwaWEoOTElKSBzYXR1cmF0ZSgyMDA1JSkgaHVlLXJvdGF0ZSgzNTdkZWcpIGJyaWdodG5lc3MoOTUlKSBjb250cmFzdCgxMDYlKTtcbiAgLS1maWx0ZXItYnJhbmQtdGVydGlhcnk6IGludmVydCgyOCUpIHNlcGlhKDU5JSkgc2F0dXJhdGUoNzA1NiUpIGh1ZS1yb3RhdGUoMjE1ZGVnKSBicmlnaHRuZXNzKDk4JSkgY29udHJhc3QoMTAzJSk7XG4gIC0tZmlsdGVyLWJyYW5kLWxpbms6IHZhcigtLWZpbHRlci1icmFuZC1wcmltYXJ5KTtcbiAgLS1maWx0ZXItYnJhbmQtbGluay1ob3ZlcjogdmFyKC0tZmlsdGVyLWJyYW5kLXRlcnRpYXJ5KTtcbiAgLS1maWx0ZXItYnJhbmQtcmV2ZXJzZTogdmFyKC0tZmlsdGVyLXdoaXRlKTtcbiAgLS1maWx0ZXItYnJhbmQtdGV4dDogdmFyKC0tZmlsdGVyLWJsYWNrKTtcbiAgLS1maWx0ZXItZ3JleS01MDogaW52ZXJ0KDUxJSkgc2VwaWEoMSUpIHNhdHVyYXRlKDAlKSBodWUtcm90YXRlKDEwNmRlZykgYnJpZ2h0bmVzcyg5OSUpIGNvbnRyYXN0KDg3JSk7XG4gIC0tZmlsdGVyLXJlZDogaW52ZXJ0KDIxJSkgc2VwaWEoODMlKSBzYXR1cmF0ZSgyMzMzJSkgaHVlLXJvdGF0ZSgzNDNkZWcpIGJyaWdodG5lc3MoOTElKSBjb250cmFzdCg5NiUpO1xuICAtLWZpbHRlci1ibHVlOiBpbnZlcnQoMjklKSBzZXBpYSg2MyUpIHNhdHVyYXRlKDQ2MTIlKSBodWUtcm90YXRlKDIxMWRlZykgYnJpZ2h0bmVzcyg5MiUpIGNvbnRyYXN0KDExNSUpO1xuICAtLWZpbHRlci1ncmVlbjogaW52ZXJ0KDQwJSkgc2VwaWEoOCUpIHNhdHVyYXRlKDM3NzQlKSBodWUtcm90YXRlKDczZGVnKSBicmlnaHRuZXNzKDEzMiUpIGNvbnRyYXN0KDc0JSk7XG4gIC0tZmlsdGVyLW9yYW5nZTogaW52ZXJ0KDY5JSkgc2VwaWEoMzUlKSBzYXR1cmF0ZSg1MDM1JSkgaHVlLXJvdGF0ZSgzNDlkZWcpIGJyaWdodG5lc3MoMTAzJSkgY29udHJhc3QoOTQlKTtcblxuICAvKiBUeXBvZ3JhcGh5ICovXG4gIC0tZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLS1mb250LWZhbWlseS12YXJpYWJsZTogXCJJbnRlciB2YXJcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgLS1mb250LWZhbWlseS1oZWFkaW5nOiB2YXIoLS1mb250LWZhbWlseSk7XG5cbiAgLS1mb250LXNpemUteHh4bDogMnJlbTsgLyogMzJweCAqL1xuICAtLWZvbnQtc2l6ZS14eGw6IDEuNXJlbTsgLyogMjRweCAqL1xuICAtLWZvbnQtc2l6ZS14bDogMS4yNXJlbTsgLyogMjBweCAqL1xuICAtLWZvbnQtc2l6ZS1sOiAxLjEyNXJlbTsgLyogMThweCAtIExlZGUgKi9cbiAgLS1mb250LXNpemUtbTogMXJlbTsgLyogMTZweCAtIEJvZHkgKi9cbiAgLS1mb250LXNpemUtczogMC44NzVyZW07IC8qIDE0cHggKi9cbiAgLS1mb250LXNpemUteHM6IDAuNzVyZW07IC8qIDEycHggLSBTdWIsIENhcHRpb24gKi9cblxuICAtLWhlYWRpbmctc2l6ZS14eGw6IDNyZW07IC8qIDQ4cHggLSBIZWFkbGluZSAqL1xuICAtLWhlYWRpbmctc2l6ZS14bDogMi41cmVtOyAvKiA0MHB4IC0gSDEgKi9cbiAgLS1oZWFkaW5nLXNpemUtbDogMnJlbTsgLyogMzJweCAtIEgyICovXG4gIC0taGVhZGluZy1zaXplLW06IDEuNXJlbTsgLyogMjRweCAtIEgzICovXG4gIC0taGVhZGluZy1zaXplLXM6IDEuMTI1cmVtOyAvKiAxOHB4IC0gSDQgKi9cbiAgLS1oZWFkaW5nLXNpemUteHM6IDFyZW07IC8qIDE2cHggLSBINSAqL1xuICAtLWhlYWRpbmctc2l6ZS14eHM6IDAuODc1cmVtOyAvKiAxNHB4IC0gSDYgKi9cblxuICAtLWxpbmUtaGVpZ2h0OiAxLjY7IC8qIDEuNiB4IGZvbnQgc2l6ZSAqL1xuICAtLWxpbmUtaGVpZ2h0LWg6IDEuMjsgLyogMS4yIHggZm9udCBzaXplICovXG4gIC0tbGluZS1oZWlnaHQtdWk6IDAuOXJlbTsgLyogMTRweCBhbHdheXMgKi9cblxuICAtLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiAgLS1mb250LXdlaWdodC1oZWF2eTogODAwO1xuICAtLWZvbnQtd2VpZ2h0LWhlYWRpbmc6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuXG4gIC8qIFNwYWNpbmcgKi9cbiAgLS1zcGFjaW5nLXh4czogMC4yNXJlbTsgLyogNHB4ICovXG4gIC0tc3BhY2luZy14czogMC41cmVtOyAvKiA4cHggKi9cbiAgLS1zcGFjaW5nLXhzczogMC43NXJlbTsgLyogMTJweCAqL1xuICAtLXNwYWNpbmctczogMXJlbTsgLyogMTZweCAqL1xuICAtLXNwYWNpbmctbTogMS41cmVtOyAvKiAyNHB4ICovXG4gIC0tc3BhY2luZy1sOiAycmVtOyAvKiAzMnB4ICovXG4gIC0tc3BhY2luZy14bDogMi41cmVtOyAvKiA0MHB4ICovXG4gIC0tc3BhY2luZy14eGw6IDNyZW07IC8qIDQ4cHggKi9cbiAgLS1zcGFjaW5nLXh4eGw6IDMuNXJlbTsgLyogNTZweCAqL1xuICAtLXNwYWNpbmcteHh4eGw6IDRyZW07IC8qIDY0cHggKi9cbiAgLS1zcGFjaW5nLXVsOiA0LjVyZW07IC8qIDcycHggKi9cbiAgLS1zcGFjaW5nLXV1bDogNXJlbTsgLyogODBweCAqL1xuICAtLXNwYWNpbmctdXV1bDogNS41cmVtOyAvKiA4OHB4ICovXG5cbiAgLS1vdXRsaW5lLXdpZHRoOiAycHg7XG4gIC0tb3V0bGluZS1vZmZzZXQ6IDA7XG4gIC0tb3V0bGluZS1jb2xvcjogdmFyKC0tYnJhbmQtdGVydGlhcnkpO1xuXG4gIC8qIExheW91dCAqL1xuICAtLWNvbnRhaW5lci1tYXgtd2lkdGgtbmFycm93OiA1ODBweDtcbiAgLS1jb250YWluZXItbWF4LXdpZHRoLWFsaWduZWQ6IDc3NnB4O1xuICAtLWNvbnRhaW5lci1tYXgtd2lkdGg6IDExODBweDtcbiAgLS1ncmlkLWdhcDogdmFyKC0tc3BhY2luZy1tKTtcbiAgLS1ncmlkLWdhcC1sYXJnZTogdmFyKC0tc3BhY2luZy1sKTtcblxuICAvKiBSYXRpb3MgKi9cbiAgLS1yYXRpby1oZWlnaHQtMTYtOTogNTYuMjUlOyAvKiAxMDAlOjU2LjI1JSA9IDE2OjkgKi9cblxuICAvKiBVdGlsaXR5ICovXG4gIC0tYm94LXNoYWRvdzogMCAwIHZhcigtLXNwYWNpbmcteHMpIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIC0tYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLWRvd24pIHtcbiAgOnJvb3Qge1xuICAgIC0tZm9udC1zaXplLXh4eGw6IDEuNXJlbTsgLyogMjRweCAqL1xuICAgIC0tZm9udC1zaXplLXh4bDogMS4yNXJlbTsgLyogMjBweCAqL1xuICAgIC0tZm9udC1zaXplLXhsOiAxLjEyNXJlbTsgLyogMThweCAqL1xuICAgIC0tZm9udC1zaXplLWw6IDFyZW07IC8qIDE2cHggLSBMZWRlICovXG4gICAgLS1mb250LXNpemUtbTogMC44NzVyZW07IC8qIDE0cHggLSBCb2R5ICovXG4gICAgLS1mb250LXNpemUtczogMC43NXJlbTsgLyogMTJweCAqL1xuICAgIC0tZm9udC1zaXplLXhzOiAwLjYyNXJlbTsgLyogMTBweCAtIFN1YiwgQ2FwdGlvbiAqL1xuXG4gICAgLS1oZWFkaW5nLXNpemUteHhsOiAyLjI1cmVtOyAvKiAzNnB4IC0gSGVhZGxpbmUgKi9cbiAgICAtLWhlYWRpbmctc2l6ZS14bDogMS44NzVyZW07IC8qIDMwcHggLSBIMSAqL1xuICAgIC0taGVhZGluZy1zaXplLWw6IDEuNXJlbTsgLyogMjRweCAtIEgyICovXG4gICAgLS1oZWFkaW5nLXNpemUtbTogMS4yNXJlbTsgLyogMjBweCAtIEgzICovXG4gICAgLS1oZWFkaW5nLXNpemUtczogMS4xMjVyZW07IC8qIDE4cHggLSBINCAqL1xuICAgIC0taGVhZGluZy1zaXplLXhzOiAxcmVtOyAvKiAxNnB4IC0gSDUgKi9cbiAgICAtLWhlYWRpbmctc2l6ZS14eHM6IDAuODc1cmVtOyAvKiAxNHB4IC0gSDYgKi9cbiAgfVxufVxuIiwiQGltcG9ydCAnQHBueC1taXh0YXBlL2NvbnN0YW50cy9zcmMvY29uc3RhbnRzLmNzcyc7XG5AaW1wb3J0ICdAcG54LW1peHRhcGUvZ2xvYmFsL3NyYy9fdmFycy5jc3MnO1xuQGltcG9ydCBcIkBwbngtbWl4dGFwZS9mb3JtL3NyYy9fdmFycy5jc3NcIjtcbkBpbXBvcnQgXCJAcG54LW1peHRhcGUvdGlsZXMvc3JjL192YXJzLmNzc1wiO1xuXG5AY3VzdG9tLW1lZGlhIC0tc2l0ZS1tYXgtd2lkdGgtdXAgKHdpZHRoID4gMTIyOHB4KTtcbkBjdXN0b20tbWVkaWEgLS1zaXRlLW1heC13aWR0aC1kb3duICh3aWR0aCA8PSAxMjI4cHgpO1xuQGN1c3RvbS1tZWRpYSAtLXNtYWxsLXRvLWxhcmdlICg1NDBweCA8PSB3aWR0aCA8IDk0NnB4KTtcblxuOnJvb3Qge1xuICAtLXByaW1hcnktMTAwOiByZ2IoMSwgMzMsIDEwNSk7XG4gIC0tcHJpbWFyeS01MDogcmdiKDYxLCAxMDUsIDE1Mik7XG4gIC0tcHJpbWFyeS0yMDogcmdiKDE5NywgMjEwLCAyMjIpO1xuICAtLXByaW1hcnktMTA6IHJnYigyMzAsIDIzNiwgMjQxKTtcbiAgLS1zZWNvbmRhcnktMTAwOiByZ2IoNDgsIDExNiwgMTE2KTtcbiAgLS1zZWNvbmRhcnktNTA6IHJnYig3NCwgMTc5LCAxNzkpO1xuICAtLXNlY29uZGFyeS0xMDogcmdiKDI0NCwgMjQ4LCAyNDgpO1xuICAtLWdyZXlzY2FsZS0xMDA6IHJnYigxMywgMTgsIDMxKTtcbiAgLS1ncmV5c2NhbGUtNzU6IHJnYig3NCwgNzgsIDg3KTtcbiAgLS1ncmV5c2NhbGUtNTA6IHJnYigxMjcsIDEyNywgMTI3KTtcbiAgLS1ncmV5c2NhbGUtMjU6IHJnYigxOTQsIDE5NiwgMTk5KTtcbiAgLS1ncmV5c2NhbGUtMTA6IHJnYigyMzAsIDIzMCwgMjMwKTtcbiAgLS1ncmV5c2NhbGUtMDU6IHJnYigyNDMsIDI0MywgMjQ0KTtcbiAgLS13aGl0ZTogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAtLXN1Y2Nlc3MtMTAwOiByZ2IoNjcsIDE2MCwgNzEpO1xuICAtLXN1Y2Nlc3MtMTA6IHJnYigyMzcsIDI0NiwgMjM3KTtcbiAgLS1lcnJvci0xMDA6IHJnYigxOTgsIDQwLCA0MCk7XG4gIC0tZXJyb3ItMTA6IHJnYigyNDksIDIzMywgMjMzKTtcbiAgLS13YXJuaW5nLTEwMDogcmdiKDI0NywgMTQzLCAzMCk7XG4gIC0td2FybmluZy0xMDogcmdiKDI1NCwgMjQzLCAyMzIpO1xuICAtLWZvY3VzLTEwMDogcmdiKDI1LCAxMTgsIDIxMCk7XG4gIC0tZm9jdXMtMTA6IHJnYigyMzIsIDI0MSwgMjUwKTtcbiAgLS1ibHVlLTEwMDogcmdiKDAsIDExNCwgMjA2KTtcbiAgLS1ibHVlLTUwOiAjZDBlOGYzO1xuICAtLXJlZC0xMDA6IHJnYigxMzcsIDEyLCA4OCk7XG4gIC0teWVsbG93LTEwMDogcmdiKDI0MSwgMTgwLCA1Mik7XG4gIC0tcGFnZS1iZzogcmdiKDI0NyAyNDkgMjUwKTtcbiAgLS1ibGFjay10cmFuc3BhcmVudDogcmdiYSgwLCAwLCAwLCAuMSk7XG4gIC0taGlnaGxpZ2h0LTAxOiB2YXIoLS1ibHVlLTEwMCk7XG4gIC0taGlnaGxpZ2h0LTAyOiB2YXIoLS1yZWQtMTAwKTtcbiAgLS1oaWdobGlnaHQtMDM6IHZhcigtLXllbGxvdy0xMDApO1xuICAtLXRyYW5zcGFyZW50LXdoaXRlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAtLXNlbWktdHJhbnNwYXJlbnQtd2hpdGU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpO1xuICAtLXRyYW5zcGFyZW50LWJyYW5kLXByaW1hcnktbGlnaHQ6IHJnYmEoMjMwLCAyMzYsIDI0MSwgMCk7XG5cbiAgLyogQnJhbmQgY29sb3JzICovXG4gIC0tYnJhbmQtcHJpbWFyeTogdmFyKC0tcHJpbWFyeS0xMDApO1xuICAtLWJyYW5kLXByaW1hcnktbWlkOiB2YXIoLS1wcmltYXJ5LTUwKTtcbiAgLS1icmFuZC1wcmltYXJ5LW1pZC1saWdodDogdmFyKC0tcHJpbWFyeS0yMCk7XG4gIC0tYnJhbmQtcHJpbWFyeS1saWdodDogdmFyKC0tcHJpbWFyeS0xMCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5OiB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LW1pZDogdmFyKC0tcHJpbWFyeS01MCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LWxpZ2h0OiB2YXIoLS1wcmltYXJ5LTEwKTtcbiAgLS1icmFuZC1yZXZlcnNlOiB2YXIoLS13aGl0ZSk7XG4gIC0tYnJhbmQtdGV4dDogdmFyKC0tYmxhY2spO1xuICAtLWJyYW5kLXNsYXRlLWdyZXk6ICM5OGE0YWU7XG4gIC0tYnJhbmQtZGVlcC1ncmV5OiAjMjUzNzQ2O1xuICAtLWJyYW5kLWNvYmFsdDogdmFyKC0tYmx1ZS0xMDApO1xuXG4gIC8qIEFsZXJ0IENvbG9ycyAqL1xuICAtLWFsZXJ0LXN1Y2Nlc3MtMTAwOiB2YXIoLS1zdWNjZXNzLTEwMCk7XG4gIC0tYWxlcnQtc3VjY2Vzcy0xMDogdmFyKC0tc3VjY2Vzcy0xMCk7XG4gIC0tYWxlcnQtZXJyb3ItMTAwOiB2YXIoLS1lcnJvci0xMDApO1xuICAtLWFsZXJ0LWVycm9yLTEwOiB2YXIoLS1lcnJvci0xMCk7XG4gIC0tYWxlcnQtd2FybmluZy0xMDA6IHZhcigtLXdhcm5pbmctMTAwKTtcbiAgLS1hbGVydC13YXJuaW5nLTEwOiB2YXIoLS13YXJuaW5nLTEwKTtcblxuICAvKiBEZXNpZ24gKi9cbiAgLS1ib3JkZXItd2lkdGg6IDJweDtcbiAgLS1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1sYXJnZTogNnB4O1xuICAtLWJveC1zaGFkb3c6IDAgMCAxMHB4IHZhcigtLWJsYWNrLXRyYW5zcGFyZW50KTtcbiAgLS1jb2xvdXItYmFja2dyb3VuZC1yZXZlcnNlOiB2YXIoLS1ibGFjayk7XG4gIC0tY29sb3VyLWZvcmVncm91bmQtcmV2ZXJzZTogdmFyKC0td2hpdGUpO1xuXG4gIC8qIFR5cG9ncmFwaHkgKi9cbiAgLS1mb250LWZhbWlseTogXCJ1cnctZGluXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1mYW1pbHktaGVhZGluZzogXCJ1cnctZGluXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbiAgLS1mb250LXNpemUteHhzOiAwLjYyNXJlbTsgLyogMTBweCAqL1xuICAtLWZvbnQtc2l6ZS14eHh4bDogMi41cmVtOyAvKiA0MHB4ICovXG5cbiAgLS1mb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiAgLS1mb250LXdlaWdodC1ib2xkOiA1MDA7XG4gIC0tZm9udC13ZWlnaHQtaGVhdnk6IDYwMDtcblxuICAvKiBGb3JtICovXG4gIC0tZm9ybS1zcGFjaW5nOiB2YXIoLS1zcGFjaW5nLXMpO1xuICAtLWZvcm0tZWxlbWVudC1oZWlnaHQ6IHZhcigtLXNwYWNpbmcteGwpO1xuXG4gIC0tZm9ybS10ZXh0LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgLS1mb3JtLWRlc2NyaXB0aW9uLXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gIC0tZm9ybS10ZXh0LWNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIC0tZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogdmFyKC0tZ3JleS01MCk7XG4gIC0tZm9ybS1jb2xvci1zdWNjZXNzOiB2YXIoLS1zdWNjZXNzLTEwMCk7XG4gIC0tZm9ybS1jb2xvci1lcnJvcjogdmFyKC0tZXJyb3ItMTAwKTtcblxuICAtLWZvcm0tYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmV5c2NhbGUtNTApO1xuICAtLWZvcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1ncmV5c2NhbGUtNzUpO1xuICAtLWZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1mb2N1cy0xMDApO1xuICAtLWZvcm0tYm9yZGVyLXdpZHRoOiAycHg7XG4gIC0tZm9ybS1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblxuICAvKiBIZWFkZXIgKi9cbiAgLS1zdGFja2VkLWJnOiB2YXIoLS1wcmltYXJ5LTEwKTtcbiAgLS1zdGFja2VkLW1vYmlsZTogdmFyKC0td2hpdGUpO1xuXG4gIC8qIFNwYWNpbmcgRXh0cmEgKi9cbiAgLS1zcGFjaW5nLXN4OiAuNzVyZW07XG4gIC0tc3BhY2luZy1zbTogMS4yNXJlbTtcbiAgLS1zcGFjaW5nLXhsbDogMS43NXJlbTtcblxuICAvKiBIZWFkaW5nIFNpemVzIEV4dHJhICovXG4gIC0taGVhZGluZy1zaXplLXNtOiAxLjI1cmVtOyAvKiAyMHB4IC0gSDMgVGlsZXMgbGFyZ2UgdG8geC1sYXJnZSAqL1xuXG4gIC8qIFRpbGVzICovXG4gIC0tdGlsZS10ZXh0LWhvdmVyOiB2YXIoLS13aGl0ZSk7XG4gIC0tdGlsZS1iZzogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1icmFuZC1wcmltYXJ5KSwgdmFyKC0tYnJhbmQtcHJpbWFyeS1taWQpKTtcbiAgLS10aWxlLWJnLWhvdmVyOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWJyYW5kLXByaW1hcnktbWlkKSwgdmFyKC0tYnJhbmQtcHJpbWFyeS1taWQpKTtcblxuICAvKiBUYWJzICovXG4gIC0tdGFicy1taW4td2lkdGg6IDA7XG5cbiAgLyogR3JpZCAqL1xuICAtLWdhcC1zOiAxNnB4O1xuICAtLWdhcDogMjRweDtcbiAgLS1nYXAtbDogMzJweDtcbiAgLS1nYXAteGw6IDQwcHg7XG5cbiAgLyogUHJpbnQgKi9cbiAgLS1wcmludC1wYWRkaW5nOiAycmVtO1xuICAtLXByaW50LWZvcmVncm91bmQ6IHZhcigtLXByaW1hcnktMTAwKTtcbiAgLS1wcmludC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gIDpyb290IHtcbiAgICAtLWhlYWRpbmctc2l6ZS14eGw6IDJyZW07XG4gIH1cbn1cbiIsIi8qKlxuICogR2xvYmFsIEhlYWRlclxuICpcbiAqIE1hcmt1cDogZ2xvYmFsLWhlYWRlci50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IEdyb3VwZWQgQ29tcG9uZW50cy5nbG9iYWwtaGVhZGVyXG4gKi9cblxuLmdsb2JhbF9fdG9nZ2xlIHtcbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmdsb2JhbF9fdG9nZ2xlX19tZW51IHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktYmcpO1xufVxuXG4vKipcbiAqIExvZ29cbiAqXG4gKiBNYXJrdXA6IGxvZ28udHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBFbGVtZW50cy5sb2dvXG4gKi9cblxuLyoqXG4gKiBQcmltYXJ5IEhlYWRlclxuICpcbiAqIEEgc2ltcGxlIGlubGluZSB2ZXJzaW9uIG9mIHRoZSBQcmltYXJ5IEhlYWRlciB0aGF0IGNvbnRhaW5zIExvZ28sIE5hdmlnYXRpb24gYW5kIFNlYXJjaFxuICpcbiAqIE1hcmt1cDogcHJpbWFyeS1oZWFkZXIudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBHcm91cGVkIENvbXBvbmVudHMuZ2xvYmFsLWhlYWRlci5wcmltYXJ5LWhlYWRlclxuICovXG5cbi5nbG9iYWxfX3ByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWJnKTtcbiAgZm9udC1zaXplOiB2YXIoLS1wcmltYXJ5LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LXRleHQpO1xuXG4gICYgLnNlY3Rpb25fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5nbG9iYWxfX3ByaW1hcnlfX25hdi0tb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmdsb2JhbF9fcHJpbWFyeV9fc2VhcmNoIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1tKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXRvLWxhcmdlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLW0pO1xuICB9XG5cbiAgJiBsYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZ2xvYmFsX19wcmltYXJ5X19zZWFyY2hfX2lucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogUHJpbWFyeSBIZWFkZXIgU3RhY2tlZFxuICpcbiAqIEEgdmVyc2lvbiBvZiB0aGUgUHJpbWFyeSBOYXZpZ2F0aW9uIHdoaWNoIGlzIHN0YWNrZWQuIFRoZSBMb2dvIGFuZCBTZWFyY2ggYXBwZWFyIGluIHRoZSBzYW1lIHJvdyBhbmQgYSBuZXcgcm93IGlzIGNyZWF0ZWQgYmVsb3cgdG8gY29udGFpblxuICogdGhlIG1haW4gTmF2aWdhdGlvbi4gQWRkaXRpb25hbCBzdHlsZXMgYW5kIG1hcmt1cCBhbGxvdyBmb3IgbGVmdCBhbmQgcmlnaHQgc2VjdGlvbnMgb2YgdGhlIG5hdmlnYXRpb24sIGJhY2tncm91bmQgY29sb3VyIHRvIHN0cmV0Y2ggZnVsbCBzY3JlZW4gYW5kIHBhZGRpbmcgdG8gc3VpdCB0aGlzIGxheW91dC5cbiAqXG4gKiBNYXJrdXA6IHByaW1hcnktaGVhZGVyLS1zdGFja2VkLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogR3JvdXBlZCBDb21wb25lbnRzLmdsb2JhbC1oZWFkZXIucHJpbWFyeS1oZWFkZXItc3RhY2tlZFxuICovXG5cbi5nbG9iYWxfX3ByaW1hcnktLXN0YWNrZWQge1xuICAmIC5zZWN0aW9uX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJiAuZ2xvYmFsX19wcmltYXJ5X19uYXYtbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhY2tlZC1iZyk7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLWRvd24pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YWNrZWQtYmctbW9iaWxlKTtcbiAgICB9XG4gIH1cblxuICAmIC5uYXYge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYgLm5hdl9fbGV2ZWwtMSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5nbG9iYWxfX3ByaW1hcnlfX3NlYXJjaCB7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLXhzKSAwO1xuICB9XG59XG5cbi5nbG9iYWxfX3ByaW1hcnlfX2xvZ28tc2VhcmNoIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctbSk7XG5cbiAgJiAuZ2xvYmFsX19wcmltYXJ5X19uYXYge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhY2tlZC1iZy1tb2JpbGUpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC12YXIoLS1zcGFjaW5nLW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtdmFyKC0tc3BhY2luZy1tKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gdmFyKC0tc3BhY2luZy14eGwpKTtcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy1tKTtcbiAgICB9XG4gIH1cbn1cblxuLmdsb2JhbF9fcHJpbWFyeV9fbmF2LW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4OiAwIDAgMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhzKSAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi5nbG9iYWxfX3ByaW1hcnlfX25hdi0tb3BlbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gICYgLnNlY3Rpb25fX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy1tKTtcbiAgfVxuXG4gICYgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy14eHMpO1xuICB9XG5cbiAgJiAubmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgfVxuICB9XG59XG5cbi5nbG9iYWxfX3ByaW1hcnlfX25hdi1sZWZ0LFxuLmdsb2JhbF9fcHJpbWFyeV9fbmF2LXJpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYgPiAqIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICAmID4gKiB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBTZWNvbmRhcnkgSGVhZGVyXG4gKlxuICogTWFya3VwOiBzZWNvbmRhcnktaGVhZGVyLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogRWxlbWVudHMuc2Vjb25kYXJ5LWhlYWRlclxuICovXG5cbi5nbG9iYWxfX3NlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1iZyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2Vjb25kYXJ5LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktdGV4dCk7XG5cbiAgJiAuc2VjdGlvbl9fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmIGEge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktdGV4dCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4uZ2xvYmFsX19zZWNvbmRhcnlfX25hdiB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vKipcbiAqIEdsb2JhbCBGb290ZXJcbiAqXG4gKiBNYXJrdXA6IGdsb2JhbC1mb290ZXIudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBHcm91cGVkIENvbXBvbmVudHMuZm9vdGVyXG4gKi9cblxuLmdsb2JhbF9fZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9vdGVyLWJnKTtcbiAgY29sb3I6IHZhcigtLWZvb3Rlci10ZXh0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb290ZXItZm9udC1zaXplKTtcblxuICAmIGEge1xuICAgIGNvbG9yOiB2YXIoLS1mb290ZXItdGV4dCk7XG4gIH1cbn1cblxuLmdsb2JhbF9fZm9vdGVyX19sb2dvIHtcbiAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eHh4bCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5nbG9iYWxfX2Zvb3Rlcl9fbWV0YSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbSk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXMpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZm9vdGVyLXRleHQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gICYgLm5hdi0taW5saW5lID4gdWwgPiBsaSB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL192YXJpYWJsZXMuY3NzJztcbkBpbXBvcnQgJ0BwbngtbWl4dGFwZS9nbG9iYWwvc3JjL19nbG9iYWwuY3NzJztcblxuLyoqXG4gKiBTZWNvbmRhcnkgTWVudVxuICpcbiAqIE1hcmt1cDogc2Vjb25kYXJ5LW1lbnUudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBDb21wb25lbnRzLnNlY29uZGFyeS1tZW51XG4gKi9cblxuLmdsb2JhbF9fc2Vjb25kYXJ5X19uYXYge1xuICAmIHVsLFxuICAmIGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICB9XG5cbiAgQG1lZGlhICgtLWxhcmdlLWRvd24pIHtcbiAgICAmLm5hdi0taW5saW5lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAmID4gdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAmID4gbGkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIHZhcigtLXNwYWNpbmcteHMpKTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmIGEge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmcteHh4bCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmdsb2JhbF9fc2Vjb25kYXJ5IHtcbiAgQG1lZGlhICgtLWxhcmdlLWRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctcyk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdyZXlzY2FsZS0yNSk7XG5cbiAgICAmLnNlY3Rpb24tLXRvcC14cyB7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sKTtcbiAgICB9XG5cbiAgICAmLmdsb2JhbF9fc2Vjb25kYXJ5LS1zaG93LW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAmIC5zZWN0aW9uX19jb250ZW50IHtcbiAgICBAbWVkaWEgKC0tbGFyZ2UtZG93bikge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXh4cyk7XG5cbiAgICAgICYgPiBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKC0tbGFyZ2UtdXApIHtcbiAgICAgICYgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogRml4IGZvciBsb2dvX19zZWFyY2ggaW4gc3R5bGVndWlkZSAqL1xuLmdsb2JhbF9fcHJpbWFyeV9fbG9nby1zZWFyY2gge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG5cbiAgQG1lZGlhICgtLWxhcmdlLWRvd24pIHtcbiAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuXG4gICAgJiAuZ2xvYmFsX19wcmltYXJ5X19uYXYge1xuICAgICAgZmxleDogMCAwIDEwMHZ3O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbC1kb3duKSB7XG4gICAgJiAuZ2xvYmFsX19wcmltYXJ5X19uYXYge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZsZXg6IDAgMCBjYWxjKDEwMHZ3IC0gLjVyZW0pO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tbGFyZ2UtZG93bikge1xuICAuZ2xvYmFsX190b2dnbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5nbG9iYWxfX3ByaW1hcnlfX25hdi1sZWZ0IC5uYXZfX2xldmVsLTEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmdsb2JhbF9fcHJpbWFyeV9fbmF2LW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgICYgLm5hdiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmdsb2JhbF9fcHJpbWFyeV9fbG9nby1zZWFyY2gge1xuICAgICYgLmdsb2JhbF9fcHJpbWFyeV9fbmF2LS1vcGVuIHtcbiAgICAgICYgLmdsb2JhbF9fcHJpbWFyeV9fc2VhcmNoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nbG9iYWxfX3ByaW1hcnlfX25hdi1sZWZ0LFxuICAuZ2xvYmFsX19wcmltYXJ5X19uYXYtcmlnaHQsXG4gIC5nbG9iYWxfX3ByaW1hcnlfX25hdi1sZWZ0ID4gKixcbiAgLmdsb2JhbF9fcHJpbWFyeV9fbmF2LXJpZ2h0ID4gKiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuZ2xvYmFsX19wcmltYXJ5LS1zdGFja2VkIHtcbiAgICAmIC5nbG9iYWxfX3ByaW1hcnlfX25hdi1tZW51IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YWNrZWQtYmctbW9iaWxlKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS10by1sYXJnZSkge1xuICAuZ2xvYmFsX19wcmltYXJ5X19sb2dvLXNlYXJjaCB7XG4gICAgJiAuZ2xvYmFsX19wcmltYXJ5X19uYXYtLW9wZW4ge1xuICAgICAgZmxleDogMCAwIGNhbGMoMTAwdncgLSAzcmVtKTtcbiAgICB9XG4gIH1cbn1cblxuLmdsb2JhbF9fc2Vjb25kYXJ5IHtcbiAgJiAuc2VjdGlvbl9fY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWNvbnRhaW5lci1tYXgtd2lkdGgpIC0gdmFyKC0tc3BhY2luZy14eGwpKTtcbiAgfVxufVxuXG4uZ2xvYmFsX19wcmltYXJ5X19uYXYtbGVmdCxcbi5nbG9iYWxfX3ByaW1hcnlfX25hdi1yaWdodCxcbi5nbG9iYWxfX3ByaW1hcnlfX25hdi1sZWZ0ID4gKixcbi5nbG9iYWxfX3ByaW1hcnlfX25hdi1yaWdodCA+ICoge1xuICBAbWVkaWEgKC0tbGFyZ2UtdXApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIl19 */