/*
 * DO NOT EDIT THIS FILE.
 * Find the correct source file and do your changes there.
 * @preserve
 */
/**
 * @file
 * Visual styles for menu.
 */
/**
 * We are using PostCSS Custom Media because we can not use custom properties inside @media.
 * For more information go to: https://www.npmjs.com/package/postcss-custom-media
 */
ul.menu {
  margin: 0;
  padding: 0;
  list-style: none outside;
  text-align: left; /* LTR */
}
[dir="rtl"] ul.menu {
  text-align: right;
}
.menu-item--expanded {
  list-style-type: circle;
  list-style-image: url("../../images/icons/menu-expanded.png");
}
.menu-item--collapsed {
  list-style-type: disc;
  list-style-image: url("../../images/icons/menu-collapsed.png"); /* LTR */
}
[dir="rtl"] .menu-item--collapsed {
  list-style-image: url("../../images/icons/menu-collapsed-rtl.png");
}
.menu-item {
  margin: 0;
  padding-top: 0.2em;
}
ul.menu a.is-active {
  color: #000;
}
/**
 * Main menu
 */
.menu--main > .menu, .menu--anonymous-main-navigation > .menu {
    display: flex;
    gap: 10px;
    margin-right: 10px;
}
@media screen and (min-width: 900px) {
.menu--main > .menu, .menu--anonymous-main-navigation > .menu {
      gap: 15px;
      margin-right: 10px;
}
    }
@media screen and (min-width: 1200px) {
.menu--main > .menu, .menu--anonymous-main-navigation > .menu {
      gap: 40px;
      margin-right: 10px;
}
    }
.menu--main > .menu a, .menu--anonymous-main-navigation > .menu a {
      color: #003B4A;
      padding-bottom: 30px;
      display: block;
      font-size: 1rem;
      font-weight: 700;
      text-decoration: none;
    }
@media screen and (min-width: 900px) {
.menu--main > .menu a, .menu--anonymous-main-navigation > .menu a {
        font-size: 1rem;
    }
      }
@media screen and (min-width: 980px) {
.menu--main > .menu a, .menu--anonymous-main-navigation > .menu a {
        font-size: 1.125rem;
    }
      }
.menu--main > .menu a:hover:not(.is-active), .menu--anonymous-main-navigation > .menu a:hover:not(.is-active) {
        color: #33626E;
      }
.menu--main > .menu .menu-item, .menu--anonymous-main-navigation > .menu .menu-item {
      margin: 0;
      padding: 0;
      position: relative;
    }
.menu--main > .menu .menu-item--expanded, .menu--anonymous-main-navigation > .menu .menu-item--expanded {
      background: transparent url('../../images/icons/menu-down-arrow--navy.svg') right 0.6em no-repeat;
      list-style-image: none;
      list-style-type: none;
      padding-right: 16px;
    }
.menu--main > .menu .menu, .menu--anonymous-main-navigation > .menu .menu {
      background: #FFFFFF;
      border-radius: 0 0 12px 12px;
      box-shadow: 0 1px 4px 0 rgba(0, 59, 74, 0.5);
      display: none;
      left: 0;
      position: absolute;
      top: 100%;
      width: 200px;
      z-index: 100;
    }
.menu--main > .menu .menu a, .menu--anonymous-main-navigation > .menu .menu a {
        display: block;
        padding: 0.5em 1em;
      }
/* -- Active trail -- */
/* First level */
.menu--main > .menu > .menu-item.menu-item--active-trail > a,
      .menu--anonymous-main-navigation > .menu > .menu-item.menu-item--active-trail > a,
      .menu--main > .menu > .menu-item > a.is-active,
      .menu--anonymous-main-navigation > .menu > .menu-item > a.is-active {
        position: relative;
      }
.menu--main > .menu > .menu-item.menu-item--active-trail > a::before, .menu--anonymous-main-navigation > .menu > .menu-item.menu-item--active-trail > a::before, .menu--main > .menu > .menu-item > a.is-active::before, .menu--anonymous-main-navigation > .menu > .menu-item > a.is-active::before {
          background: #66CC00;
          bottom: 0;
          display: block;
          height: 5px;
          content: '';
          left: 0;
          position: absolute;
          width: 100%;
        }
.menu--main > .menu > .menu-item.menu-item--active-trail, .menu--anonymous-main-navigation > .menu > .menu-item.menu-item--active-trail {
        position: relative;
      }
.menu--main > .menu > .menu-item.menu-item--active-trail > a, .menu--anonymous-main-navigation > .menu > .menu-item.menu-item--active-trail > a { position: static; }
/* Second level down */
.menu--main > .menu > .menu-item .menu-item a.is-active, .menu--anonymous-main-navigation > .menu > .menu-item .menu-item a.is-active { text-decoration: underline; }
@media screen and (max-width: 899px) {
.menu--main,
.menu--anonymous-main-navigation {
    background: #F8DB4A;
    color: #003B4A;
    display: none;
    left: 0;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 900;
}

    .menu--main > .menu, .menu--anonymous-main-navigation > .menu {
      display: block;
      left: 0;
      padding: 0 18px;
      position: absolute;
      text-align: center;
      top: 225px;
      width: 100%;
    }

      .menu--main > .menu > .menu-item, .menu--anonymous-main-navigation > .menu > .menu-item {
        border-bottom: 1px solid #003B4A;
      }

        .menu--main > .menu > .menu-item:first-child, .menu--anonymous-main-navigation > .menu > .menu-item:first-child { border-top: 1px solid #003B4A; }

        .menu--main > .menu > .menu-item > a, .menu--anonymous-main-navigation > .menu > .menu-item > a {
          padding: 18px 0;
        }

      .menu--main > .menu .menu-item--expanded, .menu--anonymous-main-navigation > .menu .menu-item--expanded {
        background-image: none;
        padding-right: 0;
      }

          .menu--main > .menu .menu-item--expanded > a::after, .menu--anonymous-main-navigation > .menu .menu-item--expanded > a::after {
            background: transparent url('../../images/icons/menu-down-arrow--navy.svg') center center no-repeat;
            content: '';
            display: inline-block;
            height: 6px;
            left: 0.6em;
            margin-right: -10px;
            position: relative;
            top: -0.2em;
            width: 10px;
          }

        .menu--main > .menu .mobile-expanded > a, .menu--anonymous-main-navigation > .menu .mobile-expanded > a {
          background: #003B4A;
          color: #FFFFFF;
        }

          .menu--main > .menu .mobile-expanded > a:hover, .menu--anonymous-main-navigation > .menu .mobile-expanded > a:hover { color: #FFFFFF; }

          .menu--main > .menu .mobile-expanded > a::after, .menu--anonymous-main-navigation > .menu .mobile-expanded > a::after {
            background-image: url('../../images/icons/menu-up-arrow--white.svg');
            transform: rotate(90deg);
          }

        .menu--main > .menu .mobile-expanded > .menu, .menu--anonymous-main-navigation > .menu .mobile-expanded > .menu {
          background: #FFFFFF;
          display: block;
          position: static;
          margin-bottom: 1rem;
          text-align: center;
          width: 100%;
        }

      .menu--main > .menu a, .menu--anonymous-main-navigation > .menu a {
        color: #003B4A;
      }
  }
@media screen and (min-width: 900px) {
    .menu--main > .menu .menu-item:hover > .menu, .menu--anonymous-main-navigation > .menu .menu-item:hover > .menu { display: block; }
  }
@media screen and (max-width: 899px) {

    body.main-menu-open .menu--main,
    body.main-menu-open .menu--anonymous-main-navigation {
      display: block;
    }
  }
/**
 * Hamburger menu
 */
.hamburger-menu {
  width: 42px;
  height: 22px;
  position: relative;
  margin: 0;
  transform: rotate(0deg);
  transition: .5s ease-in-out;
  cursor: pointer;
}
.hamburger-menu span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #66CC00;
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
  }
.hamburger-menu span:nth-child(1) {
    top: 0px;
  }
.hamburger-menu span:nth-child(2),
  .hamburger-menu span:nth-child(3) {
    top: 9px;
  }
.hamburger-menu span:nth-child(4) {
    top: 18px;
  }
.hamburger-menu.open {
    left: 15px;
    position: absolute;
    top: 20px;
    z-index: 902;
  }
:lang(fr) .hamburger-menu.open {
  left: 10px;
}

.hamburger-menu.open span {
      background: #003B4A;
      border-radius: 3px;
    }
.hamburger-menu.open span:nth-child(1) {
      top: 18px;
      width: 0%;
      left: 50%;
    }
.hamburger-menu.open span:nth-child(2) {
      transform: rotate(45deg);
    }
.hamburger-menu.open span:nth-child(3) {
      transform: rotate(-45deg);
    }
.hamburger-menu.open span:nth-child(4) {
      top: 18px;
      width: 0%;
      left: 50%;
    }
@media screen and (min-width: 900px) {
.hamburger-menu {
    display: none;
}
  }
/* End of: Hamburger menu */
/**
 * Account menu
 */
.menu--account {
  background: #003B4A;
  border-radius: 0 0 12px;
  color: #FFFFFF;
  font-size: 1rem;
  padding: 10px 20px 10px 10px;
  position: relative;
}
.menu--account .user-name {
    background: transparent url("../../images/icons/menu-down-arrow--white.svg") right center no-repeat;
    cursor: pointer;
    font-weight: 600;
    line-height: 1.2;
    padding-right: 14px;
  }
.menu--account > .menu {
    background: #FFFFFF;
    border-radius: 0 12px 12px 12px;
    box-shadow: 0px 1px 4px 0 rgba(0, 59, 74, 0.5);
    display: none;
    left: 0;
    padding: 5px 0 10px;
    position: absolute;
    top: 100%;
    width: 100%;
  }
.menu--account > .menu a {
      color: #003B4A;
      display: inline-block;
      text-decoration: none;
      padding: 0 10px;
    }
.menu--account > .menu a:hover,
      .menu--account > .menu a:focus {
        color: #00AF91;
      }
.menu--account.expanded > .menu { display: block; }
@media screen and (max-width: 599px) {
.menu--account {
    border-radius: 0;
}

    .menu--account .username-inner {
      display: block;
      overflow: hidden;
      text-overflow: ellipsis;
      width: 120px;
    }
  }
/* End of: Account menu */
/**
 * Anonymous account menu
 */
.menu--anonymous-user-account-menu {
  background: #003B4A;
  border-radius: 0 0 12px 40px;
  color: #FFFFFF;
  font-size: 1rem;
  line-height: 1.2;
  padding: 10px 20px 10px 40px;
  position: relative;
}
.menu--anonymous-user-account-menu .menu {
    display: flex;
    gap: 20px;
  }
.menu--anonymous-user-account-menu .menu-item {
    margin: 0;
    padding: 0;
  }
.menu--anonymous-user-account-menu a {
    color: #FFFFFF;
    text-decoration: none;
  }
.menu--anonymous-user-account-menu a:hover { text-decoration: underline; }
.menu--anonymous-user-account-menu a.is-active { color: #FFFFFF !important; }
/* End of: Anonymous account menu */
/**
 * Activities menu
 */
@media screen and (max-width: 599px) {

    .menu--activities-menu .menu-item:not(.mobile-only) { display: none !important; }
  }
@media screen and (min-width: 600px) {

    .menu--activities-menu .mobile-only { display: none !important; }
  }
/* End of: Activities menu */
/**
 * Programs menu (used to be Learning menu)
 */
@media screen and (max-width: 599px) {

    .menu--learning-menu .menu-item:not(.mobile-only) { display: none !important; }
  }
@media screen and (min-width: 600px) {

    .menu--learning-menu .mobile-only { display: none !important; }
  }
/**
 * Anonymous account menu in French version
 */
@media screen and (max-width: 400px) {

  :lang(fr).menu--anonymous-user-account-menu {
    padding: 10px 20px 10px 20px;
  }
  :lang(fr).menu--anonymous-user-account-menu .menu {
    gap: 12px;
  } 
}
@media screen and (max-width: 360px) {
  :lang(fr) .hamburger-menu.open {
    left: 4px;
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjxubyBzb3VyY2U+IiwiLi4vLi4vcGNzcy9jb21wb25lbnRzL21lbnUucGNzcyIsIi4uLy4uL3Bjc3MvYmFzZS9icmVhay1wb2ludHMucGNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUFBO0FDQUE7OztFQUdFO0FDSEY7OztFQUdFO0FESUY7RUFDRSxTQUFTO0VBQ1QsVUFBVTtFQUNWLHdCQUF3QjtFQUN4QixnQkFBZ0IsRUFBRSxRQUFRO0FBQzVCO0FBQ0E7RUFDRSxpQkFBaUI7QUFDbkI7QUFDQTtFQUNFLHVCQUF1QjtFQUN2Qiw2REFBNkQ7QUFDL0Q7QUFDQTtFQUNFLHFCQUFxQjtFQUNyQiw4REFBOEQsRUFBRSxRQUFRO0FBQzFFO0FBQ0E7RUFDRSxrRUFBa0U7QUFDcEU7QUFDQTtFQUNFLFNBQVM7RUFDVCxrQkFBa0I7QUFDcEI7QUFDQTtFQUNFLFdBQVc7QUFDYjtBQUVBOztFQUVFO0FBSUE7SUFDRSxhQUFhO0lBQ2IsU0FBUztJQUNULGtCQUFrQjtBQTRGdEI7QUExRkk7QUFMRjtNQU1JLFNBQVM7TUFDVCxrQkFBa0I7QUF3RnhCO0lBdkZJO0FBRUE7QUFWRjtNQVdJLFNBQVM7TUFDVCxrQkFBa0I7QUFtRnhCO0lBbEZJO0FBRUE7TUFDRSxjQUF3QjtNQUN4QixvQkFBb0I7TUFDcEIsY0FBYztNQUNkLGVBQWU7TUFDZixnQkFBMkI7TUFDM0IscUJBQXFCO0lBYXZCO0FBWEU7QUFSRjtRQVNJLGVBQWU7SUFVbkI7TUFURTtBQUVBO0FBWkY7UUFhSSxtQkFBbUI7SUFNdkI7TUFMRTtBQUVBO1FBQ0UsY0FBd0I7TUFDMUI7QUFHRjtNQUNFLFNBQVM7TUFDVCxVQUFVO01BQ1Ysa0JBQWtCO0lBQ3BCO0FBRUE7TUFDRSxpR0FBaUc7TUFDakcsc0JBQXNCO01BQ3RCLHFCQUFxQjtNQUNyQixtQkFBbUI7SUFDckI7QUFFQTtNQUNFLG1CQUE4QjtNQUM5Qiw0QkFBNEQ7TUFDNUQsNENBQTRDO01BQzVDLGFBQWE7TUFDYixPQUFPO01B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QixrQkFBa0I7SUFDbEIsU0FBUztJQUNULFdBQVc7RUFhYjtBQVhFO01BQ0UsY0FBd0I7TUFDeEIscUJBQXFCO01BQ3JCLHFCQUFxQjtNQUNyQixlQUFlO0lBTWpCO0FBSkU7O1FBRUUsY0FBd0I7TUFDMUI7QUFJSixrQ0FBcUIsY0FBYyxFQUFFO0FBRXJDO0FBMUNGO0lBMkNJLGdCQUFnQjtBQVNwQjs7SUFQSTtNQUNFLGNBQWM7TUFDZCxnQkFBZ0I7TUFDaEIsdUJBQXVCO01BQ3ZCLFlBQVk7SUFDZDtFQUNGO0FBRUYseUJBQXlCO0FBRXpCOztFQUVFO0FBQ0Y7RUFDRSxtQkFBNkI7RUFDN0IsNEJBQTRCO0VBQzVCLGNBQXlCO0VBQ3pCLGVBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQiw0QkFBNEI7RUFDNUIsa0JBQWtCO0FBb0JwQjtBQWxCRTtJQUNFLGFBQWE7SUFDYixTQUFTO0VBQ1g7QUFFQTtJQUNFLFNBQVM7SUFDVCxVQUFVO0VBQ1o7QUFFQTtJQUNFLGNBQXlCO0lBQ3pCLHFCQUFxQjtFQUt2QjtBQUhFLDZDQUFVLDBCQUEwQixFQUFFO0FBRXRDLGlEQUFjLHlCQUFvQyxFQUFFO0FBR3hELG1DQUFtQztBQUVuQzs7RUFFRTtBQUdBOztJQUVFLHNEQUFpQyx3QkFBd0IsRUFBRTtFQUM3RDtBQUVBOztJQUVFLHNDQUFpQix3QkFBd0IsRUFBRTtFQUM3QztBQUVGLDRCQUE0QjtBQUU1Qjs7RUFFRTtBQUdBOztJQUVFLG9EQUFpQyx3QkFBd0IsRUFBRTtFQUM3RDtBQUVBOztJQUVFLG9DQUFpQix3QkFBd0IsRUFBRTtFQUM3QztBQUVGLDBCQUEwQiIsImZpbGUiOiJtZW51LmNzcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiLyoqXG4gKiBAZmlsZVxuICogVmlzdWFsIHN0eWxlcyBmb3IgbWVudS5cbiAqL1xuQGltcG9ydCB1cmwoJy4uL2Jhc2UvYnJlYWstcG9pbnRzLnBjc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi9iYXNlL3ZhcmlhYmxlcy5wY3NzJyk7XG5cbnVsLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLyogTFRSICovXG59XG5bZGlyPVwicnRsXCJdIHVsLm1lbnUge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZW51LWl0ZW0tLWV4cGFuZGVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9tZW51LWV4cGFuZGVkLnBuZ1wiKTtcbn1cbi5tZW51LWl0ZW0tLWNvbGxhcHNlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL2ljb25zL21lbnUtY29sbGFwc2VkLnBuZ1wiKTsgLyogTFRSICovXG59XG5bZGlyPVwicnRsXCJdIC5tZW51LWl0ZW0tLWNvbGxhcHNlZCB7XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9tZW51LWNvbGxhcHNlZC1ydGwucG5nXCIpO1xufVxuLm1lbnUtaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy10b3A6IDAuMmVtO1xufVxudWwubWVudSBhLmlzLWFjdGl2ZSB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIE1haW4gbWVudVxuICovXG4ubWVudS0tbWFpbixcbi5tZW51LS1hbm9ueW1vdXMtbWFpbi1uYXZpZ2F0aW9uIHtcblxuICAmID4gLm1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgIGdhcDogMTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLS1kZXNrdG9wLXVwKSB7XG4gICAgICBnYXA6IDQwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgJiBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1uYXZ5KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZnctYm9sZCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldC1sYW5kc2NhcGUtdXApIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5ODBweCkge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOm5vdCguaXMtYWN0aXZlKSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5tZW51LWl0ZW0ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmIC5tZW51LWl0ZW0tLWV4cGFuZGVkIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vLi4vaW1hZ2VzL2ljb25zL21lbnUtZG93bi1hcnJvdy0tbmF2eS5zdmcnKSByaWdodCAwLjZlbSBuby1yZXBlYXQ7XG4gICAgICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICB9XG5cbiAgICAmIC5tZW51IHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgNTksIDc0LCAwLjUpO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICYgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0gQWN0aXZlIHRyYWlsIC0tICovXG4gICAgLyogRmlyc3QgbGV2ZWwgKi9cbiAgICAmID4gLm1lbnUtaXRlbSB7XG5cbiAgICAgICYubWVudS1pdGVtLS1hY3RpdmUtdHJhaWwgPiBhLFxuICAgICAgJiA+IGEuaXMtYWN0aXZlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1lbnUtaXRlbS0tYWN0aXZlLXRyYWlsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYgPiBhIHsgcG9zaXRpb246IHN0YXRpYzsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIFNlY29uZCBsZXZlbCBkb3duICovXG4gICAgJiA+IC5tZW51LWl0ZW0gLm1lbnUtaXRlbSBhLmlzLWFjdGl2ZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG59XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0LWxhbmRzY2FwZS1kb3duKSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3IteWVsbG93KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbmF2eSk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgei1pbmRleDogOTAwO1xuXG4gICAgJiA+IC5tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBhZGRpbmc6IDAgMThweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRvcDogMTY1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJiA+IC5tZW51LWl0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbmF2eSk7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1uYXZ5KTsgfVxuXG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxOHB4IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiAubWVudS1pdGVtLS1leHBhbmRlZCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgJiA+IGEge1xuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi8uLi9pbWFnZXMvaWNvbnMvbWVudS1kb3duLWFycm93LS1uYXZ5LnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGxlZnQ6IDAuNmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogLTAuMmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgLm1vYmlsZS1leHBhbmRlZCB7XG5cbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW5hdnkpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAgICAgICAmOmhvdmVyIHsgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9pbWFnZXMvaWNvbnMvbWVudS11cC1hcnJvdy0td2hpdGUuc3ZnJyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC5tZW51IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmIGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbmF2eSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0LWxhbmRzY2FwZS11cCkge1xuICAgICYgPiAubWVudSAubWVudS1pdGVtOmhvdmVyID4gLm1lbnUgeyBkaXNwbGF5OiBibG9jazsgfVxuICB9XG59XG5cbmJvZHkubWFpbi1tZW51LW9wZW4ge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtLXRhYmxldC1sYW5kc2NhcGUtZG93bikge1xuXG4gICAgJiAubWVudS0tbWFpbixcbiAgICAmIC5tZW51LS1hbm9ueW1vdXMtbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEhhbWJ1cmdlciBtZW51XG4gKi9cbi5oYW1idXJnZXItbWVudSB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNpdGlvbjogLjVzIGVhc2UtaW4tb3V0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiAuMjVzIGVhc2UtaW4tb3V0O1xuICB9XG5cblxuICAmIHNwYW46bnRoLWNoaWxkKDEpIHtcbiAgICB0b3A6IDBweDtcbiAgfVxuXG4gICYgc3BhbjpudGgtY2hpbGQoMiksXG4gICYgc3BhbjpudGgtY2hpbGQoMykge1xuICAgIHRvcDogOXB4O1xuICB9XG5cbiAgJiBzcGFuOm50aC1jaGlsZCg0KSB7XG4gICAgdG9wOiAxOHB4O1xuICB9XG5cbiAgJi5vcGVuIHtcbiAgICBsZWZ0OiAxNXB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDIwcHg7XG4gICAgei1pbmRleDogOTAyO1xuXG4gICAgJiBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW5hdnkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cblxuICAgICYgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgdG9wOiAxOHB4O1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgIH1cblxuICAgICYgc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgICYgc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB9XG5cbiAgICAmIHNwYW46bnRoLWNoaWxkKDQpIHtcbiAgICAgIHRvcDogMThweDtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQtbGFuZHNjYXBlLXVwKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLyogRW5kIG9mOiBIYW1idXJnZXIgbWVudSAqL1xuXG4vKipcbiAqIEFjY291bnQgbWVudVxuICovXG4ubWVudS0tYWNjb3VudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW5hdnkpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMTJweDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mei1zbSk7XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIC51c2VyLW5hbWUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9tZW51LWRvd24tYXJyb3ctLXdoaXRlLnN2Z1wiKSByaWdodCBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZnctc2VtaS1ib2xkKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmctcmlnaHQ6IDE0cHg7XG4gIH1cblxuICAmID4gLm1lbnUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDEycHggMTJweCAxMnB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggNHB4IDAgcmdiYSgwLCA1OSwgNzQsIDAuNSk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDVweCAwIDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbmF2eSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRlYWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZXhwYW5kZWQgPiAubWVudSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0LXBvcnRyYWl0LWRvd24pIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJiAudXNlcm5hbWUtaW5uZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aWR0aDogMTIwcHg7XG4gICAgfVxuICB9XG59XG4vKiBFbmQgb2Y6IEFjY291bnQgbWVudSAqL1xuXG4vKipcbiAqIEFub255bW91cyBhY2NvdW50IG1lbnVcbiAqL1xuLm1lbnUtLWFub255bW91cy11c2VyLWFjY291bnQtbWVudSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW5hdnkpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMTJweCA0MHB4O1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBmb250LXNpemU6IHZhcigtLWZ6LXNtKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgLm1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAyMHB4O1xuICB9XG5cbiAgJiAubWVudS1pdGVtIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICYgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuICAgICYuaXMtYWN0aXZlIHsgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbi8qIEVuZCBvZjogQW5vbnltb3VzIGFjY291bnQgbWVudSAqL1xuXG4vKipcbiAqIEFjdGl2aXRpZXMgbWVudVxuICovXG4ubWVudS0tYWN0aXZpdGllcy1tZW51IHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQtcG9ydHJhaXQtZG93bikge1xuXG4gICAgJiAubWVudS1pdGVtOm5vdCgubW9iaWxlLW9ubHkpIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLS10YWJsZXQtcG9ydHJhaXQtdXApIHtcblxuICAgICYgLm1vYmlsZS1vbmx5IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbi8qIEVuZCBvZjogQWN0aXZpdGllcyBtZW51ICovXG5cbi8qKlxuICogUHJvZ3JhbXMgbWVudSAodXNlZCB0byBiZSBMZWFybmluZyBtZW51KVxuICovXG4ubWVudS0tbGVhcm5pbmctbWVudSB7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0LXBvcnRyYWl0LWRvd24pIHtcblxuICAgICYgLm1lbnUtaXRlbTpub3QoLm1vYmlsZS1vbmx5KSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC0tdGFibGV0LXBvcnRyYWl0LXVwKSB7XG5cbiAgICAmIC5tb2JpbGUtb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4vKiBFbmQgb2Y6IFByb2dyYW1zIG1lbnUgKi9cbiIsIi8qKlxuICogV2UgYXJlIHVzaW5nIFBvc3RDU1MgQ3VzdG9tIE1lZGlhIGJlY2F1c2Ugd2UgY2FuIG5vdCB1c2UgY3VzdG9tIHByb3BlcnRpZXMgaW5zaWRlIEBtZWRpYS5cbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uIGdvIHRvOiBodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9wb3N0Y3NzLWN1c3RvbS1tZWRpYVxuICovXG5AY3VzdG9tLW1lZGlhIC0tdGFibGV0LXBvcnRyYWl0LXVwIChtaW4td2lkdGg6IDYwMHB4KTtcbkBjdXN0b20tbWVkaWEgLS10YWJsZXQtbGFuZHNjYXBlLXVwIChtaW4td2lkdGg6IDkwMHB4KTtcbkBjdXN0b20tbWVkaWEgLS1kZXNrdG9wLXVwIChtaW4td2lkdGg6IDEyMDBweCk7XG5cbkBjdXN0b20tbWVkaWEgLS10YWJsZXQtcG9ydHJhaXQtZG93biAobWF4LXdpZHRoOiA1OTlweCk7XG5AY3VzdG9tLW1lZGlhIC0tdGFibGV0LWxhbmRzY2FwZS1kb3duIChtYXgtd2lkdGg6IDg5OXB4KTtcbkBjdXN0b20tbWVkaWEgLS1kZXNrdG9wLWRvd24gKG1heC13aWR0aDogMTE5OXB4KTsiXX0= */