/* assets/stylesheets/pageLayout.css */
:is(html, body):has(div.app-container) {
  width: 100%;
  height: 100%;
}
body:has(div.app-main-container) {
  overflow-y: hidden !important;
}
:root {
  --navbar-height: 3.5rem;
}
.app-container {
  display: block;
  position: relative;
}
.app-container.side-nav-enabled {
  display: grid;
  position: relative;
  height: 100%;
  width: 100%;
  transition: 300ms;
  grid-template: "top-nav top-nav" auto "side-nav content" 1fr / 25ch 1fr;
}
.app-top-nav {
  grid-area: top-nav;
}
.app-side-nav {
  grid-area: side-nav;
  overflow-y: auto;
}
.app-side-nav-scroll {
  padding: 0.5rem;
  padding-top: 0.3rem;
}
.app-main {
  grid-area: content;
  overflow-x: hidden;
}
.app-main-container {
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}
.side-nav-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 1.5rem;
}
.side-nav-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  color: var(--bs-body-color) !important;
  text-decoration: none;
  padding: 0.5rem 0.75rem;
  border-radius: 0.375rem;
  position: relative;
  white-space: nowrap;
}
.side-nav-link:hover,
.side-nav-link-active {
  background-color: rgba(var(--bs-secondary-rgb), 0.1);
}
.side-nav-link-active {
  font-weight: bold;
}
.side-nav-link-active::after {
  content: "";
  display: block;
  height: 100%;
  width: 4px;
  position: absolute;
  left: -0.5rem;
  background-color: var(--bs-primary);
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.side-nav-header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  text-transform: uppercase;
  font-weight: bold;
  border-bottom: 1px solid var(--bs-body-color);
  padding-bottom: 0.3rem;
  margin-bottom: 0.5rem;
  white-space: nowrap;
  transition: border-bottom 300ms ease-in-out;
}
.app-container.side-nav-enabled .side-nav-header .header-text {
  font-size: 0.8rem;
  margin: 0;
}
.side-nav-link .suffix {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}
#side-nav-toggler {
  background-color: transparent;
  border: none;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
}
#side-nav-toggler:hover {
  background-color: rgba(var(--bs-secondary-rgb), 0.1);
}
#assessment-switcher-container .assessment-row {
  display: grid;
  grid-template-columns: 75px minmax(0, 1fr) minmax(0, 1fr);
}
#assessment-switcher-container .assessment-row:not(.selected):is(:hover, :focus-within) {
  background-color: rgba(var(--bs-secondary-rgb), 0.2);
}
.assessment-switcher-button.btn.btn-ghost {
  --bs-btn-padding-y: 0;
  --bs-btn-hover-bg: rgba(var(--bs-secondary-rgb), 0.15);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-bg: rgba(var(--bs-secondary-rgb), 0.25);
  --bs-btn-active-border-color: transparent;
}
.assessment-switcher-button .h6 {
  line-height: 1.1;
}
.assessment-switcher-button .small {
  line-height: 1.25;
}
.assessment-switcher-wrapper {
  min-width: 0;
}
.assessment-navigation-container {
  container-type: inline-size;
  container-name: assessment-navigation;
}
.assessment-navigation-bar {
  flex-direction: column;
  padding-top: 0.5rem;
  box-shadow: inset 0 -1px 0 var(--bs-border-color);
}
.assessment-navigation-bar .pl-nav-tabs-bar {
  --bs-nav-link-padding-x: 0.75rem;
}
.assessment-navigation-divider {
  display: none;
}
@container assessment-navigation (min-width: 1400px) {
  .assessment-navigation-bar {
    flex-direction: row;
    align-items: flex-end;
    padding-top: 0;
  }
  .assessment-navigation-bar .pl-nav-tabs-bar {
    padding-top: 0.5rem;
  }
  .assessment-navigation-bar .assessment-switcher-wrapper {
    align-self: center;
  }
  .assessment-navigation-divider {
    display: block;
  }
}
@media (min-width: 768px) {
  #effective-uid {
    min-width: 12rem;
  }
  .app-container.side-nav-enabled.collapsed {
    grid-template: "top-nav top-nav" auto "side-nav content" 1fr / 60px 1fr;
  }
  .app-container.side-nav-enabled.collapsed #course-dropdown {
    display: none;
  }
  .app-container.side-nav-enabled.collapsed #course-instance-dropdown {
    display: none;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-group {
    margin-bottom: 0;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-link {
    padding: 0.75rem;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-link .side-nav-link-text {
    display: none;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-link {
    justify-content: center;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-header {
    justify-content: center;
    border-bottom: 1px solid var(--bs-border-color);
  }
  .app-container.side-nav-enabled.collapsed .side-nav-header .header-text {
    display: none;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-link .suffix {
    display: none;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-toggler-icon.expanded {
    display: none;
  }
  .side-nav-toggler-icon.collapsed {
    display: none;
  }
  .app-container.side-nav-enabled.collapsed .side-nav-toggler-icon.collapsed {
    display: block;
  }
  .app-container.side-nav-enabled.collapsed #side-nav-toggler {
    padding: 0.5rem 0rem;
    width: 100%;
  }
  .app-container.side-nav-enabled.mobile-collapsed .app-side-nav {
    transition: none;
  }
}
@media (max-width: 768px) {
  #assessment-switcher-container .assessment-row {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
  }
  #assessment-switcher-container .assessment-row .title {
    grid-column: 1/-1;
    grid-row: 1;
  }
  #assessment-switcher-container .assessment-row .label {
    grid-column: 1;
    grid-row: 2;
  }
  #assessment-switcher-container .assessment-row div:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
  }
  .app-container.side-nav-enabled {
    display: flex;
    flex-direction: column;
    transition: none;
  }
  .app-container.side-nav-enabled #side-nav-toggler {
    display: none;
  }
  .app-container.side-nav-enabled.mobile-collapsed .app-side-nav {
    transform: translateX(-100%);
  }
  .app-container.side-nav-enabled:not(.mobile-collapsed) .app-side-nav {
    transform: translateX(0);
  }
  .app-container.side-nav-enabled .app-side-nav {
    display: block;
    position: absolute;
    top: var(--navbar-height);
    left: 0;
    width: 100%;
    z-index: 999;
    transform: translateX(-100%);
    height: calc(100% - var(--navbar-height));
    will-change: transform;
  }
  .app-container.side-nav-enabled .app-side-nav-scroll {
    height: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
    padding-top: 1rem;
  }
  .app-container.side-nav-enabled.animate .app-side-nav {
    transition: transform 300ms;
  }
  .app-container.side-nav-enabled #side-nav-mobile-toggler {
    height: 2.5rem;
  }
  .app-container.side-nav-enabled .navbar {
    height: var(--navbar-height);
  }
  .app-container.side-nav-enabled #course-nav {
    display: block;
    position: absolute;
    top: calc(var(--navbar-height) - 0.5rem);
    left: 0;
    width: 100%;
    height: fit-content;
    min-height: calc(100vh - var(--navbar-height));
    z-index: 999;
    background-color: rgba(var(--bs-dark-rgb));
    padding: 1rem 0.5rem;
    will-change: transform;
  }
  .app-container.side-nav-enabled #course-nav-toggler {
    height: 2.5rem;
  }
  .app-container.side-nav-enabled.animate #course-nav {
    transition: transform 300ms;
  }
  .app-container.side-nav-enabled #course-nav.mobile-collapsed {
    transform: translateX(100%);
  }
  .app-container.side-nav-enabled #course-nav:not(.mobile-collapsed) {
    transform: translateX(0);
  }
  .app-container.side-nav-enabled:has(#course-nav:not(.mobile-collapsed)) .app-main,
  .app-container.side-nav-enabled:not(.mobile-collapsed) .app-main {
    height: calc(100vh - var(--navbar-height));
    overflow-y: hidden;
  }
  .app-container.side-nav-enabled {
    overflow-x: hidden;
  }
  body:has(.app-container.side-nav-enabled:not(.mobile-collapsed)) .tooltip {
    display: none;
  }
  .app-container.side-nav-enabled .viewtype-dropdown-item {
    display: flex;
    align-items: center;
    white-space: normal;
  }
}
@media (prefers-reduced-motion) {
  .app-container.side-nav-enabled.animate .app-side-nav,
  .app-container.side-nav-enabled.animate #course-nav,
  .app-container.side-nav-enabled {
    transition: none;
  }
}
.page-footer-text {
  color: #052c65;
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vYXNzZXRzL3N0eWxlc2hlZXRzL3BhZ2VMYXlvdXQuY3NzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyI6aXMoaHRtbCwgYm9keSk6aGFzKGRpdi5hcHAtY29udGFpbmVyKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qKlxuICogV2hlbiB0aGUgYXBwXHUyMDE5cyBtYWluIGNvbnRhaW5lciBleGlzdHMsIGRlbGVnYXRlIGFsbCBzY3JvbGxpbmcgdG8gaXQuXG4gKiBEaXNhYmxlIGJvZHkgc2Nyb2xsaW5nIHRvIGF2b2lkIG92ZXJmbG93IHdoZW4gdG9vbHRpcHMgb3IgcG9wb3ZlcnMgYXJlIG9wZW5lZC5cbiAqL1xuYm9keTpoYXMoZGl2LmFwcC1tYWluLWNvbnRhaW5lcikge1xuICBvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuOnJvb3Qge1xuICAtLW5hdmJhci1oZWlnaHQ6IDMuNXJlbTtcbn1cblxuLyogU3R5bGVzIHdoZW4gdGhlIHNpZGUgbmF2IGlzIGhpZGRlbiAqL1xuLmFwcC1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiBTdHlsZXMgd2hlbiB0aGUgc2lkZSBuYXYgaXMgZW5hYmxlZCBhbmQgZXhwYW5kZWQgKi9cbi5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IDMwMG1zO1xuICAvKipcbiAgICogVGhlIHdpZHRoIG9mIHRoZSBzaWRlYmFyIGlzIHNldCB0byAyNWNoLCB3aGljaCBpcyBkZXBlbmRlbnQgb24gdGhlIGZvbnQgc2l6ZS5cbiAgICogVGhpcyBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHNpZGViYXIgaXMgd2lkZSBlbm91Z2ggdG8gYWNjb21tb2RhdGUgaXRzIGNvbnRlbnQsXG4gICAqIHdoaWxlIGFsc28gYmVpbmcgcmVzcG9uc2l2ZSB0byBjaGFuZ2VzIGluIGZvbnQgc2l6ZS5cbiAgICovXG4gIGdyaWQtdGVtcGxhdGU6XG4gICAgJ3RvcC1uYXYgdG9wLW5hdicgYXV0b1xuICAgICdzaWRlLW5hdiBjb250ZW50JyAxZnIgLyAyNWNoIDFmcjtcbn1cblxuLmFwcC10b3AtbmF2IHtcbiAgZ3JpZC1hcmVhOiB0b3AtbmF2O1xufVxuXG4uYXBwLXNpZGUtbmF2IHtcbiAgZ3JpZC1hcmVhOiBzaWRlLW5hdjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmFwcC1zaWRlLW5hdi1zY3JvbGwge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHBhZGRpbmctdG9wOiAwLjNyZW07XG59XG5cbi5hcHAtbWFpbiB7XG4gIGdyaWQtYXJlYTogY29udGVudDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4uYXBwLW1haW4tY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5zaWRlLW5hdi1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5zaWRlLW5hdi1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG4gIGNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKSAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2lkZS1uYXYtbGluazpob3Zlcixcbi5zaWRlLW5hdi1saW5rLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtc2Vjb25kYXJ5LXJnYiksIDAuMSk7XG59XG5cbi5zaWRlLW5hdi1saW5rLWFjdGl2ZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2lkZS1uYXYtbGluay1hY3RpdmU6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnNpZGUtbmF2LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGVuZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icy1ib2R5LWNvbG9yKTtcbiAgcGFkZGluZy1ib3R0b206IDAuM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIDMwMG1zIGVhc2UtaW4tb3V0O1xufVxuXG4uYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkIC5zaWRlLW5hdi1oZWFkZXIgLmhlYWRlci10ZXh0IHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLnNpZGUtbmF2LWxpbmsgLnN1ZmZpeCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGZsZXg6IDE7XG59XG5cbiNzaWRlLW5hdi10b2dnbGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbiNzaWRlLW5hdi10b2dnbGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgMC4xKTtcbn1cblxuI2Fzc2Vzc21lbnQtc3dpdGNoZXItY29udGFpbmVyIC5hc3Nlc3NtZW50LXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIC8qIFVzZSBtaW5tYXgoMCwgMWZyKSB0byBwcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3cgKi9cbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3NXB4IG1pbm1heCgwLCAxZnIpIG1pbm1heCgwLCAxZnIpO1xufVxuXG4jYXNzZXNzbWVudC1zd2l0Y2hlci1jb250YWluZXIgLmFzc2Vzc21lbnQtcm93Om5vdCguc2VsZWN0ZWQpOmlzKDpob3ZlciwgOmZvY3VzLXdpdGhpbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLCAwLjIpO1xufVxuXG4vKipcbiAqIFRoZSBhc3Nlc3NtZW50IHN3aXRjaGVyIGJ1dHRvbiBzaGFyZXMgYSBiYXIgd2l0aCB0aGUgYXNzZXNzbWVudCB0YWJzLiBUcmltXG4gKiBpdHMgdmVydGljYWwgcGFkZGluZyBhbmQgc29mdGVuIHRoZSBkZWZhdWx0IGBidG4tZ2hvc3RgIGdyYXkuXG4gKi9cbi5hc3Nlc3NtZW50LXN3aXRjaGVyLWJ1dHRvbi5idG4uYnRuLWdob3N0IHtcbiAgLS1icy1idG4tcGFkZGluZy15OiAwO1xuICAtLWJzLWJ0bi1ob3Zlci1iZzogcmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgMC4xNSk7XG4gIC0tYnMtYnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tYnMtYnRuLWFjdGl2ZS1iZzogcmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgMC4yNSk7XG4gIC0tYnMtYnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYXNzZXNzbWVudC1zd2l0Y2hlci1idXR0b24gLmg2IHtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuLmFzc2Vzc21lbnQtc3dpdGNoZXItYnV0dG9uIC5zbWFsbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4uYXNzZXNzbWVudC1zd2l0Y2hlci13cmFwcGVyIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uYXNzZXNzbWVudC1uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XG4gIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgY29udGFpbmVyLW5hbWU6IGFzc2Vzc21lbnQtbmF2aWdhdGlvbjtcbn1cblxuLmFzc2Vzc21lbnQtbmF2aWdhdGlvbi1iYXIge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xufVxuXG4vKiBUaWdodGVuIHRoZSB0YWIgcGFkZGluZyBpbiB0aGUgY29tYmluZWQgYmFyIHNvIHRoZSBhc3Nlc3NtZW50IHN3aXRjaGVyIChhbmRcbiAqIGl0cyB0aXRsZSkgZ2V0cyBtb3JlIGhvcml6b250YWwgcm9vbSBiZWZvcmUgdHJ1bmNhdGluZy4gKi9cbi5hc3Nlc3NtZW50LW5hdmlnYXRpb24tYmFyIC5wbC1uYXYtdGFicy1iYXIge1xuICAtLWJzLW5hdi1saW5rLXBhZGRpbmcteDogMC43NXJlbTtcbn1cblxuLyogVGhlIHZlcnRpY2FsIGRpdmlkZXIgb25seSBtYWtlcyBzZW5zZSBpbiB0aGUgc2lkZS1ieS1zaWRlIGxheW91dC4gKi9cbi5hc3Nlc3NtZW50LW5hdmlnYXRpb24tZGl2aWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBjb250YWluZXIgYXNzZXNzbWVudC1uYXZpZ2F0aW9uIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuYXNzZXNzbWVudC1uYXZpZ2F0aW9uLWJhciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAuYXNzZXNzbWVudC1uYXZpZ2F0aW9uLWJhciAucGwtbmF2LXRhYnMtYmFyIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICB9XG5cbiAgLmFzc2Vzc21lbnQtbmF2aWdhdGlvbi1iYXIgLmFzc2Vzc21lbnQtc3dpdGNoZXItd3JhcHBlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgLmFzc2Vzc21lbnQtbmF2aWdhdGlvbi1kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vKiBTaWRlIG5hdiBjb2xsYXBzZWQgc3R5bGVzIGFyZSBhcHBsaWVkIG9uIHdpZGVyIHZpZXdwb3J0cyAoNzY4cHggYW5kIGFib3ZlKS5cbiAqIE9uIG5hcnJvd2VyIHZpZXdwb3J0cyAobGVzcyB0aGFuIDc2OHB4KSwgdGhlIHNpZGUgbmF2IGlzIG5vdCB2aXNpYmxlIHdoZW4gY29sbGFwc2VkLiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNlZmZlY3RpdmUtdWlkIHtcbiAgICBtaW4td2lkdGg6IDEycmVtO1xuICB9XG5cbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZC5jb2xsYXBzZWQge1xuICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAndG9wLW5hdiB0b3AtbmF2JyBhdXRvXG4gICAgICAnc2lkZS1uYXYgY29udGVudCcgMWZyIC8gNjBweCAxZnI7XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkLmNvbGxhcHNlZCAjY291cnNlLWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZC5jb2xsYXBzZWQgI2NvdXJzZS1pbnN0YW5jZS1kcm9wZG93biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi1saW5rIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICB9XG5cbiAgLyogSGlkZSBzaWRlIG5hdiBsaW5rIHRleHQgd2hlbiB0aGUgc2lkZSBuYXYgaXMgY29sbGFwc2VkICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi1saW5rIC5zaWRlLW5hdi1saW5rLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBDZW50ZXIgdGhlIGljb25zIHdoZW4gdGhlIHNpZGUgbmF2IGlzIGNvbGxhcHNlZCAqL1xuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkLmNvbGxhcHNlZCAuc2lkZS1uYXYtbGluayB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvKiBDZW50ZXIgdGhlIHNpZGUgbmF2IHRvZ2dsZSBidXR0b24gd2hlbiB0aGUgc2lkZSBuYXYgaXMgY29sbGFwc2VkICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi1oZWFkZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLyogSGlkZSB0aGUgaGVhZGVyIHRleHQgd2hlbiB0aGUgc2lkZSBuYXYgaXMgY29sbGFwc2VkICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi1oZWFkZXIgLmhlYWRlci10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogV2hlbiB0aGUgc2lkZSBuYXYgaXMgY29sbGFwc2VkLCBoaWRlIHNpZGUgbmF2IGxpbmsgc3VmZml4ZXNcbiAgKGUuZy4gZm9yIHRoZSBnZXR0aW5nIHN0YXJ0ZWQgc2lkZSBuYXYgbGluaywgaGlkZSB0aGUgZ2V0dGluZyBzdGFydGVkIHByb2dlc3MgY2lyY2xlKSAqL1xuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkLmNvbGxhcHNlZCAuc2lkZS1uYXYtbGluayAuc3VmZml4IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogV2hlbiB0aGUgc2lkZSBuYXYgaXMgY29sbGFwc2VkLCBoaWRlIHRoZSBleHBhbmRlZCBpY29uICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi10b2dnbGVyLWljb24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBXaGVuIHRoZSBzaWRlIG5hdiBpcyBleHBhbmRlZCwgaGlkZSB0aGUgY29sbGFwc2VkIGljb24gKi9cbiAgLnNpZGUtbmF2LXRvZ2dsZXItaWNvbi5jb2xsYXBzZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBXaGVuIHRoZSBzaWRlIG5hdiBpcyBjb2xsYXBzZWQsIHNob3cgdGhlIGNvbGxhcHNlZCBpY29uICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkIC5zaWRlLW5hdi10b2dnbGVyLWljb24uY29sbGFwc2VkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuY29sbGFwc2VkICNzaWRlLW5hdi10b2dnbGVyIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMHJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQubW9iaWxlLWNvbGxhcHNlZCAuYXBwLXNpZGUtbmF2IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAjYXNzZXNzbWVudC1zd2l0Y2hlci1jb250YWluZXIgLmFzc2Vzc21lbnQtcm93IHtcbiAgICAvKiBUaGUgdGl0bGUgdGFrZXMgdXAgdGhlIGVudGlyZSBmaXJzdCByb3cuIFRoZSBsYWJlbCBhbmQgVElEIHRha2UgdXAgdGhlIHNlY29uZCByb3cuICovXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgfVxuXG4gICNhc3Nlc3NtZW50LXN3aXRjaGVyLWNvbnRhaW5lciAuYXNzZXNzbWVudC1yb3cgLnRpdGxlIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgICBncmlkLXJvdzogMTtcbiAgfVxuXG4gICNhc3Nlc3NtZW50LXN3aXRjaGVyLWNvbnRhaW5lciAuYXNzZXNzbWVudC1yb3cgLmxhYmVsIHtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgICBncmlkLXJvdzogMjtcbiAgfVxuXG4gICNhc3Nlc3NtZW50LXN3aXRjaGVyLWNvbnRhaW5lciAuYXNzZXNzbWVudC1yb3cgZGl2Om50aC1jaGlsZCgzKSB7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgZ3JpZC1yb3c6IDI7XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkIHtcbiAgICAvKiBVc2UgZmxleGJveCB0byBlbnN1cmUgdGhhdCBhcHAtbWFpbiBmaWxscyB0aGUgZW50aXJlIHNwYWNlIG9mIGFwcC1jb250YWluZXIuICovXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkICNzaWRlLW5hdi10b2dnbGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZC5tb2JpbGUtY29sbGFwc2VkIC5hcHAtc2lkZS1uYXYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkOm5vdCgubW9iaWxlLWNvbGxhcHNlZCkgLmFwcC1zaWRlLW5hdiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZCAuYXBwLXNpZGUtbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiB2YXIoLS1uYXZiYXItaGVpZ2h0KTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyAvKiBTdGFydCBvZmYtc2NyZWVuIHRvIHRoZSBsZWZ0ICovXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS1uYXZiYXItaGVpZ2h0KSk7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTsgLyogUGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uICovXG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkIC5hcHAtc2lkZS1uYXYtc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuYW5pbWF0ZSAuYXBwLXNpZGUtbmF2IHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXM7XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkICNzaWRlLW5hdi1tb2JpbGUtdG9nZ2xlciB7XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkIC5uYXZiYXIge1xuICAgIGhlaWdodDogdmFyKC0tbmF2YmFyLWhlaWdodCk7XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkICNjb3Vyc2UtbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKFxuICAgICAgdmFyKC0tbmF2YmFyLWhlaWdodCkgLSAwLjVyZW1cbiAgICApOyAvKiBTdWJ0cmFjdCAwLjVyZW0gdG8gYWNjb3VudCBmb3IgdGhlIHRvcCBwYWRkaW5nIG9mIHRoZSBwYXJlbnQgZGl2IG9mIGNvdXJzZS1uYXYuICovXG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoXG4gICAgICAxMDB2aCAtIHZhcigtLW5hdmJhci1oZWlnaHQpXG4gICAgKTsgLyogU3VidHJhY3QgZnJvbSAxMDB2aCB0byBhY2NvdW50IGZvciB0aGUgbmF2YmFyICovXG4gICAgei1pbmRleDogOTk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtZGFyay1yZ2IpKTtcbiAgICBwYWRkaW5nOiAxcmVtIDAuNXJlbTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtOyAvKiBQZXJmb3JtYW5jZSBvcHRpbWl6YXRpb24gKi9cbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQgI2NvdXJzZS1uYXYtdG9nZ2xlciB7XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gIH1cblxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkLmFuaW1hdGUgI2NvdXJzZS1uYXYge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcztcbiAgfVxuXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQgI2NvdXJzZS1uYXYubW9iaWxlLWNvbGxhcHNlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG5cbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZCAjY291cnNlLW5hdjpub3QoLm1vYmlsZS1jb2xsYXBzZWQpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAvKiBQcmV2ZW50IGNvbnRlbnQgdW5kZXIgdGhlIGNvdXJzZS9zaWRlIG5hdiBmcm9tIGJlaW5nIHZpc2libGUgd2hlblxuICAqICBlaXRoZXIgbmF2IGlzIG9wZW4uICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQ6aGFzKCNjb3Vyc2UtbmF2Om5vdCgubW9iaWxlLWNvbGxhcHNlZCkpIC5hcHAtbWFpbixcbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZDpub3QoLm1vYmlsZS1jb2xsYXBzZWQpIC5hcHAtbWFpbiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmF2YmFyLWhlaWdodCkpOyAvKiBTdWJ0cmFjdCBmcm9tIDEwMHZoIHRvIGFjY291bnQgZm9yIHRoZSBuYXZiYXIgKi9cbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIH1cblxuICAvKiBQcmV2ZW50IGNvbnRlbnQgdG8gdGhlIHNpZGUgb2YgdGhlIGNvdXJzZS9zaWRlIG5hdiBmcm9tIGJlaW5nIHZpc2libGUuICovXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbiB3aWRlciB2aWV3cG9ydHMsIHdoZW4gdGhlIHNpZGUgbmF2IGlzIGNvbGxhcHNlZCxcbiAgICogdG9vbHRpcHMgYXBwZWFyIG5leHQgdG8gdGhlIHNpZGUgbmF2IGxpbmsgaWNvbnMgd2hlbiBob3ZlcmVkLiBcbiAgICpcbiAgICogVGhpcyBydWxlIGhpZGVzIHRob3NlIHRvb2x0aXBzIG9uIG5hcnJvdyB2aWV3cG9ydHMuXG4gICAqL1xuICBib2R5OmhhcyguYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkOm5vdCgubW9iaWxlLWNvbGxhcHNlZCkpIC50b29sdGlwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmFwcC1jb250YWluZXIuc2lkZS1uYXYtZW5hYmxlZCAudmlld3R5cGUtZHJvcGRvd24taXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQuYW5pbWF0ZSAuYXBwLXNpZGUtbmF2LFxuICAuYXBwLWNvbnRhaW5lci5zaWRlLW5hdi1lbmFibGVkLmFuaW1hdGUgI2NvdXJzZS1uYXYsXG4gIC5hcHAtY29udGFpbmVyLnNpZGUtbmF2LWVuYWJsZWQge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2UtZm9vdGVyLXRleHQge1xuICAvKiBodHRwczovL2dpdGh1Yi5jb20vUHJhaXJpZUxlYXJuL21hcmtldGluZy9ibG9iLzZkYzA4YzYwMjhjOGE0NWU3MWZjZTg0NmIzMDgzMjY0Njk5NThhMTYvc3JjL2NvbXBvbmVudHMvSGVhZGVyLm1vZHVsZS5zY3NzI0w0LUw2ICovXG4gIGNvbG9yOiAjMDUy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 */
