.careers-department .careers-landing-maxWidth {
  position: relative;
}

.careers-department-title {
  display: block;
  position: absolute;
  left: 35px;
  color: #FFFFFF;
  color: var(--cx-color-white);
  text-align: center;
  font-size: 22px;
  transform: rotate(-90deg) translateX(-50%);
  transform-origin: left center;
  z-index: 2;
}

.careers-landing-hero {
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.careers-splitDepartment:first-child {
    flex: 0 0 30%;
  }

.careers-splitDepartment:last-child {
    flex: 0 0 70%;
    margin-top: 60px;
  }

.careers-department-slidesOuter {
  position: relative;
}

.careers-department-slides {
  position: relative;
  transition: height 0.6s ease-out;
}

.careers-department-slide {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 0;
  pointer-events: none;
}

.careers-department-slide.slide-active {
    position: relative;
    z-index: 2;
    opacity: 1;
  }

#controls-department {
  position: absolute;
  top: 370px;
  left: 0;
  width: 105px;
  z-index: 3;
}

#controls-department .slider-hover {
    position: absolute;
    top: 10px;
    left: calc(100% + 20px);
    font-size: 18px;
    opacity: 0;
    transition: opacity 0.3s ease-out;
  }

/* Desktop only */

@media screen and (min-width: 900px) {
    #controls-department .slider-prev:hover + .slider-prev-hover,
    #controls-department .slider-next:hover + .slider-next-hover {
      opacity: 1;
    }
  }

#careers-selector-eng {
  position: absolute;
  /* Optical adjustment */
  top: -5px;
  right: 0;
  width: 50%;
  transition: color 0.2s ease-out;
}

#careers-selector-eng .careers-selector-current {
    color: #FFFFFF;
    color: var(--cx-color-white);
    background-color: #000000;
    background-color: var(--cx-color-black);
    box-shadow: 2px 2px 8px 2px rgba(255, 255, 255, 0.1);

  }

#careers-selector-eng .careers-selector-options {
    background-color: #333333;
    background-color: var(--cx-color-grey100);
    box-shadow: 2px 2px 8px 2px rgba(255, 255, 255, 0.1);
  }

#careers-selector-eng .careers-selector-options li {

  }

#careers-selector-eng .careers-selector-options li:hover {
    color: #FFFFFF;
    color: var(--cx-color-white);
  }

#careers-selector-eng .arrowDown,
  #careers-selector-eng .arrowDown:before,
  #careers-selector-eng .arrowDown:after {
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
  }

#careers-selector-eng.active .careers-selector-current {
    background-color: #333333;
    background-color: var(--cx-color-grey100);
  }

@media screen and (max-width: 900px) {
  #careers-selector-eng {
    position: relative;
    top: 0;
    right: 0;
    width: 100%;
    margin-bottom: 40px;
  }

  .careers-department .careers-landing-memo.center {
    text-align: center;
  }
}

/* Animation */

.mask-department {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: #F4F4F4;
  background: var(--cx-color-backgroundAccent);
  z-index: 3;
  transition: 0.5s ease-out;
}

.slide-fade {
  opacity: 1;
  transform: none;
}

.slides-movingIn .mask-department {
    width: 100%;
  }

.slides-movingIn .slide-fade {
    animation: slideFadeOut 0.3s ease-in-out both;
  }

.slides-movingOut .mask-department {
    right: 0;
    left: initial;
    width: 0;
  }

.slides-movingOut .slide-fade {
    animation: slideFadeIn 0.4s ease-in-out both;
  }

@keyframes slideFadeOut {
  0% {
    transform: none;
    opacity: 1;
  }

  100% {
    transform: translateY(-10px);
    opacity: 0;
  }
}

@keyframes slideFadeIn {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }

  100% {
    transform: none;
    opacity: 1;
  }
}

@media screen and (max-width: 1400px) {
  #controls-department {
    top: 25vw;
  }
}

@media screen and (max-width: 900px) {
  .careers-department-title {
    display: none;
  }

  .careers-splitDepartment:last-child {
    margin-top: -20px;
  }

  .careers-department .careers-landing-memo {
    margin-top: 0;
    text-align: left;
  }

  .careers-department .careers-panel-description {
    padding-right: 0;
  }

  #controls-department {
    top: -75px;
    right: calc(50% - 200px);
    left: initial;
    margin: 0;
    overflow: hidden;
  }
}

@media screen and (max-width: 440px) {
  #controls-department {
    right: 0;
  }
}

.careers-job .careers-landing-heroDescription {
  margin-bottom: 10px;
}

.careers-panel-text.careers-panel-job {
  margin: -140px auto 100px auto;
}

.careers-panel-text.careers-panel-job hr {
    margin: 0 0 20px;
  }

.careers-panel-text.careers-panel-job .careers-panel-jobInfo {
    font-size: 24px;
  }

.careers-panel-text.careers-panel-job .careers-panel-jobHeading {
    margin: 0 0 5px;
  }

.careers-job-aside {
  padding: 60px 80px;
  margin-bottom: 80px;
}

.careers-job-aside .careers-job-aside-inner {
    display: block;
    margin: 0 auto;
    max-width: 500px;
  }

.careers-job-aside .careers-job-aside-memo {
    margin-bottom: 40px;
    line-height: 1.2em;
  }

.careers-job-description {
  padding-right: 60px;
  line-height: 1.6em;
}

.careers-job-description a {
    display: inline-block;
    border-bottom: 1px solid #000000;
    border-bottom: 1px solid var(--cx-color-black);
  }

.careers-job-description li {
    margin-bottom: 5px;
  }

.careers-job-description h2 {
    font-size: 24px !important;
  }

.careers-sliderMaskShort.careers-job-slider {
  width: calc(100% + 120px);
  margin-left: -120px;
}

.careers-greenHouseForm iframe {
  border: none;
  width: 100%;
  height: 680px;
}

#apply-now-scroll {
  position: absolute;
  bottom: -35px;
  left: 80px;
  width: 300px;
}

/* Desktop */

@media screen and (min-width: 900px) {
  .careers-job-description > p:first-of-type {
    margin-top: 0;
  }
}

/* Tablet */

@media screen and (max-width: 1280px) and (min-width: 901px) {
  .careers-job-aside {
    padding: 40px 0 0 60px;
  }
}

/* Mobile */

@media screen and (max-width: 900px) {
  .careers-job-description {
    padding-right: 0;
  }

  .careers-panel-text.careers-panel-job {
    width: 100%;
    margin-left: 0;
  }

    .careers-panel-text.careers-panel-job .careers-panel-jobHeading {
      margin: 0 0 5px;
    }

    .careers-panel-text.careers-panel-job hr {
      display: none;
    }

  .careers-panel-jobInfo {
    margin-bottom: 20px;
  }

  .careers-job-aside {
    padding: 0;
    margin-bottom: 0;
  }

  .careers-panel-job .careers-split {
    text-align: left;
  }

  .careers-job-description li {
    font-size: 14px;
    line-height: 1.6em;
  }
}

.careers-all .careers-grid {
  margin-bottom: 90px;
}

.careers-all .careers-grid .careers-grid-item .careers-grid-itemSubtitle {
    margin: 0 0 30px;
  }

.careers-all .careers-grid .careers-grid-item .careers-grid-itemTitle {
    margin: 25px 0 5px;
    font-size: 24px;
  }

.careers-allJobs-group {
  margin-top: 20px;
}

.careers-allJobs-departmentName {
  margin-bottom: 30px;
  border-bottom: 2px solid #000000;
  border-bottom: 2px solid var(--cx-color-black);
  padding-bottom: 35px;
}

.careers-allJobs-job.u-displayNone {
  display: none;
}

.careers-allJobs-dropdowns {
  position: absolute;
  bottom: -35px;
  left: calc(50% - 585px);
  width: 100%;
  z-index: 3;
}

/* Selector Styles */

.careers-selector {
  position: relative;
  width: calc(100% - 40px);
}

.careers-selector .arrowDown {
    top: 25px;
    right: 25px;
    height: 20px;
  }

.careers-selector .arrowDown:before {
    top: 20px;
  }

.careers-selector .arrowDown:after {
    top: 20px;
  }

.careers-selector-icon {
  float: right;
  margin: 5px 10px;
  width: 16px;
  height: 16px;
  z-index: 100;
}

.careers-selector-current {
  display: block;
  padding: 20px;
  height: 70px;
  line-height: 30px;
  color: #000000;
  color: var(--cx-color-black);
  background: #FFFFFF;
  background: var(--cx-color-white);
  box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 2px 8px 2px var(--cx-color-dropShadow);
  font-size: 24px;
  z-index: 3;
  cursor: pointer;
}

.careers-selector-options {
  position: absolute;
  margin: 0;
  padding: 0;
  width: 100%;
  max-height: 225px;
  overflow-y: scroll;
  background: #FFFFFF;
  background: var(--cx-color-white);
  box-shadow: 2px 6px 8px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 6px 8px 2px var(--cx-color-dropShadow);
  list-style: none;
  z-index: 100;
  z-index: var(--cx-zIndex-1);
}

.careers-selector-options::-webkit-scrollbar {
    width: 7px;
    -webkit-appearance: none;
  }

.careers-selector-options::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.1);
    background: var(--cx-color-dropShadow);
  }

.careers-selector-options li {
  padding: 20px;
  cursor: pointer;
  color: #6C6C6C;
  color: var(--cx-color-textSubtle);
  font-size: 24px;
}

.careers-selector-options li:not(:last-child) {
}

.careers-selector-options li:hover {
  color: #171717;
  color: var(--cx-color-text);
}

/* Error Message */

.careers-noResults {
  padding-bottom: 50px;
  text-align: center;
}

@media screen and (max-width: 1425px) {
  .careers-allJobs-dropdowns {
    left: 120px;
    width: calc(100% - 240px);
  }
}

@media screen and (min-width: 900px) {
  .careers-splitEqual:first-child .careers-selector {
    margin-right: 40px;
  }

  .careers-splitEqual:last-child .careers-selector {
    margin-left: 40px;
  }
}

@media screen and (max-width: 900px) {
    .careers-all .careers-grid .careers-grid-item .careers-grid-itemSubtitle {
      margin: 0;
    }

    .careers-all .careers-grid .careers-grid-item .careers-grid-itemTitle {
      margin: 5px 0;
    }

  .careers-all .careers-allJobs-departmentName {
    padding-bottom: 25px;
    font-size: 30px;
  }

  .careers-allJobs-group {
    margin-top: 40px;
  }

  .careers-selector {
    width: 100%;
  }

    .careers-selector .arrowDown {
      top: 17px;
    }

  .careers-selector-current {
    padding: 15px;
    height: 58px;
    font-size: 16px;
  }

  .careers-splitEqual:first-child .careers-selector {
    margin-bottom: 20px;
  }

  .careers-allJobs-dropdowns {
    bottom: -68px;
    left: 20px;
    width: calc(100% - 40px);
  }

    .careers-allJobs-dropdowns .careers-split {
      text-align: left;
    }

  .careers-selector-options li {
    padding: 15px;
    font-size: 16px;
  }

  .careers-allJobs-departmentName {
    margin-bottom: 0;
    border-bottom: none;
    text-align: center;
  }
}

/* Buttons */

.careers-landing-heroButton {
  display: inline-block;
  position: relative;
  border: 0;
  border-radius: 0;
  font-size: 18px;
  margin-top: 40px;
  font-weight: 400;
  font-weight: var(--cx-font-weightRegular);
}

.careers-landing-heroButton .button-hover-inner {
    padding-right: 0;
  }

@media screen and (max-width: 900px) {

.careers-landing-heroButton {
    margin-top: 24px
}
  }

@media screen and (max-width: 500px) {

.careers-landing-hero .careers-landing-button.careers-landing-DEI-button {
    padding: 0 10px;
    font-size: 18px
}

    .careers-landing-hero .careers-landing-button.careers-landing-DEI-button .button-hover-inner {
      display: inline-block;
      width: calc(100% - 16px);
      padding-right: 24px;
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
    }

    .careers-landing-hero .careers-landing-button.careers-landing-DEI-button .arrow {
      top: 35px;
      width: 16px;
    }

    .careers-landing-hero .careers-landing-button.careers-landing-DEI-button .arrow:before,
    .careers-landing-hero .careers-landing-button.careers-landing-DEI-button .arrow:after {
      left: 11px;
    }
  }

@media screen and (min-width: 1280px) {

.careers-landing-hero .careers-landing-button.careers-landing-DEI-button {
    min-width: -moz-fit-content;
    min-width: fit-content
}
  }

/* Images */

.careers-landing-image {
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.careers-landing-video {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}

.careers-landing-video > video {
    position: absolute;
    width: 100%;
    height: auto;
  }

.careers-landing-imageRect {
  width: 100%;
  padding-top: 80%;
}

.careers-landing-imageTall {
  width: 100%;
  padding-top: 110%;
}

.careers-landing-imageSquare {
  width: 100%;
  padding-top: 100%;
}

.careers-sliderMask {
  position: relative;
  width: 100%;
  padding-top: 120%;
  overflow: hidden;
}

.careers-sliderMaskShort {
  position: relative;
  width: 100%;
  padding-top: 80%;
  overflow: hidden;
}

.careers-sliderMask-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: transform 0.4s ease-out;
  transform: translateX(100%);
  z-index: 1;
}

.careers-sliderMask-image.slide-active {
  transform: none;
  z-index: 2;
}

.careers-sliderMask-image.slide-inactive {
  transform: none;
  z-index: 1;
}

.careers-sliderMask-under {
  display: inline-block;
  width: 66%;
  max-width: 310px;
  margin-top: 40px;
}

.careers-landing-tenets-module {
  padding-top: 0 !important;
}

/* Tenets */

.careers-tenets {
  display: flex;
  flex-flow: row wrap;
}

@media screen and (max-width: 900px) {

.careers-tenets {
    justify-content: space-around
}
  }

@media screen and (min-width: 900px) {

.careers-tenets {
    justify-content: space-between
}
  }

.careers-tenets .careers-horizontal-tenet {
    max-width: 320px;
  }

.careers-tenets .careers-horizontal-tenet .careers-horizontal-tenet-image {
      width: 300px;
      height: 200px;
      background-size: cover;
      background-position: center center;
      background-repeat: no-repeat;
    }

.careers-tenets .careers-horizontal-tenet .careers-tenet-title {
      margin-top: 32px;
      margin-top: var(--cx-spacing-4x);
      margin-bottom: 16px;
      margin-bottom: var(--cx-spacing-2x);
      font-size: 32px;
      line-height: 38px;
    }

.careers-tenets .careers-horizontal-tenet p a {
      color: inherit;
      text-decoration: underline;
    }

.careers-tenet {
  margin-bottom: 100px;
}

.careers-tenet:last-child {
    margin-bottom: 0;
  }

.careers-tenet-outer {
  /* margin-top: 40px; */
}

.careers-tenet-text {
  margin-bottom: 0;
}

.careers-tenet-inner p a {
  color: inherit;
  text-decoration: underline;
}

.careers-tenet-inner p a:hover {
  color: #C9C9C9;
  color: var(--cx-color-onDarkTextSubtle);
}

.careers-landing-memo {
  display: inline-block;
  max-width: 700px;
  margin-bottom: 40px;
}

.careers-landing-memoHeading {
  margin-bottom: 10px;
  line-height: 1.2em;
}

.careers-landing-memoBottom {
  display: inline-block;
  max-width: 600px;
  margin-bottom: 0;
  padding-right: 40px;
  line-height: 1.2em;
}

/* Video */

.careers-videoPlayer {
  display: block;
  position: relative;
  padding: 0;
}

.careers-videoPlayer iframe {
  display: none;
}

.careers-videoPlayer-cover {
  position: absolute;
  padding-top: 25%;
  padding-bottom: 25%;
  cursor: pointer;
}

.careers-videoPlayer-coverInner {
  padding: 0 40px;
  text-align: center;
  color: #FFFFFF;
  color: var(--cx-color-white);
}

.careers-videoPlayer .careers-splitToGutter {
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.careers-lightbox {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1100;
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.careers-videoWrapper {
  width: 100%;
  height: 100%;
}

.careers-videoWrapper span {
  position: absolute;
  top: 20px;
  right: 90px;
  color: #FFFFFF;
  color: var(--cx-color-onDarkText);
  cursor: pointer;
  z-index: 100;
  z-index: var(--cx-zIndex-1);
}

.careers-videoWrapper iframe {
  position: relative;
  top: 50%;
  margin: 0 auto;
  padding: 100px;
  width: 100%;
  height: 100%;
  transform: translateY(-50%);
}

.careers-close-icon {
  float: right;
  position: absolute;
  top: 30px;
  right: 30px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 100;
}

.careers-close-icon:before,
  .careers-close-icon:after {
    content: '';
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
  }

.careers-close-icon:before {
    transform: rotate(45deg);
  }

.careers-close-icon:after {
    transform: rotate(-45deg);
  }

.careers-video-playButton {
  display: inline-block;
  position: relative;
  top: 6px;
  width: 40px;
  height: 24px;
  fill: #FFFFFF;
  fill: var(--cx-color-white);
}

/* Offices */

.careers-offices-slick {
  width: calc(100% + 240px);
  margin-left: -120px;
}

.careers-offices-slickSlide {
  display: block;
  height: 100%;
  margin-top: 2px;
  margin-bottom: 2px;
  margin-left: 2px;
}

.careers-offices-slick .slick-track {
  margin-left: 2px;
  margin-right: 2px;
}

.slick-initialized .slick-slide img,
.slick-initialized .slick-slide span {
  transition: all 0.3s ease-out;
}

.careers-offices-slickSlide img {
  height: 350px;
  padding-right: 16px;
  overflow: hidden;
}

.careers-offices .slider-progress button:focus {
  opacity: 1;
  background: none;
}

.careers-office-name {
  display: inline-block;
  margin: 20px 0 10px 20px;
  font-size: 16px;
}

/* Promotion Module */

.careers-landing-promotionModule {
  box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 2px 2px 2px var(--cx-color-dropShadow);
}

.careers-landing-promotionModule .careers-landing-memoBottom {
  padding: 0;
  font-size: 46px;
  line-height: 45px;
}

.careers-landing-promotionModule .careers-split {
  display: grid;
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: 5%;
       column-gap: 5%;
  grid-template-columns: 45% 1px 45%;
}

.careers-landing-promotionModule .careers-gapLine {
  height: 394px;
  background: #000000;
  background: var(--cx-color-black);
}

.careers-landing-promotionModule .careers-landing-button {
  padding: 0;
  text-align: center;
}

.careers-landing-promotionModule .careers-landing-contentContainer {
  max-width: 346px;
}

.careers-landing-promotionJoin {
  display: flex;
  justify-content: flex-end;
}

.careers-landing-promotionModule .careers-landing-promotionButton {
  max-width: 346px;
  height: 60px;
  margin-top: 35px;
  line-height: 60px;
  font-size: 20px;
}

.careers-landing-promotionButton .arrow {
  width: 12px;
}

.careers-landing-promotionButton .button-hover-inner {
  padding-right: 24px;
}

.careers-landing-promotionButton .arrow:before,
.careers-landing-promotionButton .arrow:after {
  left: 8px;
}

/* Animation */

.mask {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #F4F4F4;
  background: var(--cx-color-backgroundAccent);
  z-index: 50;
  transition: 1.2s;
}

.maskWhite {
  background: #FFFFFF;
  background: var(--cx-color-white);
  transition: 1.0s;
}

.maskBlack {
  background: #000000;
  background: var(--cx-color-black);
}

.scrolled .mask {
  width: 0;
}

.scrolled .maskUp {
  width: 100%;
  height: 0;
}

.scrolled .careers-panel-text .maskUp {
  transition-delay: 0.3s;
}

.transition-fadeUp {
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.2s ease-out;
}

.transition-fadeUpSlow {
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.4s ease-out;
}

.scrolled .transition-fadeUp,
.scrolled .transition-fadeUpSlow {
  opacity: 1;
  transform: none;
}

.scrolled .careers-landing-heroStatement:nth-child(2) {
  transition-delay: 0.2s;
}

.scrolled .careers-landing-heroStatement:nth-child(3) {
  transition-delay: 0.4s;
}

.scrolled .careers-tenet:nth-child(2) {
  transition-delay: 0.5s;
}

.scrolled .careers-tenet:nth-child(3) {
  transition-delay: 1.0s;
}

.scrolled .careers-landing-memoText {
  transition-delay: 0.2s;
}

.scrolled .careers-textMobile {
  transition-delay: 0.2s;
}

/* Keyframes */

@keyframes arrowShuffle {
  0% {
    transform: translateY(0);
  }

  70% {
    transform: translateY(4px);
  }

  100% {
    transform: translateY(3px);
  }
}

@keyframes arrowShuffleOut {
  0% {
    transform: translateY(3px);
  }

  100% {
    transform: translateY(0);
  }
}

/* Desktop */

@media screen and (min-width: 900px) {
  .careers-tenet-inner {
    padding-right: 40px;
  }

  .careers-padLeft {
    padding-left: 80px;
  }

  .careers-padRight {
    padding-right: 80px;
  }

  .careers-splitShift {
    position: relative;
    left: -120px;
  }

  .careers-landing-memoIndent {
    max-width: 550px;
    padding-left: 60px;
  }

  .careers-landing-moduleBump {
    margin-bottom: 80px;
  }

  .slick-initialized .slick-slide:hover span,
  .slick-initialized .slick-slide:hover img {
    opacity: 0.7;
  }

  .careers-cta:hover .arrow {
    transform: translateX(10px);
  }

  .careers-cta:hover .careers-cta-text {
    opacity: 0.7;
  }
}

/* Tablet */

@media screen and (max-width: 1280px) and (min-width: 901px) {
  .careers-tenet-inner {
    padding-right: 0;
  }
}

/* Mobile */

@media screen and (max-width: 900px) {
  .careers-landing-memo {
    display: block;
    margin: 40px auto;
    max-width: 400px;
    text-align: center;
  }

  .careers-landing-memoBottom {
    max-width: 260px;
    padding-right: 0;
  }

  .careers-tenet {
    margin-bottom: 80px;
  }

  .careers-landing-video {
    flex-direction: row;
  }

    .careers-landing-video > .careers-landing-image {
      position: absolute;
      width: 100%;
      height: 100%;
    }

  .careers-videoPlayer {
    max-width: none;
  }

  .careers-videoPlayer-cover {
    width: calc(100% + 40px);
  }

  .careers-offices-slick {
    width: 100%;
    margin-left: 0;
  }

  .careers-offices-slickSlide img {
    max-width: 80vw;
  }

  .careers-videoWrapper iframe {
    padding: 200px 0;
  }

  /* Promotion Module */
  .careers-landing-promotionModule .careers-landing-promotionButton {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0 20px;
    width: 100%;
    max-width: unset;
  }

  .careers-landing-promotionModule .careers-landing-memoBottom {
    padding: 0;
    font-size: 24px;
    line-height: normal;
  }

  .careers-landing-promotionModule .careers-split {
    display: block;
  }

  .careers-landing-promotionAgent {
    display: flex;
    justify-content: center;
    position: relative;
    padding-bottom: 100px;
    margin-bottom: 60px;
  }

  .careers-landing-promotionModule .careers-landing-contentContainer {
    max-width: unset;
  }

  .careers-landing-promotionJoin {
    justify-content: center;
    position: relative;
    padding-bottom: 100px;
  }
}

@media screen and (min-width: 648px) {
  .uc-globalHeader-button {
    margin: 17px 0;
  }

  .uc-globalHeader-logotype {
    margin: 21px 20px 21px 0;
    width: 134px;
    height: 18px;
  }

  .consumerFooter-wrapper {
    margin: 0 auto;
    width: 90%;
    max-width: 1170px;
  }
}

@media screen and (max-width: 960px) and (min-width: 900px) {
    .careers-landing-video > video {
      width: auto;
      height: 100%;
    }
}

.careers-landing .careers-landing-tenets {
    position: relative;
    padding-top: 60px;
  }

.careers-landing .careers-landing-tenets .careers-landing-memo {
      max-width: none;
    }

.careers-landing .careers-landing-jobs-module {
    padding-top: 100px;
    padding-bottom: 100px;
  }

.careers-landing .careers-landing-jobs-module .careers-landing-memo {
      position: relative;
      margin-bottom: 57px;
    }

.careers-landing .careers-landing-link-module {
    background: #000000;
    background: var(--cx-color-black);
  }

.careers-landing .careers-landing-cta-arrow {
    bottom: -137px;
    left: 57%;
  }

.careers-office-gallery {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  z-index: 1200;
  background-color: #000000;
  background-color: var(--cx-color-black);
  opacity: 1;
  overflow: hidden;
}

.careers-office-gallery .closeBtn.animIn {
    opacity: 1;
    transition: opacity 0.5s ease-out;
  }

.careers-office-gallery .closeBtn {
    position: absolute;
    top: 32px;
    right: 32px;
    width: 70px;
    height: 70px;
    transform: rotate(
      45deg
    );
    transform-origin: 25px 25px;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s ease-out;
  }

.careers-office-gallery .closeBtn .line.a {
    top: 25px;
    width: 50px;
    height: 1px;
    box-sizing: content-box;
    transform: scale(1);
    transition-delay: 0.05s;
  }

.careers-office-gallery .closeBtn .line {
    position: absolute;
    top: 0;
    left: 0;
    margin: 10px 0 0 10px;
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
    transition: transform 0.3s ease-out;
    will-change: transform;
  }

.careers-office-gallery .closeBtn .line.b {
    left: 25px;
    width: 1px;
    height: 50px;
    box-sizing: content-box;
    transform: scale(1);
  }

.careers-office-gallery .careers-offices-gallery-slick {
    margin-top: 15vh;
  }

.careers-office-gallery .slider-controls-container {

    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    row-gap: 60px;
  }

.careers-office-gallery .slider-controls-container > div {
      margin: 0 32px;
      max-width: 1050px;
    }

.careers-office-gallery img {
    height: 60vh;
    box-sizing: border-box;
    -o-object-fit: cover;
       object-fit: cover;
  }

.careers-office-gallery .slider-progress {
    background-color: #4E4E4E;
    background-color: var(--cx-color-grey90);
  }

.careers-office-gallery .careers-offices-slickSlide img {
    padding-right: 40px;
  }

.careers-office-gallery .careers-office-name {
    color: #FFFFFF;
    color: var(--cx-color-white);
  }

.noJobSection {
  padding: 100px 0;
}

.noJobContainer {
  margin: auto;
  padding: 30px;
  max-width: 800px;
  background: #FFFFFF;
  background: var(--cx-color-background);
  text-align: center;
}

.searchTypeahead .searchTypeahead-placeholder {
    width: 100%;
    height: 67px;
  }

.searchTypeahead .searchTypeahead-wrapper {
    position: absolute;
    top: 0;
    width: 100%;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }

.searchTypeahead .searchTypeahead-tips {
    display: none;
    position: absolute;
    top: 0;
    right: 57px;
    height: 67px;
    color: #8D8D8D;
    color: var(--cx-color-grey70);
    font-size: 18px;
    line-height: 67px;
  }

.searchTypeahead.focused .searchTypeahead-tips {
      display: block;
    }

.searchTypeahead.focused input {
      padding-right: 320px;
    }

.searchTypeahead input {
    display: flex;
    align-items: center;
    border: none;
    padding: 0 24px;
    width: 100%;
    height: 65px;
    padding-right: 50px;
    padding-bottom: 2px;
    font-family: 'Compass Sans', Helvetica, Arial, sans-serif;
    font-family: var(--cx-font-familySans);
    font-size: 24px;
    line-height: 16px;
    color: #000000;
    color: var(--cx-color-black);
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
    background-repeat: no-repeat;
    background-position: right 24px center;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxOSAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE4LjAzMDMgMTYuOTY5NUwxOC4wMzAzIDE2Ljk2OTVDMTguMzIzMiAxNy4yNjI0IDE4LjMyMzIgMTcuNzM3MyAxOC4wMzA0IDE4LjAzMDJDMTcuNzM3NSAxOC4zMjMxIDE3LjI2MjYgMTguMzIzMiAxNi45Njk3IDE4LjAzMDNMMTIuODY1NiAxMy45MjdDMTEuNjUzNiAxNC44MjIxIDEwLjE1NDQgMTUuMzUxMyA4LjUzMjI3IDE1LjM1MTNDNC41MDAxNiAxNS4zNTEzIDEuMjMxMTYgMTIuMDgzIDEuMjMxMTYgOC4wNTExMUMxLjIzMTE2IDQuMDE4NTIgNC40OTk5OSAwLjc1IDguNTMyMjcgMC43NUMxMi41NjQ1IDAuNzUgMTUuODMzNCA0LjAxODUyIDE1LjgzMzQgOC4wNTExMUMxNS44MzM0IDkuOTE5OTIgMTUuMTMwOCAxMS42MjUxIDEzLjk3NTcgMTIuOTE2M0wxOC4wMzAzIDE2Ljk2OTVaTTE0LjMzMzQgOC4wNTExMUMxNC4zMzM0IDQuODQ2OTggMTEuNzM2MiAyLjI1IDguNTMyMjcgMi4yNUM1LjMyODM4IDIuMjUgMi43MzExNiA0Ljg0Njk4IDIuNzMxMTYgOC4wNTExMUMyLjczMTE2IDExLjI1NDQgNS4zMjg0NyAxMy44NTEzIDguNTMyMjcgMTMuODUxM0MxMS43MzYxIDEzLjg1MTMgMTQuMzMzNCAxMS4yNTQ0IDE0LjMzMzQgOC4wNTExMVoiIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjAuNSIvPgo8L3N2Zz4K);
    background-size: 17px 17px;
    box-shadow: none;
    border-radius: 0px;
  }

.searchTypeahead input:focus {
    outline: none;
  }

.searchTypeahead input::-moz-placeholder {
    color: #8D8D8D;
    color: var(--cx-color-grey70);
    font-size: 22px;
  }

.searchTypeahead input::placeholder {
    color: #8D8D8D;
    color: var(--cx-color-grey70);
    font-size: 22px;
  }

.searchTypeahead ul {
    margin: 0;
    padding: 0;
    width: 100%;
    max-height: 335px;
    overflow: auto;
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
    font-family: 'Compass Sans', Helvetica, Arial, sans-serif;
    font-family: var(--cx-font-familySans);
    font-size: 24px;
    line-height: 16px;
    color: #6C6C6C;
    color: var(--cx-color-grey80);
  }

.searchTypeahead ul li {
      display: block;
      align-items: center;
      left: 20px;
      padding: 0 20px;
      height: 67px;
      line-height: 67px;
      cursor: pointer;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

.searchTypeahead ul li:hover {
      color: #0064E5;
      color: var(--cx-color-blue80);
      background-color: #F4F4F4;
      background-color: var(--cx-color-grey20);
    }

@media screen and (max-width: 900px) {
    .searchTypeahead input,
    .searchTypeahead ul {
      font-size: 18px;
    }
      .searchTypeahead.focused .searchTypeahead-tips {
        display: none;
      }

      .searchTypeahead.focused input {
        padding-right: 50px;
      }
  }

.searchTypeahead.mobile .searchTypeahead-placeholder {
      width: 100%;
      height: 45px;
    }

.searchTypeahead.mobile .searchTypeahead-tips {
      height: 45px;
      line-height: 45px;
    }

.searchTypeahead.mobile input {
      padding: 0 20px;
      width: 100%;
      height: 45px;
      padding-right: 40px;
      background-position: right 15px center;
      background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuMjg0IDEuMzMzQTUuNjI0IDUuNjI0IDAgMCAwIC42NjcgNi45NTFhNS42MjQgNS42MjQgMCAwIDAgNS42MTcgNS42MTdjMS4xOCAwIDIuMjc2LS4zNjcgMy4xOC0uOTkybDMuNzU4IDMuNzU3IDEuNDQ1LTEuNDQ0LTMuNzU4LTMuNzU4Yy42MjUtLjkwNC45OTMtMiAuOTkzLTMuMThhNS42MjQgNS42MjQgMCAwIDAtNS42MTgtNS42MTh6bTAgMi4wNDNBMy41NzkgMy41NzkgMCAwIDEgOS44NiA2Ljk1MWEzLjU3OSAzLjU3OSAwIDAgMS0zLjU3NSAzLjU3NUEzLjU3OSAzLjU3OSAwIDAgMSAyLjcxIDYuOTVhMy41NzkgMy41NzkgMCAwIDEgMy41NzUtMy41NzV6IiBmaWxsPSJibGFjayIgLz4KPC9zdmc+);
      background-size: 16px 16px;
    }

.searchTypeahead.mobile input::-moz-placeholder {
      color: #8D8D8D;
      color: var(--cx-color-grey70);
      font-size: 16px;
    }

.searchTypeahead.mobile input::placeholder {
      color: #8D8D8D;
      color: var(--cx-color-grey70);
      font-size: 16px;
    }

.searchTypeahead.mobile ul {
      font-size: 16px;
    }

.searchTypeahead.mobile ul li {
        height: 45px;
        line-height: 45px;
      }

/* This rule fixes an issue with IE11 on Windows 7, where the page becomes unresponsive after
   clicking on an element containing a use tag, and removing that element from the DOM
http://stackoverflow.com/questions/29149174/click-events-stop-working-after-replacing-attribute-of-use-element-in-svg-w
https://connect.microsoft.com/IE/feedback/details/796745/mouse-events-are-not-delivered-at-all-anymore-when-inside-an-svg-a-use-is-removed-from-the-dom
 */

use {
  pointer-events: none;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
}

/* cx overwrites */

.cx-mainLayout {
  /* Prevents white colorblock near footer on department pages */
  padding-bottom: 0;
}

/* Landing / Global */

/* TODO: Properly namespace and consolidate when all new pages are launched

/* Type */

.careers-landing h1,
  .careers-landing h2,
  .careers-landing h3,
  .careers-landing h4,
  .careers-landing h5,
  .careers-landing h6,
  .careers-department h1,
  .careers-department h2,
  .careers-department h3,
  .careers-department h4,
  .careers-department h5,
  .careers-department h6,
  .careers-job h1,
  .careers-job h2,
  .careers-job h3,
  .careers-job h4,
  .careers-job h5,
  .careers-job h6,
  .careers-all h1,
  .careers-all h2,
  .careers-all h3,
  .careers-all h4,
  .careers-all h5,
  .careers-all h6 {
    margin-top: 0;
    font-size: 16px;
    font-weight: var(--font-weightRegular);
    font-weight: var(--font-weightRegular);
  }

.careers-landing h2, .careers-department h2, .careers-job h2, .careers-all h2 {
    font-size: 65px;
  }

.careers-landing h3, .careers-department h3, .careers-job h3, .careers-all h3 {
    font-size: 44px;
  }

.careers-landing h4, .careers-department h4, .careers-job h4, .careers-all h4 {
    font-size: 32px;
  }

.careers-landing h5, .careers-department h5, .careers-job h5, .careers-all h5 {
    font-size: 18px;
  }

.careers-landing p, .careers-department p, .careers-job p, .careers-all p {
    font-size: 18px;
    line-height: 1.4em;
  }

.careers-landing ul, .careers-department ul, .careers-job ul, .careers-all ul {
    line-height: 1.6em;
  }

.careers-landing a, .careers-department a, .careers-job a, .careers-all a {
    color: #000000;
    color: var(--cx-color-black);
    text-decoration: none;
  }

.careers-landing hr, .careers-department hr, .careers-job hr, .careers-all hr {
    border: none;
  }

.careers-hide {
  position: absolute;
  top: -10000px;
  left: -10000px;
}

/* Hero Banner */

.careers-landing-hero {
  position: relative;
  padding: 120px;
  min-height: 50vh;
  margin-bottom: 0;
  text-align: left;
  color: #FFFFFF;
  color: var(--cx-color-white);
}

.careers-landing-hero.careers-landing-heroBlack {
    background-color: #000000;
    background-color: var(--cx-color-black);
  }

.careers-landing-hero.careers-landing-heroShort {
    min-height: 45vh;
    color: #FFFFFF;
    color: var(--cx-color-white);
  }

.careers-landing-hero a {
    color: #FFFFFF;
    color: var(--cx-color-white);
  }

.careers-landing-heroText {
  position: relative;
  width: 100%;
  max-width: 800px;
  z-index: 3;
}

.careers-landing-heroSubtitle {
  margin-bottom: 50px;
}

.careers-landing-heroTitle {
  display: block;
  position: relative;
  width: 100%;
  max-width: 680px;
  margin-bottom: 20px;
  line-height: 1.2em;
  z-index: 3;
}

.careers-landing-heroTitle h2 {
    line-height: 1.2em;
  }

.careers-landing-heroDescription {
  max-width: 500px;
  font-size: 18px;
  line-height: 1.4em;
}

.careers-landing-underline {
  display: inline-block;
  border-bottom: 1px solid #FFFFFF;
  border-bottom: 1px solid var(--cx-color-white);
}

.careers-landing-underline.careers-landing-underlineBlack {
    border-bottom: 1px solid #000000;
    border-bottom: 1px solid var(--cx-color-black);
  }

.careers-link:focus {
  outline: auto;
}

.flex-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.careers-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.65);
  z-index: 2;
}

.careers-landing-heroStatement {
  position: relative;
  margin: 0;
  z-index: 3;
}

.careers-hero-buttonMobile {
  margin-bottom: 50px;
  text-align: center;
}

/* Buttons */

.careers-landing-cta-arrow {
  position: absolute;
  bottom: -33px;
  left: 60%;
  width: 66px !important;
  height: 70px !important;
  text-align: center;
  color: #000000;
  color: var(--cx-color-black);
  background: #FFFFFF;
  background: var(--cx-color-white);
  box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 2px 8px 2px var(--cx-color-dropShadow);
  z-index: 3;
}

.arrow {
  position: absolute;
  top: 28px;
  right: 20px;
  width: 30px;
  height: 2px;
  border-radius: 0 0 1px 1px;
  background-color: #000000;
  background-color: var(--cx-color-black);
  z-index: 3;
}

.arrow:before,
.arrow:after {
  content: '';
  position: absolute;
  left: 26px;
  width: 6px;
  height: 2px;
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.arrow:before {
  top: 4px;
  transform: rotate(-45deg);
  transform-origin: 0 0;
}

.arrow:after {
  top: 1px;
  transform: rotate(45deg);
  transform-origin: 100% 0;
}

.careers-landing-buttonBlack .arrow,
  .careers-landing-buttonBlack .arrow:before,
  .careers-landing-buttonBlack .arrow:after {
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
  }

.arrowDown {
  position: absolute;
  width: 2px;
  height: 30px;
  border-radius: 0 0 1px 1px;
  background-color: #000000;
  background-color: var(--cx-color-black);
  opacity: 1;
  transition: background-color 0.2s ease-out;
  z-index: 3;
}

.arrowDown:before {
  content: '';
  position: absolute;
  top: 29px;
  left: 0px;
  width: 6px;
  height: 2px;
  background-color: #000000;
  background-color: var(--cx-color-black);
  transform: rotate(-45deg);
  transform-origin: 0 0;
  transition: background-color 0.2s ease-out;
}

.arrowDown:after {
  content: '';
  position: absolute;
  top: 29px;
  left: -4px;
  width: 6px;
  height: 2px;
  background-color: #000000;
  background-color: var(--cx-color-black);
  transform: rotate(45deg);
  transform-origin: 100% 0;
  transition: background-color 0.2s ease-out;
}

.careers-cta {
  display: inline-block;
  position: relative;
  margin-top: 40px;
  font-size: 18px;
}

.careers-cta .careers-cta-text,
.careers-cta .arrow {
  transition: all 0.3s ease-out;
}

.careers-cta-text {
  padding-right: 50px;
}

.careers-cta .arrow {
  top: 9px;
  right: 0;
}

.careers-landing-button {
  display: inline-block;
  position: relative;
  padding: 0 40px;
  width: 100%;
  height: 70px;
  line-height: 70px;
  text-align: center;
  color: #000000;
  color: var(--cx-color-black);
  background: #FFFFFF;
  background: var(--cx-color-white);
  box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 2px 8px 2px var(--cx-color-dropShadow);
  font-size: 22px;
  z-index: 3;
}

.careers-landing-buttonWidthFixed {
  float: right;
  max-width: 500px;
  margin-top: 15px;
}

.careers-landing-buttonBlack {
  color: #FFFFFF;
  color: var(--cx-color-white);
  background: #000000;
  background: var(--cx-color-black);
}

.careers-landing-buttonBlack .button-hover-inner {
    color: #FFFFFF;
    color: var(--cx-color-white);
  }

.careers-landing-hero .careers-landing-button {
  position: absolute;
  bottom: -35px;
  left: calc(50% + 40px);
  width: calc(50% - 220px);
  max-width: 800px;
}

.careers-landing-button .arrow {
  top: 13px;
  right: 2px;
}

.careers-landing-cta-arrow .arrowDown {
  top: 19px;
  left: 32px;
}

.careers-landing-button .arrowDown {
  top: 5px;
  right: 10px;
  height: 20px;
}

.careers-landing-button .arrowDown:before,
.careers-landing-button .arrowDown:after {
  top: 19px;
}

/* Button Hovers */

.button-hover-inner {
  position: relative;
  padding-right: 50px;
  color: #000000;
  color: var(--cx-color-black);
  z-index: 3;
  transition: color 0.3s ease-out;
}

.button-hoverIn .button-hover-inner {
  color: #FFFFFF;
  color: var(--cx-color-white);
}

.button-hover .arrow,
.button-hover .arrow:before,
.button-hover .arrow:after,
.button-hover .arrowDown,
.button-hover .arrowDown:before,
.button-hover .arrowDown:after {
  transition: all 0.4s ease-out;
}

.button-hoverIn .arrowDown {
  animation: arrowShuffle 0.6s both;
}

.button-hoverOut .arrowDown {
  animation: arrowShuffleOut 0.6s both;
}

.button-hoverIn .arrow,
.button-hoverIn .arrow:before,
.button-hoverIn .arrow:after,
.button-hoverIn .arrowDown,
.button-hoverIn .arrowDown:before,
.button-hoverIn .arrowDown:after {
  background-color: #FFFFFF;
  background-color: var(--cx-color-white);
}

.button-hover:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: #333333;
  background-color: var(--cx-color-grey100);
  transition: all 0.4s ease-out;
}

.button-hover-black.button-hover:after {
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.button-hover.careers-landing-cta-arrow:after {
  transition: all 0.2s ease-out;
}

.button-hoverWhite:after {
  background-color: #FFFFFF;
  background-color: var(--cx-color-white);
}

.button-hover.button-hoverIn:after {
  height: 100%;
}

.button-hover.button-hoverOut:after {
  top: auto;
  bottom: 0;
}

.button-hover-ltr:after {
  width: 0;
  height: 100%;
}

.button-hover-ltr.button-hoverIn:after {
  width: 100%;
}

.button-hover-ltr.button-hoverOut:after {
  right: 0;
  left: auto;
}

/* Split Column */

.careers-split {
  display: flex;
  position: relative;
}

.careers-splitEqual {
  flex: 0 0 50%;
}

.careers-splitRow {
  margin: 0 -100px;
}

.careers-splitColumn {
  flex: 0 0 50%;
}

.careers-splitColumn:first-child {
  padding-right: 40px;
}

.careers-splitColumn:last-child {
  padding-left: 40px;
}

.careers-splitFourth:first-child {
  flex: 0 0 75%;
}

.careers-splitFourth:last-child {
  flex: 0 0 25%;
}

.careers-splitLeft {
  padding: 0 40px;
  flex: 0 0 60%;
}

.careers-splitRight {
  padding: 0 40px;
  flex: 0 0 40%;
}

.careers-splitPanel:first-child {
  flex: 0 0 55%;
}

.careers-splitPanel:last-child {
  flex: 0 0 45%;
}

.careers-splitToGutter {
  /* Extends through gutter */
  position: relative;
  width: calc(100% + 120px);
}

.careers-splitToGutterSmall {
  /* Extends through gutter */
  position: relative;
  width: calc(100% + 120px);
}

/* Generic Modules */

.careers-landing-module {
  position: relative;
  padding: 100px 120px;
}

.careers-landing-maxWidth {
  margin: 0 auto;
  max-width: 1170px;
  max-width: var(--cx-fixedPageWidth);
}

.careers-landing-moduleGrey {
  background: #F4F4F4;
  background: var(--cx-color-backgroundAccent);
}

.careers-landing-moduleBlack {
  color: #FFFFFF;
  color: var(--cx-color-white);
  background: #000000;
  background: var(--cx-color-black);
}

/* List + Grid */

.careers-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 0 50px;
}

.careers-grid.careers-gridThird {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 10px 40px;
  }

.careers-grid-item {
  display: block;
  border-bottom: 2px solid #000000;
  border-bottom: 2px solid var(--cx-color-black);
  color: #000000;
  color: var(--cx-color-black);
  transition: background-color 0.2s ease-out;
}

.careers-grid-item.u-displayNone {
    display: none;
  }

.careers-grid-item .careers-grid-itemTitle {
    margin: 35px 0 5px;
    line-height: 1.2em;
    transition: all 0.2s ease-out;
  }

.careers-grid-item .careers-grid-itemTitle .careers-grid-itemTitleSmall {
    font-size: 24px;
  }

.careers-grid-item .careers-grid-itemSubtitle {
    margin: 0 0 35px;
    font-size: 16px;
    transition: all 0.3s ease-out;
  }

.careers-filter .careers-grid-item.u-displayNone {
  display: none;
}

.careers-landing-moduleBlack .careers-grid-item {
  border-bottom: 1px solid #FFFFFF;
  border-bottom: 1px solid var(--cx-color-white);
  color: #FFFFFF;
  color: var(--cx-color-white);
}

/* Panel */

.careers-panel-image {
  position: relative;
  height: 100%;
}

.careers-panel-imageOverflow {
  position: relative;
  top: 40px;
  left: 40px;
  margin: 0 0 0 auto;
  width: calc(100% + 80px);
  max-width: 580px;
  height: calc(100% + 100px);
}

.careers-panel-text {
  position: relative;
  background-color: #FFFFFF;
  background-color: var(--cx-color-white);
  z-index: 3;
}

.careers-panel-textInner {
  padding: 60px;
}

.careers-panel-text .careers-panel-city {
  margin: 0 0 25px;
}

.careers-panel-text .careers-panel-employee {
  margin-bottom: 10px;
}

.careers-panel-text hr {
  margin: 40px 0;
  width: 40px;
  height: 2px;
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.careers-panel-text .careers-pullquote {
  max-width: 430px;
  margin-bottom: 0;
  font-size: 32px;
  line-height: 1.3em;
  text-indent: -0.3em;
}

.careers-panel-descriptionMemo {
  margin-top: 0;
}

.careers-panel-description {
  margin-bottom: 0;
  padding-right: 40px;
}

/* Desktop */

@media screen and (min-width: 900px) {
  .careers-noDesktop {
    display: none !important;
  }

  .careers-splitNudge {
    margin-top: 40px;
  }

  .careers-grid-item:hover {
    background-color: #F4F4F4;
    background-color: var(--cx-color-backgroundAccent);
  }

  .careers-landing-moduleBlack .careers-grid-item:hover {
    background-color: #333333;
    background-color: var(--cx-color-grey100);
  }

  .careers-grid-item:hover .careers-grid-itemTitle,
  .careers-grid-item:hover .careers-grid-itemSubtitle {
    transform: translateX(20px);
  }
}

/* Large Desktop */

@media screen and (min-width: 1400px) {
  .careers-landing-maxWidth {
    padding: 0 24px;
    padding: 0 var(--gutter);
  }
}

/* Tablet */

@media screen and (max-width: 1280px) and (min-width: 901px) {
  .careers-landing-hero .careers-landing-button {
    left: initial;
    width: calc(100% - 240px);
    max-width: none;
  }

  .careers-splitPanel:first-child {
    flex: 0 0 50%;
  }

  .careers-splitPanel:last-child {
    flex: 0 0 50%;
  }

  .careers-splitToGutterSmall,
  .careers-splitPanel:last-child > .careers-splitToGutter {
    width: calc(100% + 75px);
  }

  .careers-landing-buttonWidthFixed {
    padding: 0 20px;
    font-size: 18px;
  }

  .careers-landing-buttonWidthFixed .button-hover-inner {
    padding-right: 40px;
  }

  .careers-landing-buttonWidthFixed .button-hover-inner .arrow {
    top: 11px;
  }
}

/* Slider */

.slider-controls {
  width: 100%;
  margin-top: 20px;
  font-size: 0;
}

.slider-controls button {
  display: inline-block;
  position: relative;
  border: 2px solid #F4F4F4;
  border: 2px solid var(--cx-color-backgroundAccent);
  width: 40px;
  height: 40px;
  background: transparent;
  cursor: pointer;
  transition: 0.2s;
}

.slider-controls.controls-reverse button {
  border: 2px solid #8D8D8D;
  border: 2px solid var(--cx-color-grey70);
  background: #FFFFFF;
  background: var(--cx-color-white);
}

.slider-controls button .arrow {
  transition: 0.2s;
  z-index: 1;
}

.slider-controls button .arrow,
.slider-controls button .arrow:before,
.slider-controls button .arrow:after {
  background-color: #FFFFFF;
  background-color: var(--cx-color-white);
}

.slider-controls button:hover .arrow,
.slider-controls button:hover .arrow:before,
.slider-controls button:hover .arrow:after {
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.slider-controls.controls-black button .arrow,
.slider-controls.controls-black button .arrow:before,
.slider-controls.controls-black button .arrow:after {
  background-color: #000000;
  background-color: var(--cx-color-black);
}

.slider-controls .button-hover:after {
  transition: 0.2s ease-out;
}

.slider-controls button .arrow {
  position: absolute;
  top: 50%;
  right: auto;
  left: 50%;
  transform: translate(-50%, -50%);
}

.slider-controls .slider-prev .arrow {
  transform: translate(-50%, -50%) rotate(180deg);
}

.slider-controls .slider-prev .arrow {
  width: 15px;
}

.slider-controls .slider-prev .arrow:before,
.slider-controls .slider-prev .arrow:after {
  left: 10px;
}

.slider-controls .slider-next {
  width: 65px;
  margin-left: -2px;
}

.slider-controls .slider-prev:focus,
.slider-controls .slider-next:focus {
  outline: none;
}

.slider-controls .slider-controls_next {
  display: inline-block;
  margin-left: 40px;
  vertical-align: top;
  font: 16px/37px 'Compass Sans', sans-serif;
  cursor: pointer;
}

.slider-progress {
  display: flex;
  position: relative;
  margin: 48px 0 0;
  width: 100%;
  height: 2px;
  font-size: 0;
  background: #F4F4F4;
  background: var(--cx-color-backgroundAccent);
  cursor: pointer;
}

.slider-progress button {
  margin: 0;
  border: none;
  padding: 0;
  flex: 1;
  height: 5px;
  transform: translateY(-50%);
  cursor: pointer;
  opacity: 0;
}

.slider-progress .progress-active {
  position: absolute;
  top: 0;
  left: 0;
  height: 2px;
  transition: ease-in 0.6s;
  background: #FFFFFF;
  background: var(--cx-color-white);
}

.slider-progress.controls-black {
  background: #F4F4F4;
  background: var(--cx-color-backgroundAccent);
}

.slider-progress.controls-black .progress-active {
  background: #000000;
  background: var(--cx-color-black);
}

/* Desktop */

@media screen and (min-width: 900px) {
  .slider-controls button .hover {
    position: absolute;
    top: 0;
    width: 0;
    height: 100%;
    background: #FFFFFF;
    background: var(--cx-color-white);
    transition: 0.1s;
  }

  .slider-controls.controls-black button:hover {
    border: 2px solid #000000;
    border: 2px solid var(--cx-color-black);
  }

  .slider-controls.controls-black button:hover .arrow,
  .slider-controls.controls-black button:hover .arrow:before,
  .slider-controls.controls-black button:hover .arrow:after {
    background-color: #FFFFFF;
    background-color: var(--cx-color-white);
  }

  .slider-controls.controls-black button .hover {
    background: #000000;
    background: var(--cx-color-black);
  }

  .slider-controls button.hover_in .hover {
    width: 100%;
  }

  .slider-controls .slider-prev .hover,
  .slider-controls .slider-next.hover_out .hover {
    right: 0;
    left: auto;
  }

  .slider-controls .slider-next .hover,
  .slider-controls .slider-prev.hover_out .hover {
    right: auto;
    left: 0;
  }

  .slider-controls button:hover {
    border: 2px solid #FFFFFF;
    border: 2px solid var(--cx-color-white);
  }
}

/* Tablet */

@media screen and (max-width: 1200px) {
  .careers-noTablet {
    display: none !important;
  }
}

/* Mobile */

@media screen and (max-width: 900px) {
  .careers-noMobile {
    display: none !important;
  }
    .careers-landing h2, .careers-department h2, .careers-job h2, .careers-all h2 {
      font-size: 35px;
    }

    .careers-landing h3, .careers-department h3, .careers-job h3, .careers-all h3 {
      font-size: 24px;
    }

    .careers-landing h4, .careers-department h4, .careers-job h4, .careers-all h4 {
      font-size: 24px;
    }

    .careers-landing h5, .careers-department h5, .careers-job h5, .careers-all h5 {
      font-size: 14px;
    }

    .careers-landing p, .careers-department p, .careers-job p, .careers-all p {
      font-size: 16px;
    }

  .careers-panel-text .careers-pullquote {
    font-size: 24px;
  }

  .careers-tenet-text,
  .careers-textMobile {
    margin: 20px auto 40px auto;
    max-width: 400px;
  }

  .careers-split {
    display: block;
    text-align: center;
  }

  .careers-splitFlipMobile {
    display: flex;
    flex-direction: column-reverse;
  }

  .careers-splitColumn,
  .careers-splitColumn:first-child,
  .careers-splitColumn:last-child {
    padding: 0;
  }

  .careers-splitToGutter {
    position: relative;
    width: calc(100% + 40px);
    margin-left: -20px;
  }

  .careers-landing-imageSquare {
    width: calc(100% + 20px);
    margin-left: 0;
  }

  .careers-landing-module {
    padding: 90px 20px;
  }

    .careers-landing-module.careers-landing-moduleBlack {
      padding: 30px 20px 80px;
    }

  .careers-landing-moduleShortMobile {
    padding: 0 20px;
  }

  .careers-landing-hero {
    padding: 70px 20px;
    min-height: 40vh;
  }

  .careers-landing-heroSubtitle {
    margin-bottom: 30px;
  }

  .careers-landing-button {
    font-size: 18px;
  }

  .careers-landing-hero .careers-landing-button {
    left: initial;
    padding: 0 20px;
    width: calc(100% - 40px);
    max-width: none;
  }

  .careers-landing-cta-arrow {
    left: calc(50% - 33px);
  }

  .careers-landing-button .arrow {
    top: 11px;
  }

  .careers-grid {
    display: block;
  }

  .careers-grid-item {
    position: relative;
    border-bottom: none;
  }

    .careers-grid-item:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: -20px;
      width: calc(100% + 40px);
      height: 1px;
      background-color: #000000;
      background-color: var(--cx-color-black);
    }

    .careers-grid-item .careers-grid-itemTitle {
      margin: 0 0 5px;
      padding-top: 20px;
    }

    .careers-grid-item .careers-grid-itemSubtitle {
      margin: 0;
      padding-bottom: 20px;
    }

  .careers-landing-moduleBlack .careers-grid-item {
    border-bottom: none;
  }

    .careers-landing-moduleBlack .careers-grid-item:after {
      content: '';
      background-color: #FFFFFF;
      background-color: var(--cx-color-white);
    }

  .careers-landing-buttonWidthFixed {
    position: absolute;
    bottom: -125px;
    left: 0;
    padding: 0 20px;
    max-width: none;
  }

  .careers-landing-buttonWidthFixed .button-hover-inner {
    padding-right: 0;
  }

  .careers-landing-buttonWidthFixed .arrow {
    display: none;
  }

  .careers-splitPanel:first-child {
    height: 40vh;
    min-height: 300px;
  }

  .careers-panel-text {
    width: calc(100% - 20px);
    margin-left: 20px;
    text-align: left;
  }

  .careers-panel-textInner {
    padding: 20px;
  }

  .careers-panel-text hr {
    margin: 20px 0;
  }

  .careers-panel-text .careers-panel-city {
    margin: 0 0 15px;
  }

  .careers-panel-descriptionMemo,
  .careers-panel-description {
    text-align: left;
  }

  .careers-panel-imageOverflow {
    position: relative;
    top: 0;
    left: 0;
    width: calc(100% + 20px);
    max-width: none;
    height: calc(100% + 40px);
  }

  .careers-splitEqual:first-child .careers-panel-description {
    margin-bottom: 20px;
  }

  .careers-sliderMaskShort {
    padding-top: 60%;
  }
}

main#reactLanding {
  min-height: 1000px;
}

main#reactLanding.loaded {
  min-height: auto;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2NsaWVudC1zcmMvZGVwYXJ0bWVudC9kZXBhcnRtZW50LmNzcyIsIi4uL2NsaWVudC1zcmMvam9icy9qb2IuY3NzIiwiLi4vY2xpZW50LXNyYy9qb2JzL2pvYnMuY3NzIiwiLi4vY2xpZW50LXNyYy9sYW5kaW5nL2xhbmRpbmcuY3NzIiwiLi4vY2xpZW50LXNyYy9qb2JzL25vX2pvYi5jc3MiLCIuLi9jbGllbnQtc3JjL3JlYWN0L2NvbXBvbmVudHMvU2VhcmNoVHlwZWFoZWFkL1NlYXJjaFR5cGVhaGVhZC5jc3MiLCIuLi9jbGllbnQtc3JjL2Jhc2UuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsY0FBNEI7RUFBNUIsNEJBQTRCO0VBQzVCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsMENBQTBDO0VBQzFDLDZCQUE2QjtFQUM3QixVQUFVO0FBQ1o7O0FBRUE7RUFDRSx5QkFBdUM7RUFBdkMsdUNBQXVDO0FBQ3pDOztBQUdFO0lBQ0UsYUFBYTtFQUNmOztBQUVBO0lBQ0UsYUFBYTtJQUNiLGdCQUFnQjtFQUNsQjs7QUFHRjtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxVQUFVO0VBQ1YsVUFBVTtFQUNWLG9CQUFvQjtBQU90Qjs7QUFMRTtJQUNFLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1YsVUFBVTtFQUNaOztBQUdGO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixPQUFPO0VBQ1AsWUFBWTtFQUNaLFVBQVU7QUFrQlo7O0FBaEJFO0lBQ0Usa0JBQWtCO0lBQ2xCLFNBQVM7SUFDVCx1QkFBdUI7SUFDdkIsZUFBZTtJQUNmLFVBQVU7SUFDVixpQ0FBaUM7RUFDbkM7O0FBRUEsaUJBQWlCOztBQUNq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RjtJQUNFLG1CQUFtQjtFQU1yQjs7SUFKRTtNQUNFLFdBQVc7TUFDWCx5QkFBdUM7TUFBdkMsdUNBQXVDO0lBQ3pDOztFQUdGO0lBQ0Usa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxPQUFPO0lBQ1AsZUFBZTtJQUNmLGVBQWU7RUFDakI7O0VBRUE7SUFDRSxnQkFBZ0I7RUFDbEI7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxZQUFZO0lBQ1osaUJBQWlCO0VBQ25COztFQUVBO0lBQ0Usd0JBQXdCO0lBQ3hCLGlCQUFpQjtJQUNqQixnQkFBZ0I7RUFDbEI7O0VBRUE7SUFDRSxhQUFhO0VBQ2Y7O0VBRUE7SUFDRSxjQUFjO0VBQ2hCOztFQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCOztFQUVBOztJQUVFLGdCQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJQUNQLHdCQUF3QjtJQUN4QixlQUFlO0lBQ2YseUJBQXlCO0VBQzNCOztFQUVBO0lBQ0UsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCO0FBQ0Y7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEIiLCJmaWxlIjoiYmFzZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY2FyZWVycy1kZXBhcnRtZW50IC5jYXJlZXJzLWxhbmRpbmctbWF4V2lkdGgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJlZXJzLWRlcGFydG1lbnQtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAzNXB4O1xuICBjb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgei1pbmRleDogMjtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1oZXJvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xufVxuXG4uY2FyZWVycy1zcGxpdERlcGFydG1lbnQge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBmbGV4OiAwIDAgMzAlO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbGV4OiAwIDAgNzAlO1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cblxuLmNhcmVlcnMtZGVwYXJ0bWVudC1zbGlkZXNPdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcmVlcnMtZGVwYXJ0bWVudC1zbGlkZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjZzIGVhc2Utb3V0O1xufVxuXG4uY2FyZWVycy1kZXBhcnRtZW50LXNsaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICYuc2xpZGUtYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbiNjb250cm9scy1kZXBhcnRtZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDM3MHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTA1cHg7XG4gIHotaW5kZXg6IDM7XG5cbiAgLnNsaWRlci1ob3ZlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1vdXQ7XG4gIH1cblxuICAvKiBEZXNrdG9wIG9ubHkgKi9cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgICAuc2xpZGVyLXByZXY6aG92ZXIgKyAuc2xpZGVyLXByZXYtaG92ZXIsXG4gICAgLnNsaWRlci1uZXh0OmhvdmVyICsgLnNsaWRlci1uZXh0LWhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbiNjYXJlZXJzLXNlbGVjdG9yLWVuZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyogT3B0aWNhbCBhZGp1c3RtZW50ICovXG4gIHRvcDogLTVweDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA1MCU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1vdXQ7XG5cbiAgLmNhcmVlcnMtc2VsZWN0b3ItY3VycmVudCB7XG4gICAgY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCA4cHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcblxuICB9XG5cbiAgLmNhcmVlcnMtc2VsZWN0b3Itb3B0aW9ucyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3ItZ3JleTEwMCk7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCA4cHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgfVxuXG4gIC5jYXJlZXJzLXNlbGVjdG9yLW9wdGlvbnMgbGkge1xuXG4gIH1cblxuICAuY2FyZWVycy1zZWxlY3Rvci1vcHRpb25zIGxpOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgLmFycm93RG93bixcbiAgLmFycm93RG93bjpiZWZvcmUsXG4gIC5hcnJvd0Rvd246YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gICYuYWN0aXZlIC5jYXJlZXJzLXNlbGVjdG9yLWN1cnJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWdyZXkxMDApO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICNjYXJlZXJzLXNlbGVjdG9yLWVuZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtZGVwYXJ0bWVudCAuY2FyZWVycy1sYW5kaW5nLW1lbW8uY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLyogQW5pbWF0aW9uICovXG4ubWFzay1kZXBhcnRtZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLWJhY2tncm91bmRBY2NlbnQpO1xuICB6LWluZGV4OiAzO1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2Utb3V0O1xufVxuXG4uc2xpZGUtZmFkZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnNsaWRlcy1tb3ZpbmdJbiB7XG4gIC5tYXNrLWRlcGFydG1lbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLnNsaWRlLWZhZGUge1xuICAgIGFuaW1hdGlvbjogc2xpZGVGYWRlT3V0IDAuM3MgZWFzZS1pbi1vdXQgYm90aDtcbiAgfVxufVxuXG4uc2xpZGVzLW1vdmluZ091dCB7XG4gIC5tYXNrLWRlcGFydG1lbnQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICAuc2xpZGUtZmFkZSB7XG4gICAgYW5pbWF0aW9uOiBzbGlkZUZhZGVJbiAwLjRzIGVhc2UtaW4tb3V0IGJvdGg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUZhZGVPdXQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUZhZGVJbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAjY29udHJvbHMtZGVwYXJ0bWVudCB7XG4gICAgdG9wOiAyNXZ3O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5jYXJlZXJzLWRlcGFydG1lbnQtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuY2FyZWVycy1zcGxpdERlcGFydG1lbnQ6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIH1cblxuICAuY2FyZWVycy1kZXBhcnRtZW50IC5jYXJlZXJzLWxhbmRpbmctbWVtbyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLmNhcmVlcnMtZGVwYXJ0bWVudCAuY2FyZWVycy1wYW5lbC1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gICNjb250cm9scy1kZXBhcnRtZW50IHtcbiAgICB0b3A6IC03NXB4O1xuICAgIHJpZ2h0OiBjYWxjKDUwJSAtIDIwMHB4KTtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0MHB4KSB7XG4gICNjb250cm9scy1kZXBhcnRtZW50IHtcbiAgICByaWdodDogMDtcbiAgfVxufVxuIiwiLmNhcmVlcnMtam9iIC5jYXJlZXJzLWxhbmRpbmctaGVyb0Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmNhcmVlcnMtcGFuZWwtdGV4dC5jYXJlZXJzLXBhbmVsLWpvYiB7XG4gIG1hcmdpbjogLTE0MHB4IGF1dG8gMTAwcHggYXV0bztcblxuICBociB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLXBhbmVsLWpvYkluZm8ge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gIC5jYXJlZXJzLXBhbmVsLWpvYkhlYWRpbmcge1xuICAgIG1hcmdpbjogMCAwIDVweDtcbiAgfVxufVxuXG4uY2FyZWVycy1qb2ItYXNpZGUge1xuICBwYWRkaW5nOiA2MHB4IDgwcHg7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XG5cbiAgLmNhcmVlcnMtam9iLWFzaWRlLWlubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtam9iLWFzaWRlLW1lbW8ge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICB9XG59XG5cbi5jYXJlZXJzLWpvYi1kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTtcblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgfVxuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmNhcmVlcnMtc2xpZGVyTWFza1Nob3J0LmNhcmVlcnMtam9iLXNsaWRlciB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxMjBweCk7XG4gIG1hcmdpbi1sZWZ0OiAtMTIwcHg7XG59XG5cbi5jYXJlZXJzLWdyZWVuSG91c2VGb3JtIGlmcmFtZSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjgwcHg7XG59XG5cbiNhcHBseS1ub3ctc2Nyb2xsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0zNXB4O1xuICBsZWZ0OiA4MHB4O1xuICB3aWR0aDogMzAwcHg7XG59XG5cbi8qIERlc2t0b3AgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5jYXJlZXJzLWpvYi1kZXNjcmlwdGlvbiA+IHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vKiBUYWJsZXQgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyODBweCkgYW5kIChtaW4td2lkdGg6IDkwMXB4KSB7XG4gIC5jYXJlZXJzLWpvYi1hc2lkZSB7XG4gICAgcGFkZGluZzogNDBweCAwIDAgNjBweDtcbiAgfVxufVxuXG4vKiBNb2JpbGUgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5jYXJlZXJzLWpvYi1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC5jYXJlZXJzLXBhbmVsLXRleHQuY2FyZWVycy1wYW5lbC1qb2Ige1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgLmNhcmVlcnMtcGFuZWwtam9iSGVhZGluZyB7XG4gICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuY2FyZWVycy1wYW5lbC1qb2JJbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtam9iLWFzaWRlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuY2FyZWVycy1wYW5lbC1qb2IgLmNhcmVlcnMtc3BsaXQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAuY2FyZWVycy1qb2ItZGVzY3JpcHRpb24gbGkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gIH1cbn1cbiIsIi5jYXJlZXJzLWFsbCAuY2FyZWVycy1ncmlkIHtcbiAgbWFyZ2luLWJvdHRvbTogOTBweDtcblxuICAuY2FyZWVycy1ncmlkLWl0ZW0gLmNhcmVlcnMtZ3JpZC1pdGVtU3VidGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gIH1cblxuICAuY2FyZWVycy1ncmlkLWl0ZW0gLmNhcmVlcnMtZ3JpZC1pdGVtVGl0bGUge1xuICAgIG1hcmdpbjogMjVweCAwIDVweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cblxuLmNhcmVlcnMtYWxsSm9icy1ncm91cCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5jYXJlZXJzLWFsbEpvYnMtZGVwYXJ0bWVudE5hbWUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbn1cblxuLmNhcmVlcnMtYWxsSm9icy1qb2IudS1kaXNwbGF5Tm9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jYXJlZXJzLWFsbEpvYnMtZHJvcGRvd25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0zNXB4O1xuICBsZWZ0OiBjYWxjKDUwJSAtICgxMTcwcHggLyAyKSk7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzO1xufVxuXG4vKiBTZWxlY3RvciBTdHlsZXMgKi9cbi5jYXJlZXJzLXNlbGVjdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cbiAgLmFycm93RG93biB7XG4gICAgdG9wOiAyNXB4O1xuICAgIHJpZ2h0OiAyNXB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuXG4gIC5hcnJvd0Rvd246YmVmb3JlIHtcbiAgICB0b3A6IDIwcHg7XG4gIH1cblxuICAuYXJyb3dEb3duOmFmdGVyIHtcbiAgICB0b3A6IDIwcHg7XG4gIH1cbn1cblxuLmNhcmVlcnMtc2VsZWN0b3ItaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA1cHggMTBweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgei1pbmRleDogMTAwO1xufVxuXG4uY2FyZWVycy1zZWxlY3Rvci1jdXJyZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGhlaWdodDogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgYm94LXNoYWRvdzogMnB4IDJweCA4cHggMnB4IHZhcigtLWN4LWNvbG9yLWRyb3BTaGFkb3cpO1xuICBmb250LXNpemU6IDI0cHg7XG4gIHotaW5kZXg6IDM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNhcmVlcnMtc2VsZWN0b3Itb3B0aW9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMjI1cHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICBib3gtc2hhZG93OiAycHggNnB4IDhweCAycHggdmFyKC0tY3gtY29sb3ItZHJvcFNoYWRvdyk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHotaW5kZXg6IHZhcigtLWN4LXpJbmRleC0xKTtcblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDdweDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3ItZHJvcFNoYWRvdyk7XG4gIH1cbn1cblxuLmNhcmVlcnMtc2VsZWN0b3Itb3B0aW9ucyBsaSB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IHZhcigtLWN4LWNvbG9yLXRleHRTdWJ0bGUpO1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbi5jYXJlZXJzLXNlbGVjdG9yLW9wdGlvbnMgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG59XG5cbi5jYXJlZXJzLXNlbGVjdG9yLW9wdGlvbnMgbGk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY3gtY29sb3ItdGV4dCk7XG59XG5cbi8qIEVycm9yIE1lc3NhZ2UgKi9cbi5jYXJlZXJzLW5vUmVzdWx0cyB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0MjVweCkge1xuICAuY2FyZWVycy1hbGxKb2JzLWRyb3Bkb3ducyB7XG4gICAgbGVmdDogMTIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0MHB4KTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAuY2FyZWVycy1zcGxpdEVxdWFsOmZpcnN0LWNoaWxkIC5jYXJlZXJzLXNlbGVjdG9yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gIH1cblxuICAuY2FyZWVycy1zcGxpdEVxdWFsOmxhc3QtY2hpbGQgLmNhcmVlcnMtc2VsZWN0b3Ige1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5jYXJlZXJzLWFsbCAuY2FyZWVycy1ncmlkIHtcbiAgICAuY2FyZWVycy1ncmlkLWl0ZW0gLmNhcmVlcnMtZ3JpZC1pdGVtU3VidGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5jYXJlZXJzLWdyaWQtaXRlbSAuY2FyZWVycy1ncmlkLWl0ZW1UaXRsZSB7XG4gICAgICBtYXJnaW46IDVweCAwO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJlZXJzLWFsbCAuY2FyZWVycy1hbGxKb2JzLWRlcGFydG1lbnROYW1lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cblxuICAuY2FyZWVycy1hbGxKb2JzLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtc2VsZWN0b3Ige1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmFycm93RG93biB7XG4gICAgICB0b3A6IDE3cHg7XG4gICAgfVxuICB9XG5cbiAgLmNhcmVlcnMtc2VsZWN0b3ItY3VycmVudCB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBoZWlnaHQ6IDU4cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgLmNhcmVlcnMtc3BsaXRFcXVhbDpmaXJzdC1jaGlsZCAuY2FyZWVycy1zZWxlY3RvciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWFsbEpvYnMtZHJvcGRvd25zIHtcbiAgICBib3R0b206IC02OHB4O1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuXG4gICAgLmNhcmVlcnMtc3BsaXQge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuY2FyZWVycy1zZWxlY3Rvci1vcHRpb25zIGxpIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWFsbEpvYnMtZGVwYXJ0bWVudE5hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiIsIi8qIEJ1dHRvbnMgKi9cbi5jYXJlZXJzLWxhbmRpbmctaGVyb0J1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWN4LWZvbnQtd2VpZ2h0UmVndWxhcik7XG5cbiAgLmJ1dHRvbi1ob3Zlci1pbm5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgfVxufVxuXG4uY2FyZWVycy1sYW5kaW5nLWhlcm8gLmNhcmVlcnMtbGFuZGluZy1idXR0b24uY2FyZWVycy1sYW5kaW5nLURFSS1idXR0b24ge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAuYnV0dG9uLWhvdmVyLWlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5hcnJvdyB7XG4gICAgICB0b3A6IDM1cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICB9XG5cbiAgICAuYXJyb3c6YmVmb3JlLFxuICAgIC5hcnJvdzphZnRlciB7XG4gICAgICBsZWZ0OiAxMXB4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIG1pbi13aWR0aDogZml0LWNvbnRlbnQ7XG4gIH1cbn1cblxuLyogSW1hZ2VzICovXG4uY2FyZWVycy1sYW5kaW5nLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLXZpZGVvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYgPiB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uY2FyZWVycy1sYW5kaW5nLWltYWdlUmVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogODAlO1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLWltYWdlVGFsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMTEwJTtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1pbWFnZVNxdWFyZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbn1cblxuLmNhcmVlcnMtc2xpZGVyTWFzayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxMjAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2FyZWVycy1zbGlkZXJNYXNrU2hvcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogODAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2FyZWVycy1zbGlkZXJNYXNrLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGVhc2Utb3V0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5jYXJlZXJzLXNsaWRlck1hc2staW1hZ2Uuc2xpZGUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY2FyZWVycy1zbGlkZXJNYXNrLWltYWdlLnNsaWRlLWluYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAxO1xufVxuXG4uY2FyZWVycy1zbGlkZXJNYXNrLXVuZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNjYlO1xuICBtYXgtd2lkdGg6IDMxMHB4O1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLXRlbmV0cy1tb2R1bGUge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBUZW5ldHMgKi9cbi5jYXJlZXJzLXRlbmV0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNhcmVlcnMtaG9yaXpvbnRhbC10ZW5ldCB7XG4gICAgbWF4LXdpZHRoOiAzMjBweDtcblxuICAgIC5jYXJlZXJzLWhvcml6b250YWwtdGVuZXQtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG5cbiAgICAuY2FyZWVycy10ZW5ldC10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1jeC1zcGFjaW5nLTR4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWN4LXNwYWNpbmctMngpO1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgfVxuXG4gICAgcCBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbi5jYXJlZXJzLXRlbmV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5jYXJlZXJzLXRlbmV0LW91dGVyIHtcbiAgLyogbWFyZ2luLXRvcDogNDBweDsgKi9cbn1cblxuLmNhcmVlcnMtdGVuZXQtdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJlZXJzLXRlbmV0LWlubmVyIHAgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmNhcmVlcnMtdGVuZXQtaW5uZXIgcCBhOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWN4LWNvbG9yLW9uRGFya1RleHRTdWJ0bGUpO1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLW1lbW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogNzAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctbWVtb0hlYWRpbmcge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMS4yZW07XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctbWVtb0JvdHRvbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG4vKiBWaWRlbyAqL1xuLmNhcmVlcnMtdmlkZW9QbGF5ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY2FyZWVycy12aWRlb1BsYXllciBpZnJhbWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY2FyZWVycy12aWRlb1BsYXllci1jb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZy10b3A6IDI1JTtcbiAgcGFkZGluZy1ib3R0b206IDI1JTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY2FyZWVycy12aWRlb1BsYXllci1jb3ZlcklubmVyIHtcbiAgcGFkZGluZzogMCA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG59XG5cbi5jYXJlZXJzLXZpZGVvUGxheWVyIC5jYXJlZXJzLXNwbGl0VG9HdXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG59XG5cbi5jYXJlZXJzLWxpZ2h0Ym94IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDExMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbn1cblxuLmNhcmVlcnMtdmlkZW9XcmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmNhcmVlcnMtdmlkZW9XcmFwcGVyIHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDkwcHg7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1vbkRhcmtUZXh0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiB2YXIoLS1jeC16SW5kZXgtMSk7XG59XG5cbi5jYXJlZXJzLXZpZGVvV3JhcHBlciBpZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmNhcmVlcnMtY2xvc2UtaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDMwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG5cbi5jYXJlZXJzLXZpZGVvLXBsYXlCdXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA2cHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGZpbGw6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbn1cblxuLyogT2ZmaWNlcyAqL1xuLmNhcmVlcnMtb2ZmaWNlcy1zbGljayB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAyNDBweCk7XG4gIG1hcmdpbi1sZWZ0OiAtMTIwcHg7XG59XG5cbi5jYXJlZXJzLW9mZmljZXMtc2xpY2tTbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICBtYXJnaW4tbGVmdDogMnB4O1xufVxuXG4uY2FyZWVycy1vZmZpY2VzLXNsaWNrIC5zbGljay10cmFjayB7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xufVxuXG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIGltZyxcbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUgc3BhbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xufVxuXG4uY2FyZWVycy1vZmZpY2VzLXNsaWNrU2xpZGUgaW1nIHtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNhcmVlcnMtb2ZmaWNlcyAuc2xpZGVyLXByb2dyZXNzIGJ1dHRvbjpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5jYXJlZXJzLW9mZmljZS1uYW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDIwcHggMCAxMHB4IDIwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogUHJvbW90aW9uIE1vZHVsZSAqL1xuLmNhcmVlcnMtbGFuZGluZy1wcm9tb3Rpb25Nb2R1bGUge1xuICBib3gtc2hhZG93OiAycHggMnB4IDJweCAycHggdmFyKC0tY3gtY29sb3ItZHJvcFNoYWRvdyk7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uTW9kdWxlIC5jYXJlZXJzLWxhbmRpbmctbWVtb0JvdHRvbSB7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogNDZweDtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uTW9kdWxlIC5jYXJlZXJzLXNwbGl0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiA1JTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0NSUgMXB4IDQ1JTtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1wcm9tb3Rpb25Nb2R1bGUgLmNhcmVlcnMtZ2FwTGluZSB7XG4gIGhlaWdodDogMzk0cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1wcm9tb3Rpb25Nb2R1bGUgLmNhcmVlcnMtbGFuZGluZy1idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uTW9kdWxlIC5jYXJlZXJzLWxhbmRpbmctY29udGVudENvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMzQ2cHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uSm9pbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uTW9kdWxlIC5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uQnV0dG9uIHtcbiAgbWF4LXdpZHRoOiAzNDZweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW4tdG9wOiAzNXB4O1xuICBsaW5lLWhlaWdodDogNjBweDtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLXByb21vdGlvbkJ1dHRvbiAuYXJyb3cge1xuICB3aWR0aDogMTJweDtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1wcm9tb3Rpb25CdXR0b24gLmJ1dHRvbi1ob3Zlci1pbm5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uQnV0dG9uIC5hcnJvdzpiZWZvcmUsXG4uY2FyZWVycy1sYW5kaW5nLXByb21vdGlvbkJ1dHRvbiAuYXJyb3c6YWZ0ZXIge1xuICBsZWZ0OiA4cHg7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuLm1hc2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3ItYmFja2dyb3VuZEFjY2VudCk7XG4gIHotaW5kZXg6IDUwO1xuICB0cmFuc2l0aW9uOiAxLjJzO1xufVxuXG4ubWFza1doaXRlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB0cmFuc2l0aW9uOiAxLjBzO1xufVxuXG4ubWFza0JsYWNrIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xufVxuXG4uc2Nyb2xsZWQgLm1hc2sge1xuICB3aWR0aDogMDtcbn1cblxuLnNjcm9sbGVkIC5tYXNrVXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4uc2Nyb2xsZWQgLmNhcmVlcnMtcGFuZWwtdGV4dCAubWFza1VwIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4zcztcbn1cblxuLnRyYW5zaXRpb24tZmFkZVVwIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cblxuLnRyYW5zaXRpb24tZmFkZVVwU2xvdyB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7XG59XG5cbi5zY3JvbGxlZCAudHJhbnNpdGlvbi1mYWRlVXAsXG4uc2Nyb2xsZWQgLnRyYW5zaXRpb24tZmFkZVVwU2xvdyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnNjcm9sbGVkIC5jYXJlZXJzLWxhbmRpbmctaGVyb1N0YXRlbWVudDpudGgtY2hpbGQoMikge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG4uc2Nyb2xsZWQgLmNhcmVlcnMtbGFuZGluZy1oZXJvU3RhdGVtZW50Om50aC1jaGlsZCgzKSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuNHM7XG59XG5cbi5zY3JvbGxlZCAuY2FyZWVycy10ZW5ldDpudGgtY2hpbGQoMikge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xufVxuXG4uc2Nyb2xsZWQgLmNhcmVlcnMtdGVuZXQ6bnRoLWNoaWxkKDMpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS4wcztcbn1cblxuLnNjcm9sbGVkIC5jYXJlZXJzLWxhbmRpbmctbWVtb1RleHQge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG4uc2Nyb2xsZWQgLmNhcmVlcnMtdGV4dE1vYmlsZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG59XG5cbi8qIEtleWZyYW1lcyAqL1xuQGtleWZyYW1lcyBhcnJvd1NodWZmbGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYXJyb3dTaHVmZmxlT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi8qIERlc2t0b3AgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5jYXJlZXJzLXRlbmV0LWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtcGFkTGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtcGFkUmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cblxuICAuY2FyZWVycy1zcGxpdFNoaWZ0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTEyMHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1tZW1vSW5kZW50IHtcbiAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctbW9kdWxlQnVtcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxuXG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGU6aG92ZXIgc3BhbixcbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZTpob3ZlciBpbWcge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIC5jYXJlZXJzLWN0YTpob3ZlciAuYXJyb3cge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuXG4gIC5jYXJlZXJzLWN0YTpob3ZlciAuY2FyZWVycy1jdGEtdGV4dCB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG5cbi8qIFRhYmxldCAqL1xuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjgwcHgpIGFuZCAobWluLXdpZHRoOiA5MDFweCkge1xuICAuY2FyZWVycy10ZW5ldC1pbm5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4vKiBNb2JpbGUgKi9cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmNhcmVlcnMtbGFuZGluZy1tZW1vIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDQwcHggYXV0bztcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctbWVtb0JvdHRvbSB7XG4gICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmNhcmVlcnMtdGVuZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLXZpZGVvIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgJiA+IC5jYXJlZXJzLWxhbmRpbmctaW1hZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNhcmVlcnMtdmlkZW9QbGF5ZXIge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIC5jYXJlZXJzLXZpZGVvUGxheWVyLWNvdmVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG4gIH1cblxuICAuY2FyZWVycy1vZmZpY2VzLXNsaWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5jYXJlZXJzLW9mZmljZXMtc2xpY2tTbGlkZSBpbWcge1xuICAgIG1heC13aWR0aDogODB2dztcbiAgfVxuXG4gIC5jYXJlZXJzLXZpZGVvV3JhcHBlciBpZnJhbWUge1xuICAgIHBhZGRpbmc6IDIwMHB4IDA7XG4gIH1cblxuICAvKiBQcm9tb3Rpb24gTW9kdWxlICovXG4gIC5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uTW9kdWxlIC5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uQnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogdW5zZXQ7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLXByb21vdGlvbk1vZHVsZSAuY2FyZWVycy1sYW5kaW5nLW1lbW9Cb3R0b20ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLXByb21vdGlvbk1vZHVsZSAuY2FyZWVycy1zcGxpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLXByb21vdGlvbkFnZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uTW9kdWxlIC5jYXJlZXJzLWxhbmRpbmctY29udGVudENvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctcHJvbW90aW9uSm9pbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDhweCkge1xuICAudWMtZ2xvYmFsSGVhZGVyLWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAxN3B4IDA7XG4gIH1cblxuICAudWMtZ2xvYmFsSGVhZGVyLWxvZ290eXBlIHtcbiAgICBtYXJnaW46IDIxcHggMjBweCAyMXB4IDA7XG4gICAgd2lkdGg6IDEzNHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgfVxuXG4gIC5jb25zdW1lckZvb3Rlci13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogMTE3MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgLmNhcmVlcnMtbGFuZGluZy12aWRlbyB7XG4gICAgJiA+IHZpZGVvIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZWVycy1sYW5kaW5nIHtcbiAgLmNhcmVlcnMtbGFuZGluZy10ZW5ldHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcblxuICAgIC5jYXJlZXJzLWxhbmRpbmctbWVtbyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1qb2JzLW1vZHVsZSB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcblxuICAgIC5jYXJlZXJzLWxhbmRpbmctbWVtbyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1N3B4O1xuICAgIH1cbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctbGluay1tb2R1bGUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctY3RhLWFycm93IHtcbiAgICBib3R0b206IC0xMzdweDtcbiAgICBsZWZ0OiA1NyU7XG4gIH1cbn1cblxuLmNhcmVlcnMtb2ZmaWNlLWdhbGxlcnkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTIwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICBvcGFjaXR5OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5jbG9zZUJ0bi5hbmltSW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2Utb3V0O1xuICB9XG5cbiAgLmNsb3NlQnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMnB4O1xuICAgIHJpZ2h0OiAzMnB4O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZShcbiAgICAgIDQ1ZGVnXG4gICAgKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAyNXB4IDI1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xuICB9XG5cbiAgLmNsb3NlQnRuIC5saW5lLmEge1xuICAgIHRvcDogMjVweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDVzO1xuICB9XG5cbiAgLmNsb3NlQnRuIC5saW5lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAxMHB4IDAgMCAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB9XG5cbiAgLmNsb3NlQnRuIC5saW5lLmIge1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIC5jYXJlZXJzLW9mZmljZXMtZ2FsbGVyeS1zbGljayB7XG4gICAgbWFyZ2luLXRvcDogMTV2aDtcbiAgfVxuXG4gIC5zbGlkZXItY29udHJvbHMtY29udGFpbmVyIHtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHJvdy1nYXA6IDYwcHg7XG5cbiAgICA+IGRpdiB7XG4gICAgICBtYXJnaW46IDAgMzJweDtcbiAgICAgIG1heC13aWR0aDogMTA1MHB4O1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgaGVpZ2h0OiA2MHZoO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cblxuICAuc2xpZGVyLXByb2dyZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ncmV5OTApO1xuICB9XG5cbiAgLmNhcmVlcnMtb2ZmaWNlcy1zbGlja1NsaWRlIGltZyB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLW9mZmljZS1uYW1lIHtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB9XG59XG4iLCIubm9Kb2JTZWN0aW9uIHtcbiAgcGFkZGluZzogMTAwcHggMDtcbn1cblxuLm5vSm9iQ29udGFpbmVyIHtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jeC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLnNlYXJjaFR5cGVhaGVhZCB7XG4gIC5zZWFyY2hUeXBlYWhlYWQtcGxhY2Vob2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjdweDtcbiAgfVxuXG4gIC5zZWFyY2hUeXBlYWhlYWQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB9XG5cbiAgLnNlYXJjaFR5cGVhaGVhZC10aXBzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDU3cHg7XG4gICAgaGVpZ2h0OiA2N3B4O1xuICAgIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1ncmV5NzApO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogNjdweDtcbiAgfVxuXG4gICYuZm9jdXNlZCB7XG4gICAgLnNlYXJjaFR5cGVhaGVhZC10aXBzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMyMHB4O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDY1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1jeC1mb250LWZhbWlseVNhbnMpO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDI0cHggY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVGtpSUdobGFXZG9kRDBpTVRraUlIWnBaWGRDYjNnOUlqQWdNQ0F4T1NBeE9TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRFNExqQXpNRE1nTVRZdU9UWTVOVXd4T0M0d016QXpJREUyTGprMk9UVkRNVGd1TXpJek1pQXhOeTR5TmpJMElERTRMak15TXpJZ01UY3VOek0zTXlBeE9DNHdNekEwSURFNExqQXpNREpETVRjdU56TTNOU0F4T0M0ek1qTXhJREUzTGpJMk1qWWdNVGd1TXpJek1pQXhOaTQ1TmprM0lERTRMakF6TUROTU1USXVPRFkxTmlBeE15NDVNamRETVRFdU5qVXpOaUF4TkM0NE1qSXhJREV3TGpFMU5EUWdNVFV1TXpVeE15QTRMalV6TWpJM0lERTFMak0xTVRORE5DNDFNREF4TmlBeE5TNHpOVEV6SURFdU1qTXhNVFlnTVRJdU1EZ3pJREV1TWpNeE1UWWdPQzR3TlRFeE1VTXhMakl6TVRFMklEUXVNREU0TlRJZ05DNDBPVGs1T1NBd0xqYzFJRGd1TlRNeU1qY2dNQzQzTlVNeE1pNDFOalExSURBdU56VWdNVFV1T0RNek5DQTBMakF4T0RVeUlERTFMamd6TXpRZ09DNHdOVEV4TVVNeE5TNDRNek0wSURrdU9URTVPVElnTVRVdU1UTXdPQ0F4TVM0Mk1qVXhJREV6TGprM05UY2dNVEl1T1RFMk0wd3hPQzR3TXpBeklERTJMamsyT1RWYVRURTBMak16TXpRZ09DNHdOVEV4TVVNeE5DNHpNek0wSURRdU9EUTJPVGdnTVRFdU56TTJNaUF5TGpJMUlEZ3VOVE15TWpjZ01pNHlOVU0xTGpNeU9ETTRJREl1TWpVZ01pNDNNekV4TmlBMExqZzBOams0SURJdU56TXhNVFlnT0M0d05URXhNVU15TGpjek1URTJJREV4TGpJMU5EUWdOUzR6TWpnME55QXhNeTQ0TlRFeklEZ3VOVE15TWpjZ01UTXVPRFV4TTBNeE1TNDNNell4SURFekxqZzFNVE1nTVRRdU16TXpOQ0F4TVM0eU5UUTBJREUwTGpNek16UWdPQzR3TlRFeE1Wb2lJR1pwYkd3OUltSnNZV05ySWlCemRISnZhMlU5SW1Kc1lXTnJJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqQXVOU0l2UGdvOEwzTjJaejRLKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE3cHggMTdweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgfVxuXG4gIGlucHV0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3ItZ3JleTcwKTtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cblxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMzM1cHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1jeC1mb250LWZhbWlseVNhbnMpO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3ItZ3JleTgwKTtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBoZWlnaHQ6IDY3cHg7XG4gICAgICBsaW5lLWhlaWdodDogNjdweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgbGk6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsdWU4MCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ncmV5MjApO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgaW5wdXQsXG4gICAgdWwge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cblxuICAgICYuZm9jdXNlZCB7XG4gICAgICAuc2VhcmNoVHlwZWFoZWFkLXRpcHMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICBpbnB1dCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tb2JpbGUge1xuICAgIC5zZWFyY2hUeXBlYWhlYWQtcGxhY2Vob2xkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgfVxuXG4gICAgLnNlYXJjaFR5cGVhaGVhZC10aXBzIHtcbiAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDE1cHggY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UWWlJR2hsYVdkb2REMGlNVFlpSUhacFpYZENiM2c5SWpBZ01DQXhOaUF4TmlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ1pEMGlUVFl1TWpnMElERXVNek16UVRVdU5qSTBJRFV1TmpJMElEQWdNQ0F3SUM0Mk5qY2dOaTQ1TlRGaE5TNDJNalFnTlM0Mk1qUWdNQ0F3SURBZ05TNDJNVGNnTlM0Mk1UZGpNUzR4T0NBd0lESXVNamMyTFM0ek5qY2dNeTR4T0MwdU9Ua3liRE11TnpVNElETXVOelUzSURFdU5EUTFMVEV1TkRRMExUTXVOelU0TFRNdU56VTRZeTQyTWpVdExqa3dOQzQ1T1RNdE1pQXVPVGt6TFRNdU1UaGhOUzQyTWpRZ05TNDJNalFnTUNBd0lEQXROUzQyTVRndE5TNDJNVGg2YlRBZ01pNHdORE5CTXk0MU56a2dNeTQxTnprZ01DQXdJREVnT1M0NE5pQTJMamsxTVdFekxqVTNPU0F6TGpVM09TQXdJREFnTVMwekxqVTNOU0F6TGpVM05VRXpMalUzT1NBekxqVTNPU0F3SURBZ01TQXlMamN4SURZdU9UVmhNeTQxTnprZ015NDFOemtnTUNBd0lERWdNeTQxTnpVdE15NDFOelY2SWlCbWFXeHNQU0ppYkdGamF5SWdMejRLUEM5emRtYyspO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHg7XG4gICAgfVxuXG4gICAgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1ncmV5NzApO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgbGkge1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCAnLi9kZXBhcnRtZW50L2RlcGFydG1lbnQuY3NzJztcbkBpbXBvcnQgJy4vam9icy9qb2IuY3NzJztcbkBpbXBvcnQgJy4vam9icy9qb2JzLmNzcyc7XG5AaW1wb3J0ICcuL2xhbmRpbmcvbGFuZGluZy5jc3MnO1xuQGltcG9ydCAnLi9qb2JzL25vX2pvYi5jc3MnO1xuQGltcG9ydCAnLi9yZWFjdC9jb21wb25lbnRzL1NlYXJjaFR5cGVhaGVhZC9TZWFyY2hUeXBlYWhlYWQuY3NzJztcblxuLyogVGhpcyBydWxlIGZpeGVzIGFuIGlzc3VlIHdpdGggSUUxMSBvbiBXaW5kb3dzIDcsIHdoZXJlIHRoZSBwYWdlIGJlY29tZXMgdW5yZXNwb25zaXZlIGFmdGVyXG4gICBjbGlja2luZyBvbiBhbiBlbGVtZW50IGNvbnRhaW5pbmcgYSB1c2UgdGFnLCBhbmQgcmVtb3ZpbmcgdGhhdCBlbGVtZW50IGZyb20gdGhlIERPTVxuaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yOTE0OTE3NC9jbGljay1ldmVudHMtc3RvcC13b3JraW5nLWFmdGVyLXJlcGxhY2luZy1hdHRyaWJ1dGUtb2YtdXNlLWVsZW1lbnQtaW4tc3ZnLXdcbmh0dHBzOi8vY29ubmVjdC5taWNyb3NvZnQuY29tL0lFL2ZlZWRiYWNrL2RldGFpbHMvNzk2NzQ1L21vdXNlLWV2ZW50cy1hcmUtbm90LWRlbGl2ZXJlZC1hdC1hbGwtYW55bW9yZS13aGVuLWluc2lkZS1hbi1zdmctYS11c2UtaXMtcmVtb3ZlZC1mcm9tLXRoZS1kb21cbiAqL1xudXNlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBjeCBvdmVyd3JpdGVzICovXG4uY3gtbWFpbkxheW91dCB7XG4gIC8qIFByZXZlbnRzIHdoaXRlIGNvbG9yYmxvY2sgbmVhciBmb290ZXIgb24gZGVwYXJ0bWVudCBwYWdlcyAqL1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyogTGFuZGluZyAvIEdsb2JhbCAqL1xuLyogVE9ETzogUHJvcGVybHkgbmFtZXNwYWNlIGFuZCBjb25zb2xpZGF0ZSB3aGVuIGFsbCBuZXcgcGFnZXMgYXJlIGxhdW5jaGVkXG5cbi8qIFR5cGUgKi9cbi5jYXJlZXJzLWxhbmRpbmcsXG4uY2FyZWVycy1kZXBhcnRtZW50LFxuLmNhcmVlcnMtam9iLFxuLmNhcmVlcnMtYWxsIHtcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0UmVndWxhcik7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiA2NXB4O1xuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogNDRweDtcbiAgfVxuXG4gIGg0IHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gIH1cblxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgfVxuXG4gIHVsIHtcbiAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIGhyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLmNhcmVlcnMtaGlkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTAwMDBweDtcbiAgbGVmdDogLTEwMDAwcHg7XG59XG5cbi8qIEhlcm8gQmFubmVyICovXG4uY2FyZWVycy1sYW5kaW5nLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEyMHB4O1xuICBtaW4taGVpZ2h0OiA1MHZoO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuXG4gICYuY2FyZWVycy1sYW5kaW5nLWhlcm9CbGFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICB9XG5cbiAgJi5jYXJlZXJzLWxhbmRpbmctaGVyb1Nob3J0IHtcbiAgICBtaW4taGVpZ2h0OiA0NXZoO1xuICAgIGNvbG9yOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB9XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctaGVyb1RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAzO1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLWhlcm9TdWJ0aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctaGVyb1RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjgwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgei1pbmRleDogMztcblxuICBoMiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICB9XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctaGVyb0Rlc2NyaXB0aW9uIHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS40ZW07XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctdW5kZXJsaW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuXG4gICYuY2FyZWVycy1sYW5kaW5nLXVuZGVybGluZUJsYWNrIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICB9XG59XG5cbi5jYXJlZXJzLWxpbms6Zm9jdXMge1xuICBvdXRsaW5lOiBhdXRvO1xufVxuXG4uZmxleC1jZW50ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNhcmVlcnMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNjUpO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLWhlcm9TdGF0ZW1lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogMztcbn1cblxuLmNhcmVlcnMtaGVyby1idXR0b25Nb2JpbGUge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIEJ1dHRvbnMgKi9cbi5jYXJlZXJzLWxhbmRpbmctY3RhLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0zM3B4O1xuICBsZWZ0OiA2MCU7XG4gIHdpZHRoOiA2NnB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNzBweCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgYm94LXNoYWRvdzogMnB4IDJweCA4cHggMnB4IHZhcigtLWN4LWNvbG9yLWRyb3BTaGFkb3cpO1xuICB6LWluZGV4OiAzO1xufVxuXG4uYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjhweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDFweCAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgei1pbmRleDogMztcbn1cblxuLmFycm93OmJlZm9yZSxcbi5hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDI2cHg7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG59XG5cbi5hcnJvdzpiZWZvcmUge1xuICB0b3A6IDRweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xufVxuXG4uYXJyb3c6YWZ0ZXIge1xuICB0b3A6IDFweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctYnV0dG9uQmxhY2sge1xuICAuYXJyb3csXG4gIC5hcnJvdzpiZWZvcmUsXG4gIC5hcnJvdzphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB9XG59XG5cbi5hcnJvd0Rvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAycHg7XG4gIGhlaWdodDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDFweCAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2Utb3V0O1xuICB6LWluZGV4OiAzO1xufVxuXG4uYXJyb3dEb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjlweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLW91dDtcbn1cblxuLmFycm93RG93bjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjlweDtcbiAgbGVmdDogLTRweDtcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLW91dDtcbn1cblxuLmNhcmVlcnMtY3RhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLmNhcmVlcnMtY3RhIC5jYXJlZXJzLWN0YS10ZXh0LFxuLmNhcmVlcnMtY3RhIC5hcnJvdyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xufVxuXG4uY2FyZWVycy1jdGEtdGV4dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG59XG5cbi5jYXJlZXJzLWN0YSAuYXJyb3cge1xuICB0b3A6IDlweDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgNDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICBib3gtc2hhZG93OiAycHggMnB4IDhweCAycHggdmFyKC0tY3gtY29sb3ItZHJvcFNoYWRvdyk7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgei1pbmRleDogMztcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1idXR0b25XaWR0aEZpeGVkIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLWJ1dHRvbkJsYWNrIHtcbiAgY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xuXG4gIC5idXR0b24taG92ZXItaW5uZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG4gIH1cbn1cblxuLmNhcmVlcnMtbGFuZGluZy1oZXJvIC5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0zNXB4O1xuICBsZWZ0OiBjYWxjKDUwJSArIDQwcHgpO1xuICB3aWR0aDogY2FsYyg1MCUgLSAyMjBweCk7XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIC5hcnJvdyB7XG4gIHRvcDogMTNweDtcbiAgcmlnaHQ6IDJweDtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1jdGEtYXJyb3cgLmFycm93RG93biB7XG4gIHRvcDogMTlweDtcbiAgbGVmdDogMzJweDtcbn1cblxuLmNhcmVlcnMtbGFuZGluZy1idXR0b24gLmFycm93RG93biB7XG4gIHRvcDogNXB4O1xuICByaWdodDogMTBweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLWJ1dHRvbiAuYXJyb3dEb3duOmJlZm9yZSxcbi5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIC5hcnJvd0Rvd246YWZ0ZXIge1xuICB0b3A6IDE5cHg7XG59XG5cbi8qIEJ1dHRvbiBIb3ZlcnMgKi9cbi5idXR0b24taG92ZXItaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gIHotaW5kZXg6IDM7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi5idXR0b24taG92ZXJJbiAuYnV0dG9uLWhvdmVyLWlubmVyIHtcbiAgY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbn1cblxuLmJ1dHRvbi1ob3ZlciAuYXJyb3csXG4uYnV0dG9uLWhvdmVyIC5hcnJvdzpiZWZvcmUsXG4uYnV0dG9uLWhvdmVyIC5hcnJvdzphZnRlcixcbi5idXR0b24taG92ZXIgLmFycm93RG93bixcbi5idXR0b24taG92ZXIgLmFycm93RG93bjpiZWZvcmUsXG4uYnV0dG9uLWhvdmVyIC5hcnJvd0Rvd246YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLW91dDtcbn1cblxuLmJ1dHRvbi1ob3ZlckluIC5hcnJvd0Rvd24ge1xuICBhbmltYXRpb246IGFycm93U2h1ZmZsZSAwLjZzIGJvdGg7XG59XG5cbi5idXR0b24taG92ZXJPdXQgLmFycm93RG93biB7XG4gIGFuaW1hdGlvbjogYXJyb3dTaHVmZmxlT3V0IDAuNnMgYm90aDtcbn1cblxuLmJ1dHRvbi1ob3ZlckluIC5hcnJvdyxcbi5idXR0b24taG92ZXJJbiAuYXJyb3c6YmVmb3JlLFxuLmJ1dHRvbi1ob3ZlckluIC5hcnJvdzphZnRlcixcbi5idXR0b24taG92ZXJJbiAuYXJyb3dEb3duLFxuLmJ1dHRvbi1ob3ZlckluIC5hcnJvd0Rvd246YmVmb3JlLFxuLmJ1dHRvbi1ob3ZlckluIC5hcnJvd0Rvd246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG59XG5cbi5idXR0b24taG92ZXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ncmV5MTAwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1vdXQ7XG59XG5cbi5idXR0b24taG92ZXItYmxhY2suYnV0dG9uLWhvdmVyOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xufVxuXG4uYnV0dG9uLWhvdmVyLmNhcmVlcnMtbGFuZGluZy1jdGEtYXJyb3c6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cblxuLmJ1dHRvbi1ob3ZlcldoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xufVxuXG4uYnV0dG9uLWhvdmVyLmJ1dHRvbi1ob3ZlckluOmFmdGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYnV0dG9uLWhvdmVyLmJ1dHRvbi1ob3Zlck91dDphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xufVxuXG4uYnV0dG9uLWhvdmVyLWx0cjphZnRlciB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5idXR0b24taG92ZXItbHRyLmJ1dHRvbi1ob3ZlckluOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5idXR0b24taG92ZXItbHRyLmJ1dHRvbi1ob3Zlck91dDphZnRlciB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4vKiBTcGxpdCBDb2x1bW4gKi9cbi5jYXJlZXJzLXNwbGl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2FyZWVycy1zcGxpdEVxdWFsIHtcbiAgZmxleDogMCAwIDUwJTtcbn1cblxuLmNhcmVlcnMtc3BsaXRSb3cge1xuICBtYXJnaW46IDAgLTEwMHB4O1xufVxuXG4uY2FyZWVycy1zcGxpdENvbHVtbiB7XG4gIGZsZXg6IDAgMCA1MCU7XG59XG5cbi5jYXJlZXJzLXNwbGl0Q29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogNDBweDtcbn1cblxuLmNhcmVlcnMtc3BsaXRDb2x1bW46bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbn1cblxuLmNhcmVlcnMtc3BsaXRGb3VydGg6Zmlyc3QtY2hpbGQge1xuICBmbGV4OiAwIDAgNzUlO1xufVxuXG4uY2FyZWVycy1zcGxpdEZvdXJ0aDpsYXN0LWNoaWxkIHtcbiAgZmxleDogMCAwIDI1JTtcbn1cblxuLmNhcmVlcnMtc3BsaXRMZWZ0IHtcbiAgcGFkZGluZzogMCA0MHB4O1xuICBmbGV4OiAwIDAgNjAlO1xufVxuXG4uY2FyZWVycy1zcGxpdFJpZ2h0IHtcbiAgcGFkZGluZzogMCA0MHB4O1xuICBmbGV4OiAwIDAgNDAlO1xufVxuXG4uY2FyZWVycy1zcGxpdFBhbmVsOmZpcnN0LWNoaWxkIHtcbiAgZmxleDogMCAwIDU1JTtcbn1cblxuLmNhcmVlcnMtc3BsaXRQYW5lbDpsYXN0LWNoaWxkIHtcbiAgZmxleDogMCAwIDQ1JTtcbn1cblxuLmNhcmVlcnMtc3BsaXRUb0d1dHRlciB7XG4gIC8qIEV4dGVuZHMgdGhyb3VnaCBndXR0ZXIgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogY2FsYygxMDAlICsgMTIwcHgpO1xufVxuXG4uY2FyZWVycy1zcGxpdFRvR3V0dGVyU21hbGwge1xuICAvKiBFeHRlbmRzIHRocm91Z2ggZ3V0dGVyICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDEyMHB4KTtcbn1cblxuLyogR2VuZXJpYyBNb2R1bGVzICovXG4uY2FyZWVycy1sYW5kaW5nLW1vZHVsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTAwcHggMTIwcHg7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctbWF4V2lkdGgge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiB2YXIoLS1jeC1maXhlZFBhZ2VXaWR0aCk7XG59XG5cbi5jYXJlZXJzLWxhbmRpbmctbW9kdWxlR3JleSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLWJhY2tncm91bmRBY2NlbnQpO1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLW1vZHVsZUJsYWNrIHtcbiAgY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xufVxuXG4vKiBMaXN0ICsgR3JpZCAqL1xuXG4uY2FyZWVycy1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ3JpZC1nYXA6IDAgNTBweDtcblxuICAmLmNhcmVlcnMtZ3JpZFRoaXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgIGdyaWQtZ2FwOiAxMHB4IDQwcHg7XG4gIH1cbn1cblxuLmNhcmVlcnMtZ3JpZC1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLW91dDtcblxuICAmLnUtZGlzcGxheU5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuY2FyZWVycy1ncmlkLWl0ZW1UaXRsZSB7XG4gICAgbWFyZ2luOiAzNXB4IDAgNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgfVxuXG4gIC5jYXJlZXJzLWdyaWQtaXRlbVRpdGxlIC5jYXJlZXJzLWdyaWQtaXRlbVRpdGxlU21hbGwge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWdyaWQtaXRlbVN1YnRpdGxlIHtcbiAgICBtYXJnaW46IDAgMCAzNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcbiAgfVxufVxuXG4uY2FyZWVycy1maWx0ZXIgLmNhcmVlcnMtZ3JpZC1pdGVtLnUtZGlzcGxheU5vbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY2FyZWVycy1sYW5kaW5nLW1vZHVsZUJsYWNrIC5jYXJlZXJzLWdyaWQtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG4gIGNvbG9yOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG59XG5cbi8qIFBhbmVsICovXG4uY2FyZWVycy1wYW5lbC1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY2FyZWVycy1wYW5lbC1pbWFnZU92ZXJmbG93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDQwcHg7XG4gIGxlZnQ6IDQwcHg7XG4gIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDgwcHgpO1xuICBtYXgtd2lkdGg6IDU4MHB4O1xuICBoZWlnaHQ6IGNhbGMoMTAwJSArIDEwMHB4KTtcbn1cblxuLmNhcmVlcnMtcGFuZWwtdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB6LWluZGV4OiAzO1xufVxuXG4uY2FyZWVycy1wYW5lbC10ZXh0SW5uZXIge1xuICBwYWRkaW5nOiA2MHB4O1xufVxuXG4uY2FyZWVycy1wYW5lbC10ZXh0IC5jYXJlZXJzLXBhbmVsLWNpdHkge1xuICBtYXJnaW46IDAgMCAyNXB4O1xufVxuXG4uY2FyZWVycy1wYW5lbC10ZXh0IC5jYXJlZXJzLXBhbmVsLWVtcGxveWVlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmNhcmVlcnMtcGFuZWwtdGV4dCBociB7XG4gIG1hcmdpbjogNDBweCAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbn1cblxuLmNhcmVlcnMtcGFuZWwtdGV4dCAuY2FyZWVycy1wdWxscXVvdGUge1xuICBtYXgtd2lkdGg6IDQzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgdGV4dC1pbmRlbnQ6IC0wLjNlbTtcbn1cblxuLmNhcmVlcnMtcGFuZWwtZGVzY3JpcHRpb25NZW1vIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmNhcmVlcnMtcGFuZWwtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xufVxuXG4vKiBEZXNrdG9wICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAuY2FyZWVycy1ub0Rlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0TnVkZ2Uge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cblxuICAuY2FyZWVycy1ncmlkLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJhY2tncm91bmRBY2NlbnQpO1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1tb2R1bGVCbGFjayAuY2FyZWVycy1ncmlkLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWdyZXkxMDApO1xuICB9XG5cbiAgLmNhcmVlcnMtZ3JpZC1pdGVtOmhvdmVyIC5jYXJlZXJzLWdyaWQtaXRlbVRpdGxlLFxuICAuY2FyZWVycy1ncmlkLWl0ZW06aG92ZXIgLmNhcmVlcnMtZ3JpZC1pdGVtU3VidGl0bGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxufVxuXG4vKiBMYXJnZSBEZXNrdG9wICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmNhcmVlcnMtbGFuZGluZy1tYXhXaWR0aCB7XG4gICAgcGFkZGluZzogMCB2YXIoLS1ndXR0ZXIpO1xuICB9XG59XG5cbi8qIFRhYmxldCAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI4MHB4KSBhbmQgKG1pbi13aWR0aDogOTAxcHgpIHtcbiAgLmNhcmVlcnMtbGFuZGluZy1oZXJvIC5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIHtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyNDBweCk7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgLmNhcmVlcnMtc3BsaXRQYW5lbDpmaXJzdC1jaGlsZCB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0UGFuZWw6bGFzdC1jaGlsZCB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0VG9HdXR0ZXJTbWFsbCxcbiAgLmNhcmVlcnMtc3BsaXRQYW5lbDpsYXN0LWNoaWxkID4gLmNhcmVlcnMtc3BsaXRUb0d1dHRlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDc1cHgpO1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1idXR0b25XaWR0aEZpeGVkIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1idXR0b25XaWR0aEZpeGVkIC5idXR0b24taG92ZXItaW5uZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLWJ1dHRvbldpZHRoRml4ZWQgLmJ1dHRvbi1ob3Zlci1pbm5lciAuYXJyb3cge1xuICAgIHRvcDogMTFweDtcbiAgfVxufVxuXG4vKiBTbGlkZXIgKi9cbi5zbGlkZXItY29udHJvbHMge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4uc2xpZGVyLWNvbnRyb2xzIGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jeC1jb2xvci1iYWNrZ3JvdW5kQWNjZW50KTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogMC4ycztcbn1cblxuLnNsaWRlci1jb250cm9scy5jb250cm9scy1yZXZlcnNlIGJ1dHRvbiB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWN4LWNvbG9yLWdyZXk3MCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbn1cblxuLnNsaWRlci1jb250cm9scyBidXR0b24gLmFycm93IHtcbiAgdHJhbnNpdGlvbjogMC4ycztcbiAgei1pbmRleDogMTtcbn1cblxuLnNsaWRlci1jb250cm9scyBidXR0b24gLmFycm93LFxuLnNsaWRlci1jb250cm9scyBidXR0b24gLmFycm93OmJlZm9yZSxcbi5zbGlkZXItY29udHJvbHMgYnV0dG9uIC5hcnJvdzphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbn1cblxuLnNsaWRlci1jb250cm9scyBidXR0b246aG92ZXIgLmFycm93LFxuLnNsaWRlci1jb250cm9scyBidXR0b246aG92ZXIgLmFycm93OmJlZm9yZSxcbi5zbGlkZXItY29udHJvbHMgYnV0dG9uOmhvdmVyIC5hcnJvdzphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbn1cblxuLnNsaWRlci1jb250cm9scy5jb250cm9scy1ibGFjayBidXR0b24gLmFycm93LFxuLnNsaWRlci1jb250cm9scy5jb250cm9scy1ibGFjayBidXR0b24gLmFycm93OmJlZm9yZSxcbi5zbGlkZXItY29udHJvbHMuY29udHJvbHMtYmxhY2sgYnV0dG9uIC5hcnJvdzphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbn1cblxuLnNsaWRlci1jb250cm9scyAuYnV0dG9uLWhvdmVyOmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLW91dDtcbn1cblxuLnNsaWRlci1jb250cm9scyBidXR0b24gLmFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5zbGlkZXItY29udHJvbHMgLnNsaWRlci1wcmV2IC5hcnJvdyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uc2xpZGVyLWNvbnRyb2xzIC5zbGlkZXItcHJldiAuYXJyb3cge1xuICB3aWR0aDogMTVweDtcbn1cblxuLnNsaWRlci1jb250cm9scyAuc2xpZGVyLXByZXYgLmFycm93OmJlZm9yZSxcbi5zbGlkZXItY29udHJvbHMgLnNsaWRlci1wcmV2IC5hcnJvdzphZnRlciB7XG4gIGxlZnQ6IDEwcHg7XG59XG5cbi5zbGlkZXItY29udHJvbHMgLnNsaWRlci1uZXh0IHtcbiAgd2lkdGg6IDY1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMnB4O1xufVxuXG4uc2xpZGVyLWNvbnRyb2xzIC5zbGlkZXItcHJldjpmb2N1cyxcbi5zbGlkZXItY29udHJvbHMgLnNsaWRlci1uZXh0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnNsaWRlci1jb250cm9scyAuc2xpZGVyLWNvbnRyb2xzX25leHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250OiAxNnB4LzM3cHggJ0NvbXBhc3MgU2FucycsIHNhbnMtc2VyaWY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNsaWRlci1wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiA0OHB4IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBmb250LXNpemU6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLWJhY2tncm91bmRBY2NlbnQpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zbGlkZXItcHJvZ3Jlc3MgYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGZsZXg6IDE7XG4gIGhlaWdodDogNXB4O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zbGlkZXItcHJvZ3Jlc3MgLnByb2dyZXNzLWFjdGl2ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDJweDtcbiAgdHJhbnNpdGlvbjogZWFzZS1pbiAwLjZzO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG59XG5cbi5zbGlkZXItcHJvZ3Jlc3MuY29udHJvbHMtYmxhY2sge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jeC1jb2xvci1iYWNrZ3JvdW5kQWNjZW50KTtcbn1cblxuLnNsaWRlci1wcm9ncmVzcy5jb250cm9scy1ibGFjayAucHJvZ3Jlc3MtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3gtY29sb3ItYmxhY2spO1xufVxuXG4vKiBEZXNrdG9wICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAuc2xpZGVyLWNvbnRyb2xzIGJ1dHRvbiAuaG92ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLXdoaXRlKTtcbiAgICB0cmFuc2l0aW9uOiAwLjFzO1xuICB9XG5cbiAgLnNsaWRlci1jb250cm9scy5jb250cm9scy1ibGFjayBidXR0b246aG92ZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgfVxuXG4gIC5zbGlkZXItY29udHJvbHMuY29udHJvbHMtYmxhY2sgYnV0dG9uOmhvdmVyIC5hcnJvdyxcbiAgLnNsaWRlci1jb250cm9scy5jb250cm9scy1ibGFjayBidXR0b246aG92ZXIgLmFycm93OmJlZm9yZSxcbiAgLnNsaWRlci1jb250cm9scy5jb250cm9scy1ibGFjayBidXR0b246aG92ZXIgLmFycm93OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci13aGl0ZSk7XG4gIH1cblxuICAuc2xpZGVyLWNvbnRyb2xzLmNvbnRyb2xzLWJsYWNrIGJ1dHRvbiAuaG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWN4LWNvbG9yLWJsYWNrKTtcbiAgfVxuXG4gIC5zbGlkZXItY29udHJvbHMgYnV0dG9uLmhvdmVyX2luIC5ob3ZlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuc2xpZGVyLWNvbnRyb2xzIC5zbGlkZXItcHJldiAuaG92ZXIsXG4gIC5zbGlkZXItY29udHJvbHMgLnNsaWRlci1uZXh0LmhvdmVyX291dCAuaG92ZXIge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAuc2xpZGVyLWNvbnRyb2xzIC5zbGlkZXItbmV4dCAuaG92ZXIsXG4gIC5zbGlkZXItY29udHJvbHMgLnNsaWRlci1wcmV2LmhvdmVyX291dCAuaG92ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuc2xpZGVyLWNvbnRyb2xzIGJ1dHRvbjpob3ZlciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICB9XG59XG5cbi8qIFRhYmxldCAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5jYXJlZXJzLW5vVGFibGV0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogTW9iaWxlICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuY2FyZWVycy1ub01vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZyxcbiAgLmNhcmVlcnMtZGVwYXJ0bWVudCxcbiAgLmNhcmVlcnMtam9iLFxuICAuY2FyZWVycy1hbGwge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICAuY2FyZWVycy1wYW5lbC10ZXh0IC5jYXJlZXJzLXB1bGxxdW90ZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtdGVuZXQtdGV4dCxcbiAgLmNhcmVlcnMtdGV4dE1vYmlsZSB7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG8gNDBweCBhdXRvO1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gIH1cblxuICAuY2FyZWVycy1zcGxpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNhcmVlcnMtc3BsaXRGbGlwTW9iaWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0Q29sdW1uLFxuICAuY2FyZWVycy1zcGxpdENvbHVtbjpmaXJzdC1jaGlsZCxcbiAgLmNhcmVlcnMtc3BsaXRDb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0VG9HdXR0ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1pbWFnZVNxdWFyZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1tb2R1bGUge1xuICAgIHBhZGRpbmc6IDkwcHggMjBweDtcblxuICAgICYuY2FyZWVycy1sYW5kaW5nLW1vZHVsZUJsYWNrIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweCA4MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctbW9kdWxlU2hvcnRNb2JpbGUge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctaGVybyB7XG4gICAgcGFkZGluZzogNzBweCAyMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDQwdmg7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLWhlcm9TdWJ0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLWhlcm8gLmNhcmVlcnMtbGFuZGluZy1idXR0b24ge1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICAuY2FyZWVycy1sYW5kaW5nLWN0YS1hcnJvdyB7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAzM3B4KTtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctYnV0dG9uIC5hcnJvdyB7XG4gICAgdG9wOiAxMXB4O1xuICB9XG5cbiAgLmNhcmVlcnMtZ3JpZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuY2FyZWVycy1ncmlkLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jeC1jb2xvci1ibGFjayk7XG4gICAgfVxuXG4gICAgLmNhcmVlcnMtZ3JpZC1pdGVtVGl0bGUge1xuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLmNhcmVlcnMtZ3JpZC1pdGVtU3VidGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1tb2R1bGVCbGFjayAuY2FyZWVycy1ncmlkLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3gtY29sb3Itd2hpdGUpO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctYnV0dG9uV2lkdGhGaXhlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTEyNXB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIC5jYXJlZXJzLWxhbmRpbmctYnV0dG9uV2lkdGhGaXhlZCAuYnV0dG9uLWhvdmVyLWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmNhcmVlcnMtbGFuZGluZy1idXR0b25XaWR0aEZpeGVkIC5hcnJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0UGFuZWw6Zmlyc3QtY2hpbGQge1xuICAgIGhlaWdodDogNDB2aDtcbiAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgfVxuXG4gIC5jYXJlZXJzLXBhbmVsLXRleHQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLmNhcmVlcnMtcGFuZWwtdGV4dElubmVyIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgLmNhcmVlcnMtcGFuZWwtdGV4dCBociB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gIH1cblxuICAuY2FyZWVycy1wYW5lbC10ZXh0IC5jYXJlZXJzLXBhbmVsLWNpdHkge1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gIH1cblxuICAuY2FyZWVycy1wYW5lbC1kZXNjcmlwdGlvbk1lbW8sXG4gIC5jYXJlZXJzLXBhbmVsLWRlc2NyaXB0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLmNhcmVlcnMtcGFuZWwtaW1hZ2VPdmVyZmxvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgfVxuXG4gIC5jYXJlZXJzLXNwbGl0RXF1YWw6Zmlyc3QtY2hpbGQgLmNhcmVlcnMtcGFuZWwtZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAuY2FyZWVycy1zbGlkZXJNYXNrU2hvcnQge1xuICAgIHBhZGRpbmctdG9wOiA2MCU7XG4gIH1cbn1cblxubWFpbiNyZWFjdExhbmRpbmcge1xuICBtaW4taGVpZ2h0OiAxMDAwcHg7XG59XG5cbm1haW4jcmVhY3RMYW5kaW5nLmxvYWRlZCB7XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG59XG4iXX0= */