/*!*******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/@symfony/webpack-encore/node_modules/css-loader/dist/cjs.js??clonedRuleSet-13.use[1]!./node_modules/resolve-url-loader/index.js??clonedRuleSet-13.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-13.use[3]!./assets/scss/templates/_programme.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************/
/* ==========================================================================
   VARIABLES (Base)
   ========================================================================== */
/* ==========================================================================
   FUNCTIONS (Base)
   ========================================================================== */
/* ==========================================================================
   MIXINS (Base)
   ========================================================================== */
.nav--timeline .line-container {
  padding-right: 15px;
  position: relative;
}
.nav--timeline .line-container > div {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font-size: 1rem;
}
.nav--timeline .line-container > div:after {
  content: "";
  position: absolute;
  top: 24px;
  left: 0;
  width: 0%;
  height: 2px;
  background: #ffc600;
  transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.nav--timeline .line-container .actif:after {
  width: 100%;
}
.nav--timeline .line-container .actif .point span {
  background: #ffc600;
}
.nav--timeline .line-container .line {
  position: absolute;
  top: 25px;
  left: 0;
  width: calc(100% - 15px);
  height: 100%;
  border-top: 1px dotted #cfd1d5;
  z-index: 0;
}
.nav--timeline .line-container .point {
  margin-top: 11px;
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: #FFF;
  z-index: 1;
  float: right;
}
.nav--timeline .line-container .point span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background: #cfd1d5;
  transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.nav--timeline .txt-container {
  margin-top: 20px;
}
.nav--timeline .txt-container .actif p {
  color: #04142d;
}
.nav--timeline .txt-container .actif p:nth-child(2) {
  font-size: 1.2352941176rem;
  margin-top: 10px;
}
.nav--timeline .txt-container div {
  transform: translateX(55%);
}
.nav--timeline .txt-container div p {
  color: #cfd1d5;
}
.nav--timeline .txt-container .step {
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 1.6470588235rem;
  line-height: 2.2352941176rem;
}
@media screen and (max-width: 767px) {
  .nav--timeline .txt-container .step {
    font-size: 1.2941176471rem;
    line-height: 1.36;
  }
}
.nav--timeline--left .line-container .point {
  float: left;
}
.nav--timeline--transparent .line-container > div:before, .nav--timeline--transparent .line-container > div:after {
  content: "";
  position: absolute;
  top: 25px;
  left: 0;
  width: 0%;
  height: 2px;
  background: #cfd1d5;
  transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.nav--timeline--transparent .line-container > div:before {
  border-top: 1px dotted #cfd1d5;
  height: 1px;
  background: none;
  width: calc(100% - 30px);
}
.nav--timeline--transparent .line-container .actif:after {
  width: calc(100% - 30px);
  background: #FFF;
}
.nav--timeline--transparent .line-container .actif .point span {
  background: #FFF;
}
.nav--timeline--transparent .line-container .point {
  background: none;
}
@media screen and (max-width: 1024px) {
  .nav--timeline:not(.nav--timeline--transparent) .col-3-4 .col-1-4, .nav--timeline:not(.nav--timeline--left) .col-3-4 .col-1-4 {
    width: 33.3333%;
  }
  .nav--timeline:not(.nav--timeline--transparent) .col-3-4 .col-1-4:last-child, .nav--timeline:not(.nav--timeline--left) .col-3-4 .col-1-4:last-child {
    display: none;
  }
  .nav--timeline:not(.nav--timeline--transparent) .txt-container div, .nav--timeline:not(.nav--timeline--left) .txt-container div {
    transform: translateX(65%);
    max-width: 215px;
  }
  .nav--timeline:not(.nav--timeline--transparent) .txt-container div + div, .nav--timeline:not(.nav--timeline--left) .txt-container div + div {
    margin-left: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .nav--timeline:not(.nav--timeline--transparent) > .row > .col-1-4, .nav--timeline:not(.nav--timeline--left) > .row > .col-1-4 {
    text-align: center;
  }
  .nav--timeline:not(.nav--timeline--transparent) > .row > .col-1-4 .btn, .nav--timeline:not(.nav--timeline--left) > .row > .col-1-4 .btn {
    display: inline-block;
    margin-top: 40px;
  }
  .nav--timeline:not(.nav--timeline--transparent) .txt-container div, .nav--timeline:not(.nav--timeline--left) .txt-container div {
    max-width: none;
    transform: translateX(45%);
  }
  .nav--timeline:not(.nav--timeline--transparent) .line-container .point, .nav--timeline:not(.nav--timeline--left) .line-container .point {
    transform: translateX(12px);
  }
}
@media screen and (max-width: 767px) {
  .nav--timeline:not(.nav--timeline--left) {
    font-size: 0;
  }
  .nav--timeline:not(.nav--timeline--left) .line-container,
  .nav--timeline:not(.nav--timeline--left) .txt-container {
    position: relative;
    width: 10px;
    height: auto;
    display: inline-block;
    vertical-align: top;
  }
  .nav--timeline:not(.nav--timeline--left) .line-container .point,
  .nav--timeline:not(.nav--timeline--left) .txt-container .point {
    position: absolute;
    bottom: 0;
    left: -20px;
    margin-top: 0;
    transform: translateX(5px);
  }
  .nav--timeline:not(.nav--timeline--left) .line-container .line,
  .nav--timeline:not(.nav--timeline--left) .txt-container .line {
    top: 0;
    left: 0px;
    width: 0;
    height: 100%;
    border-left: 1px dotted #cfd1d5;
    border-top: 0;
  }
  .nav--timeline:not(.nav--timeline--left) .line-container .col-1-4,
  .nav--timeline:not(.nav--timeline--left) .txt-container .col-1-4 {
    display: block;
    width: 100%;
    height: 85px;
  }
  .nav--timeline:not(.nav--timeline--left) .line-container .col-1-4.actif:after,
  .nav--timeline:not(.nav--timeline--left) .txt-container .col-1-4.actif:after {
    top: 0;
    left: 0px;
    width: 2px;
    height: 100%;
  }
  .nav--timeline:not(.nav--timeline--left) .line-container .col-1-4:last-child,
  .nav--timeline:not(.nav--timeline--left) .txt-container .col-1-4:last-child {
    height: 55px;
    display: block;
  }
  .nav--timeline:not(.nav--timeline--left) .line-container {
    padding-right: 0px;
  }
  .nav--timeline:not(.nav--timeline--left) .txt-container {
    margin-top: 0;
    width: calc(100% - 20px);
  }
  .nav--timeline:not(.nav--timeline--left) .txt-container .col-1-4 {
    width: auto;
    height: auto;
    transform: none;
    margin-left: 0;
    margin-top: 40px;
  }
  .nav--timeline:not(.nav--timeline--left) .txt-container .col-1-4:last-child {
    display: none;
  }
}

.nav--timeline--inline > .btn {
  margin-top: 10px;
}
.nav--timeline--inline .line-container {
  margin-left: -10px;
  width: calc(100% + 10px);
  position: relative;
}
.nav--timeline--inline .line-container > div {
  position: relative;
}
.nav--timeline--inline .line-container .actif:after {
  content: "";
  position: absolute;
  top: 24px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #ffc600;
}
.nav--timeline--inline .line-container .actif .point span {
  background: #ffc600;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .is-desktop {
  display: block;
}
@media screen and (max-width: 767px) {
  .nav--timeline--inline .line-container .actif.has-subtimeline .is-desktop {
    display: none;
  }
}
.nav--timeline--inline .line-container .actif.has-subtimeline .is-mobile {
  display: none;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .is-mobile.actif .point span {
  width: 10px;
  height: 10px;
  border: none;
  background: #005d71;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .is-mobile.actif:after {
  content: "";
  position: absolute;
  top: 24px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #005d71;
}
@media screen and (max-width: 767px) {
  .nav--timeline--inline .line-container .actif.has-subtimeline .is-mobile {
    display: inline-block;
  }
}
.nav--timeline--inline .line-container .actif.has-subtimeline:after {
  content: none;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .point span {
  background: #cfd1d5;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .point span {
  width: 7px;
  height: 7px;
  border: 1px solid #cfd1d5;
  background: #FFF;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .col-1-4:first-child .point {
  background: #FFF;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .col-1-4:first-child .point span {
  width: 10px;
  height: 10px;
  border: none;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .actif .point span {
  background: #005d71;
  border: none;
}
.nav--timeline--inline .line-container .line {
  position: absolute;
  top: 25px;
  left: 0;
  width: calc(100% - 15px);
  height: 100%;
  border-top: 1px dotted #cfd1d5;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .nav--timeline--inline .line-container .col-1-4 {
    width: 25%;
  }
}
.nav--timeline--inline .line-container .point {
  margin-top: 11px;
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: #FFF;
  z-index: 1;
  float: left;
}
.nav--timeline--inline .line-container .point span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background: #cfd1d5;
}
.nav--timeline--inline .txt-container div {
  transform: none;
  color: #cfd1d5;
}
@media screen and (max-width: 767px) {
  .nav--timeline--inline .txt-container div {
    display: none;
  }
}
.nav--timeline--inline .txt-container .step {
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
}
@media screen and (max-width: 1023px) {
  .nav--timeline--inline .txt-container .step {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.nav--timeline--inline .txt-container .actif {
  display: inline-block;
}
.nav--timeline--inline .txt-container .actif p {
  color: #005d71;
}

/*
.lot-vitrine-slider {
  &:after {
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.65)));
    background: linear-gradient(to bottom, rgba(169, 169, 169, 0), rgba(0, 0, 0, 0.65));
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0.65)), color-stop(100%, rgba(0, 0, 0, 0)));
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
    content: '';
    position: absolute;
    left: 0;
    top: 30%;
    width: 100%;
    height: 100%;
    display: inline-block;
  }
}
*/
.block-vitrine-slider {
  position: relative;
  width: 100%;
  height: 100%;
  background: #04142d;
}
.block-vitrine-slider .mainImg {
  position: relative;
  width: 100%;
  height: 100%;
  background: #04142d;
  display: inline-block;
  object-fit: cover;
}
.block-vitrine-slider .js-openPopinSliders {
  cursor: zoom-in;
}
.block-vitrine-slider .descriptionPicto {
  display: inline-block;
  width: 100%;
  height: 100%;
  color: white;
  font-size: 9px;
  left: 0;
  margin-top: 3px;
}
.block-vitrine-slider > .icon--arrow--prev {
  position: absolute;
  top: 50%;
  left: 30px;
  transform: translateY(-50%) rotate(180deg);
}
.block-vitrine-slider > .icon--arrow--next {
  position: absolute;
  top: 50%;
  left: auto;
  right: 30px;
  transform: translateY(-50%);
}
@media screen and (min-width: 1025px) {
  .block-vitrine-slider .nav-container {
    position: absolute;
    width: 50%;
  }
}
.block-vitrine-slider .nav {
  display: flex;
  position: absolute;
  bottom: 5px;
  left: 50%;
  text-align: center;
  transform: translate(-50%, -50%);
  font-size: 0;
}
.block-vitrine-slider .nav > * {
  display: inline-block;
  vertical-align: middle;
}
.block-vitrine-slider .nav > button {
  padding: 3px;
  background-color: rgba(0, 0, 0, 0.5);
  min-width: 55px;
}
.block-vitrine-slider .nav > button:not(:first-child) {
  margin-left: 20px;
}
.block-vitrine-slider .nav > button > span > span.icon-wrapper {
  position: relative;
  margin: 0 auto;
  border-radius: 99999px;
  background: #FFF;
  display: block;
  padding: 5px;
  width: 45px;
  height: 45px;
}
.block-vitrine-slider .nav > button > span > span.icon-wrapper .stickNb {
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background: #005d71;
  border-radius: 999px;
  transform: translateY(-5px);
}
.block-vitrine-slider .nav > button > span > span.icon-wrapper .stickNb span {
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 0.7058823529rem;
  line-height: 0.7058823529rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #FFF;
}
@media screen and (max-width: 767px) {
  .block-vitrine-slider .nav {
    bottom: -20px;
  }
  .block-vitrine-slider .nav > button {
    min-width: 35px;
  }
  .block-vitrine-slider .nav > button:not(:first-child) {
    margin-left: 15px;
  }
  .block-vitrine-slider .nav > button > span > span.icon-wrapper {
    width: 35px;
    height: 35px;
  }
  .block-vitrine-slider .nav > button > span > span.icon-wrapper .stickNb {
    width: 15px;
    height: 15px;
  }
  .block-vitrine-slider .icon--arrow--prev, .block-vitrine-slider .icon--arrow--next {
    display: none;
  }
}

.block-intro-programme .floating-block .txt-content {
  display: flex;
  justify-content: flex-end;
}
.block-intro-programme .floating-block .txt-content__inside {
  position: relative;
  background-color: #fff;
  margin-top: 10px;
  margin-bottom: 30px;
  padding: 15px;
  width: 98%;
  text-align: center;
  text-transform: uppercase;
  -webkit-box-shadow: -4px 4px 8px 1px rgba(0, 0, 0, 0.1);
  box-shadow: -4px 4px 8px 1px rgba(0, 0, 0, 0.1);
}
.block-intro-programme .floating-block .txt-content__inside::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 150px;
  height: 150px;
  border-radius: 150px;
  background-color: #ffc600;
  border-radius: 0 150px 0 0;
  z-index: 0;
  bottom: -30px;
  left: -30px;
}
.block-intro-programme .floating-block .txt-content__inside p {
  font-weight: 500;
  margin-bottom: 5px;
}
.block-intro-programme .floating-block .txt-content__inside > .tags {
  text-align: left;
}
.block-intro-programme .floating-block .txt-content__inside .cta-container {
  display: flex;
  justify-content: center;
}
.block-intro-programme .floating-block .txt-content__inside .btn {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 6px 25px;
}
.block-intro-programme .floating-block .txt-content__inside .btn + .btn {
  margin-left: 10px;
}
.block-intro-programme .floating-block .txt-content__inside h2 {
  max-width: 435px;
  margin: 0 auto;
}
.block-intro-programme .mention {
  position: relative;
  text-align: right;
  font-size: 0.7647058824rem;
  text-decoration: auto;
  text-transform: none;
  top: 10px;
}
.block-intro-programme h1 {
  margin: 10px 0;
}
.block-intro-programme h1 .sub {
  color: #0085a1;
  margin-top: 5px;
}
.block-intro-programme .caracteristique-wrapper {
  float: right;
  padding: 2px;
}
.block-intro-programme .caracteristique-wrapper img.caracteristique-logo {
  max-width: 240px;
}
.block-intro-programme .caracteristique-wrapper img.caracteristique-logo--arkadea {
  max-width: 220px;
}
.block-intro-programme strong {
  font-weight: bolder;
}
.block-intro-programme .strike-text {
  position: relative;
  display: inline-block;
  font-family: "Gotham", sans-serif;
  font-weight: 500;
  letter-spacing: 0rem;
  font-size: 0.8235294118rem;
  line-height: 0.8235294118rem;
}
.block-intro-programme .strike-text:after {
  content: "";
  width: 100%;
  height: 1px;
  background: black;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-1px);
}
.block-intro-programme .price {
  font-size: 1.2352941176rem;
  font-weight: 600;
  color: #005d71;
}
.block-intro-programme .text-tag {
  text-transform: none;
}
.block-intro-programme .txt-margeBot > span {
  padding: 0 5px;
}
.block-intro-programme .tags {
  font-size: 0;
  margin-bottom: 20px;
}
.block-intro-programme .tags > * {
  display: inline-block;
  vertical-align: middle;
}
.block-intro-programme .tags li {
  margin-right: 10px;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .block-intro-programme .pub img {
    width: 100%;
    height: auto;
  }
}
.block-intro-programme .txt-header {
  position: relative;
  padding-left: 15px;
  padding-bottom: 30px;
  margin-bottom: 30px;
}
.block-intro-programme .txt-header .address {
  font-family: "Gotham", sans-serif;
  font-weight: 600;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
  color: #04142d;
}
@media screen and (max-width: 1023px) {
  .block-intro-programme .txt-header .address {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.block-intro-programme .txt-header .icons {
  position: absolute;
  top: 0;
  right: 0;
}
.block-intro-programme .txt-header .icons ul {
  text-align: right;
  font-size: 0;
}
.block-intro-programme .txt-header .icons ul > * {
  display: inline-block;
  vertical-align: middle;
}
.block-intro-programme .txt-header .avantage-container {
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  border: 1px dotted white;
  padding: 5px;
  text-align: center;
  margin-top: 10px;
  border-radius: 12px;
}
.block-intro-programme .cta-container {
  margin-top: 30px;
}
.block-intro-programme .cta-container a + .btn {
  margin-left: 20px;
}
.block-intro-programme .shape-txt .shapes {
  position: relative;
  height: auto;
  max-width: 100%;
  overflow: hidden;
  margin-left: 50px;
  margin-right: 0;
  text-align: right;
  padding-top: 20px;
}
.block-intro-programme .shape-txt .shapes img {
  display: block;
  width: 567px;
  height: auto;
}
.block-intro-programme .shape-txt .shapes .shape_green {
  position: relative;
  display: inline-block;
}
.block-intro-programme .shape-txt .shapes .shape_yellow {
  position: absolute;
  width: 435px;
  height: auto;
  top: 50%;
  left: 150px;
  transform: translateY(-50%) translateY(-60px);
  transform-origin: right center;
}
.block-intro-programme .shape-txt .content {
  width: 70%;
  max-width: 420px;
  position: absolute;
  top: 50%;
  left: 60%;
  transform: translate(-50%, -50%);
  color: #FFF;
}
.block-intro-programme .shape-txt .txt-header {
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: none;
}
.block-intro-programme .shape-txt .txt-header .icon--house {
  margin-bottom: 10px;
}
.block-intro-programme .shape-txt .delivery {
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 1rem;
}
@media screen and (min-width: 1280px) {
  .block-intro-programme .floating-block .shape-txt .shapes .shape_yellow {
    right: 0;
    left: auto;
    transform: translateY(-50%) translateY(-60px);
    transform-origin: right center;
  }
  .block-intro-programme .floating-block .shape-txt .content {
    top: 50%;
    right: 40px;
    left: auto;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 1120px) {
  .block-intro-programme .col-1-2 .shapes {
    margin-left: 20px;
  }
}
@media screen and (min-width: 1025px) {
  .block-intro-programme .floating-block {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 85vh;
    min-height: 220px;
    max-height: 600px;
  }
  .block-intro-programme .floating-block .txt-content__inside {
    max-width: 700px;
  }
  .block-intro-programme .floating-block .shape-txt {
    position: absolute;
    width: 100%;
    top: 100%;
    right: 50%;
    transform: translate(50%, -50%);
  }
}
@media screen and (max-width: 1024px) {
  .block-intro-programme .shape-txt .shapes {
    margin-left: 10px;
  }
}
@media screen and (max-width: 1023px) {
  .block-intro-programme .shape-txt {
    float: right;
    display: block;
  }
  .block-intro-programme .shape-txt .shapes {
    margin-left: 60px;
  }
  .block-intro-programme .shape-txt .content {
    width: 380px;
  }
  .block-intro-programme:after {
    content: "";
    clear: both;
  }
}
@media screen and (max-width: 767px) {
  .block-intro-programme .col-1-2:last-child .shapes {
    margin-left: 0;
    overflow: visible;
  }
  .block-intro-programme .col-1-2:last-child .shapes img {
    width: 80%;
    height: auto;
    margin-left: 50%;
    display: block;
    transform: translateX(-50%);
  }
  .block-intro-programme .col-1-2:last-child .shapes img.shape_yellow {
    margin-left: 0;
    transform: translateY(-50%) translateY(-40px) scale(0.8);
    transform-origin: top center;
  }
  .block-intro-programme .col-1-2:last-child .content {
    width: calc(100vw - 40px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    left: 52%;
  }
  .block-intro-programme .cta-container {
    width: 100%;
  }
  .block-intro-programme .cta-container .btn {
    text-align: center;
  }
}
@media screen and (max-width: 460px) {
  .block-intro-programme .col-1-2:last-child .shapes img {
    height: 450px;
    width: auto;
    margin-left: 0;
    transform: none;
  }
}

.program-description {
  padding: 15px;
}
.program-description-bihome {
  margin-top: 20px;
}
.program-description-bihome > br, .program-description-bihome img {
  display: none;
}

/* ==========================================================================
   LOTS (Blocks)
   ========================================================================== */
.block-lots .visualisation {
  position: relative;
  margin-top: 45px;
}
.block-lots .visualisation img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.block-lots .visualisation + .block-lots__content {
  margin-top: 0px;
}
.block-lots .filters {
  background: #75c2bd;
  color: #04142d;
  padding: 25px 0 40px;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 767px) {
  .block-lots .filters {
    padding: 20px 0 35px;
  }
}
@media screen and (max-width: 767px) {
  .block-lots .filters .btn--filter span {
    display: none;
  }
}
.block-lots .filters .filters-container {
  overflow: visible;
}
.block-lots .filters .filters-container .swiper-container {
  overflow: visible;
}
.block-lots .filters .filters-text {
  font-family: "Gotham", sans-serif;
  font-weight: 600;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
  margin-bottom: 10px;
  padding: 0 5px;
}
@media screen and (max-width: 1023px) {
  .block-lots .filters .filters-text {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.block-lots .filters ul {
  flex-wrap: wrap;
}
.block-lots .filters ul li {
  display: inline-block;
  width: auto;
  padding: 5px;
}
.block-lots .lists {
  margin-top: -20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 1023px) {
  .block-lots .lists {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
}
.block-lots .lists .block--list-lots {
  background: #f5f5f5;
  border-radius: 4px;
  max-height: 540px;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
  position: relative;
}
.block-lots .lists .block--list-lots.no-scrollable {
  max-height: 100%;
}
@media screen and (max-width: 1023px) {
  .block-lots .lists .block--list-lots {
    height: 100% !important;
    max-height: 100% !important;
  }
}
.block-lots .lists .block--list-lots .scroll-container {
  padding: 35px 60px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .block-lots .lists .block--list-lots .scroll-container {
    padding: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .block-lots .lists .block--list-lots .scroll-container {
    max-height: 740px;
    overflow: hidden;
  }
  .block-lots .lists .block--list-lots .scroll-container.is-visible {
    height: auto;
    max-height: none;
  }
}
.block-lots .lists .block--list-lots .list-items {
  width: calc(100% + 50px);
  margin-left: -25px;
  margin-top: -15px;
}
@media screen and (max-width: 1120px) {
  .block-lots .lists .block--list-lots .list-items {
    width: 100%;
    margin-left: 0;
  }
}
.block-lots .lists .block--list-lots .list-items:after {
  content: "";
  display: block;
  clear: both;
}
.block-lots .lists .block--list-lots .list-items .list-item {
  margin: 15px 25px;
  float: left;
  display: inline-block;
  width: calc(50% - 50px);
}
@media screen and (max-width: 1120px) {
  .block-lots .lists .block--list-lots .list-items .list-item {
    width: 100%;
    float: none;
    display: block;
    margin: 15px auto;
  }
}
.block-lots .lists .btn-container {
  display: none;
  position: absolute;
  bottom: 10px;
  width: 100%;
  z-index: 3;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .block-lots .lists .btn-container {
    display: block;
  }
}
.block-lots .lists .btn-container .btn {
  min-width: 290px;
}
@media screen and (max-width: 1023px) {
  .block-lots .lists .swiper-container {
    width: calc(100% + 40px);
    margin-left: -20px;
    padding-left: 20px;
  }
}
.block-lots .lists .swiper-container.is-disabled .swiper-wrapper {
  display: block;
  width: calc(100% + 50px);
  margin-left: -25px;
  transform: none !important;
}
.block-lots .lists .swiper-container.is-disabled .swiper-wrapper .swiper-slide {
  text-align: left;
  padding-bottom: 20px;
  margin: 0 25px;
  display: inline-block;
}
@media screen and (max-width: 1240px) {
  .block-lots .lists .swiper-container.is-disabled .swiper-wrapper {
    display: block;
    width: 100%;
    text-align: center;
    margin-left: 0;
  }
  .block-lots .lists .swiper-container.is-disabled .swiper-wrapper .swiper-slide {
    margin: auto;
    display: block;
  }
  .block-lots .lists .swiper-container.is-disabled .swiper-wrapper .swiper-slide:last-child {
    padding-bottom: 0;
  }
}
.block-lots .lists .swiper-slide {
  max-width: 475px;
  margin-right: 50px;
}
@media screen and (max-width: 1023px) {
  .block-lots .lists .swiper-slide {
    max-width: 200px;
    margin-right: 10px;
  }
}
.block-lots .lists__item {
  padding-bottom: 20px;
}
.block-lots .lists__item:last-child() {
  margin-bottom: 0;
}
.block-lots__push {
  background: #75c2bd;
  text-align: center;
  padding-bottom: 20px;
}
.block-lots__push .title {
  font-size: 1.2941176471rem;
  letter-spacing: 0;
  line-height: 2rem;
  font-weight: 600;
  color: #04142d;
  display: inline-block;
  margin: 30px 15px;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .block-lots__push .title {
    display: block;
    margin: 0 auto;
    padding: 15px 0 10px;
  }
}
.block-lots__push .mention-parking {
  display: block;
  max-width: 1050px;
  margin: 0 auto !important;
}
@media screen and (max-width: 767px) {
  .block-lots__push .mention-parking {
    margin-right: 10px;
  }
}
.block-lots__push .btn {
  vertical-align: middle;
  margin: 0 15px;
}
@media screen and (max-width: 767px) {
  .block-lots__push .btn {
    margin: 0 auto 20px;
  }
}
.block-lots__content {
  position: relative;
  margin-top: 45px;
}
.block-lots__content .mention-parking {
  margin-right: 40px;
  text-align: right;
  margin-bottom: 0px;
  font-size: 0.8823529412rem;
  text-transform: none;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .block-lots__content .mention-parking {
    margin-right: 0px;
  }
}

/* ==========================================================================
   LOT (Blocks)
   ========================================================================== */
.block-lot {
  width: 100%;
  max-width: 475px;
  position: relative;
  min-width: 450px;
}
@media screen and (max-width: 1120px) {
  .block-lot {
    max-width: 100%;
  }
}
@media screen and (max-width: 1023px) {
  .block-lot {
    min-width: 100%;
    max-width: 180px;
  }
}
.block-lot .block-lot-container {
  margin-left: 10px;
  padding-top: 16px;
  display: block;
  position: relative;
  z-index: 1;
  transition: opacity 0.35s;
}
.block-lot--simple {
  max-width: 100%;
}
.block-lot--simple .block-lot-container {
  padding-top: 0;
}
.block-lot--simple .block-lot__text {
  height: 90px;
}
@media screen and (max-width: 1023px) {
  .block-lot--simple .block-lot__text--simple {
    height: auto;
  }
}
@media screen and (max-width: 1023px) {
  .block-lot--simple .block-lot__text--simple .content {
    height: auto;
    position: relative;
  }
  .block-lot--simple .block-lot__text--simple .content .title {
    position: relative;
    top: auto;
    transform: none;
  }
}
.block-lot--simple .block-lot__text--simple .title {
  font-size: 0.8235294118rem;
  line-height: 1.2941176471rem;
}
@media screen and (max-width: 767px) {
  .block-lot--simple .block-lot__text--simple .title {
    font-size: 0.7058823529rem;
    line-height: 1.2941176471rem;
  }
}
.block-lot--simple .block-lot__text .content {
  padding: 10px 25px 10px 20px;
}
@media screen and (max-width: 1023px) {
  .block-lot--simple .block-lot__text .content {
    padding: 20px 10px;
  }
}
.block-lot--simple .block-lot__price {
  height: 100%;
}
@media screen and (max-width: 1023px) {
  .block-lot--simple .block-lot__price {
    height: 65px;
  }
}
.block-lot--simple .block-lot__price .configurator-link {
  position: absolute;
  top: 5px;
  right: 5px;
}
.block-lot--simple .block-lot__price .content {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  padding: 0 20px;
}
@media screen and (max-width: 1023px) {
  .block-lot--simple .block-lot__price .content {
    position: absolute;
    left: 0;
    top: 0;
    transform: none;
    width: 100%;
    height: 100%;
  }
  .block-lot--simple .block-lot__price .content ul {
    padding-bottom: 0;
  }
}
.block-lot .icon--excluweb {
  width: 40px;
  height: 40px;
  font-size: 0.5588235294rem;
}
.block-lot .tags {
  position: absolute;
  top: 0;
}
.block-lot__body {
  width: 100%;
  text-align: left;
  cursor: default !important;
}
.block-lot__body:not(.no-plan):hover .block-lot__layer, .block-lot__body:not(.no-plan):focus .block-lot__layer {
  opacity: 1;
  visibility: visible;
}
.block-lot__text {
  height: 120px;
  overflow: hidden;
  background: #04142d;
  width: calc(100% - 210px);
  color: #FFF;
  position: relative;
  border-radius: 4px 0 0 4px;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 1023px) {
  .block-lot__text {
    width: 100%;
    padding-bottom: 4px;
    border-radius: 4px 4px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .block-lot__text {
    height: 94px;
  }
}
.block-lot__text--simple .content .title {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.block-lot__text:after {
  content: "";
  width: 4px;
  height: 100%;
  position: absolute;
  left: 100%;
  top: 0;
  background: #04142d;
}
@media screen and (max-width: 1023px) {
  .block-lot__text:after {
    left: 0;
    top: 100%;
    width: 100%;
    height: 4px;
  }
}
.block-lot__text .content {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  padding: 15px 25px 15px 20px;
}
@media screen and (max-width: 1023px) {
  .block-lot__text .content {
    padding: 10px;
  }
}
.block-lot__text .ref,
.block-lot__text .exclu {
  position: absolute;
  top: 15px;
  right: 20px;
  color: #FFF;
  font-size: 0.4705882353rem;
  line-height: 0.5882352941rem;
  text-transform: uppercase;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .block-lot__text .ref,
  .block-lot__text .exclu {
    top: 10px;
    right: 10px;
  }
}
.block-lot__text .exclu {
  top: auto;
  bottom: 15px;
}
@media screen and (max-width: 1023px) {
  .block-lot__text .exclu {
    bottom: 10px;
    right: 5px;
    transform: scale(0.8);
  }
}
.block-lot__text .title {
  font-size: 0.7058823529rem;
  line-height: 1.2941176471rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0rem;
  max-width: calc(100% - 35px);
}
@media screen and (max-width: 767px) {
  .block-lot__text .title {
    font-size: 0.5294117647rem;
    line-height: 0.8823529412rem;
  }
}
.block-lot__text .title > span:not(.sub) {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.block-lot__text .sub {
  font-size: 1rem;
  line-height: 1.5294117647rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0rem;
}
.block-lot__text .info {
  position: absolute;
  bottom: 15px;
  left: 20px;
  color: #FFF;
}
@media screen and (max-width: 1023px) {
  .block-lot__text .info {
    bottom: 15px;
    left: 10px;
  }
}
.block-lot__text .info ul li {
  display: inline-block;
  color: #FFF;
  font-size: 0.8235294118rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .block-lot__text .info ul li {
    font-size: 0.7058823529rem;
  }
}
.block-lot__text .info ul li:before {
  content: "";
  position: relative;
  width: 4px;
  height: 4px;
  margin-left: 10px;
  margin-right: 10px;
  margin-bottom: 2px;
  background: #005d71;
  display: inline-block;
  border-radius: 4px;
}
.block-lot__text .info ul li:first-child:before {
  content: none;
}
.block-lot__price {
  position: absolute;
  width: 100%;
  height: calc(100% - 16px);
  right: 0;
  bottom: 0;
  border-radius: 4px;
  overflow: hidden;
  width: 215px;
  background: #FFF;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 1023px) {
  .block-lot__price {
    position: relative;
    top: -4px;
    transform: none;
    left: auto;
    right: auto;
    bottom: auto;
    height: 140px;
    width: 100%;
  }
}
.block-lot__price .content {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  padding: 0 20px;
  text-align: left;
}
@media screen and (max-width: 1023px) {
  .block-lot__price .content {
    padding: 0;
    height: 100%;
    transform: none;
    top: auto;
  }
}
@media screen and (max-width: 1023px) {
  .block-lot__price ul {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    padding: 0 20px 30px 20px;
    padding: 0 10px 10px 10px;
  }
}
@media screen and (max-width: 1023px) and (max-width: 767px) {
  .block-lot__price ul {
    padding: 0 10px 10px 10px;
  }
}
.block-lot__price ul li {
  color: #04142d;
  margin-top: 10px;
  position: relative;
}
.block-lot__price ul li:first-child {
  margin-top: 0;
}
.block-lot__price .strike-text {
  position: relative;
  display: inline-block;
  margin-bottom: 3px;
  font-family: "Gotham", sans-serif;
  font-weight: 500;
  letter-spacing: 0rem;
  font-size: 0.8235294118rem;
  line-height: 0.8235294118rem;
}
.block-lot__price .strike-text:after {
  content: "";
  width: 100%;
  height: 1px;
  background: black;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-1px);
}
.block-lot__price .small-text {
  font-size: 0.8235294118rem;
}
.block-lot__price .medium-text {
  font-size: 1rem;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .block-lot__price .medium-text {
    font-size: 0.8rem;
  }
}
.block-lot__price .mini-text {
  font-family: "Gotham", sans-serif;
  font-weight: 500;
  letter-spacing: 0rem;
  font-size: 0.7647058824rem;
  line-height: normal;
  font-size: 0.7058823529rem;
}
.block-lot__price .price {
  display: inline-block;
  width: 100%;
  padding-right: 70px;
  color: #005d71;
}
.block-lot__price .price-container {
  position: relative;
}
.block-lot__price .tva {
  max-width: 90px;
  text-align: right;
  position: absolute;
  right: 0;
  bottom: 0;
  padding-left: 10px;
  margin-bottom: 3px;
}
@media screen and (max-width: 1023px) {
  .block-lot__price .tva {
    margin-bottom: 0px;
  }
}
.block-lot__layer {
  position: absolute;
  width: 100%;
  height: calc(100% - 16px);
  bottom: 0;
  left: 0;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 0.35s;
  visibility: hidden;
  cursor: pointer;
}
.block-lot__layer .layer-container {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
}

/*************** SCROLLBAR BASE CSS ***************/
.scroll-wrapper {
  overflow: hidden !important;
  padding: 0 !important;
  position: relative;
}

.scroll-wrapper > .scroll-content {
  border: none !important;
  box-sizing: content-box !important;
  height: auto;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none !important;
  overflow: scroll !important;
  padding: 0;
  position: relative !important;
  top: 0;
  width: auto !important;
}

.scroll-wrapper > .scroll-content::-webkit-scrollbar {
  height: 0;
  width: 0;
}

.scroll-element {
  display: none;
}

.scroll-element, .scroll-element div {
  box-sizing: content-box;
}

.scroll-element.scroll-x.scroll-scrollx_visible,
.scroll-element.scroll-y.scroll-scrolly_visible {
  display: block;
}

.scroll-element .scroll-bar,
.scroll-element .scroll-arrow {
  cursor: default;
}

.scroll-textarea {
  border: 1px solid #cccccc;
  border-top-color: #999999;
}

.scroll-textarea > .scroll-content {
  overflow: hidden !important;
}

.scroll-textarea > .scroll-content > textarea {
  border: none !important;
  box-sizing: border-box;
  height: 100% !important;
  margin: 0;
  max-height: none !important;
  max-width: none !important;
  overflow: scroll !important;
  outline: none;
  padding: 2px;
  position: relative !important;
  top: 0;
  width: 100% !important;
}

.scroll-textarea > .scroll-content > textarea::-webkit-scrollbar {
  height: 0;
  width: 0;
}

/*************** SIMPLE INNER SCROLLBAR ***************/
.scrollbar-inner > .scroll-element,
.scrollbar-inner > .scroll-element div {
  border: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: 1;
}

.scrollbar-inner > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-inner > .scroll-element.scroll-x {
  bottom: 2px;
  height: 8px;
  left: 0;
  width: 100%;
}

.scrollbar-inner > .scroll-element.scroll-y {
  height: calc(100% - 80px);
  right: 20px;
  top: 40px;
  width: 8px;
}

.scrollbar-inner > .scroll-element .scroll-element_outer {
  overflow: hidden;
}

.scrollbar-inner > .scroll-element .scroll-element_outer,
.scrollbar-inner > .scroll-element .scroll-element_track,
.scrollbar-inner > .scroll-element .scroll-bar {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
}

.scrollbar-inner > .scroll-element .scroll-element_track {
  background-color: #e0e0e0;
}

.scrollbar-inner > .scroll-element .scroll-bar {
  background-color: #c2c2c2;
}

.scrollbar-inner > .scroll-element:hover .scroll-bar {
  background-color: #919191;
}

.custom-scrollbar--secondary.scrollbar-inner > .scroll-element .scroll-bar {
  background-color: #005d71;
}

.custom-scrollbar--secondary.scrollbar-inner > .scroll-element .scroll-bar:hover {
  background-color: #005d71;
  opacity: 0.9;
}

.scrollbar-inner > .scroll-element.scroll-draggable .scroll-bar {
  background-color: #919191;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track {
  left: -12px;
}

.scrollbar-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track {
  top: -12px;
}

.scrollbar-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -12px;
}

.scrollbar-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -12px;
}

/*************** SIMPLE OUTER SCROLLBAR ***************/
.scrollbar-outer > .scroll-element,
.scrollbar-outer > .scroll-element div {
  border: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-outer > .scroll-element {
  background-color: #ffffff;
}

.scrollbar-outer > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-outer > .scroll-element.scroll-x {
  bottom: 0;
  height: 12px;
  left: 0;
  width: 100%;
}

.scrollbar-outer > .scroll-element.scroll-y {
  height: 100%;
  right: 0;
  top: 0;
  width: 12px;
}

.scrollbar-outer > .scroll-element.scroll-x .scroll-element_outer {
  height: 8px;
  top: 2px;
}

.scrollbar-outer > .scroll-element.scroll-y .scroll-element_outer {
  left: 2px;
  width: 8px;
}

.scrollbar-outer > .scroll-element .scroll-element_outer {
  overflow: hidden;
}

.scrollbar-outer > .scroll-element .scroll-element_track {
  background-color: #efeae8;
}

.custom-scrollbar--secondary .scrollbar-outer > .scroll-element .scroll-element_outer,
.scrollbar-outer > .scroll-element .scroll-element_track,
.scrollbar-outer > .scroll-element .scroll-bar {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
}

.scrollbar-outer > .scroll-element .scroll-bar {
  background-color: #04142d;
}

.scrollbar-outer > .scroll-element .scroll-bar:hover {
  background-color: #000;
}

.custom-scrollbar--secondary.scrollbar-outer > .scroll-element .scroll-bar {
  background-color: #005d71;
}

.custom-scrollbar--secondary.scrollbar-outer > .scroll-element .scroll-bar:hover {
  background-color: #005d71;
  opacity: 0.9;
}

.scrollbar-outer > .scroll-element.scroll-draggable .scroll-bar {
  background-color: #919191;
}

/* scrollbar height/width & offset from container borders */
.scrollbar-outer > .scroll-content.scroll-scrolly_visible {
  left: -12px;
  margin-left: 12px;
}

.scrollbar-outer > .scroll-content.scroll-scrollx_visible {
  top: -12px;
  margin-top: 12px;
}

.scrollbar-outer > .scroll-element.scroll-x .scroll-bar {
  min-width: 10px;
}

.scrollbar-outer > .scroll-element.scroll-y .scroll-bar {
  min-height: 10px;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-outer > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track {
  left: -14px;
}

.scrollbar-outer > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track {
  top: -14px;
}

.scrollbar-outer > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -14px;
}

.scrollbar-outer > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -14px;
}

/*************** SCROLLBAR MAC OS X ***************/
.scrollbar-macosx > .scroll-element,
.scrollbar-macosx > .scroll-element div {
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-macosx > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-macosx > .scroll-element .scroll-element_track {
  display: none;
}

.scrollbar-macosx > .scroll-element .scroll-bar {
  background-color: #6C6E71;
  display: block;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  border-radius: 7px;
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  -ms-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.scrollbar-macosx:hover > .scroll-element .scroll-bar,
.scrollbar-macosx > .scroll-element.scroll-draggable .scroll-bar {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.scrollbar-macosx > .scroll-element.scroll-x {
  bottom: 0px;
  height: 0px;
  left: 0;
  min-width: 100%;
  overflow: visible;
  width: 100%;
}

.scrollbar-macosx > .scroll-element.scroll-y {
  height: 100%;
  min-height: 100%;
  right: 0px;
  top: 0;
  width: 0px;
}

/* scrollbar height/width & offset from container borders */
.scrollbar-macosx > .scroll-element.scroll-x .scroll-bar {
  height: 7px;
  min-width: 10px;
  top: -9px;
}

.scrollbar-macosx > .scroll-element.scroll-y .scroll-bar {
  left: -9px;
  min-height: 10px;
  width: 7px;
}

.scrollbar-macosx > .scroll-element.scroll-x .scroll-element_outer {
  left: 2px;
}

.scrollbar-macosx > .scroll-element.scroll-x .scroll-element_size {
  left: -4px;
}

.scrollbar-macosx > .scroll-element.scroll-y .scroll-element_outer {
  top: 2px;
}

.scrollbar-macosx > .scroll-element.scroll-y .scroll-element_size {
  top: -4px;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-macosx > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -11px;
}

.scrollbar-macosx > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -11px;
}

/*************** SCROLLBAR LIGHT ***************/
.scrollbar-light > .scroll-element,
.scrollbar-light > .scroll-element div {
  border: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-light > .scroll-element {
  background-color: #ffffff;
}

.scrollbar-light > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-light > .scroll-element .scroll-element_outer {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}

.scrollbar-light > .scroll-element .scroll-element_size {
  background: #dbdbdb;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlOGU4ZTgiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #dbdbdb 0%, #e8e8e8 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #dbdbdb), color-stop(100%, #e8e8e8));
  background: -webkit-linear-gradient(left, #dbdbdb 0%, #e8e8e8 100%);
  background: -o-linear-gradient(left, #dbdbdb 0%, #e8e8e8 100%);
  background: -ms-linear-gradient(left, #dbdbdb 0%, #e8e8e8 100%);
  background: linear-gradient(to right, #dbdbdb 0%, #e8e8e8 100%);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}

.scrollbar-light > .scroll-element.scroll-x {
  bottom: 0;
  height: 17px;
  left: 0;
  min-width: 100%;
  width: 100%;
}

.scrollbar-light > .scroll-element.scroll-y {
  height: 100%;
  min-height: 100%;
  right: 0;
  top: 0;
  width: 17px;
}

.scrollbar-light > .scroll-element .scroll-bar {
  background: #fefefe;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZlZmVmZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNWY1ZjUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #fefefe 0%, #f5f5f5 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, #fefefe), color-stop(100%, #f5f5f5));
  background: -webkit-linear-gradient(left, #fefefe 0%, #f5f5f5 100%);
  background: -o-linear-gradient(left, #fefefe 0%, #f5f5f5 100%);
  background: -ms-linear-gradient(left, #fefefe 0%, #f5f5f5 100%);
  background: linear-gradient(to right, #fefefe 0%, #f5f5f5 100%);
  border: 1px solid #dbdbdb;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}

/* scrollbar height/width & offset from container borders */
.scrollbar-light > .scroll-content.scroll-scrolly_visible {
  left: -17px;
  margin-left: 17px;
}

.scrollbar-light > .scroll-content.scroll-scrollx_visible {
  top: -17px;
  margin-top: 17px;
}

.scrollbar-light > .scroll-element.scroll-x .scroll-bar {
  height: 10px;
  min-width: 10px;
  top: 0px;
}

.scrollbar-light > .scroll-element.scroll-y .scroll-bar {
  left: 0px;
  min-height: 10px;
  width: 10px;
}

.scrollbar-light > .scroll-element.scroll-x .scroll-element_outer {
  height: 12px;
  left: 2px;
  top: 2px;
}

.scrollbar-light > .scroll-element.scroll-x .scroll-element_size {
  left: -4px;
}

.scrollbar-light > .scroll-element.scroll-y .scroll-element_outer {
  left: 2px;
  top: 2px;
  width: 12px;
}

.scrollbar-light > .scroll-element.scroll-y .scroll-element_size {
  top: -4px;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-light > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -19px;
}

.scrollbar-light > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -19px;
}

.scrollbar-light > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track {
  left: -19px;
}

.scrollbar-light > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track {
  top: -19px;
}

/*************** SCROLLBAR RAIL ***************/
.scrollbar-rail > .scroll-element,
.scrollbar-rail > .scroll-element div {
  border: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-rail > .scroll-element {
  background-color: #ffffff;
}

.scrollbar-rail > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-rail > .scroll-element .scroll-element_size {
  background-color: #999;
  background-color: rgba(0, 0, 0, 0.3);
}

.scrollbar-rail > .scroll-element .scroll-element_outer:hover .scroll-element_size {
  background-color: #666;
  background-color: rgba(0, 0, 0, 0.5);
}

.scrollbar-rail > .scroll-element.scroll-x {
  bottom: 0;
  height: 12px;
  left: 0;
  min-width: 100%;
  padding: 3px 0 2px;
  width: 100%;
}

.scrollbar-rail > .scroll-element.scroll-y {
  height: 100%;
  min-height: 100%;
  padding: 0 2px 0 3px;
  right: 0;
  top: 0;
  width: 12px;
}

.scrollbar-rail > .scroll-element .scroll-bar {
  background-color: #d0b9a0;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
}

.scrollbar-rail > .scroll-element .scroll-element_outer:hover .scroll-bar {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
}

/* scrollbar height/width & offset from container borders */
.scrollbar-rail > .scroll-content.scroll-scrolly_visible {
  left: -17px;
  margin-left: 17px;
}

.scrollbar-rail > .scroll-content.scroll-scrollx_visible {
  margin-top: 17px;
  top: -17px;
}

.scrollbar-rail > .scroll-element.scroll-x .scroll-bar {
  height: 10px;
  min-width: 10px;
  top: 1px;
}

.scrollbar-rail > .scroll-element.scroll-y .scroll-bar {
  left: 1px;
  min-height: 10px;
  width: 10px;
}

.scrollbar-rail > .scroll-element.scroll-x .scroll-element_outer {
  height: 15px;
  left: 5px;
}

.scrollbar-rail > .scroll-element.scroll-x .scroll-element_size {
  height: 2px;
  left: -10px;
  top: 5px;
}

.scrollbar-rail > .scroll-element.scroll-y .scroll-element_outer {
  top: 5px;
  width: 15px;
}

.scrollbar-rail > .scroll-element.scroll-y .scroll-element_size {
  left: 5px;
  top: -10px;
  width: 2px;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-rail > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -25px;
}

.scrollbar-rail > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -25px;
}

.scrollbar-rail > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track {
  left: -25px;
}

.scrollbar-rail > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track {
  top: -25px;
}

/*************** SCROLLBAR DYNAMIC ***************/
.scrollbar-dynamic > .scroll-element,
.scrollbar-dynamic > .scroll-element div {
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-dynamic > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-dynamic > .scroll-element.scroll-x {
  bottom: 2px;
  height: 7px;
  left: 0;
  min-width: 100%;
  width: 100%;
}

.scrollbar-dynamic > .scroll-element.scroll-y {
  height: 100%;
  min-height: 100%;
  right: 2px;
  top: 0;
  width: 7px;
}

.scrollbar-dynamic > .scroll-element .scroll-element_outer {
  opacity: 0.3;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
}

.scrollbar-dynamic > .scroll-element .scroll-element_size {
  background-color: #cccccc;
  opacity: 0;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  -ms-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.scrollbar-dynamic > .scroll-element .scroll-bar {
  background-color: #6c6e71;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  border-radius: 7px;
}

/* scrollbar height/width & offset from container borders */
.scrollbar-dynamic > .scroll-element.scroll-x .scroll-bar {
  bottom: 0;
  height: 7px;
  min-width: 24px;
  top: auto;
}

.scrollbar-dynamic > .scroll-element.scroll-y .scroll-bar {
  left: auto;
  min-height: 24px;
  right: 0;
  width: 7px;
}

.scrollbar-dynamic > .scroll-element.scroll-x .scroll-element_outer {
  bottom: 0;
  top: auto;
  left: 2px;
  -webkit-transition: height 0.2s;
  -moz-transition: height 0.2s;
  -o-transition: height 0.2s;
  -ms-transition: height 0.2s;
  transition: height 0.2s;
}

.scrollbar-dynamic > .scroll-element.scroll-y .scroll-element_outer {
  left: auto;
  right: 0;
  top: 2px;
  -webkit-transition: width 0.2s;
  -moz-transition: width 0.2s;
  -o-transition: width 0.2s;
  -ms-transition: width 0.2s;
  transition: width 0.2s;
}

.scrollbar-dynamic > .scroll-element.scroll-x .scroll-element_size {
  left: -4px;
}

.scrollbar-dynamic > .scroll-element.scroll-y .scroll-element_size {
  top: -4px;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-dynamic > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -11px;
}

.scrollbar-dynamic > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -11px;
}

/* hover & drag */
.scrollbar-dynamic > .scroll-element:hover .scroll-element_outer,
.scrollbar-dynamic > .scroll-element.scroll-draggable .scroll-element_outer {
  overflow: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  filter: alpha(opacity=70);
  opacity: 0.7;
}

.scrollbar-dynamic > .scroll-element:hover .scroll-element_outer .scroll-element_size,
.scrollbar-dynamic > .scroll-element.scroll-draggable .scroll-element_outer .scroll-element_size {
  opacity: 1;
}

.scrollbar-dynamic > .scroll-element:hover .scroll-element_outer .scroll-bar,
.scrollbar-dynamic > .scroll-element.scroll-draggable .scroll-element_outer .scroll-bar {
  height: 100%;
  width: 100%;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
}

.scrollbar-dynamic > .scroll-element.scroll-x:hover .scroll-element_outer,
.scrollbar-dynamic > .scroll-element.scroll-x.scroll-draggable .scroll-element_outer {
  height: 20px;
  min-height: 7px;
}

.scrollbar-dynamic > .scroll-element.scroll-y:hover .scroll-element_outer,
.scrollbar-dynamic > .scroll-element.scroll-y.scroll-draggable .scroll-element_outer {
  min-width: 7px;
  width: 20px;
}

/*************** SCROLLBAR GOOGLE CHROME ***************/
.scrollbar-chrome > .scroll-element,
.scrollbar-chrome > .scroll-element div {
  border: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  z-index: 10;
}

.scrollbar-chrome > .scroll-element {
  background-color: #ffffff;
}

.scrollbar-chrome > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.scrollbar-chrome > .scroll-element .scroll-element_track {
  background: #f1f1f1;
  border: 1px solid #dbdbdb;
}

.scrollbar-chrome > .scroll-element.scroll-x {
  bottom: 0;
  height: 16px;
  left: 0;
  min-width: 100%;
  width: 100%;
}

.scrollbar-chrome > .scroll-element.scroll-y {
  height: 100%;
  min-height: 100%;
  right: 0;
  top: 0;
  width: 16px;
}

.scrollbar-chrome > .scroll-element .scroll-bar {
  background-color: #d9d9d9;
  border: 1px solid #bdbdbd;
  cursor: default;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.scrollbar-chrome > .scroll-element .scroll-bar:hover {
  background-color: #c2c2c2;
  border-color: #a9a9a9;
}

.scrollbar-chrome > .scroll-element.scroll-draggable .scroll-bar {
  background-color: #919191;
  border-color: #7e7e7e;
}

/* scrollbar height/width & offset from container borders */
.scrollbar-chrome > .scroll-content.scroll-scrolly_visible {
  left: -16px;
  margin-left: 16px;
}

.scrollbar-chrome > .scroll-content.scroll-scrollx_visible {
  top: -16px;
  margin-top: 16px;
}

.scrollbar-chrome > .scroll-element.scroll-x .scroll-bar {
  height: 8px;
  min-width: 10px;
  top: 3px;
}

.scrollbar-chrome > .scroll-element.scroll-y .scroll-bar {
  left: 3px;
  min-height: 10px;
  width: 8px;
}

.scrollbar-chrome > .scroll-element.scroll-x .scroll-element_outer {
  border-left: 1px solid #dbdbdb;
}

.scrollbar-chrome > .scroll-element.scroll-x .scroll-element_track {
  height: 14px;
  left: -3px;
}

.scrollbar-chrome > .scroll-element.scroll-x .scroll-element_size {
  height: 14px;
  left: -4px;
}

.scrollbar-chrome > .scroll-element.scroll-y .scroll-element_outer {
  border-top: 1px solid #dbdbdb;
}

.scrollbar-chrome > .scroll-element.scroll-y .scroll-element_track {
  top: -3px;
  width: 14px;
}

.scrollbar-chrome > .scroll-element.scroll-y .scroll-element_size {
  top: -4px;
  width: 14px;
}

/* update scrollbar offset if both scrolls are visible */
.scrollbar-chrome > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
  left: -19px;
}

.scrollbar-chrome > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
  top: -19px;
}

.scrollbar-chrome > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track {
  left: -19px;
}

.scrollbar-chrome > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track {
  top: -19px;
}

@media screen and (min-width: 1025px) {
  .template-programme .fil-ariane {
    max-width: calc(50% - 30px);
  }
}
@media screen and (max-width: 1024px) {
  .template-programme .fil-ariane {
    padding-bottom: 0;
  }
  .template-programme .fil-ariane > div {
    flex-wrap: nowrap;
    white-space: nowrap;
    overflow-x: auto;
    padding-bottom: 10px;
  }
}
.template-programme > .row {
  position: relative;
}
.template-programme .image-decorated {
  position: relative;
}
.template-programme .image-decorated::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 150px;
  height: 150px;
  border-radius: 150px;
  background-color: #005d71;
  border-radius: 0 150px 0 0;
  z-index: 0;
  bottom: -30px;
  left: -30px;
}
.template-programme h2, .template-programme h3 {
  text-align: left;
  margin-top: 20px;
}
@media screen and (max-width: 1024px) {
  .template-programme h2, .template-programme h3 {
    font-size: 1.7647058824rem;
  }
}
.template-programme .title-city {
  margin-right: 50px;
}
.template-programme .cta-container {
  margin-top: 30px;
  margin-bottom: 5px;
}
.template-programme .cta-container a + .btn {
  margin-left: 20px;
}
.template-programme .vitrine {
  position: relative;
  width: 100%;
  height: 600px;
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .template-programme .vitrine {
    height: 450px;
  }
}
@media screen and (max-width: 1023px) {
  .template-programme .vitrine {
    height: 340px;
  }
}
@media screen and (max-width: 767px) {
  .template-programme .vitrine {
    height: 240px;
  }
}
.template-programme .caracteristiques {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 20px;
}
.template-programme .caracteristiques .caracteristique-wrapper {
  margin: 10px;
}
.template-programme .caracteristiques .caracteristique-wrapper img {
  max-width: 125px;
  max-height: 85px;
  object-fit: contain;
}
.template-programme .residence {
  margin-top: 90px;
}
.template-programme .residence .article > div {
  display: none;
}
.template-programme .residence .article > div.actif {
  display: block;
}
.template-programme .residence .content > .row {
  padding-top: 15px;
  padding-right: 140px;
}
.template-programme .residence .content .chapo {
  margin-bottom: 30px;
  text-align: left;
}
.template-programme .residence .content .nav li {
  margin-bottom: 15px;
  opacity: 0.6;
  transition: all 0.25s ease-out;
  cursor: pointer;
}
.template-programme .residence .content .nav li span {
  transition: all 0.25s ease-out;
}
.template-programme .residence .content .nav li.actif {
  opacity: 1;
}
.template-programme .residence .content .nav li.actif span {
  color: #005d71;
  font-weight: 600;
  font-size: 1.2352941176rem;
  line-height: 1.5294117647rem;
}
.template-programme .residence .content .article {
  text-align: right;
}
.template-programme .residence .content .article .excerpt {
  text-align: left;
  max-height: 222px;
  overflow: hidden;
  line-height: 1.5;
}
.template-programme .residence .content .article .excerpt.open {
  max-height: none;
}
.template-programme .residence .content .article .btn {
  margin-top: 20px;
  font-size: 0.7058823529rem;
}
@media screen and (max-width: 1120px) {
  .template-programme .residence .block-push {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .template-programme .residence .push .block-push {
    width: 100%;
  }
  .template-programme .residence .content > .row {
    padding-right: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .template-programme .residence .col-2-3, .template-programme .residence .col-1-3 {
    display: block;
    width: 100%;
  }
  .template-programme .residence .col-1-3 {
    text-align: center;
  }
  .template-programme .residence .col-1-3 .block-push {
    max-width: 320px;
  }
  .template-programme .residence .col-1-3 .block-push .title {
    font-size: 2.5882352941rem;
    line-height: 1.23;
  }
}
.template-programme .residence .col-1-12, .template-programme .residence .col-11-12 {
  display: block;
  width: 100%;
}
.template-programme .residence .content .nav {
  margin-bottom: 15px;
}
.template-programme .residence .content .nav li, .template-programme .residence .content .nav li.actif {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 0;
  margin-right: 15px;
}
@media screen and (max-width: 767px) {
  .template-programme .residence .content .article {
    margin-bottom: 30px;
  }
  .template-programme .residence .content .article p {
    font-size: 0.8235294118rem;
    line-height: 1.71;
  }
  .template-programme .residence .content .article .excerpt {
    max-height: 320px;
  }
  .template-programme .residence .col-1-3 .block-push {
    padding: 30px 20px;
  }
  .template-programme .residence .col-1-3 .block-push .title {
    font-size: 2.3529411765rem;
  }
  .template-programme .residence .col-1-3 .block-push span:not(.btn) {
    font-size: 1.2941176471rem;
    line-height: 1.45;
  }
}
.template-programme .logement .block-logement {
  margin-bottom: 50px;
}
.template-programme .logement .visualisation {
  position: relative;
  margin-top: 45px;
}
@media screen and (max-width: 767px) {
  .template-programme .logement .visualisation iframe {
    height: 100%;
  }
}
.template-programme .logement .visualisation img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.template-programme .logement .visualisation .filters {
  position: absolute;
  top: 30px;
  right: 30px;
}
.template-programme .logement .visualisation .filters .btn-container {
  display: inline-block;
  vertical-align: top;
  position: relative;
}
.template-programme .logement .visualisation .filters .btn-container + .btn-container {
  margin-left: 20px;
}
.template-programme .logement .visualisation .filters .btn--select {
  display: inline-block;
  vertical-align: top;
  position: relative;
}
.template-programme .logement .visualisation .filters .btn--select.open {
  z-index: 2;
}
.template-programme .logement .visualisation .filters .btn--select.open .selected:after {
  transform: rotate(-135deg);
}
.template-programme .logement .slick-list {
  overflow: visible;
  margin: 0 -15px;
}
.template-programme .logement .slick-slide {
  width: 200px;
  outline: 0;
  margin: 0 15px 20px 15px;
}
.template-programme .logement .app {
  position: relative;
  background: #FFF;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  width: 200px;
  height: 210px;
  text-align: left;
  margin-top: -90px;
  z-index: 1;
  transition: transform 0.35s ease-in-out;
}
.template-programme .logement .app a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  outline: 0;
}
.template-programme .logement .app:hover {
  transform: translateY(-20%);
}
.template-programme .logement .app:hover a:hover .cta-container {
  transform: translateY(0) translateX(-50%);
}
.template-programme .logement .app .head {
  position: relative;
  background: #ea86ad;
  text-align: center;
  color: #FFF;
  height: 90px;
  border-radius: 4px 4px 0 0;
}
.template-programme .logement .app .head .mask {
  position: relative;
  height: 100%;
  width: 100%;
  padding: 15px;
  overflow: hidden;
  background: #04142d;
  z-index: 1;
  border-radius: 4px 4px 0 0;
}
.template-programme .logement .app .head .stick {
  position: absolute;
  top: 0;
  left: 0;
  text-transform: uppercase;
}
.template-programme .logement .app .head .stick--seen {
  transform: rotate(-45deg) translateY(150%) translateX(-45%);
  transform-origin: left center;
  background: #75c2bd;
  color: #FFF;
  font-size: 0.4705882353rem;
  font-weight: 700;
  letter-spacing: normal;
  display: inline-block;
  padding: 2px 20px;
  z-index: 2;
}
.template-programme .logement .app .head .stick--reserved {
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 10px 0;
  text-align: center;
  background: #75c2bd;
  transform: translateY(-95%);
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 0.7058823529rem;
  line-height: 0.7058823529rem;
  border-radius: 4px 4px 0 0;
  z-index: 0;
}
.template-programme .logement .app .head .stick--exclu {
  top: auto;
  bottom: 0;
  left: 20px;
  transform: translateY(50%);
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: #005d71;
  color: #FFF;
  z-index: 2;
}
.template-programme .logement .app .head .stick--exclu span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.5294117647rem;
  font-weight: 700;
  line-height: 1.11;
}
.template-programme .logement .app .head h3 {
  font-family: "Gotham", sans-serif;
  font-weight: 600;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
}
@media screen and (max-width: 1023px) {
  .template-programme .logement .app .head h3 {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.template-programme .logement .app .head .subtitle {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 0.8235294118rem;
  line-height: 1.5294117647rem;
}
.template-programme .logement .app .custScroll-wrapper {
  position: relative;
  padding: 25px 20px 20px 20px;
  overflow: auto;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
}
.template-programme .logement .app .custScroll-wrapper div {
  position: relative;
}
.template-programme .logement .app .custScroll-wrapper div span {
  display: inline-block;
}
.template-programme .logement .app .custScroll-wrapper div span:first-child {
  float: left;
}
.template-programme .logement .app .custScroll-wrapper div span:last-child {
  float: right;
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 0.7058823529rem;
  line-height: 0.7058823529rem;
}
.template-programme .logement .app .custScroll-wrapper div:after {
  content: "";
  display: block;
  clear: both;
}
.template-programme .logement .app .custScroll-wrapper div + div {
  padding-top: 12px;
}
.template-programme .logement .app .custScroll-wrapper div + div:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: 1px dotted #cfd1d5;
  display: block;
}
.template-programme .logement .app .prices {
  position: relative;
  width: 100%;
  height: 120px;
  border-radius: 0 0 4px 4px;
  overflow: hidden;
}
.template-programme .logement .app .prices:before {
  content: "";
  height: 100%;
  width: 0;
  display: inline-block;
  vertical-align: middle;
}
.template-programme .logement .app .prices > div:not(.cta-container):not(.custScroll-wrapper) {
  position: relative;
  width: 100%;
  height: 100%;
}
.template-programme .logement .app .prices .strike {
  position: relative;
  display: inline-block;
  font-family: "Gotham", sans-serif;
  font-weight: 500;
  letter-spacing: 0rem;
  font-size: 0.8235294118rem;
  line-height: 0.8235294118rem;
}
.template-programme .logement .app .prices .strike:after {
  content: "";
  width: 100%;
  height: 1px;
  background: black;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-1px);
}
.template-programme .logement .app .prices .price {
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
  line-height: normal;
  letter-spacing: normal;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .template-programme .logement .app .prices .price {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.template-programme .logement .app .prices .cta-container {
  position: absolute;
  left: 50%;
  bottom: 0px;
  text-align: center;
  width: 100%;
  padding: 15px 20px;
  background: #FFF;
  margin-top: 0;
  transform: translateX(-50%) translateY(100%);
  transition: transform 0.35s ease-in-out;
}
.template-programme .logement .app .prices .cta-container .btn--primary--white {
  font-size: 0.7058823529rem;
  padding: 10px 15px;
  letter-spacing: normal;
  width: calc(100% - 30px);
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .template-programme .logement .visualisation .filters {
    right: 20px;
    text-align: right;
  }
  .template-programme .logement .visualisation .filters .btn-container {
    display: block;
  }
  .template-programme .logement .visualisation .filters .btn-container + .btn-container {
    margin-left: 0;
    margin-top: 10px;
  }
  .template-programme .logement .visualisation .filters .btn-container .selected {
    line-height: normal;
    padding: 9px 60px 9px 15px;
  }
  .template-programme .logement .visualisation .filters .btn-container .submenu {
    position: absolute;
    left: 0;
    max-height: 109px;
    overflow: auto;
  }
  .template-programme .logement .visualisation .filters .btn-container .submenu li {
    padding: 9px 15px;
    line-height: normal;
  }
}
@media screen and (max-width: 767px) {
  .template-programme .logement .visualisation {
    width: 100%;
    height: 320px;
  }
  .template-programme .logement .visualisation .filters {
    right: auto;
    left: 50%;
    text-align: center;
    transform: translateX(-50%);
    width: 100%;
    pointer-events: none;
  }
  .template-programme .logement .visualisation .filters .btn-container {
    display: inline-block;
    vertical-align: top;
    pointer-events: auto;
  }
  .template-programme .logement .visualisation .filters .btn-container + .btn-container {
    margin-left: 10px;
    margin-top: 0;
  }
  .template-programme .logement .visualisation .filters .btn-container .selected {
    line-height: normal;
    padding: 9px 60px 9px 15px;
  }
  .template-programme .logement .visualisation .filters .btn-container .submenu {
    position: absolute;
    left: 0;
    max-height: 109px;
    overflow: auto;
  }
  .template-programme .logement .visualisation .filters .btn-container .submenu li {
    padding: 9px 15px;
    line-height: normal;
  }
}
.template-programme .certifications {
  margin-top: 50px;
}
.template-programme .timeline {
  margin-top: 90px;
}
.template-programme .timeline h2 {
  margin-bottom: 40px;
}
.template-programme .interieur {
  padding-top: 70px;
  margin-top: 90px;
}
.template-programme .interieur .content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #FFF;
}
.template-programme .interieur .content h2 {
  line-height: 1;
  margin-bottom: 15px;
}
.template-programme .interieur .content p {
  line-height: 1.5;
}
.template-programme .interieur .content .btn + .btn {
  margin-left: 2%;
  margin-top: 10px;
}
.template-programme .interieur .col-1-2 {
  vertical-align: middle;
}
.template-programme .interieur .col-1-2:first-child .content img {
  width: 100%;
  height: auto;
  min-width: 520px;
}
.template-programme .interieur .col-1-2:first-child p {
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 1.6470588235rem;
  line-height: 2.2352941176rem;
  color: #04142d;
}
@media screen and (max-width: 767px) {
  .template-programme .interieur .col-1-2:first-child p {
    font-size: 1.2941176471rem;
    line-height: 1.36;
  }
}
.template-programme .interieur .col-1-2:first-child .center {
  margin-top: -4%;
  margin-left: 40%;
  display: inline-block;
  text-align: left;
}
.template-programme .interieur .col-1-2:last-child .content {
  width: 100%;
  max-width: 450px;
}
.template-programme .interieur .col-1-2:last-child p + p {
  margin-top: 30px;
}
.template-programme .interieur .show-ipad-land {
  display: none;
}
@media screen and (max-width: 1120px) {
  .template-programme .interieur .col-1-2:last-child .shape {
    margin-left: -10px;
  }
  .template-programme .interieur .col-1-2:last-child .content {
    width: 85%;
    left: 55%;
  }
}
@media screen and (max-width: 1024px) {
  .template-programme .interieur {
    padding-bottom: 140px;
  }
  .template-programme .interieur .show-ipad-land {
    position: absolute;
    top: 0;
    left: 90%;
    display: block;
  }
  .template-programme .interieur .hide-ipad-land {
    display: none;
  }
  .template-programme .interieur .col-1-2:last-child .shape {
    margin-left: -20px;
  }
  .template-programme .interieur .col-1-2:last-child .content {
    position: relative;
    top: auto;
    left: 25px;
    transform: translateY(50%);
    max-width: 95%;
  }
}
@media screen and (max-width: 1023px) {
  .template-programme .interieur {
    padding-bottom: 0;
  }
  .template-programme .interieur .show-ipad-land {
    position: absolute;
    top: 90%;
    left: 100px;
    display: block;
    display: none;
  }
  .template-programme .interieur .hide-ipad-land {
    display: block;
  }
  .template-programme .interieur .col-1-2 {
    display: block;
    width: 100%;
  }
  .template-programme .interieur .col-1-2:first-child .content img {
    min-width: 0;
  }
  .template-programme .interieur .col-1-2:last-child .shape {
    margin-top: -60px;
    width: 90%;
    margin-left: 10%;
  }
  .template-programme .interieur .col-1-2:last-child .content {
    position: absolute;
    top: 50%;
    left: calc(10% + 80px);
    width: 80%;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 767px) {
  .template-programme .interieur .col-1-2:first-child .shape {
    width: 150%;
    margin-left: -20%;
  }
  .template-programme .interieur .col-1-2:first-child .shape img {
    width: 100%;
  }
  .template-programme .interieur .col-1-2:first-child .content {
    top: 43%;
    width: 90%;
    margin: 0 auto 0 -30px;
    text-align: left;
  }
  .template-programme .interieur .col-1-2:first-child .content img {
    width: 100%;
  }
  .template-programme .interieur .col-1-2:first-child .center {
    margin-left: 40px;
    margin-top: 10px;
  }
  .template-programme .interieur .col-1-2:last-child .shape {
    margin-left: -100px;
    width: 100%;
  }
  .template-programme .interieur .col-1-2:last-child .content {
    left: 0;
    width: 100%;
    padding: 0 20px;
  }
  .template-programme .interieur .col-1-2:last-child .content .btn {
    min-width: 100px;
    padding: 11px 20px;
  }
}
.template-programme .rencontrer {
  margin-top: 90px;
  padding-bottom: 5px;
}
.template-programme .rencontrer > .row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.template-programme .rencontrer .content {
  padding-right: 50px;
}
.template-programme .rencontrer .content p {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 1023px) {
  .template-programme .rencontrer .content p {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.template-programme .rencontrer .content p.weight--demi {
  font-weight: 700;
}
.template-programme .rencontrer h2 {
  margin-bottom: 30px;
}
.template-programme .rencontrer .address {
  color: #0085a1;
}
@media screen and (max-width: 1023px) {
  .template-programme .rencontrer .image-decorated {
    display: none;
  }
  .template-programme .rencontrer .image-decorated.content {
    display: block;
    width: 100%;
  }
  .template-programme .rencontrer .image-decorated.content .btn {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .template-programme .rencontrer .content {
    padding-right: 0;
  }
  .template-programme .rencontrer .content.col-1-2 .btn {
    margin-top: 20px;
  }
  .template-programme .rencontrer .btn {
    padding: 11px 20px;
    min-width: 100px;
  }
}
.template-programme .prog-sim {
  margin-top: 90px;
}
.template-programme .icade-part {
  margin-top: 90px;
}
.template-programme .proxy-city {
  margin-top: 90px;
  margin-bottom: 45px;
}
.template-programme .proxy-city .cities {
  margin-top: 30px;
}
.template-programme .proxy-city a {
  display: inline-block;
  vertical-align: middle;
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
  width: auto;
}
@media screen and (max-width: 1023px) {
  .template-programme .proxy-city a {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.template-programme .proxy-city a:hover {
  cursor: pointer;
  text-decoration: underline;
}
.template-programme .proxy-city a + a {
  margin-left: 20px;
}
.template-programme .proxy-city .hideDesk {
  display: none;
}
@media screen and (max-width: 767px) {
  .template-programme .proxy-city .showDesk {
    display: none;
  }
  .template-programme .proxy-city .hideDesk {
    display: block;
  }
  .template-programme .proxy-city a + a {
    margin-left: 40px;
  }
}
.template-programme .contact-form {
  margin-top: 40px;
  position: relative;
  padding-bottom: 40px;
}
.template-programme .contact-form > .row > div {
  margin-top: 15px;
  margin-bottom: 20px;
}
.template-programme .contact-form .title-container {
  margin-bottom: 40px;
}
.template-programme .contact-form label {
  cursor: text;
}
.template-programme .contact-form .content {
  position: relative;
  max-width: 560px;
  margin-left: auto;
}
.template-programme .contact-form .content_inner {
  max-width: 330px;
  margin: 0 auto;
}
.template-programme .contact-form .content_inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 200px;
  height: 200px;
  border-radius: 200px;
  background-color: #9dbc00;
  border-radius: 0 0 0 200px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.template-programme .contact-form .content p.intro {
  text-transform: uppercase;
  text-align: center;
  font-weight: 600;
}
.template-programme .contact-form .content p.days-counter {
  text-align: center;
  margin-top: 50px;
  margin-bottom: 50px;
  font-size: 5.8823529412rem;
  line-height: 4.1176470588rem;
  letter-spacing: -0.1823529412rem;
  font-weight: 600;
}
.template-programme .contact-form .content p.little {
  text-align: center;
  margin-top: 50px;
  margin-bottom: 50px;
  font-weight: 500;
  font-size: 1.0588235294rem;
  line-height: 1.4705882353rem;
}
.template-programme .contact-form .content .btn {
  margin-top: 25px;
}
.template-programme .contact-form .inlineBlock {
  font-size: 0;
}
.template-programme .contact-form .inlineBlock > * {
  display: inline-block;
  vertical-align: middle;
}
.template-programme .contact-form form {
  padding-right: 140px;
  padding-left: 60px;
}
.template-programme .contact-form form .input-text {
  margin-top: 10px;
}
.template-programme .contact-form form input[type=submit], .template-programme .contact-form form button[type=submit] {
  margin-top: 30px;
}
.template-programme .contact-form form .legend {
  margin-top: 50px;
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 0.7058823529rem;
  line-height: 0.7058823529rem;
  color: #cfd1d5;
}
.template-programme .contact-form form input[type=radio] {
  opacity: 0;
  width: 0;
  height: 0;
  display: none;
  visibility: hidden;
  position: absolute;
  left: -99999px;
}
@media screen and (max-width: 1120px) {
  .template-programme .contact-form .col-1-2 form {
    padding-right: 40px;
    padding-left: 100px;
  }
}
@media screen and (max-width: 1023px) {
  .template-programme .contact-form .col-1-2 {
    display: block;
    width: 100%;
  }
  .template-programme .contact-form .col-1-2 form {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  .template-programme .contact-form .shapes {
    padding-bottom: 70px;
  }
  .template-programme .contact-form .shapes img {
    width: 98%;
  }
  .template-programme .contact-form .shapes .shape-black img {
    width: 90%;
  }
  .template-programme .contact-form .content .btn {
    padding: 11px 20px;
    min-width: 100px;
    margin-top: 15px;
  }
}
.template-programme .logement-co {
  margin-top: 90px;
  padding-bottom: 20px;
}
.template-programme .logement-co > .row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.template-programme .logement-co .content {
  padding-right: 50px;
}
.template-programme .logement-co .content h2 {
  font-family: "Gotham", sans-serif;
  font-weight: 700;
  letter-spacing: 0rem;
  font-size: 1.6470588235rem;
  line-height: 2.2352941176rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .template-programme .logement-co .content h2 {
    font-size: 1.2941176471rem;
    line-height: 1.36;
  }
}
.template-programme .logement-co .content p {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
}
@media screen and (max-width: 1023px) {
  .template-programme .logement-co .content p {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.template-programme .logement-co .content ul li span {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  letter-spacing: 0rem;
  font-size: 1rem;
  line-height: 1.5294117647rem;
}
@media screen and (max-width: 1023px) {
  .template-programme .logement-co .content ul li span {
    font-size: 0.7647058824rem;
    line-height: 1.4117647059rem;
  }
}
.template-programme .logement-co .content ul li:before {
  content: "";
  width: 5px;
  height: 5px;
  background: #04142d;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  border-radius: 5px;
}
.template-programme .logement-co .content .btn {
  margin-top: 20px;
}
.template-programme .logement-co .image img {
  width: 540px;
  height: auto;
}
.template-programme .logement-co .showMobile {
  display: none;
}
@media screen and (max-width: 1024px) {
  .template-programme .logement-co .image {
    text-align: right;
    padding: 20px;
  }
  .template-programme .logement-co .image img {
    width: 90%;
    height: auto;
    display: inline-block;
    vertical-align: middle;
  }
}
@media screen and (max-width: 1023px) {
  .template-programme .logement-co .col-1-2 {
    display: block;
    width: 100%;
  }
  .template-programme .logement-co .col-1-2:last-child {
    z-index: 1;
  }
  .template-programme .logement-co .image {
    padding: 20px;
  }
  .template-programme .logement-co .image img {
    width: 90%;
  }
  .template-programme .logement-co .showDesktop {
    display: none;
  }
  .template-programme .logement-co .showMobile {
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .template-programme .logement-co {
    padding-bottom: 50px;
  }
  .template-programme .logement-co .image img {
    width: 100%;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3JhbV9wYWdlLjEwYjRjMGM1LmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTs7K0VBQUE7QUNBQTs7K0VBQUE7QUNBQTs7K0VBQUE7QUNFRTtFQUNFO0VBQ0E7QUNRSjtBRFBJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUNTTjtBRFBNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJIREM7RUdFRDtBQ1NSO0FESk07RUFDRTtBQ01SO0FESE07RUFDRSxtQkhaQztBSWlCVDtBRERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUNHTjtBRERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCSHBDRTtFR3FDRjtFQUNBO0FDR047QURETTtFRDhMSjtFQUNBO0VBQ0E7RUFDQTtFQy9MTTtFQUNBO0VBQ0E7RUFDQSxtQkg5Q0s7RUcrQ0w7QUNNUjtBRERFO0VBQ0U7QUNHSjtBREFNO0VBQ0UsY0gxREE7QUk0RFI7QUREUTtFQUNFO0VBQ0E7QUNHVjtBREVJO0VBQ0U7QUNBTjtBREVNO0VBQ0UsY0hyRUs7QUlxRWI7QURJSTtFRGtERjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FFbkRGO0FGMUVFO0VDdUVFO0lEeURBO0lBQ0E7RUVsREY7QUFDRjtBREZNO0VBQ0U7QUNJUjtBRElRO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJIakdHO0VHa0dIO0FDSFY7QURLUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FDSFY7QURPUTtFQUNFO0VBQ0EsZ0JIN0dGO0FJd0dSO0FET1E7RUFDRSxnQkhoSEY7QUkyR1I7QURRTTtFQUNFO0FDTlI7QUYvRkU7RUM4R007SUFDRTtFQ1pSO0VEY1E7SUFDRTtFQ1pWO0VEaUJJO0lBQ0U7SUFDQTtFQ2ZOO0VEaUJNO0lBQ0U7RUNmUjtBQUNGO0FGckhFO0VDNElJO0lBQ0U7RUNwQk47RURzQk07SUFDRTtJQUNBO0VDcEJSO0VEd0JNO0lBQ0U7SUFDQTtFQ3RCUjtFRHlCSTtJQUNFO0VDdkJOO0FBQ0Y7QUY1SUU7RUN3S0U7SUFDRTtFQ3pCSjtFRDJCSTs7SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VDekJOO0VEMkJNOztJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUN4QlI7RUQyQk07O0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VDeEJSO0VEMkJNOztJQUNFO0lBQ0E7SUFDQTtFQ3hCUjtFRDBCUTs7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFQ3ZCVjtFRDBCUTs7SUFDRTtJQUNBO0VDdkJWO0VENEJJO0lBQ0U7RUMxQk47RUQ2Qkk7SUFDRTtJQUNBO0VDM0JOO0VENkJNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQzNCUjtFRDZCUTtJQUNFO0VDM0JWO0FBQ0Y7O0FEbUNFO0VBQ0U7QUNoQ0o7QURrQ0U7RUFDRTtFQUNBO0VBQ0E7QUNoQ0o7QURpQ0k7RUFDRTtBQy9CTjtBRG1DTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CSC9QQztBSThOVDtBRG9DTTtFQUNFLG1CSG5RQztBSWlPVDtBRHFDUTtFQUNFO0FDbkNWO0FGeE9FO0VDMFFNO0lBR0k7RUNqQ1Y7QUFDRjtBRG1DUTtFQUNFO0FDakNWO0FEb0NjO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJIdlJUO0FJcVBQO0FEcUNZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJIalNQO0FJOFBQO0FGL1BFO0VDZ1JNO0lBc0JJO0VDbkNWO0FBQ0Y7QURxQ1E7RUFDRTtBQ25DVjtBRHFDUTtFQUNFLG1CSC9TRztBSTRRYjtBRHNDVTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGdCSHJUSjtBSWlSUjtBRHlDWTtFQUNFLGdCSDNUTjtBSW9SUjtBRHdDYztFQUNFO0VBQ0E7RUFDQTtBQ3RDaEI7QUQ0Q1U7RUFDRSxtQkhwVUw7RUdxVUs7QUMxQ1o7QURnREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQzlDTjtBRnJTRTtFQ3FWRTtJQUVJO0VDOUNOO0FBQ0Y7QURnREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JIaldFO0VHa1dGO0VBQ0E7QUM5Q047QURnRE07RUQvSEo7RUFDQTtFQUNBO0VBQ0E7RUM4SE07RUFDQTtFQUNBO0VBQ0EsbUJIM1dLO0FJZ1ViO0FEZ0RJO0VBQ0U7RUFDQSxjSGxYTztBSW9VYjtBRmxVRTtFQzhXRTtJQUlJO0VDNUNOO0FBQ0Y7QUQ4Q0k7RUQvTUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRW9LRjtBRnZVRTtFQzhXRTtJRHpNQTtJQUNBO0VFc0tGO0FBQ0Y7QURvQ0k7RUFDRTtBQ2xDTjtBRG1DTTtFQUNFLGNIMVhEO0FJeVZQOztBQ3ZXQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQXNCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CTGhCTTtBSXlYUjtBQ3ZXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CTHRCSTtFS3VCSjtFQUNBO0FEeVdKO0FDdFdFO0VBQ0U7QUR3V0o7QUNyV0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHVXSjtBQ3BXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEc1dKO0FDbldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHFXSjtBRjNYRTtFRzBCRTtJQUNFO0lBQ0E7RURvV0o7QUFDRjtBQ2pXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSDBKRjtBRTBNRjtBRnhNRTtFQUNFO0VBQ0E7QUUwTUo7QUNyV0k7RUFDRTtFQUNBO0VBQ0E7QUR1V047QUN0V007RUFDRTtBRHdXUjtBQ3RXTTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGdCTGpGQTtFS2tGQTtFQUNBO0VBQ0E7RUFDQTtBRHdXUjtBQ3RXUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQkwzRkg7RUs0Rkc7RUFDQTtBRHdXVjtBQ3RXVTtFSGtHUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBK0JBO0VBQ0E7RUFDQTtFQUNBO0VHcklVLFdMcEdKO0FJbWRSO0FGbGRFO0VHMkdFO0lBQ0U7RUQwV0o7RUN6V0k7SUFDRTtFRDJXTjtFQzFXTTtJQUNFO0VENFdSO0VDMVdNO0lBQ0U7SUFDQTtFRDRXUjtFQzFXUTtJQUNFO0lBQ0E7RUQ0V1Y7RUNyV0U7SUFDRTtFRHVXSjtBQUNGOztBRW5mSTtFQUNFO0VBQ0E7QUZzZk47QUVwZkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRnNmTjtBRXJmTTtFSmdQSjtFQUNBO0VBQ0E7RUFDQSxZSWxQaUQ7RUptUGpELGFJblBpRDtFSm9QakQsb0JJcFBpRDtFSnFQakQseUJGdFBPO0VFZ1FQO0VJOVBNO0VBQ0E7RUFDQTtBRjhmUjtBRTVmTTtFQUNFO0VBQ0E7QUY4ZlI7QUU1Zk07RUFDRTtBRjhmUjtBRTVmTTtFQUNFO0VBQ0E7QUY4ZlI7QUU1Zk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRjhmUjtBRTdmUTtFQUNFO0FGK2ZWO0FFNWZNO0VBQ0U7RUFDQTtBRjhmUjtBRTFmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjRmSjtBRTFmRTtFQUNFO0FGNGZKO0FFMWZJO0VBQ0UsY045Q0s7RU0rQ0w7QUY0Zk47QUV4ZkU7RUFDRTtFQUNBO0FGMGZKO0FFemZJO0VBQ0U7QUYyZk47QUUxZk07RUFDRTtBRjRmUjtBRXRmRTtFQUNFO0FGd2ZKO0FFcmZFO0VBQ0U7RUFDQTtFSm1JRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FFcVhGO0FFemZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjJmTjtBRXZmRTtFQUNFO0VBQ0E7RUFDQSxjTnhGRztBSWlsQlA7QUV0ZkU7RUFDRTtBRndmSjtBRXBmSTtFQUNFO0FGc2ZOO0FFbGZFO0VKc0hBO0VJL0dFO0FGK2VKO0FGOVhFO0VBQ0U7RUFDQTtBRWdZSjtBRXZmSTtFQUNFO0VBQ0E7QUZ5Zk47QUZwbUJFO0VJa0hJO0lBQ0U7SUFDQTtFRnFmTjtBQUNGO0FFamZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUZtZko7QUVqZkk7RUp1Q0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSXpDSSxjTnBJRTtBSTJuQlI7QUZqbkJFO0VJd0hFO0lKNkNBO0lBQ0E7RUVnZEY7QUFDRjtBRTFmSTtFQUNFO0VBQ0E7RUFDQTtBRjRmTjtBRTFmTTtFQUNFO0VKa0ZOO0FFMmFGO0FGemFFO0VBQ0U7RUFDQTtBRTJhSjtBRTVmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUY4Zk47QUUxZkU7RUFDRTtBRjRmSjtBRXpmTTtFQUNFO0FGMmZSO0FFcmZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRnVmTjtBRXJmTTtFQUNFO0VBQ0E7RUFDQTtBRnVmUjtBRXBmTTtFQUNFO0VBQ0E7QUZzZlI7QUVuZk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRnFmUjtBRWxmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdON01FO0FJaXNCUjtBRWxmSTtFQUNFO0VBQ0E7RUFDQTtBRm9mTjtBRWxmTTtFQUNFO0FGb2ZSO0FFamZJO0VBQ0U7RUFDQTtFQUNBO0FGbWZOO0FGanJCRTtFSXNNUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VGOGVWO0VFM2VNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RUY2ZVI7QUFDRjtBRnRzQkU7RUlpT0k7SUFDRTtFRndlTjtBQUNGO0FGcHNCRTtFSWlPRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VGc2VKO0VFcmVJO0lBQ0U7RUZ1ZU47RUVyZUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VGdWVOO0FBQ0Y7QUZ2dUJFO0VJc1FJO0lBQ0U7RUZvZU47QUFDRjtBRm52QkU7RUlvUkU7SUFDRTtJQUNBO0VGa2VKO0VFaGVJO0lBQ0U7RUZrZU47RUVoZUk7SUFDRTtFRmtlTjtFRTlkRTtJQUNFO0lBQ0E7RUZnZUo7QUFDRjtBRjF3QkU7RUkrU0k7SUFDRTtJQUNBO0VGOGROO0VFNWRNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFRjhkUjtFRTVkUTtJQUNFO0lBQ0E7SUFDQTtFRjhkVjtFRXpkSTtJQUNFO0lKOUZOO0lBQ0E7SUFDQTtJQUNBO0lJNkZNO0VGOGROO0VFMWRFO0lBQ0U7RUY0ZEo7RUUxZEk7SUFDRTtFRjRkTjtBQUNGO0FGOXdCRTtFSXlUTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VGd2RSO0FBQ0Y7O0FFbmRBO0VBQ0U7QUZzZEY7QUVyZEU7RUFDRTtBRnVkSjtBRXRkSTtFQUNFO0FGd2ROOztBR3owQkE7OytFQUFBO0FBTUU7RUFDRTtFQUNBO0FIeTBCSjtBR3YwQkk7RUFDRTtFQUNBO0VBQ0E7QUh5MEJOO0FHdDBCSTtFQUNFO0FIdzBCTjtBR3AwQkU7RUFDRSxtQlBUUTtFT1VSLGNQYkk7RU9jSjtFQUNBO0FIczBCSjtBRmwxQkU7RUtRQTtJQU1JO0VIdzBCSjtBQUNGO0FGdjFCRTtFS2lCSTtJQUVJO0VIdzBCUjtBQUNGO0FHcjBCSTtFQUNFO0FIdTBCTjtBR3QwQk07RUFDRTtBSHcwQlI7QUdyMEJJO0VMeUlGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUszSUk7RUFDQTtBSDIwQk47QUZwMkJFO0VLc0JFO0lMK0lBO0lBQ0E7RUVtc0JGO0FBQ0Y7QUcvMEJJO0VBQ0U7QUhpMUJOO0FHaDFCTTtFQUNFO0VBQ0E7RUFDQTtBSGsxQlI7QUc3MEJFO0VBQ0U7RUFDQTtBSCswQko7QUZ0M0JFO0VLcUNBO0lBSUk7SUFDQTtFSGkxQko7QUFDRjtBR2gxQkk7RUFDRSxtQlA1Q1E7RU82Q1I7RUFDQTtFQUNBO0VBQ0E7QUhrMUJOO0FHajFCTTtFQUNFO0FIbTFCUjtBRnQ0QkU7RUs0Q0U7SUFVSTtJQUNBO0VIbzFCTjtBQUNGO0FHbjFCTTtFQUNFO0VBQ0E7QUhxMUJSO0FGaDVCRTtFS3lESTtJQUlJO0VIdTFCUjtBQUNGO0FGcjVCRTtFS3lESTtJQU9JO0lBQ0E7RUh5MUJSO0VHeDFCUTtJQUNFO0lBQ0E7RUgwMUJWO0FBQ0Y7QUd2MUJNO0VBQ0U7RUFDQTtFQUNBO0FIeTFCUjtBRnQ1QkU7RUswREk7SUFLSTtJQUNBO0VI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O0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFSnNtQ047QUFDRjtBRnA0Q0U7RU1xUkU7SUFVTTtFSnltQ1I7QUFDRjtBSXZtQ007RUFDRSxjUnRTQTtFUXVTQTtFQUNBO0FKeW1DUjtBSXhtQ1E7RUFDRTtBSjBtQ1Y7QUl0bUNJO0VBQ0U7RUFDQTtFQUNBO0VOcEdKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUU2c0NGO0FJM21DTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUo2bUNSO0FJMW1DSTtFQUNFO0FKNG1DTjtBSTFtQ0k7RUFDRTtFQUNBO0FKNG1DTjtBRjU2Q0U7RU04VEU7SUFJTTtFSjhtQ1I7QUFDRjtBSTVtQ0k7RU5uSkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFTWlKSTtBSmtuQ047QUlobkNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY1I1VUM7QUk4N0NQO0FJaG5DSTtFQUNFO0FKa25DTjtBSWhuQ0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmtuQ047QUZwOENFO0VNMlVFO0lBU0k7RUpvbkNOO0FBQ0Y7QUlqbkNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSm1uQ0o7QUlsbkNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKb25DTjs7QUtsL0NBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QUxxL0NGOztBS2wvQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUxxL0NGOztBS2wvQ0E7RUFDRTtFQUNBO0FMcS9DRjs7QUtsL0NBO0VBQ0U7QUxxL0NGOztBS24vQ0E7RUFDRTtBTHMvQ0Y7O0FLbi9DQTs7RUFFRTtBTHMvQ0Y7O0FLbi9DQTs7RUFFRTtBTHMvQ0Y7O0FLbi9DQTtFQUNFO0VBQ0E7QUxzL0NGOztBS3AvQ0E7RUFDRTtBTHUvQ0Y7O0FLci9DQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFD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Q0E7RUFDQTtBRXlzR0Y7QUY1MkdFO0VFMGpDa0I7SUZyNUJoQjtJQUNBO0VFMnNHRjtBQUNGO0FBcnpFb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQSxtQkoza0NoQjtFSTRrQ2dCO0VBQ0E7RUFDQTtFQUNBO0FBdXpFeEI7QUFsekVZO0VBQ0k7QUFvekVoQjtBQS95RVk7RUFDSTtFQUNBO0FBaXpFaEI7QUE3eUVRO0VBQ0k7QUEreUVaO0FGLzNHRTtFRW9sQ1U7SUFDSTtJQUNBO0VBOHlFZDtFQTV5RWM7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFQTh5RWxCO0FBQ0Y7QUZsNUdFO0VFeW1DVTtJQUNJO0lBQ0E7RUE0eUVkO0VBMXlFYztJQUNJO0VBNHlFbEI7RUF4eUVVO0lBQ0k7RUEweUVkO0VBeHlFYztJQUNJO0VBMHlFbEI7RUF0eUVVO0lBQ0k7RUF3eUVkO0VBcnlFVTtJQUNJO0VBdXlFZDtBQUNGO0FGdjZHRTtFRWtpQ0U7SUFrR1E7RUF1eUVWO0VBcnlFYztJQUNJO0VBdXlFbEI7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vaWNhZGUtaW1tb2JpbGllci8uL2Fzc2V0cy9zY3NzL2Jhc2UvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2ljYWRlLWltbW9iaWxpZXIvLi9hc3NldHMvc2Nzcy9iYXNlL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvYmFzZS9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vaWNhZGUtaW1tb2JpbGllci8uL2Fzc2V0cy9zY3NzL25hdi9fdGltZWxpbmUuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvdGVtcGxhdGVzL19wcm9ncmFtbWUuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvYmxvY2tzL192aXRyaW5lLXNsaWRlci5zY3NzIiwid2VicGFjazovL2ljYWRlLWltbW9iaWxpZXIvLi9hc3NldHMvc2Nzcy9ibG9ja3MvX2ludHJvLXByb2dyYW1tZS5zY3NzIiwid2VicGFjazovL2ljYWRlLWltbW9iaWxpZXIvLi9hc3NldHMvc2Nzcy9ibG9ja3MvX2xvdHMuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvYmxvY2tzL19sb3Quc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvcGx1Z2lucy9fanF1ZXJ5LXNjcm9sbGJhci5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBWQVJJQUJMRVMgKEJhc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBQYXRoXG4kcGF0aDogXCIuLi8uLi9cIjtcbiRwYXRoSU1HOiBcIiN7JHBhdGh9aW1nL1wiO1xuXG4vLyBDb2xvcnNcbiRibGFja0Rhcms6ICMwMDA7XG4kYmxhY2s6ICMwNDE0MmQ7XG4kYmxhY2tMaWdodDogI2NmZDFkNTtcbiR3aGl0ZTogI0ZGRjtcbiR0dXJxdW9pc2U6ICM3NWMyYmQ7XG4kYmx1ZTogIzAwNWQ3MTtcbiRkdWNrQmx1ZTogIzAwODVhMTtcbiRncmVlbjogIzlkYmMwMDtcbiR5ZWxsb3c6ICNmZmM2MDA7XG4kdmlvbGV0OiAjMjkwMjY0O1xuJGdyZXk6ICM5YjliOWI7XG4kZ3JleUxpZ2h0OiAjZWZlZmVmO1xuJGdyZXlNZWRpdW0gOiAjZjVmNWY1O1xuJHJlZDogI2VhODZhZDtcbiRyZWRFcnJvcjogI2QwMDIxYjtcbiRzY3JvbGxiYXI6ICNlZmVhZTg7XG5cbiRlYXNlSW5PdXQ6IGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG5cbi8vIFNpemVzIChGb250cylcbiR0aXRsZTFTaXplOiA1NjtcbiR0aXRsZUxQU2l6ZTogNTQ7XG4kdGl0bGUyU2l6ZTogNDA7XG4kdGl0bGUzU2l6ZTogMzI7XG4kdGl0bGU0U2l6ZTogMjY7XG4kcnViOiAzMDtcbiR0aXRsZTVTaXplOiAyMTtcbiRjaGFwbzogMjg7XG4kYmFzZWxpbmVTaXplOiAxODtcbiRib2R5Tm9ybWFsU2l6ZTogMjE7XG4kYm9keVNtYWxsU2l6ZTogMTc7XG4kbGlua1RhZ1NpemU6IDEzO1xuJGxpbmtNZW51U2l6ZTogMjA7XG4kbGlua1NpemU6IDEyO1xuJGxpbmtNZWRpdW1TaXplOiAxNDtcbiRsaW5rU21hbGxTaXplOiAxMTtcbiRwcml4QmFycmVTaXplOiAxNDtcbiRmaWx0ZXJTaXplOiAxNDtcbiRrZXlGaWd1cmVTaXplOiA2NTtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGVU5DVElPTlMgKEJhc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBVc2luZyByZW0gZm9udCBzaXplIHVuaXQgd2l0aCBweCBmYWxsYmFja3NcbkBmdW5jdGlvbiBmb250LXNpemUoJHZhbHVlOiAkYm9keVNtYWxsU2l6ZSkge1xuICBAcmV0dXJuICR2YWx1ZSAvICRib2R5U21hbGxTaXplICsgcmVtO1xufVxuXG5AZnVuY3Rpb24gcHgycmVtKCR2YWx1ZTogMTYpIHtcbiAgQHJldHVybiBmb250LXNpemUoJHZhbHVlKTtcbn1cblxuLy8gTGV0dGVyIHNwYWNpbmcgY29udmVydGVyIChQaG90b3Nob3AgdmFsdWUpXG5AZnVuY3Rpb24gbGV0dGVyLXNwYWNpbmcoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gMTAwMCArIGVtO1xufVxuXG4vLyBMaW5lIGhlaWdodCBjYWxjdWxhdG9yXG5AZnVuY3Rpb24gbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0KSB7XG4gIEByZXR1cm4gJGxpbmUtaGVpZ2h0IC8gJGZvbnQtc2l6ZTtcbn1cblxuLy9leGVtcGxlXG4vL1xuLy8gdmlhIGZ1bmN0aW9uXG4vLyBmb250LXNpemU6IGZvbnQtc2l6ZSgxNik7XG4vL1xuLy8gdmlhIG1peGluXG4vLyBAaW5jbHVkZSBmb250LXNpemUoMTUpO1xuLy8gQGluY2x1ZGUgbGluZS1oZWlnaHQoMTUsIDEzKTtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNSVhJTlMgKEJhc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBNRURJQSBRVUVSSUVTXG5AbWl4aW4gbXEtc21hbGwtbW9iaWxlKCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjVweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1FRElBIFFVRVJJRVNcbkBtaXhpbiBtcS1tb2JpbGUoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gQGluY2x1ZGUgbXEtbW9iaWxlIHsgfVxuQG1peGluIG1xLXBvcnRyYWl0KCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7IH1cbkBtaXhpbiBtcS1sYW5kc2NhcGUoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEBpbmNsdWRlIG1xLWxhbmRzY2FwZSB7IH1cbkBtaXhpbiBtcS1saXR0bGVkZXNrKCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTIwcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBAaW5jbHVkZSBtcS1saXR0bGVkZXNrIHsgfVxuQG1peGluIG1xLXNpemUoJHNpemUpIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKCN7JHNpemV9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gQGluY2x1ZGUgbXEtc2l6ZSgpIHsgfVxuXG4vLyBGb250c1xuQG1peGluIHRpdGxlLTEoJHdlaWdodDogOTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuOCk7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCR0aXRsZTFTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg2NCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg1MCk7XG4gICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg1NSk7XG4gIH1cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDQwKTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuNCk7XG4gIH1cbn1cblxuQG1peGluIHRpdGxlLTEtMigkd2VpZ2h0OiA5MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgtMS44KTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHRpdGxlTFBTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg1NCk7XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg1MCk7XG4gICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg1NSk7XG4gIH1cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDQwKTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuNCk7XG4gIH1cbn1cblxuQG1peGluIHRpdGxlLTIoJHdlaWdodDogOTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuMik7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCR0aXRsZTJTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg0Mik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgzMik7XG4gICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgzNCk7XG4gIH1cbn1cblxuQG1peGluIHRpdGxlLTMoJHdlaWdodDogOTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCR0aXRsZTNTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgzMik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtaXhpbiB0aXRsZS00KCR3ZWlnaHQ6IDkwMCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogZm9udC1zaXplKDApO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgkdGl0bGU0U2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMzUpO1xuICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE3KTtcbiAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbiAgfVxufVxuXG5AbWl4aW4gdGl0bGUtNSgkd2VpZ2h0OiA1MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHRpdGxlNVNpemUpO1xuICBsaW5lLWhlaWdodDogMS4zMztcblxuICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMCk7XG4gIH1cblxuICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoMTgpO1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0LWNoYXBvKCR3ZWlnaHQ6IDQwMCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogZm9udC1zaXplKDApO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgkY2hhcG8pO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDM4KTtcblxuICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoMjIpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM2O1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0LXJ1Yigkd2VpZ2h0OiA0MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHJ1Yik7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMzgpO1xuXG4gIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC1yZWd1bGFyKCR3ZWlnaHQ6IDMwMCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogZm9udC1zaXplKDApO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgkYm9keU5vcm1hbFNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI4KTtcbiAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE2KTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC1zdWIoJHdlaWdodDogNTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoMCk7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCRib2R5Tm9ybWFsU2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMjQpO1xufVxuXG5AbWl4aW4gdGV4dC1zbWFsbCgkd2VpZ2h0OiAzMDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGJvZHlTbWFsbFNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbiAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDEzKTtcbiAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI0KTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC10YWcoJHdlaWdodDogNTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoMCk7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCRsaW5rVGFnU2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbkBtaXhpbiB0ZXh0LWZpbHRlcigkd2VpZ2h0OiA0MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGZpbHRlclNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbn1cblxuQG1peGluIHRleHQtbGl0dGxlTGluaygkd2VpZ2h0OiA3MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGxpbmtTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgkbGlua1NpemUpO1xufVxuXG5AbWl4aW4gdGV4dC1wcmljZVN0cmlrZSgkd2VpZ2h0OiA1MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHByaXhCYXJyZVNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKCRwcml4QmFycmVTaXplKTtcbn1cblxuQG1peGluIHRleHQta2V5TnVtYmVyKCR3ZWlnaHQ6IDYwMCkge1xuICBmb250LWZhbWlseTogJ0RpbicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgka2V5RmlndXJlU2l6ZSk7XG4gIGZvbnQtc3RyZXRjaDogY29uZGVuc2VkO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLy8gSGVscGVyc1xuQG1peGluIGlubGluZS1jb250YWluZXIoJGFsaWduOiBcIm1pZGRsZVwiKSB7XG4gIGZvbnQtc2l6ZTogMDtcblxuICAmID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiAjeyRhbGlnbn07XG4gIH1cbn1cblxuQG1peGluIGFic0NlbnRlcigkbW9yZVRyYW5zZm9ybTogXCJcIikge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICN7JG1vcmVUcmFuc2Zvcm19O1xufVxuXG5AbWl4aW4gZnVsbC1sYXlvdXQoKSB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xufVxuXG5AbWl4aW4gY2lyY2xlKCRjb2xvciwgJHNpemU6IDQwcHgpIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6ICRzaXplO1xuICBoZWlnaHQ6ICRzaXplO1xuICBib3JkZXItcmFkaXVzOiAkc2l6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gcXVhcnRlci1jaXJjbGUtdG9wLWxlZnQoJGNvbG9yLCAkc2l6ZTogNDBweCkge1xuICBAaW5jbHVkZSBjaXJjbGUoJGNvbG9yLCAkc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6ICRzaXplIDAgMCAwO1xufVxuXG5AbWl4aW4gcXVhcnRlci1jaXJjbGUtdG9wLXJpZ2h0KCRjb2xvciwgJHNpemU6IDQwcHgpIHtcbiAgQGluY2x1ZGUgY2lyY2xlKCRjb2xvciwgJHNpemUpO1xuICBib3JkZXItcmFkaXVzOiAwICRzaXplIDAgMDtcbn1cblxuQG1peGluIHF1YXJ0ZXItY2lyY2xlLWJvdHRvbS1sZWZ0KCRjb2xvciwgJHNpemU6IDQwcHgpIHtcbiAgQGluY2x1ZGUgY2lyY2xlKCRjb2xvciwgJHNpemUpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAkc2l6ZTtcbn1cblxuQG1peGluIHF1YXJ0ZXItY2lyY2xlLWJvdHRvbS1yaWdodCgkY29sb3IsICRzaXplOiA0MHB4KSB7XG4gIEBpbmNsdWRlIGNpcmNsZSgkY29sb3IsICRzaXplKTtcbiAgYm9yZGVyLXJhZGl1czogMCAwICRzaXplIDA7XG59XG4iLCIubmF2LS10aW1lbGluZSB7XG5cbiAgLmxpbmUtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjRweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDAlO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyAkZWFzZUluT3V0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY3RpZiB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGluZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI1cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1cHgpO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAkYmxhY2tMaWdodDtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxuICAgIC5wb2ludCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGFic0NlbnRlcihcInJvdGF0ZSg0NWRlZylcIik7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrTGlnaHQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgJGVhc2VJbk91dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudHh0LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIC5hY3RpZiB7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDIxKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1NSUpO1xuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICRibGFja0xpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zdGVwIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtY2hhcG8oNzAwKTtcbiAgICB9XG4gIH1cblxuICAmLS1sZWZ0IHtcbiAgICAubGluZS1jb250YWluZXIge1xuICAgICAgLnBvaW50IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tdHJhbnNwYXJlbnQge1xuICAgIC5saW5lLWNvbnRhaW5lciB7XG4gICAgICAmID4gZGl2IHtcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2tMaWdodDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzICRlYXNlSW5PdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hY3RpZiB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgLnBvaW50IHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBvaW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgJjpub3QoLm5hdi0tdGltZWxpbmUtLXRyYW5zcGFyZW50KSxcbiAgICAmOm5vdCgubmF2LS10aW1lbGluZS0tbGVmdCkge1xuICAgICAgLmNvbC0zLTQge1xuICAgICAgICAuY29sLTEtNCB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50eHQtY29udGFpbmVyIGRpdiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2NSUpO1xuICAgICAgICBtYXgtd2lkdGg6IDIxNXB4O1xuXG4gICAgICAgICYgKyBkaXYge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgJjpub3QoLm5hdi0tdGltZWxpbmUtLXRyYW5zcGFyZW50KSxcbiAgICAmOm5vdCgubmF2LS10aW1lbGluZS0tbGVmdCkge1xuICAgICAgPiAucm93ID4gLmNvbC0xLTQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50eHQtY29udGFpbmVyIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saW5lLWNvbnRhaW5lciAucG9pbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTJweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICY6bm90KC5uYXYtLXRpbWVsaW5lLS1sZWZ0KSB7XG4gICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgIC5saW5lLWNvbnRhaW5lcixcbiAgICAgIC50eHQtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgLnBvaW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgICAgIH1cblxuICAgICAgICAubGluZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2wtMS00IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDg1cHg7XG5cbiAgICAgICAgICAmLmFjdGlmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyg4NXB4IC0gMzBweCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmxpbmUtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgfVxuXG4gICAgICAudHh0LWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcblxuICAgICAgICAuY29sLTEtNCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uYXYtLXRpbWVsaW5lLS1pbmxpbmUge1xuICA+IC5idG4ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbiAgLmxpbmUtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDEwcHgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYWN0aWYge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAyNHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICR5ZWxsb3c7XG4gICAgICB9XG5cbiAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgIH1cbiAgICAgICYuaGFzLXN1YnRpbWVsaW5lIHtcbiAgICAgICAgLmlzLWRlc2t0b3Age1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaXMtbW9iaWxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICYuYWN0aWYge1xuICAgICAgICAgICAgLnBvaW50IHtcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAyNHB4O1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2tMaWdodDtcbiAgICAgICAgfVxuICAgICAgICAucG9pbnQge1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb2wtMS00IHtcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5wb2ludCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWN0aWYge1xuICAgICAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5saW5lIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjVweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTVweCk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICRibGFja0xpZ2h0O1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gICAgLmNvbC0xLTQge1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBvaW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDExcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBhYnNDZW50ZXIoXCJyb3RhdGUoNDVkZWcpXCIpO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFja0xpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudHh0LWNvbnRhaW5lciB7XG4gICAgZGl2IHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGNvbG9yOiAkYmxhY2tMaWdodDtcbiAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zdGVwIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtc21hbGwoNzAwKTtcbiAgICB9XG4gICAgLmFjdGlmIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQGltcG9ydCAnLi4vYmFzZS92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vYmFzZS9mdW5jdGlvbnMnO1xuQGltcG9ydCAnLi4vYmFzZS9taXhpbnMnO1xuQGltcG9ydCBcIi4uL25hdi90aW1lbGluZVwiO1xuQGltcG9ydCBcIi4uL2Jsb2Nrcy92aXRyaW5lLXNsaWRlclwiO1xuQGltcG9ydCBcIi4uL2Jsb2Nrcy9pbnRyby1wcm9ncmFtbWVcIjtcbkBpbXBvcnQgXCIuLi9ibG9ja3MvbG90c1wiO1xuQGltcG9ydCBcIi4uL2Jsb2Nrcy9sb3RcIjtcbkBpbXBvcnQgXCIuLi9wbHVnaW5zL2pxdWVyeS1zY3JvbGxiYXJcIjtcblxuLnRlbXBsYXRlLXByb2dyYW1tZSB7XG4gICAgQGluY2x1ZGUgbXEtc2l6ZShcIm1pbi13aWR0aDogMTAyNXB4XCIpIHtcbiAgICAgICAgLmZpbC1hcmlhbmUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbGFuZHNjYXBlKCkge1xuICAgICAgICAuZmlsLWFyaWFuZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5yb3cge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmltYWdlLWRlY29yYXRlZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHF1YXJ0ZXItY2lyY2xlLXRvcC1yaWdodCgkYmx1ZSwgMTUwcHgpO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTMwcHg7XG4gICAgICAgICAgICBsZWZ0OiAtMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyLCBoMyB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbGFuZHNjYXBlKCkge1xuICAgICAgICBoMiwgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMzApXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtY2l0eSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICB9XG5cbiAgICAuY3RhLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgICYgKyAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52aXRyaW5lIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJhY3RlcmlzdGlxdWVzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAuY2FyYWN0ZXJpc3RpcXVlLXdyYXBwZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyNXB4O1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDg1cHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZXNpZGVuY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuXG4gICAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgJi5hY3RpZiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgID4gLnJvdyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jaGFwbyB7XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4yNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGlmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgyNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OjIyMnB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuNTA7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgkbGlua1NpemUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLWxpdHRsZWRlc2soKSB7XG4gICAgICAgICAgICAuYmxvY2stcHVzaCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgICAgICAgICAucHVzaCB7XG4gICAgICAgICAgICAgICAgLmJsb2NrLXB1c2gge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGVudCA+IC5yb3cge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcblxuICAgICAgICAgICAgLmNvbC0yLTMsIC5jb2wtMS0zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2wtMS0zIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAuYmxvY2stcHVzaCB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg0NCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yMztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sLTEtMTIsIC5jb2wtMTEtMTIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIC5uYXYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGxpLCBsaS5hY3RpZiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG5cbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuYXJ0aWNsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxNCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43MTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbC0xLTMgLmJsb2NrLXB1c2gge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg0MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW46bm90KC5idG4pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMjIpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nZW1lbnQge1xuICAgICAgICAuYmxvY2stbG9nZW1lbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC52aXN1YWxpc2F0aW9uIHtcbiAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5maWx0ZXJzIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmICsgLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnRuLS1zZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zZWxlY3RlZDphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggMjBweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFwcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtOTBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjM1cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTtcbiAgICAgICAgICAgICAgICAmIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAuY3RhLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcblxuICAgICAgICAgICAgICAgIC5tYXNrIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zdGlja3tcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tc2VlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoMTUwJSkgdHJhbnNsYXRlWCgtNDUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHR1cnF1b2lzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tcmVzZXJ2ZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHR1cnF1b2lzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtbGl0dGxlTGluaygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tZXhjbHUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjExO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDYwMCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1maWx0ZXIoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdXN0U2Nyb2xsLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHggMjBweCAyMHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LWxpdHRsZUxpbmsoNDAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmICsgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICRibGFja0xpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpY2VzIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiA+IGRpdjpub3QoLmN0YS1jb250YWluZXIpOm5vdCguY3VzdFNjcm9sbC13cmFwcGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3RyaWtlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtcHJpY2VTdHJpa2UoKTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDcwMCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdGEtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMzVzIGVhc2UtaW4tb3V0LDtcblxuICAgICAgICAgICAgICAgICAgICAuYnRuLS1wcmltYXJ5LS13aGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMik7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAgICAgICAgIC52aXN1YWxpc2F0aW9uIHtcbiAgICAgICAgICAgICAgICAuZmlsdGVycyB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCA2MHB4IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgICAgIC52aXN1YWxpc2F0aW9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMyMHB4O1xuXG4gICAgICAgICAgICAgICAgLmZpbHRlcnMge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCA2MHB4IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jZXJ0aWZpY2F0aW9ucyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgLnRpbWVsaW5lIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmludGVyaWV1ciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhYnNDZW50ZXIoKTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuICsgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtY2hhcG8oNzAwKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwICsgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNob3ctaXBhZC1sYW5kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1saXR0bGVkZXNrKCkge1xuICAgICAgICAgICAgLmNvbC0xLTIge1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDU1JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLWxhbmRzY2FwZSgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNDBweDtcblxuICAgICAgICAgICAgLnNob3ctaXBhZC1sYW5kIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDkwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5oaWRlLWlwYWQtbGFuZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAuc2hhcGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTUlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLnNob3ctaXBhZC1sYW5kIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA5MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmhpZGUtaXBhZC1sYW5kIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogY2FsYygxMCUgKyA4MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNDMlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDAgLTMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZW5jb250cmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcblxuICAgICAgICA+IC5yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1zbWFsbCg0MDApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAmLndlaWdodC0tZGVtaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZHVja0JsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAgICAgICAgIC5pbWFnZS1kZWNvcmF0ZWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAmLmNvbC0xLTIgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9nLXNpbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgfVxuXG4gICAgLmljYWRlLXBhcnQge1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgIH1cblxuICAgIC5wcm94eS1jaXR5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcblxuICAgICAgICAuY2l0aWVzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDQwMCk7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGlkZURlc2sge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgICAgIC5zaG93RGVzayB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5oaWRlRGVzayB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEgKyBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0LWZvcm0ge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICA+IC5yb3cge1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGl0bGUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjdXJzb3I6IHRleHQ7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAmX2lubmVyIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMzMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHF1YXJ0ZXItY2lyY2xlLWJvdHRvbS1sZWZ0KCRncmVlbiwgMjAwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAmLmludHJvIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZGF5cy1jb3VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMDApO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDcwKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgtMy4xKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmxpdHRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTgpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5saW5lQmxvY2sge1xuICAgICAgICAgICAgQGluY2x1ZGUgaW5saW5lLWNvbnRhaW5lcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcblxuICAgICAgICAgICAgLmlucHV0LXRleHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9c3VibWl0XSwgYnV0dG9uW3R5cGU9c3VibWl0XSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZ2VuZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LWxpdHRsZUxpbmsoNDAwKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC05OTk5OXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbGl0dGxlZGVzaygpIHtcbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICAgICAgLnNoYXBlcyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2hhcGUtYmxhY2sge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ2VtZW50LWNvIHtcbiAgICAgICAgPiAucm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LWNoYXBvKDcwMCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1zbWFsbCg0MDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtc21hbGwoNDAwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaG93TW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob3dEZXNrdG9wIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hvd01vYmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG4ubG90LXZpdHJpbmUtc2xpZGVyIHtcbiAgJjphZnRlciB7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHRyYW5zcGFyZW50KSwgdG8ocmdiYSgwLCAwLCAwLCAwLjY1KSkpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMTY5LCAxNjksIDE2OSwgMCksIHJnYmEoMCwgMCwgMCwgMC42NSkpO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjY1KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDAsIDAsIDAsIDApKSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC42NSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC42NSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjY1KSAxMDAlKTtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDMwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4qL1xuXG4uYmxvY2stdml0cmluZS1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcblxuICAubWFpbkltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG5cbiAgLmpzLW9wZW5Qb3BpblNsaWRlcnMge1xuICAgIGN1cnNvcjogem9vbS1pbjtcbiAgfVxuXG4gIC5kZXNjcmlwdGlvblBpY3RvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDlweDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgfVxuXG4gICYgPiAuaWNvbi0tYXJyb3ctLXByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcbiAgfVxuXG4gICYgPiAuaWNvbi0tYXJyb3ctLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xLXNpemUoXCJtaW4td2lkdGg6IDEwMjVweFwiKSB7XG4gICAgLm5hdi1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cblxuICAubmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDVweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIEBpbmNsdWRlIGlubGluZS1jb250YWluZXIoKTtcblxuICAgICYgPiBidXR0b24ge1xuICAgICAgcGFkZGluZzogM3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgbWluLXdpZHRoOiA1NXB4O1xuICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgICAgPiBzcGFuID4gc3Bhbi5pY29uLXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG5cbiAgICAgICAgLnN0aWNrTmIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1saXR0bGVMaW5rKDcwMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBhYnNDZW50ZXIoKTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgIC5uYXYge1xuICAgICAgYm90dG9tOiAtMjBweDtcbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgbWluLXdpZHRoOiAzNXB4O1xuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICA+IHNwYW4gPiBzcGFuLmljb24td3JhcHBlciB7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuXG4gICAgICAgICAgLnN0aWNrTmIge1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi0tYXJyb3ctLXByZXYsIC5pY29uLS1hcnJvdy0tbmV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLWludHJvLXByb2dyYW1tZSB7XG4gIC5mbG9hdGluZy1ibG9jayB7XG4gICAgLnR4dC1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgICAudHh0LWNvbnRlbnRfX2luc2lkZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDk4JTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IC00cHggNHB4IDhweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgYm94LXNoYWRvdzogLTRweCA0cHggOHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBxdWFydGVyLWNpcmNsZS10b3AtcmlnaHQoJHllbGxvdywgMTUwcHgpO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBib3R0b206IC0zMHB4O1xuICAgICAgICBsZWZ0OiAtMzBweDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB9XG4gICAgICA+IC50YWdzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICAgIC5jdGEtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAuYnRuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWluLWhlaWdodDogNTJweDtcbiAgICAgICAgcGFkZGluZzogNnB4IDI1cHg7XG4gICAgICAgICYgKyAuYnRuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaDIge1xuICAgICAgICBtYXgtd2lkdGg6IDQzNXB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1lbnRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBhdXRvO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRvcDogMTBweDtcbiAgfVxuICBoMSB7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAuc3ViIHtcbiAgICAgIGNvbG9yOiAkZHVja0JsdWU7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLmNhcmFjdGVyaXN0aXF1ZS13cmFwcGVyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIGltZy5jYXJhY3RlcmlzdGlxdWUtbG9nbyB7XG4gICAgICBtYXgtd2lkdGg6IDI0MHB4O1xuICAgICAgJi0tYXJrYWRlYSB7XG4gICAgICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAuc3RyaWtlLXRleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgdGV4dC1wcmljZVN0cmlrZSgpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgIH1cbiAgfVxuXG4gIC5wcmljZSB7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoMjEpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICRibHVlO1xuICB9XG5cbiAgLnRleHQtdGFnIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC50eHQtbWFyZ2VCb3Qge1xuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICB9XG4gIH1cblxuICAudGFncyB7XG4gICAgQGluY2x1ZGUgaW5saW5lLWNvbnRhaW5lcigpO1xuXG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAucHViIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnR4dC1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgIC5hZGRyZXNzIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtc21hbGwoNjAwKTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgLmljb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICB1bCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBAaW5jbHVkZSBpbmxpbmUtY29udGFpbmVyKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmF2YW50YWdlLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgYm9yZGVyOiAxcHggZG90dGVkIHdoaXRlO1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgfVxuICB9XG5cbiAgLmN0YS1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICBhIHtcbiAgICAgICYgKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNoYXBlLXR4dCB7XG4gICAgLnNoYXBlcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDU2N3B4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5zaGFwZV9ncmVlbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICAuc2hhcGVfeWVsbG93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNDM1cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDE1MHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWSgtNjBweCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDYwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgLnR4dC1oZWFkZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAgICAgLmljb24tLWhvdXNlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRlbGl2ZXJ5IHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTcpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLXNpemUoXCJtaW4td2lkdGg6IDEyODBweFwiKSB7XG4gICAgLmZsb2F0aW5nLWJsb2NrIHtcbiAgICAgIC5zaGFwZS10eHQge1xuICAgICAgICAuc2hhcGVzIHtcbiAgICAgICAgICAuc2hhcGVfeWVsbG93IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVZKC02MHB4KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtbGl0dGxlZGVzaygpIHtcbiAgICAuY29sLTEtMiB7XG5cbiAgICAgIC5zaGFwZXMge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcS1zaXplKFwibWluLXdpZHRoOiAxMDI1cHhcIikge1xuICAgIC5mbG9hdGluZy1ibG9jayB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDg1dmg7XG4gICAgICBtaW4taGVpZ2h0OiAyMjBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuICAgICAgLnR4dC1jb250ZW50X19pbnNpZGUge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgfVxuICAgICAgLnNoYXBlLXR4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLWxhbmRzY2FwZSgpIHtcbiAgICAuc2hhcGUtdHh0IHtcbiAgICAgIC5zaGFwZXMge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAuc2hhcGUtdHh0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAuc2hhcGVzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICB9XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiAzODBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgLmNvbC0xLTI6bGFzdC1jaGlsZCB7XG4gICAgICAuc2hhcGVzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgICAgICAmLnNoYXBlX3llbGxvdyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVZKC00MHB4KSBzY2FsZSgwLjgpO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbnRlbnQge1xuICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIDQwcHgpO1xuICAgICAgICBAaW5jbHVkZSBhYnNDZW50ZXIoKTtcbiAgICAgICAgbGVmdDogNTIlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jdGEtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAuYnRuIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLXNpemUoXCJtYXgtd2lkdGg6IDQ2MHB4XCIpIHtcbiAgICAuY29sLTEtMjpsYXN0LWNoaWxkIHtcbiAgICAgIC5zaGFwZXMge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogNDUwcHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucHJvZ3JhbS1kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gICYtYmlob21lIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgID4gYnIsIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIExPVFMgKEJsb2NrcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5ibG9jay1sb3RzIHtcbiAgLy8gM0QgTUFQXG4gIC52aXN1YWxpc2F0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgICYgKyAuYmxvY2stbG90c19fY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgfVxuICB9XG4gIC8vIEZpbHRlcnNcbiAgLmZpbHRlcnMge1xuICAgIGJhY2tncm91bmQ6ICR0dXJxdW9pc2U7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBwYWRkaW5nOiAyNXB4IDAgNDBweDtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMzVweDtcbiAgICB9XG4gICAgLmJ0bi0tZmlsdGVyIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpbHRlcnMtY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgLnN3aXBlci1jb250YWluZXIge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpbHRlcnMtdGV4dCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDYwMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBMaXN0c1xuICAubGlzdHMge1xuICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgIH1cbiAgICAuYmxvY2stLWxpc3QtbG90cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JleU1lZGl1bTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIG1heC1oZWlnaHQ6IDU0MHB4O1xuICAgICAgYm94LXNoYWRvdzogMCA2cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICYubm8tc2Nyb2xsYWJsZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuc2Nyb2xsLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDM1cHggNjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgICAgbWF4LWhlaWdodDogNzQwcHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saXN0LWl0ZW1zIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDUwcHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTI1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgICBAaW5jbHVkZSBtcS1saXR0bGVkZXNrIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgICAgIC5saXN0LWl0ZW0ge1xuICAgICAgICAgIG1hcmdpbjogMTVweCAyNXB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA1MHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcS1saXR0bGVkZXNrIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMTVweCBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYnRuLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBtaW4td2lkdGg6IDI5MHB4O1xuICAgICAgfVxuXG4gICAgfVxuICAgIC5zd2lwZXItY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgICAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA1MHB4KTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTI1cHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMjVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI0MHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICBtYXgtd2lkdGg6IDQ3NXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICZfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAmOmxhc3QtY2hpbGQoKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHVzaFxuICAmX19wdXNoIHtcbiAgICBiYWNrZ3JvdW5kOiAkdHVycXVvaXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMjIpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDM0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAzMHB4IDE1cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnRpb24tcGFya2luZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1heC13aWR0aDogMTA1MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYnRuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgLm1lbnRpb24tcGFya2luZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE1KTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTE9UIChCbG9ja3MpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJsb2NrLWxvdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDQ3NXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi13aWR0aDogNDUwcHg7XG4gIEBpbmNsdWRlIG1xLWxpdHRsZWRlc2sge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTgwcHg7XG4gIH1cbiAgLmJsb2NrLWxvdC1jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjM1cztcbiAgfVxuICAmLS1zaW1wbGUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAuYmxvY2stbG90LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgLmJsb2NrLWxvdF9fdGV4dCB7XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICAmLS1zaW1wbGUge1xuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE0KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDIyKTtcbiAgICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgyMik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjVweCAxMHB4IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJsb2NrLWxvdF9fcHJpY2Uge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICB9XG4gICAgICAuY29uZmlndXJhdG9yLWxpbmsge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgfVxuICAgICAgLmNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gRXhjbHUgd2ViXG4gIC5pY29uLS1leGNsdXdlYiB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDkuNSk7XG4gIH1cbiAgLy8gVGFnc1xuICAudGFncyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgfVxuICAmX19ib2R5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuICAgICY6bm90KC5uby1wbGFuKTpob3ZlciwgJjpub3QoLm5vLXBsYW4pOmZvY3VzIHtcbiAgICAgIC5ibG9jay1sb3RfX2xheWVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gVGV4dFxuICAmX190ZXh0IHtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMTBweCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgaGVpZ2h0OiA5NHB4O1xuICAgIH1cbiAgICAmLS1zaW1wbGUge1xuICAgICAgLmNvbnRlbnQge1xuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwYWRkaW5nOiAxNXB4IDI1cHggMTVweCAyMHB4O1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucmVmLFxuICAgIC5leGNsdSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDE1cHg7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMTApO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZXhjbHUge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjgpO1xuICAgICAgfVxuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTIpO1xuICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgyMik7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoMCk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDM1cHgpO1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoOSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMTUpO1xuICAgICAgfVxuICAgICAgPiBzcGFuOm5vdCguc3ViKSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnN1YiB7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxNyk7XG4gICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoMCk7XG4gICAgfVxuICAgIC5pbmZvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxNCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDEyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIFByaWNlXG4gICZfX3ByaWNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDIxNXB4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTRweDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweCAzMHB4IDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4IDEwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHggMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnN0cmlrZS10ZXh0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgIEBpbmNsdWRlIHRleHQtcHJpY2VTdHJpa2UoKTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbWFsbC10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKCRsaW5rTWVkaXVtU2l6ZSk7XG4gICAgfVxuICAgIC5tZWRpdW0tdGV4dCB7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgkYm9keVNtYWxsU2l6ZSk7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1pbmktdGV4dCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0LXRhZyg1MDApO1xuICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTIpO1xuICAgIH1cbiAgICAucHJpY2Uge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgICAgY29sb3I6ICRibHVlO1xuICAgIH1cbiAgICAucHJpY2UtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLnR2YSB7XG4gICAgICBtYXgtd2lkdGg6IDkwcHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2xheWVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zNXM7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAubGF5ZXItY29udGFpbmVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG59XG4iLCIvKioqKioqKioqKioqKioqIFNDUk9MTEJBUiBCQVNFIENTUyAqKioqKioqKioqKioqKiovXG4uc2Nyb2xsLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2Nyb2xsLXdyYXBwZXIgPiAuc2Nyb2xsLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3ggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogc2Nyb2xsICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICB0b3A6IDA7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5zY3JvbGwtd3JhcHBlciA+IC5zY3JvbGwtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xufVxuXG4uc2Nyb2xsLWVsZW1lbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNjcm9sbC1lbGVtZW50LCAuc2Nyb2xsLWVsZW1lbnQgZGl2IHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseF92aXNpYmxlLFxuLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyLFxuLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYXJyb3cge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5zY3JvbGwtdGV4dGFyZWEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItdG9wLWNvbG9yOiAjOTk5OTk5O1xufVxuLnNjcm9sbC10ZXh0YXJlYSA+IC5zY3JvbGwtY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbi5zY3JvbGwtdGV4dGFyZWEgPiAuc2Nyb2xsLWNvbnRlbnQgPiB0ZXh0YXJlYSB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwO1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogc2Nyb2xsICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5zY3JvbGwtdGV4dGFyZWEgPiAuc2Nyb2xsLWNvbnRlbnQgPiB0ZXh0YXJlYTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xufVxuXG5cblxuXG5cblxuXG5cblxuLyoqKioqKioqKioqKioqKiBTSU1QTEUgSU5ORVIgU0NST0xMQkFSICoqKioqKioqKioqKioqKi9cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCxcbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2XG57XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCB7XG4gIGJvdHRvbTogMnB4O1xuICBoZWlnaHQ6IDhweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICByaWdodDogMjBweDtcbiAgdG9wOiA0MHB4O1xuICB3aWR0aDogOHB4O1xufVxuXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyLFxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2ssXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA4cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X3RyYWNrLFxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7XG5cbn1cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwOyB9XG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHsgYmFja2dyb3VuZC1jb2xvcjogI2MyYzJjMjsgfVxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudDpob3ZlciAuc2Nyb2xsLWJhciB7IGJhY2tncm91bmQtY29sb3I6ICM5MTkxOTE7IH1cbi5jdXN0b20tc2Nyb2xsYmFyLS1zZWNvbmRhcnkuc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHsgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7IH1cbi5jdXN0b20tc2Nyb2xsYmFyLS1zZWNvbmRhcnkuc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7IG9wYWNpdHk6IC45OyB9XG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC1kcmFnZ2FibGUgLnNjcm9sbC1iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjOTE5MTkxOyB9XG5cblxuLyogdXBkYXRlIHNjcm9sbGJhciBvZmZzZXQgaWYgYm90aCBzY3JvbGxzIGFyZSB2aXNpYmxlICovXG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyBsZWZ0OiAtMTJweDsgfVxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF90cmFjayB7IHRvcDogLTEycHg7IH1cblxuXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtMTJweDsgfVxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtMTJweDsgfVxuXG5cblxuXG5cblxuXG5cblxuXG4vKioqKioqKioqKioqKioqIFNJTVBMRSBPVVRFUiBTQ1JPTExCQVIgKioqKioqKioqKioqKioqL1xuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LFxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCBkaXZcbntcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXgge1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMTJweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMnB4O1xufVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGhlaWdodDogOHB4OyB0b3A6IDJweDsgfVxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyBsZWZ0OiAycHg7IHdpZHRoOiA4cHg7IH1cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGJhY2tncm91bmQtY29sb3I6ICRzY3JvbGxiYXI7IH1cblxuLmN1c3RvbS1zY3JvbGxiYXItLXNlY29uZGFyeVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlcixcbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X3RyYWNrLFxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHsgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrOyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrRGFyazsgfVxuLmN1c3RvbS1zY3JvbGxiYXItLXNlY29uZGFyeS5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTsgfVxuLmN1c3RvbS1zY3JvbGxiYXItLXNlY29uZGFyeS5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTsgb3BhY2l0eTogLjk7IH1cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWJhciB7IGJhY2tncm91bmQtY29sb3I6ICM5MTkxOTE7IH1cblxuXG4vKiBzY3JvbGxiYXIgaGVpZ2h0L3dpZHRoICYgb2Zmc2V0IGZyb20gY29udGFpbmVyIGJvcmRlcnMgKi9cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtY29udGVudC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIHsgbGVmdDogLTEycHg7IG1hcmdpbi1sZWZ0OiAxMnB4OyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgeyB0b3A6ICAtMTJweDsgbWFyZ2luLXRvcDogIDEycHg7IH1cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWJhciB7IG1pbi13aWR0aDogMTBweDsgfVxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWJhciB7IG1pbi1oZWlnaHQ6IDEwcHg7IH1cblxuXG4vKiB1cGRhdGUgc2Nyb2xsYmFyIG9mZnNldCBpZiBib3RoIHNjcm9sbHMgYXJlIHZpc2libGUgKi9cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGxlZnQ6IC0xNHB4OyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgdG9wOiAtMTRweDsgfVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtMTRweDsgfVxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtMTRweDsgfVxuXG5cblxuXG5cblxuXG5cblxuXG4vKioqKioqKioqKioqKioqIFNDUk9MTEJBUiBNQUMgT1MgWCAqKioqKioqKioqKioqKiovXG5cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LFxuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQgZGl2XG57XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudCBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyBkaXNwbGF5OiBub25lOyB9XG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2QzZFNzE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC1tcy1maWx0ZXI6XCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIG9wYWNpdHk6IDA7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA3cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogN3B4O1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG5cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xufVxuLnNjcm9sbGJhci1tYWNvc3g6aG92ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIsXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwtZHJhZ2dhYmxlIC5zY3JvbGwtYmFyIHtcbiAgLW1zLWZpbHRlcjpcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTcwKVwiO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzApO1xuICBvcGFjaXR5OiAwLjc7XG59XG5cblxuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXgge1xuICBib3R0b206IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IDBweDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMHB4O1xufVxuXG4vKiBzY3JvbGxiYXIgaGVpZ2h0L3dpZHRoICYgb2Zmc2V0IGZyb20gY29udGFpbmVyIGJvcmRlcnMgKi9cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtYmFyIHsgaGVpZ2h0OiA3cHg7IG1pbi13aWR0aDogMTBweDsgdG9wOiAtOXB4OyB9XG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWJhciB7IGxlZnQ6IC05cHg7IG1pbi1oZWlnaHQ6IDEwcHg7IHdpZHRoOiA3cHg7IH1cblxuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X291dGVyIHsgbGVmdDogMnB4OyB9XG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IC00cHg7IH1cblxuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1lbGVtZW50X291dGVyIHsgdG9wOiAycHg7IH1cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtNHB4OyB9XG5cbi8qIHVwZGF0ZSBzY3JvbGxiYXIgb2Zmc2V0IGlmIGJvdGggc2Nyb2xscyBhcmUgdmlzaWJsZSAqL1xuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IC0xMXB4OyB9XG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtMTFweDsgfVxuXG5cblxuXG5cblxuXG5cblxuXG4vKioqKioqKioqKioqKioqIFNDUk9MTEJBUiBMSUdIVCAqKioqKioqKioqKioqKiovXG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQsXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50IGRpdiB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudCBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9zaXplIHtcbiAgYmFja2dyb3VuZDogI2RiZGJkYjtcbiAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l4TURBbElpQjVNajBpTUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUkyUmlaR0prWWlJZ2MzUnZjQzF2Y0dGamFYUjVQU0l4SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTmxPR1U0WlRnaUlITjBiM0F0YjNCaFkybDBlVDBpTVNJdlBnb2dJRHd2YkdsdVpXRnlSM0poWkdsbGJuUStDaUFnUEhKbFkzUWdlRDBpTUNJZ2VUMGlNQ0lnZDJsa2RHZzlJakVpSUdobGFXZG9kRDBpTVNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtLU0lnTHo0S1BDOXpkbWMrJyk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNkYmRiZGIgMCUsICNlOGU4ZTggMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCNkYmRiZGIpLCBjb2xvci1zdG9wKDEwMCUsI2U4ZThlOCkpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZGJkYmRiIDAlLCNlOGU4ZTggMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZGJkYmRiIDAlLCNlOGU4ZTggMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgI2RiZGJkYiAwJSwjZThlOGU4IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNkYmRiZGIgMCUsI2U4ZThlOCAxMDAlKTtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAxN3B4O1xuICBsZWZ0OiAwO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTdweDtcbn1cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJeE1EQWxJaUI1TWowaU1DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMlpsWm1WbVpTSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU5tTldZMVpqVWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKycpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmVmZWZlIDAlLCAjZjVmNWY1IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwjZmVmZWZlKSwgY29sb3Itc3RvcCgxMDAlLCNmNWY1ZjUpKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZlZmVmZSAwJSwjZjVmNWY1IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZlZmVmZSAwJSwjZjVmNWY1IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZWZlZmUgMCUsI2Y1ZjVmNSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmVmZWZlIDAlLCNmNWY1ZjUgMTAwJSk7XG5cbiAgYm9yZGVyOiAxcHggc29saWQgI2RiZGJkYjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5cbi8qIHNjcm9sbGJhciBoZWlnaHQvd2lkdGggJiBvZmZzZXQgZnJvbSBjb250YWluZXIgYm9yZGVycyAqL1xuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgeyBsZWZ0OiAtMTdweDsgbWFyZ2luLWxlZnQ6IDE3cHg7IH1cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWNvbnRlbnQuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSB7IHRvcDogIC0xN3B4OyBtYXJnaW4tdG9wOiAgMTdweDsgfVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtYmFyIHsgaGVpZ2h0OiAxMHB4OyBtaW4td2lkdGg6IDEwcHg7IHRvcDogMHB4OyB9XG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtYmFyIHsgbGVmdDogMHB4OyBtaW4taGVpZ2h0OiAxMHB4OyB3aWR0aDogMTBweDsgfVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGhlaWdodDogMTJweDsgbGVmdDogMnB4OyB0b3A6IDJweDsgfVxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IC00cHg7IH1cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyBsZWZ0OiAycHg7IHRvcDogMnB4OyB3aWR0aDogMTJweDsgfVxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IHRvcDogLTRweDsgfVxuXG4vKiB1cGRhdGUgc2Nyb2xsYmFyIG9mZnNldCBpZiBib3RoIHNjcm9sbHMgYXJlIHZpc2libGUgKi9cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTE5cHg7IH1cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IHRvcDogLTE5cHg7IH1cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGxlZnQ6IC0xOXB4OyB9XG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgdG9wOiAtMTlweDsgfVxuXG5cblxuXG5cblxuXG5cblxuXG4vKioqKioqKioqKioqKioqIFNDUk9MTEJBUiBSQUlMICoqKioqKioqKioqKioqKi9cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LFxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50IGRpdlxue1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50IGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlcjpob3ZlciAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEycHg7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogM3B4IDAgMnB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwIDJweCAwIDNweDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEycHg7XG59XG5cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMGI5YTA7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5cbiAgYm94LXNoYWRvdzogMXB4IDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyOmhvdmVyIC5zY3JvbGwtYmFyIHtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG4vKiBzY3JvbGxiYXIgaGVpZ2h0L3dpZHRoICYgb2Zmc2V0IGZyb20gY29udGFpbmVyIGJvcmRlcnMgKi9cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgeyBsZWZ0OiAtMTdweDsgbWFyZ2luLWxlZnQ6IDE3cHg7IH1cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtY29udGVudC5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIHsgbWFyZ2luLXRvcDogMTdweDsgdG9wOiAtMTdweDsgfVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1iYXIgeyBoZWlnaHQ6IDEwcHg7IG1pbi13aWR0aDogMTBweDsgdG9wOiAxcHg7IH1cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWJhciB7IGxlZnQ6IDFweDsgbWluLWhlaWdodDogMTBweDsgd2lkdGg6IDEwcHg7IH1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGhlaWdodDogMTVweDsgbGVmdDogNXB4OyB9XG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X3NpemUgeyBoZWlnaHQ6IDJweDsgbGVmdDogLTEwcHg7IHRvcDogNXB4OyB9XG5cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyB0b3A6IDVweDsgd2lkdGg6IDE1cHg7IH1cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IDVweDsgdG9wOiAtMTBweDsgd2lkdGg6IDJweDsgfVxuXG4vKiB1cGRhdGUgc2Nyb2xsYmFyIG9mZnNldCBpZiBib3RoIHNjcm9sbHMgYXJlIHZpc2libGUgKi9cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtMjVweDsgfVxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC0yNXB4OyB9XG5cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGxlZnQ6IC0yNXB4OyB9XG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyB0b3A6IC0yNXB4OyB9XG5cblxuXG5cblxuXG5cblxuXG5cbi8qKioqKioqKioqKioqKiogU0NST0xMQkFSIERZTkFNSUMgKioqKioqKioqKioqKioqL1xuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQsXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2XG57XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IHtcbiAgYm90dG9tOiAycHg7XG4gIGhlaWdodDogN3B4O1xuICBsZWZ0OiAwO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiAycHg7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDdweDtcbn1cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7XG4gIG9wYWNpdHk6IDAuMztcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbn1cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIG9wYWNpdHk6IDA7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG5cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbn1cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNmU3MTtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDdweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbn1cblxuLyogc2Nyb2xsYmFyIGhlaWdodC93aWR0aCAmIG9mZnNldCBmcm9tIGNvbnRhaW5lciBib3JkZXJzICovXG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWJhciB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA3cHg7XG4gIG1pbi13aWR0aDogMjRweDtcbiAgdG9wOiBhdXRvO1xufVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtYmFyIHtcbiAgbGVmdDogYXV0bztcbiAgbWluLWhlaWdodDogMjRweDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA3cHg7XG59XG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIge1xuICBib3R0b206IDA7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogMnB4O1xuXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnM7XG4gIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnM7XG4gIC1vLXRyYW5zaXRpb246IGhlaWdodCAwLjJzO1xuICAtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnM7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjJzO1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1lbGVtZW50X291dGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMnB4O1xuXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4ycztcbiAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAwLjJzO1xuICAtby10cmFuc2l0aW9uOiB3aWR0aCAwLjJzO1xuICAtbXMtdHJhbnNpdGlvbjogd2lkdGggMC4ycztcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4ycztcbn1cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTRweDsgfVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtNHB4OyB9XG5cblxuLyogdXBkYXRlIHNjcm9sbGJhciBvZmZzZXQgaWYgYm90aCBzY3JvbGxzIGFyZSB2aXNpYmxlICovXG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTExcHg7IH1cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtMTFweDsgfVxuXG5cbi8qIGhvdmVyICYgZHJhZyAqL1xuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQ6aG92ZXIgLnNjcm9sbC1lbGVtZW50X291dGVyLFxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC1kcmFnZ2FibGUgLnNjcm9sbC1lbGVtZW50X291dGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAtbXMtZmlsdGVyOlwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NzApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03MCk7XG4gIG9wYWNpdHk6IDAuNztcbn1cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudDpob3ZlciAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgLnNjcm9sbC1lbGVtZW50X3NpemUsXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgLnNjcm9sbC1lbGVtZW50X3NpemUge1xuICBvcGFjaXR5OiAxO1xufVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50OmhvdmVyIC5zY3JvbGwtZWxlbWVudF9vdXRlciAuc2Nyb2xsLWJhcixcbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwtZHJhZ2dhYmxlIC5zY3JvbGwtZWxlbWVudF9vdXRlciAuc2Nyb2xsLWJhciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteDpob3ZlciAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIsXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIge1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1pbi1oZWlnaHQ6IDdweDtcbn1cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteTpob3ZlciAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIsXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIge1xuICBtaW4td2lkdGg6IDdweDtcbiAgd2lkdGg6IDIwcHg7XG59XG5cblxuXG5cblxuXG5cblxuXG5cbi8qKioqKioqKioqKioqKiogU0NST0xMQkFSIEdPT0dMRSBDSFJPTUUgKioqKioqKioqKioqKioqL1xuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCxcbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50IGRpdlxue1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIge31cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RiZGJkYjtcbn1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXgge1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMTZweDtcbiAgbGVmdDogMDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWQ5ZDk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZGJkYmQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzJjMmMyO1xuICBib3JkZXItY29sb3I6ICNhOWE5YTk7XG59XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC1kcmFnZ2FibGUgLnNjcm9sbC1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTE5MTkxO1xuICBib3JkZXItY29sb3I6ICM3ZTdlN2U7XG59XG5cbi8qIHNjcm9sbGJhciBoZWlnaHQvd2lkdGggJiBvZmZzZXQgZnJvbSBjb250YWluZXIgYm9yZGVycyAqL1xuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtY29udGVudC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIHsgbGVmdDogLTE2cHg7IG1hcmdpbi1sZWZ0OiAxNnB4OyB9XG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtY29udGVudC5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIHsgdG9wOiAgLTE2cHg7IG1hcmdpbi10b3A6ICAxNnB4OyB9XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtYmFyIHsgaGVpZ2h0OiA4cHg7IG1pbi13aWR0aDogMTBweDsgdG9wOiAzcHg7IH1cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtYmFyIHsgbGVmdDogM3B4OyBtaW4taGVpZ2h0OiAxMHB4OyB3aWR0aDogOHB4OyB9XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RiZGJkYjsgfVxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgaGVpZ2h0OiAxNHB4OyBsZWZ0OiAtM3B4OyB9XG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGhlaWdodDogMTRweDsgbGVmdDogLTRweDsgfVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyBib3JkZXItdG9wOiAxcHggc29saWQgI2RiZGJkYjsgfVxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgdG9wOiAtM3B4OyB3aWR0aDogMTRweDsgfVxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC00cHg7IHdpZHRoOiAxNHB4OyB9XG5cbi8qIHVwZGF0ZSBzY3JvbGxiYXIgb2Zmc2V0IGlmIGJvdGggc2Nyb2xscyBhcmUgdmlzaWJsZSAqL1xuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTE5cHg7IH1cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC0xOXB4OyB9XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgbGVmdDogLTE5cHg7IH1cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgdG9wOiAtMTlweDsgfVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/