/*!*******************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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: #0085a1;
}
.nav--timeline--inline .line-container .actif.has-subtimeline .is-mobile.actif:after {
  content: "";
  position: absolute;
  top: 24px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #0085a1;
}
@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: #0085a1;
  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: #0085a1;
}

/*
.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: #0085a1;
  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: #75c2bd;
  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: #0085a1;
}
.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: #0085a1;
  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: #0085a1;
}
.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: #0085a1;
}

.custom-scrollbar--secondary.scrollbar-inner > .scroll-element .scroll-bar:hover {
  background-color: #0085a1;
  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: #0085a1;
}

.custom-scrollbar--secondary.scrollbar-outer > .scroll-element .scroll-bar:hover {
  background-color: #0085a1;
  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: #0085a1;
  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: #0085a1;
  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: #0085a1;
  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: #75c2bd;
}
@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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3JhbV9wYWdlLmQ4YmI0MjMyLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTs7K0VBQUE7QUNBQTs7K0VBQUE7QUNBQTs7K0VBQUE7QUNFRTtFQUNFO0VBQ0E7QUNRSjtBRFBJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUNTTjtBRFBNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJIREM7RUdFRDtBQ1NSO0FESk07RUFDRTtBQ01SO0FESE07RUFDRSxtQkhaQztBSWlCVDtBRERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUNHTjtBRERJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCSHBDRTtFR3FDRjtFQUNBO0FDR047QURETTtFRDhMSjtFQUNBO0VBQ0E7RUFDQTtFQy9MTTtFQUNBO0VBQ0E7RUFDQSxtQkg5Q0s7RUcrQ0w7QUNNUjtBRERFO0VBQ0U7QUNHSjtBREFNO0VBQ0UsY0gxREE7QUk0RFI7QUREUTtFQUNFO0VBQ0E7QUNHVjtBREVJO0VBQ0U7QUNBTjtBREVNO0VBQ0UsY0hyRUs7QUlxRWI7QURJSTtFRGtERjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FFbkRGO0FGMUVFO0VDdUVFO0lEeURBO0lBQ0E7RUVsREY7QUFDRjtBREZNO0VBQ0U7QUNJUjtBRElRO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJIakdHO0VHa0dIO0FDSFY7QURLUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FDSFY7QURPUTtFQUNFO0VBQ0EsZ0JIN0dGO0FJd0dSO0FET1E7RUFDRSxnQkhoSEY7QUkyR1I7QURRTTtFQUNFO0FDTlI7QUYvRkU7RUM4R007SUFDRTtFQ1pSO0VEY1E7SUFDRTtFQ1pWO0VEaUJJO0lBQ0U7SUFDQTtFQ2ZOO0VEaUJNO0lBQ0U7RUNmUjtBQUNGO0FGckhFO0VDNElJO0lBQ0U7RUNwQk47RURzQk07SUFDRTtJQUNBO0VDcEJSO0VEd0JNO0lBQ0U7SUFDQTtFQ3RCUjtFRHlCSTtJQUNFO0VDdkJOO0FBQ0Y7QUY1SUU7RUN3S0U7SUFDRTtFQ3pCSjtFRDJCSTs7SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VDekJOO0VEMkJNOztJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUN4QlI7RUQyQk07O0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VDeEJSO0VEMkJNOztJQUNFO0lBQ0E7SUFDQTtFQ3hCUjtFRDBCUTs7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFQ3ZCVjtFRDBCUTs7SUFDRTtJQUNBO0VDdkJWO0VENEJJO0lBQ0U7RUMxQk47RUQ2Qkk7SUFDRTtJQUNBO0VDM0JOO0VENkJNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQzNCUjtFRDZCUTtJQUNFO0VDM0JWO0FBQ0Y7O0FEbUNFO0VBQ0U7QUNoQ0o7QURrQ0U7RUFDRTtFQUNBO0VBQ0E7QUNoQ0o7QURpQ0k7RUFDRTtBQy9CTjtBRG1DTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CSC9QQztBSThOVDtBRG9DTTtFQUNFLG1CSG5RQztBSWlPVDtBRHFDUTtFQUNFO0FDbkNWO0FGeE9FO0VDMFFNO0lBR0k7RUNqQ1Y7QUFDRjtBRG1DUTtFQUNFO0FDakNWO0FEb0NjO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUJIdlJUO0FJcVBQO0FEcUNZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJIalNQO0FJOFBQO0FGL1BFO0VDZ1JNO0lBc0JJO0VDbkNWO0FBQ0Y7QURxQ1E7RUFDRTtBQ25DVjtBRHFDUTtFQUNFLG1CSC9TRztBSTRRYjtBRHNDVTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGdCSHJUSjtBSWlSUjtBRHlDWTtFQUNFLGdCSDNUTjtBSW9SUjtBRHdDYztFQUNFO0VBQ0E7RUFDQTtBQ3RDaEI7QUQ0Q1U7RUFDRSxtQkhwVUw7RUdxVUs7QUMxQ1o7QURnREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQzlDTjtBRnJTRTtFQ3FWRTtJQUVJO0VDOUNOO0FBQ0Y7QURnREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JIaldFO0VHa1dGO0VBQ0E7QUM5Q047QURnRE07RUQvSEo7RUFDQTtFQUNBO0VBQ0E7RUM4SE07RUFDQTtFQUNBO0VBQ0EsbUJIM1dLO0FJZ1ViO0FEZ0RJO0VBQ0U7RUFDQSxjSGxYTztBSW9VYjtBRmxVRTtFQzhXRTtJQUlJO0VDNUNOO0FBQ0Y7QUQ4Q0k7RUQvTUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRW9LRjtBRnZVRTtFQzhXRTtJRHpNQTtJQUNBO0VFc0tGO0FBQ0Y7QURvQ0k7RUFDRTtBQ2xDTjtBRG1DTTtFQUNFLGNIMVhEO0FJeVZQOztBQ3ZXQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQXNCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CTGhCTTtBSXlYUjtBQ3ZXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CTHRCSTtFS3VCSjtFQUNBO0FEeVdKO0FDdFdFO0VBQ0U7QUR3V0o7QUNyV0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHVXSjtBQ3BXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEc1dKO0FDbldFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHFXSjtBRjNYRTtFRzBCRTtJQUNFO0lBQ0E7RURvV0o7QUFDRjtBQ2pXRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSDBKRjtBRTBNRjtBRnhNRTtFQUNFO0VBQ0E7QUUwTUo7QUNyV0k7RUFDRTtFQUNBO0VBQ0E7QUR1V047QUN0V007RUFDRTtBRHdXUjtBQ3RXTTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGdCTGpGQTtFS2tGQTtFQUNBO0VBQ0E7RUFDQTtBRHdXUjtBQ3RXUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQkwzRkg7RUs0Rkc7RUFDQTtBRHdXVjtBQ3RXVTtFSGtHUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBK0JBO0VBQ0E7RUFDQTtFQUNBO0VHcklVLFdMcEdKO0FJbWRSO0FGbGRFO0VHMkdFO0lBQ0U7RUQwV0o7RUN6V0k7SUFDRTtFRDJXTjtFQzFXTTtJQUNFO0VENFdSO0VDMVdNO0lBQ0U7SUFDQTtFRDRXUjtFQzFXUTtJQUNFO0lBQ0E7RUQ0V1Y7RUNyV0U7SUFDRTtFRHVXSjtBQUNGOztBRW5mSTtFQUNFO0VBQ0E7QUZzZk47QUVwZkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRnNmTjtBRXJmTTtFSmdQSjtFQUNBO0VBQ0E7RUFDQSxZSWxQaUQ7RUptUGpELGFJblBpRDtFSm9QakQsb0JJcFBpRDtFSnFQakQseUJGdFBPO0VFZ1FQO0VJOVBNO0VBQ0E7RUFDQTtBRjhmUjtBRTVmTTtFQUNFO0VBQ0E7QUY4ZlI7QUU1Zk07RUFDRTtBRjhmUjtBRTVmTTtFQUNFO0VBQ0E7QUY4ZlI7QUU1Zk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBRjhmUjtBRTdmUTtFQUNFO0FGK2ZWO0FFNWZNO0VBQ0U7RUFDQTtBRjhmUjtBRTFmRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjRmSjtBRTFmRTtFQUNFO0FGNGZKO0FFMWZJO0VBQ0UsY05oRE07RU1pRE47QUY0Zk47QUV4ZkU7RUFDRTtFQUNBO0FGMGZKO0FFemZJO0VBQ0U7QUYyZk47QUUxZk07RUFDRTtBRjRmUjtBRXRmRTtFQUNFO0FGd2ZKO0FFcmZFO0VBQ0U7RUFDQTtFSm1JRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FFcVhGO0FFemZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjJmTjtBRXZmRTtFQUNFO0VBQ0E7RUFDQSxjTnhGRztBSWlsQlA7QUV0ZkU7RUFDRTtBRndmSjtBRXBmSTtFQUNFO0FGc2ZOO0FFbGZFO0VKc0hBO0VJL0dFO0FGK2VKO0FGOVhFO0VBQ0U7RUFDQTtBRWdZSjtBRXZmSTtFQUNFO0VBQ0E7QUZ5Zk47QUZwbUJFO0VJa0hJO0lBQ0U7SUFDQTtFRnFmTjtBQUNGO0FFamZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUZtZko7QUVqZkk7RUp1Q0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSXpDSSxjTnBJRTtBSTJuQlI7QUZqbkJFO0VJd0hFO0lKNkNBO0lBQ0E7RUVnZEY7QUFDRjtBRTFmSTtFQUNFO0VBQ0E7RUFDQTtBRjRmTjtBRTFmTTtFQUNFO0VKa0ZOO0FFMmFGO0FGemFFO0VBQ0U7RUFDQTtBRTJhSjtBRTVmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUY4Zk47QUUxZkU7RUFDRTtBRjRmSjtBRXpmTTtFQUNFO0FGMmZSO0FFcmZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRnVmTjtBRXJmTTtFQUNFO0VBQ0E7RUFDQTtBRnVmUjtBRXBmTTtFQUNFO0VBQ0E7QUZzZlI7QUVuZk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRnFmUjtBRWxmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdON01FO0FJaXNCUjtBRWxmSTtFQUNFO0VBQ0E7RUFDQTtBRm9mTjtBRWxmTTtFQUNFO0FGb2ZSO0FFamZJO0VBQ0U7RUFDQTtFQUNBO0FGbWZOO0FGanJCRTtFSXNNUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VGOGVWO0VFM2VNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RUY2ZVI7QUFDRjtBRnRzQkU7RUlpT0k7SUFDRTtFRndlTjtBQUNGO0FGcHNCRTtFSWlPRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VGc2VKO0VFcmVJO0lBQ0U7RUZ1ZU47RUVyZUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VGdWVOO0FBQ0Y7QUZ2dUJFO0VJc1FJO0lBQ0U7RUZvZU47QUFDRjtBRm52QkU7RUlvUkU7SUFDRTtJQUNBO0VGa2VKO0VFaGVJO0lBQ0U7RUZrZU47RUVoZUk7SUFDRTtFRmtlTjtFRTlkRTtJQUNFO0lBQ0E7RUZnZUo7QUFDRjtBRjF3QkU7RUkrU0k7SUFDRTtJQUNBO0VGOGROO0VFNWRNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFRjhkUjtFRTVkUTtJQUNFO0lBQ0E7SUFDQTtFRjhkVjtFRXpkSTtJQUNFO0lKOUZOO0lBQ0E7SUFDQTtJQUNBO0lJNkZNO0VGOGROO0VFMWRFO0lBQ0U7RUY0ZEo7RUUxZEk7SUFDRTtFRjRkTjtBQUNGO0FGOXdCRTtFSXlUTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VGd2RSO0FBQ0Y7O0FFbmRBO0VBQ0U7QUZzZEY7QUVyZEU7RUFDRTtBRnVkSjtBRXRkSTtFQUNFO0FGd2ROOztBR3owQkE7OytFQUFBO0FBTUU7RUFDRTtFQUNBO0FIeTBCSjtBR3YwQkk7RUFDRTtFQUNBO0VBQ0E7QUh5MEJOO0FHdDBCSTtFQUNFO0FIdzBCTjtBR3AwQkU7RUFDRSxtQlBUUTtFT1VSLGNQYkk7RU9jSjtFQUNBO0FIczBCSjtBRmwxQkU7RUtRQTtJQU1JO0VIdzBCSjtBQUNGO0FGdjFCRTtFS2lCSTtJQUVJO0VIdzBCUjtBQUNGO0FHcjBCSTtFQUNFO0FIdTBCTjtBR3QwQk07RUFDRTtBSHcwQlI7QUdyMEJJO0VMeUlGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUszSUk7RUFDQTtBSDIwQk47QUZwMkJFO0VLc0JFO0lMK0lBO0lBQ0E7RUVtc0JGO0FBQ0Y7QUcvMEJJO0VBQ0U7QUhpMUJOO0FHaDFCTTtFQUNFO0VBQ0E7RUFDQTtBSGsxQlI7QUc3MEJFO0VBQ0U7RUFDQTtBSCswQko7QUZ0M0JFO0VLcUNBO0lBSUk7SUFDQTtFSGkxQko7QUFDRjtBR2gxQkk7RUFDRSxtQlA1Q1E7RU82Q1I7RUFDQTtFQUNBO0VBQ0E7QUhrMUJOO0FHajFCTTtFQUNFO0FIbTFCUjtBRnQ0QkU7RUs0Q0U7SUFVSTtJQUNBO0VIbzFCTjtBQUNGO0FHbjFCTTtFQUNFO0VBQ0E7QUhxMUJSO0FGaDVCRTtFS3lESTtJQUlJO0VIdTFCUjtBQUNGO0FGcjVCRTtFS3lESTtJQU9JO0lBQ0E7RUh5MUJSO0VHeDFCUTtJQUNFO0lBQ0E7RUgwMUJWO0FBQ0Y7QUd2MUJNO0VBQ0U7RUFDQTtFQUNBO0FIeTFCUjtBRnQ1QkU7RUswREk7SUFLSTtJQUNBO0VIMjFCUjtBQUNGO0FHMTFCUTtFQUNFO0VBQ0E7RUFDQTtBSDQxQlY7QUcxMUJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUg0MUJWO0FGdjZCRTtFS3VFTTtJQU1JO0lBQ0E7SUFDQTtJQUNBO0VIODFCVjtBQUNGO0FHMTFCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDQxQk47QUZyOEJFO0VLbUdFO0lBUUk7RUg4MUJOO0FBQ0Y7QUc3MUJNO0VBQ0U7QUgrMUJSO0FGNzhCRTtFS2tIRTtJQUVJO0lBQ0E7SUFDQTtFSDYxQk47QUFDRjtBRzMxQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSDYxQlY7QUc1MUJVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUg4MUJaO0FHNTFCVTtFQVhGO0lBWUk7SUFDQTtJQUNBO0lBQ0E7RUgrMUJWO0VHOTFCVTtJQUNFO0lBQ0E7RUhnMkJaO0VHLzFCWTtJQUNFO0VIaTJCZDtBQUNGO0FHejFCSTtFQUNFO0VBQ0E7QUgyMUJOO0FGbi9CRTtFS3NKRTtJQUlJO0lBQ0E7RUg2MUJOO0FBQ0Y7QUczMUJJO0VBQ0U7QUg2MUJOO0FHNTFCTTtFQUNFO0FIODFCUjtBR3gxQkU7RUFDRSxtQlAvS1E7RU9nTFI7RUFDQTtBSDAxQko7QUd6MUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjUDFMRTtFTzJMRjtFQUNBO0VBQ0E7QUgyMUJOO0FGcmhDRTtFS2tMRTtJQVVJO0lBQ0E7SUFDQTtFSDYxQk47QUFDRjtBRzMxQkk7RUFDRTtFQUNBO0VBQ0E7QUg2MUJOO0FGamlDRTtFS2lNRTtJQUtJO0VIKzFCTjtBQUNGO0FHNzFCSTtFQUNFO0VBQ0E7QUgrMUJOO0FGMWlDRTtFS3lNRTtJQUlJO0VIaTJCTjtBQUNGO0FHNzFCRTtFQUNFO0VBQ0E7QUgrMUJKO0FHOTFCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSGcyQk47QUYzakNFO0VLcU5FO0lBUUk7RUhrMkJOO0FBQ0Y7O0FJN2tDQTs7K0VBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FKZ2xDRjtBRnJqQ0U7RU0vQkY7SUFNSTtFSmtsQ0Y7QUFDRjtBRnhrQ0U7RU1qQkY7SUFTSTtJQUNBO0VKb2xDRjtBQUNGO0FJbmxDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSnFsQ0o7QUlubENFO0VBQ0U7QUpxbENKO0FJcGxDSTtFQUNFO0FKc2xDTjtBSXBsQ0k7RUFDRTtBSnNsQ047QUYvbENFO0VNVUk7SUFFSTtFSnVsQ1I7QUFDRjtBRnBtQ0U7RU1jTTtJQUVJO0lBQ0E7RUp3bENWO0VJdmxDVTtJQUNFO0lBQ0E7SUFDQTtFSnlsQ1o7QUFDRjtBSXRsQ1E7RUFDRTtFQUNBO0FKd2xDVjtBRjFuQ0U7RU1nQ007SUFJSTtJQUNBO0VKMGxDVjtBQUNGO0FJdmxDTTtFQUNFO0FKeWxDUjtBRjVuQ0U7RU1rQ0k7SUFHSTtFSjJsQ1I7QUFDRjtBSXhsQ0k7RUFDRTtBSjBsQ047QUZwb0NFO0VNeUNFO0lBR0k7RUo0bENOO0FBQ0Y7QUkzbENNO0VBQ0U7RUFDQTtFQUNBO0FKNmxDUjtBSTNsQ007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUo2bENSO0FGdHBDRTtFTW1ESTtJQVFJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFSitsQ1I7RUk5bENRO0lBQ0U7RUpnbUNWO0FBQ0Y7QUkxbENFO0VBQ0U7RUFDQTtFQUNBO0FKNGxDSjtBSXpsQ0U7RUFDRTtFQUNBO0FKMmxDSjtBSXpsQ0U7RUFDRTtFQUNBO0VBQ0E7QUoybENKO0FJemxDTTtFQUNFO0VBQ0E7QUoybENSO0FJdGxDRTtFQUNFO0VBQ0E7RUFDQSxtQlI1R0k7RVE2R0o7RUFDQSxXUjVHSTtFUTZHSjtFQUNBO0VBQ0E7QUp3bENKO0FGL3JDRTtFTStGQTtJQVVJO0lBRUE7SUFDQTtFSnlsQ0o7QUFDRjtBRjdzQ0U7RU1zR0E7SUFnQkk7RUoybENKO0FBQ0Y7QUl4bENRO0VBQ0U7RUFDQTtFQUNBO0FKMGxDVjtBSXRsQ0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQlIzSUU7QUltdUNSO0FGenRDRTtFTTBIRTtJQVNJO0lBQ0E7SUFDQTtJQUNBO0VKMGxDTjtBQUNGO0FJeGxDSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUowbENOO0FGeHVDRTtFTXlJRTtJQU9JO0VKNGxDTjtBQUNGO0FJMWxDSTs7RUFFRTtFQUNBO0VBQ0E7RUFDQSxXUmhLRTtFUWlLRjtFQUNBO0VBQ0E7RUFDQTtBSjRsQ047QUYvdkNFO0VNMEpFOztJQVdJO0lBQ0E7RUorbENOO0FBQ0Y7QUk3bENJO0VBQ0U7RUFDQTtBSitsQ047QUZud0NFO0VNa0tFO0lBSUk7SUFDQTtJQUNBO0VKaW1DTjtBQUNGO0FJL2xDSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmltQ047QUZ6eENFO0VNa0xFO0lBUUk7SUFDQTtFSm1tQ047QUFDRjtBSWxtQ007RUFDRTtFQUNBO0FKb21DUjtBSWptQ0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKbW1DTjtBSWptQ0k7RUFDRTtFQUNBO0VBQ0E7RUFDQSxXUjlNRTtBSWl6Q1I7QUZ6eUNFO0VNa01FO0lBTUk7SUFDQTtFSnFtQ047QUFDRjtBSW5tQ1E7RUFDRTtFQUNBLFdSdE5GO0VRdU5FO0VBQ0E7QUpxbUNWO0FGNXpDRTtFTW1OTTtJQU1JO0VKdW1DVjtBQUNGO0FJdG1DVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJSbE9MO0VRbU9LO0VBQ0E7QUp3bUNaO0FJcm1DWTtFQUNFO0FKdW1DZDtBSS9sQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JSM1BJO0VRNFBKO0FKaW1DSjtBRnIxQ0U7RU0wT0E7SUFZSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VKbW1DSjtBQUNGO0FJbG1DSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKb21DTjtBRjEyQ0U7RU0rUEU7SUFTSTtJQUNBO0lBQ0E7SUFDQTtFSnNtQ047QUFDRjtBRmwzQ0U7RU04UUU7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFSnNtQ047QUFDRjtBRnA0Q0U7RU1xUkU7SUFVTTtFSnltQ1I7QUFDRjtBSXZtQ007RUFDRSxjUnRTQTtFUXVTQTtFQUNBO0FKeW1DUjtBSXhtQ1E7RUFDRTtBSjBtQ1Y7QUl0bUNJO0VBQ0U7RUFDQTtFQUNBO0VOcEdKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUU2c0NGO0FJM21DTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUo2bUNSO0FJMW1DSTtFQUNFO0FKNG1DTjtBSTFtQ0k7RUFDRTtFQUNBO0FKNG1DTjtBRjU2Q0U7RU04VEU7SUFJTTtFSjhtQ1I7QUFDRjtBSTVtQ0k7RU5uSkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFTWlKSTtBSmtuQ047QUlobkNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY1I1VUM7QUk4N0NQO0FJaG5DSTtFQUNFO0FKa25DTjtBSWhuQ0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmtuQ047QUZwOENFO0VNMlVFO0lBU0k7RUpvbkNOO0FBQ0Y7QUlqbkNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSm1uQ0o7QUlsbkNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKb25DTjs7QUtsL0NBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QUxxL0NGOztBS2wvQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUxxL0NGOztBS2wvQ0E7RUFDRTtFQUNBO0FMcS9DRjs7QUtsL0NBO0VBQ0U7QUxxL0NGOztBS24vQ0E7RUFDRTtBTHMvQ0Y7O0FLbi9DQTs7RUFFRTtBTHMvQ0Y7O0FLbi9DQTs7RUFFRTtBTHMvQ0Y7O0FLbi9DQTtFQUNFO0VBQ0E7QUxzL0NGOztBS3AvQ0E7RUFDRTtBTHUvQ0Y7O0FLci9DQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFD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Q0E7RUFDQTtBRXlzR0Y7QUY1MkdFO0VFMGpDa0I7SUZyNUJoQjtJQUNBO0VFMnNHRjtBQUNGO0FBcnpFb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQSxtQkoza0NoQjtFSTRrQ2dCO0VBQ0E7RUFDQTtFQUNBO0FBdXpFeEI7QUFsekVZO0VBQ0k7QUFvekVoQjtBQS95RVk7RUFDSTtFQUNBO0FBaXpFaEI7QUE3eUVRO0VBQ0k7QUEreUVaO0FGLzNHRTtFRW9sQ1U7SUFDSTtJQUNBO0VBOHlFZDtFQTV5RWM7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFQTh5RWxCO0FBQ0Y7QUZsNUdFO0VFeW1DVTtJQUNJO0lBQ0E7RUE0eUVkO0VBMXlFYztJQUNJO0VBNHlFbEI7RUF4eUVVO0lBQ0k7RUEweUVkO0VBeHlFYztJQUNJO0VBMHlFbEI7RUF0eUVVO0lBQ0k7RUF3eUVkO0VBcnlFVTtJQUNJO0VBdXlFZDtBQUNGO0FGdjZHRTtFRWtpQ0U7SUFrR1E7RUF1eUVWO0VBcnlFYztJQUNJO0VBdXlFbEI7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vaWNhZGUtaW1tb2JpbGllci8uL2Fzc2V0cy9zY3NzL2Jhc2UvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2ljYWRlLWltbW9iaWxpZXIvLi9hc3NldHMvc2Nzcy9iYXNlL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvYmFzZS9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vaWNhZGUtaW1tb2JpbGllci8uL2Fzc2V0cy9zY3NzL25hdi9fdGltZWxpbmUuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvdGVtcGxhdGVzL19wcm9ncmFtbWUuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvYmxvY2tzL192aXRyaW5lLXNsaWRlci5zY3NzIiwid2VicGFjazovL2ljYWRlLWltbW9iaWxpZXIvLi9hc3NldHMvc2Nzcy9ibG9ja3MvX2ludHJvLXByb2dyYW1tZS5zY3NzIiwid2VicGFjazovL2ljYWRlLWltbW9iaWxpZXIvLi9hc3NldHMvc2Nzcy9ibG9ja3MvX2xvdHMuc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvYmxvY2tzL19sb3Quc2NzcyIsIndlYnBhY2s6Ly9pY2FkZS1pbW1vYmlsaWVyLy4vYXNzZXRzL3Njc3MvcGx1Z2lucy9fanF1ZXJ5LXNjcm9sbGJhci5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBWQVJJQUJMRVMgKEJhc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBQYXRoXG4kcGF0aDogXCIuLi8uLi9cIjtcbiRwYXRoSU1HOiBcIiN7JHBhdGh9aW1nL1wiO1xuXG4vLyBDb2xvcnNcbiRibGFja0Rhcms6ICMwMDA7XG4kYmxhY2s6ICMwNDE0MmQ7XG4kYmxhY2tMaWdodDogI2NmZDFkNTtcbiR3aGl0ZTogI0ZGRjtcbiR0dXJxdW9pc2U6ICM3NWMyYmQ7XG4kYmx1ZTogIzAwODVhMTtcbiRibHVlRGFyazogIzAwNWI2ZDtcbiRncmVlbjogIzlkYmMwMDtcbiR5ZWxsb3c6ICNmZmM2MDA7XG4kdmlvbGV0OiAjMjkwMjY0O1xuJGdyZXk6ICM5YjliOWI7XG4kZ3JleUxpZ2h0OiAjZWZlZmVmO1xuJGdyZXlNZWRpdW0gOiAjZjVmNWY1O1xuJHJlZDogI2VhODZhZDtcbiRyZWRFcnJvcjogI2QwMDIxYjtcbiRzY3JvbGxiYXI6ICNlZmVhZTg7XG5cbiRlYXNlSW5PdXQ6IGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG5cbi8vIFNpemVzIChGb250cylcbiR0aXRsZTFTaXplOiA1NjtcbiR0aXRsZUxQU2l6ZTogNTQ7XG4kdGl0bGUyU2l6ZTogNDA7XG4kdGl0bGUzU2l6ZTogMzI7XG4kdGl0bGU0U2l6ZTogMjY7XG4kcnViOiAzMDtcbiR0aXRsZTVTaXplOiAyMTtcbiRjaGFwbzogMjg7XG4kYmFzZWxpbmVTaXplOiAxODtcbiRib2R5Tm9ybWFsU2l6ZTogMjE7XG4kYm9keVNtYWxsU2l6ZTogMTc7XG4kbGlua1RhZ1NpemU6IDEzO1xuJGxpbmtNZW51U2l6ZTogMjA7XG4kbGlua1NpemU6IDEyO1xuJGxpbmtNZWRpdW1TaXplOiAxNDtcbiRsaW5rU21hbGxTaXplOiAxMTtcbiRwcml4QmFycmVTaXplOiAxNDtcbiRmaWx0ZXJTaXplOiAxNDtcbiRrZXlGaWd1cmVTaXplOiA2NTtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGVU5DVElPTlMgKEJhc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBVc2luZyByZW0gZm9udCBzaXplIHVuaXQgd2l0aCBweCBmYWxsYmFja3NcbkBmdW5jdGlvbiBmb250LXNpemUoJHZhbHVlOiAkYm9keVNtYWxsU2l6ZSkge1xuICBAcmV0dXJuICR2YWx1ZSAvICRib2R5U21hbGxTaXplICsgcmVtO1xufVxuXG5AZnVuY3Rpb24gcHgycmVtKCR2YWx1ZTogMTYpIHtcbiAgQHJldHVybiBmb250LXNpemUoJHZhbHVlKTtcbn1cblxuLy8gTGV0dGVyIHNwYWNpbmcgY29udmVydGVyIChQaG90b3Nob3AgdmFsdWUpXG5AZnVuY3Rpb24gbGV0dGVyLXNwYWNpbmcoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gMTAwMCArIGVtO1xufVxuXG4vLyBMaW5lIGhlaWdodCBjYWxjdWxhdG9yXG5AZnVuY3Rpb24gbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0KSB7XG4gIEByZXR1cm4gJGxpbmUtaGVpZ2h0IC8gJGZvbnQtc2l6ZTtcbn1cblxuLy9leGVtcGxlXG4vL1xuLy8gdmlhIGZ1bmN0aW9uXG4vLyBmb250LXNpemU6IGZvbnQtc2l6ZSgxNik7XG4vL1xuLy8gdmlhIG1peGluXG4vLyBAaW5jbHVkZSBmb250LXNpemUoMTUpO1xuLy8gQGluY2x1ZGUgbGluZS1oZWlnaHQoMTUsIDEzKTtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNSVhJTlMgKEJhc2UpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBNRURJQSBRVUVSSUVTXG5AbWl4aW4gbXEtc21hbGwtbW9iaWxlKCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjVweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1FRElBIFFVRVJJRVNcbkBtaXhpbiBtcS1tb2JpbGUoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gQGluY2x1ZGUgbXEtbW9iaWxlIHsgfVxuQG1peGluIG1xLXBvcnRyYWl0KCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7IH1cbkBtaXhpbiBtcS1sYW5kc2NhcGUoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEBpbmNsdWRlIG1xLWxhbmRzY2FwZSB7IH1cbkBtaXhpbiBtcS1saXR0bGVkZXNrKCkge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTIwcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBAaW5jbHVkZSBtcS1saXR0bGVkZXNrIHsgfVxuQG1peGluIG1xLXNpemUoJHNpemUpIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKCN7JHNpemV9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gQGluY2x1ZGUgbXEtc2l6ZSgpIHsgfVxuXG4vLyBGb250c1xuQG1peGluIHRpdGxlLTEoJHdlaWdodDogOTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuOCk7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCR0aXRsZTFTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg2NCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg1MCk7XG4gICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg1NSk7XG4gIH1cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDQwKTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuNCk7XG4gIH1cbn1cblxuQG1peGluIHRpdGxlLTEtMigkd2VpZ2h0OiA5MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgtMS44KTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHRpdGxlTFBTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg1NCk7XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg1MCk7XG4gICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg1NSk7XG4gIH1cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDQwKTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuNCk7XG4gIH1cbn1cblxuQG1peGluIHRpdGxlLTIoJHdlaWdodDogOTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTEuMik7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCR0aXRsZTJTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg0Mik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgzMik7XG4gICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgzNCk7XG4gIH1cbn1cblxuQG1peGluIHRpdGxlLTMoJHdlaWdodDogOTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCR0aXRsZTNTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgzMik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtaXhpbiB0aXRsZS00KCR3ZWlnaHQ6IDkwMCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogZm9udC1zaXplKDApO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgkdGl0bGU0U2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMzUpO1xuICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE3KTtcbiAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbiAgfVxufVxuXG5AbWl4aW4gdGl0bGUtNSgkd2VpZ2h0OiA1MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHRpdGxlNVNpemUpO1xuICBsaW5lLWhlaWdodDogMS4zMztcblxuICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMCk7XG4gIH1cblxuICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoMTgpO1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0LWNoYXBvKCR3ZWlnaHQ6IDQwMCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogZm9udC1zaXplKDApO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgkY2hhcG8pO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDM4KTtcblxuICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoMjIpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM2O1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0LXJ1Yigkd2VpZ2h0OiA0MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHJ1Yik7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMzgpO1xuXG4gIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC1yZWd1bGFyKCR3ZWlnaHQ6IDMwMCkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogZm9udC1zaXplKDApO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgkYm9keU5vcm1hbFNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI4KTtcbiAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE2KTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC1zdWIoJHdlaWdodDogNTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoMCk7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCRib2R5Tm9ybWFsU2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMjQpO1xufVxuXG5AbWl4aW4gdGV4dC1zbWFsbCgkd2VpZ2h0OiAzMDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGJvZHlTbWFsbFNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbiAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDEzKTtcbiAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI0KTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC10YWcoJHdlaWdodDogNTAwKSB7XG4gIGZvbnQtZmFtaWx5OiAnR290aGFtJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICN7JHdlaWdodH07XG4gIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoMCk7XG4gIGZvbnQtc2l6ZTogZm9udC1zaXplKCRsaW5rVGFnU2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbkBtaXhpbiB0ZXh0LWZpbHRlcigkd2VpZ2h0OiA0MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGZpbHRlclNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKDI2KTtcbn1cblxuQG1peGluIHRleHQtbGl0dGxlTGluaygkd2VpZ2h0OiA3MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGxpbmtTaXplKTtcbiAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgkbGlua1NpemUpO1xufVxuXG5AbWl4aW4gdGV4dC1wcmljZVN0cmlrZSgkd2VpZ2h0OiA1MDApIHtcbiAgZm9udC1mYW1pbHk6ICdHb3RoYW0nLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogI3skd2VpZ2h0fTtcbiAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJHByaXhCYXJyZVNpemUpO1xuICBsaW5lLWhlaWdodDogZm9udC1zaXplKCRwcml4QmFycmVTaXplKTtcbn1cblxuQG1peGluIHRleHQta2V5TnVtYmVyKCR3ZWlnaHQ6IDYwMCkge1xuICBmb250LWZhbWlseTogJ0RpbicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAjeyR3ZWlnaHR9O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXNpemU6IGZvbnQtc2l6ZSgka2V5RmlndXJlU2l6ZSk7XG4gIGZvbnQtc3RyZXRjaDogY29uZGVuc2VkO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLy8gSGVscGVyc1xuQG1peGluIGlubGluZS1jb250YWluZXIoJGFsaWduOiBcIm1pZGRsZVwiKSB7XG4gIGZvbnQtc2l6ZTogMDtcblxuICAmID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiAjeyRhbGlnbn07XG4gIH1cbn1cblxuQG1peGluIGFic0NlbnRlcigkbW9yZVRyYW5zZm9ybTogXCJcIikge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICN7JG1vcmVUcmFuc2Zvcm19O1xufVxuXG5AbWl4aW4gZnVsbC1sYXlvdXQoKSB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xufVxuXG5AbWl4aW4gY2lyY2xlKCRjb2xvciwgJHNpemU6IDQwcHgpIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6ICRzaXplO1xuICBoZWlnaHQ6ICRzaXplO1xuICBib3JkZXItcmFkaXVzOiAkc2l6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gcXVhcnRlci1jaXJjbGUtdG9wLWxlZnQoJGNvbG9yLCAkc2l6ZTogNDBweCkge1xuICBAaW5jbHVkZSBjaXJjbGUoJGNvbG9yLCAkc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6ICRzaXplIDAgMCAwO1xufVxuXG5AbWl4aW4gcXVhcnRlci1jaXJjbGUtdG9wLXJpZ2h0KCRjb2xvciwgJHNpemU6IDQwcHgpIHtcbiAgQGluY2x1ZGUgY2lyY2xlKCRjb2xvciwgJHNpemUpO1xuICBib3JkZXItcmFkaXVzOiAwICRzaXplIDAgMDtcbn1cblxuQG1peGluIHF1YXJ0ZXItY2lyY2xlLWJvdHRvbS1sZWZ0KCRjb2xvciwgJHNpemU6IDQwcHgpIHtcbiAgQGluY2x1ZGUgY2lyY2xlKCRjb2xvciwgJHNpemUpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAkc2l6ZTtcbn1cblxuQG1peGluIHF1YXJ0ZXItY2lyY2xlLWJvdHRvbS1yaWdodCgkY29sb3IsICRzaXplOiA0MHB4KSB7XG4gIEBpbmNsdWRlIGNpcmNsZSgkY29sb3IsICRzaXplKTtcbiAgYm9yZGVyLXJhZGl1czogMCAwICRzaXplIDA7XG59XG4iLCIubmF2LS10aW1lbGluZSB7XG5cbiAgLmxpbmUtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjRweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDAlO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyAkZWFzZUluT3V0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY3RpZiB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGluZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI1cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1cHgpO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAkYmxhY2tMaWdodDtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxuICAgIC5wb2ludCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGFic0NlbnRlcihcInJvdGF0ZSg0NWRlZylcIik7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrTGlnaHQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgJGVhc2VJbk91dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudHh0LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIC5hY3RpZiB7XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDIxKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1NSUpO1xuXG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6ICRibGFja0xpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zdGVwIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtY2hhcG8oNzAwKTtcbiAgICB9XG4gIH1cblxuICAmLS1sZWZ0IHtcbiAgICAubGluZS1jb250YWluZXIge1xuICAgICAgLnBvaW50IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tdHJhbnNwYXJlbnQge1xuICAgIC5saW5lLWNvbnRhaW5lciB7XG4gICAgICAmID4gZGl2IHtcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2tMaWdodDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzICRlYXNlSW5PdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hY3RpZiB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgLnBvaW50IHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBvaW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgJjpub3QoLm5hdi0tdGltZWxpbmUtLXRyYW5zcGFyZW50KSxcbiAgICAmOm5vdCgubmF2LS10aW1lbGluZS0tbGVmdCkge1xuICAgICAgLmNvbC0zLTQge1xuICAgICAgICAuY29sLTEtNCB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50eHQtY29udGFpbmVyIGRpdiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2NSUpO1xuICAgICAgICBtYXgtd2lkdGg6IDIxNXB4O1xuXG4gICAgICAgICYgKyBkaXYge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgJjpub3QoLm5hdi0tdGltZWxpbmUtLXRyYW5zcGFyZW50KSxcbiAgICAmOm5vdCgubmF2LS10aW1lbGluZS0tbGVmdCkge1xuICAgICAgPiAucm93ID4gLmNvbC0xLTQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50eHQtY29udGFpbmVyIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saW5lLWNvbnRhaW5lciAucG9pbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTJweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICY6bm90KC5uYXYtLXRpbWVsaW5lLS1sZWZ0KSB7XG4gICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgIC5saW5lLWNvbnRhaW5lcixcbiAgICAgIC50eHQtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgLnBvaW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgICAgIH1cblxuICAgICAgICAubGluZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2wtMS00IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDg1cHg7XG5cbiAgICAgICAgICAmLmFjdGlmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyg4NXB4IC0gMzBweCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmxpbmUtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgfVxuXG4gICAgICAudHh0LWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcblxuICAgICAgICAuY29sLTEtNCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uYXYtLXRpbWVsaW5lLS1pbmxpbmUge1xuICA+IC5idG4ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbiAgLmxpbmUtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDEwcHgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYWN0aWYge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAyNHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICR5ZWxsb3c7XG4gICAgICB9XG5cbiAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHllbGxvdztcbiAgICAgIH1cbiAgICAgICYuaGFzLXN1YnRpbWVsaW5lIHtcbiAgICAgICAgLmlzLWRlc2t0b3Age1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaXMtbW9iaWxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICYuYWN0aWYge1xuICAgICAgICAgICAgLnBvaW50IHtcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAyNHB4O1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2tMaWdodDtcbiAgICAgICAgfVxuICAgICAgICAucG9pbnQge1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrTGlnaHQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb2wtMS00IHtcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5wb2ludCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWN0aWYge1xuICAgICAgICAgIC5wb2ludCBzcGFuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5saW5lIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjVweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTVweCk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICRibGFja0xpZ2h0O1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gICAgLmNvbC0xLTQge1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBvaW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDExcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBhYnNDZW50ZXIoXCJyb3RhdGUoNDVkZWcpXCIpO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFja0xpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudHh0LWNvbnRhaW5lciB7XG4gICAgZGl2IHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGNvbG9yOiAkYmxhY2tMaWdodDtcbiAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zdGVwIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtc21hbGwoNzAwKTtcbiAgICB9XG4gICAgLmFjdGlmIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQGltcG9ydCAnLi4vYmFzZS92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vYmFzZS9mdW5jdGlvbnMnO1xuQGltcG9ydCAnLi4vYmFzZS9taXhpbnMnO1xuQGltcG9ydCBcIi4uL25hdi90aW1lbGluZVwiO1xuQGltcG9ydCBcIi4uL2Jsb2Nrcy92aXRyaW5lLXNsaWRlclwiO1xuQGltcG9ydCBcIi4uL2Jsb2Nrcy9pbnRyby1wcm9ncmFtbWVcIjtcbkBpbXBvcnQgXCIuLi9ibG9ja3MvbG90c1wiO1xuQGltcG9ydCBcIi4uL2Jsb2Nrcy9sb3RcIjtcbkBpbXBvcnQgXCIuLi9wbHVnaW5zL2pxdWVyeS1zY3JvbGxiYXJcIjtcblxuLnRlbXBsYXRlLXByb2dyYW1tZSB7XG4gICAgQGluY2x1ZGUgbXEtc2l6ZShcIm1pbi13aWR0aDogMTAyNXB4XCIpIHtcbiAgICAgICAgLmZpbC1hcmlhbmUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbGFuZHNjYXBlKCkge1xuICAgICAgICAuZmlsLWFyaWFuZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5yb3cge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmltYWdlLWRlY29yYXRlZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHF1YXJ0ZXItY2lyY2xlLXRvcC1yaWdodCgkYmx1ZSwgMTUwcHgpO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTMwcHg7XG4gICAgICAgICAgICBsZWZ0OiAtMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyLCBoMyB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbGFuZHNjYXBlKCkge1xuICAgICAgICBoMiwgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMzApXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtY2l0eSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICB9XG5cbiAgICAuY3RhLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgICYgKyAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52aXRyaW5lIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJhY3RlcmlzdGlxdWVzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAuY2FyYWN0ZXJpc3RpcXVlLXdyYXBwZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyNXB4O1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDg1cHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZXNpZGVuY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuXG4gICAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgJi5hY3RpZiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgID4gLnJvdyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jaGFwbyB7XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uYXYge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4yNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGlmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgyNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hcnRpY2xlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OjIyMnB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuNTA7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgkbGlua1NpemUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLWxpdHRsZWRlc2soKSB7XG4gICAgICAgICAgICAuYmxvY2stcHVzaCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1sYW5kc2NhcGUoKSB7XG4gICAgICAgICAgICAucHVzaCB7XG4gICAgICAgICAgICAgICAgLmJsb2NrLXB1c2gge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGVudCA+IC5yb3cge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcblxuICAgICAgICAgICAgLmNvbC0yLTMsIC5jb2wtMS0zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2wtMS0zIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAuYmxvY2stcHVzaCB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg0NCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yMztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sLTEtMTIsIC5jb2wtMTEtMTIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIC5uYXYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGxpLCBsaS5hY3RpZiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG5cbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuYXJ0aWNsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxNCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43MTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5leGNlcnB0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbC0xLTMgLmJsb2NrLXB1c2gge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg0MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW46bm90KC5idG4pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMjIpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nZW1lbnQge1xuICAgICAgICAuYmxvY2stbG9nZW1lbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC52aXN1YWxpc2F0aW9uIHtcbiAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5maWx0ZXJzIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmICsgLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnRuLS1zZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zZWxlY3RlZDphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggMjBweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFwcCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtOTBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjM1cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTtcbiAgICAgICAgICAgICAgICAmIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAuY3RhLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcblxuICAgICAgICAgICAgICAgIC5tYXNrIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zdGlja3tcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tc2VlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoMTUwJSkgdHJhbnNsYXRlWCgtNDUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHR1cnF1b2lzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tcmVzZXJ2ZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHR1cnF1b2lzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtbGl0dGxlTGluaygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tZXhjbHUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjExO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDYwMCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1maWx0ZXIoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdXN0U2Nyb2xsLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHggMjBweCAyMHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LWxpdHRsZUxpbmsoNDAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmICsgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICRibGFja0xpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpY2VzIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiA+IGRpdjpub3QoLmN0YS1jb250YWluZXIpOm5vdCguY3VzdFNjcm9sbC13cmFwcGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3RyaWtlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtcHJpY2VTdHJpa2UoKTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDcwMCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdGEtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMzVzIGVhc2UtaW4tb3V0LDtcblxuICAgICAgICAgICAgICAgICAgICAuYnRuLS1wcmltYXJ5LS13aGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMik7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCgpIHtcbiAgICAgICAgICAgIC52aXN1YWxpc2F0aW9uIHtcbiAgICAgICAgICAgICAgICAuZmlsdGVycyB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgLmJ0bi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCA2MHB4IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgICAgIC52aXN1YWxpc2F0aW9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMyMHB4O1xuXG4gICAgICAgICAgICAgICAgLmZpbHRlcnMge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyAuYnRuLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCA2MHB4IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jZXJ0aWZpY2F0aW9ucyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgLnRpbWVsaW5lIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmludGVyaWV1ciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhYnNDZW50ZXIoKTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuICsgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtY2hhcG8oNzAwKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwICsgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNob3ctaXBhZC1sYW5kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1saXR0bGVkZXNrKCkge1xuICAgICAgICAgICAgLmNvbC0xLTIge1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDU1JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLWxhbmRzY2FwZSgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNDBweDtcblxuICAgICAgICAgICAgLnNob3ctaXBhZC1sYW5kIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDkwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5oaWRlLWlwYWQtbGFuZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAuc2hhcGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTUlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLnNob3ctaXBhZC1sYW5kIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA5MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmhpZGUtaXBhZC1sYW5kIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb2wtMS0yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogY2FsYygxMCUgKyA4MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNDMlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDAgLTMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZW5jb250cmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcblxuICAgICAgICA+IC5yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1zbWFsbCg0MDApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAmLndlaWdodC0tZGVtaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdHVycXVvaXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICAuaW1hZ2UtZGVjb3JhdGVkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgJi5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgJi5jb2wtMS0yIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTFweCAyMHB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZy1zaW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgIH1cblxuICAgIC5pY2FkZS1wYXJ0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICB9XG5cbiAgICAucHJveHktY2l0eSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG5cbiAgICAgICAgLmNpdGllcyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1zbWFsbCg0MDApO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhpZGVEZXNrIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUoKSB7XG4gICAgICAgICAgICAuc2hvd0Rlc2sge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaGlkZURlc2sge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhICsgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFjdC1mb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgPiAucm93IHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgJl9pbm5lciB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBxdWFydGVyLWNpcmNsZS1ib3R0b20tbGVmdCgkZ3JlZW4sIDIwMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgJi5pbnRybyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmRheXMtY291bnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTAwKTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSg3MCk7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBmb250LXNpemUoLTMuMSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5saXR0bGUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgyNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlubGluZUJsb2NrIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGlubGluZS1jb250YWluZXIoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTQwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG5cbiAgICAgICAgICAgIC5pbnB1dC10ZXh0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0sIGJ1dHRvblt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWdlbmQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1saXR0bGVMaW5rKDQwMCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFja0xpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtOTk5OTlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLWxpdHRsZWRlc2soKSB7XG4gICAgICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAgICAgICAgIC5zaGFwZXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5OCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNoYXBlLWJsYWNrIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTFweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dlbWVudC1jbyB7XG4gICAgICAgID4gLnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1jaGFwbyg3MDApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtc21hbGwoNDAwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXNtYWxsKDQwMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2hvd01vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbGFuZHNjYXBlKCkge1xuICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICAuY29sLTEtMiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaG93RGVza3RvcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob3dNb2JpbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQoKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKlxuLmxvdC12aXRyaW5lLXNsaWRlciB7XG4gICY6YWZ0ZXIge1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSh0cmFuc3BhcmVudCksIHRvKHJnYmEoMCwgMCwgMCwgMC42NSkpKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDE2OSwgMTY5LCAxNjksIDApLCByZ2JhKDAsIDAsIDAsIDAuNjUpKTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC42NSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgcmdiYSgwLCAwLCAwLCAwLjY1KSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLCAwLCAwLCAwKSkpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjY1KSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC42NSkgMTAwJSk7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAzMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuKi9cblxuLmJsb2NrLXZpdHJpbmUtc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cbiAgLm1haW5JbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG4gIC5qcy1vcGVuUG9waW5TbGlkZXJzIHtcbiAgICBjdXJzb3I6IHpvb20taW47XG4gIH1cblxuICAuZGVzY3JpcHRpb25QaWN0byB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gIH1cblxuICAmID4gLmljb24tLWFycm93LS1wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gIH1cblxuICAmID4gLmljb24tLWFycm93LS1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMzBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICBAaW5jbHVkZSBtcS1zaXplKFwibWluLXdpZHRoOiAxMDI1cHhcIikge1xuICAgIC5uYXYtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICB9XG5cbiAgLm5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1cHg7XG4gICAgbGVmdDogNTAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBAaW5jbHVkZSBpbmxpbmUtY29udGFpbmVyKCk7XG5cbiAgICAmID4gYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIG1pbi13aWR0aDogNTVweDtcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICAgID4gc3BhbiA+IHNwYW4uaWNvbi13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xuXG4gICAgICAgIC5zdGlja05iIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtbGl0dGxlTGluayg3MDApO1xuICAgICAgICAgICAgQGluY2x1ZGUgYWJzQ2VudGVyKCk7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAubmF2IHtcbiAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICA+IGJ1dHRvbiB7XG4gICAgICAgIG1pbi13aWR0aDogMzVweDtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgPiBzcGFuID4gc3Bhbi5pY29uLXdyYXBwZXIge1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgIGhlaWdodDogMzVweDtcblxuICAgICAgICAgIC5zdGlja05iIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmljb24tLWFycm93LS1wcmV2LCAuaWNvbi0tYXJyb3ctLW5leHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay1pbnRyby1wcm9ncmFtbWUge1xuICAuZmxvYXRpbmctYmxvY2sge1xuICAgIC50eHQtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG4gICAgLnR4dC1jb250ZW50X19pbnNpZGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiA5OCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAtNHB4IDRweCA4cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGJveC1zaGFkb3c6IC00cHggNHB4IDhweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgcXVhcnRlci1jaXJjbGUtdG9wLXJpZ2h0KCR5ZWxsb3csIDE1MHB4KTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgYm90dG9tOiAtMzBweDtcbiAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgfVxuICAgICAgPiAudGFncyB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgICAuY3RhLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgICAgIHBhZGRpbmc6IDZweCAyNXB4O1xuICAgICAgICAmICsgLmJ0biB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MzVweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tZW50aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoMTMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogYXV0bztcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0b3A6IDEwcHg7XG4gIH1cbiAgaDEge1xuICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgLnN1YiB7XG4gICAgICBjb2xvcjogJHR1cnF1b2lzZTtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cblxuICAuY2FyYWN0ZXJpc3RpcXVlLXdyYXBwZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAycHg7XG4gICAgaW1nLmNhcmFjdGVyaXN0aXF1ZS1sb2dvIHtcbiAgICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgICAmLS1hcmthZGVhIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC5zdHJpa2UtdGV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSB0ZXh0LXByaWNlU3RyaWtlKCk7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgfVxuICB9XG5cbiAgLnByaWNlIHtcbiAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogJGJsdWU7XG4gIH1cblxuICAudGV4dC10YWcge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLnR4dC1tYXJnZUJvdCB7XG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIH1cbiAgfVxuXG4gIC50YWdzIHtcbiAgICBAaW5jbHVkZSBpbmxpbmUtY29udGFpbmVyKCk7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgIC5wdWIge1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudHh0LWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgLmFkZHJlc3Mge1xuICAgICAgQGluY2x1ZGUgdGV4dC1zbWFsbCg2MDApO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG5cbiAgICAuaWNvbnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIEBpbmNsdWRlIGlubGluZS1jb250YWluZXIoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXZhbnRhZ2UtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBib3JkZXI6IDFweCBkb3R0ZWQgd2hpdGU7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICB9XG4gIH1cblxuICAuY3RhLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgIGEge1xuICAgICAgJiArIC5idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2hhcGUtdHh0IHtcbiAgICAuc2hhcGVzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTY3cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cblxuICAgICAgLnNoYXBlX2dyZWVuIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC5zaGFwZV95ZWxsb3cge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA0MzVweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMTUwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVZKC02MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgICAgbWF4LXdpZHRoOiA0MjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNjAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAudHh0LWhlYWRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgICAuaWNvbi0taG91c2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZGVsaXZlcnkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxNyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtc2l6ZShcIm1pbi13aWR0aDogMTI4MHB4XCIpIHtcbiAgICAuZmxvYXRpbmctYmxvY2sge1xuICAgICAgLnNoYXBlLXR4dCB7XG4gICAgICAgIC5zaGFwZXMge1xuICAgICAgICAgIC5zaGFwZV95ZWxsb3cge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVkoLTYwcHgpO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcS1saXR0bGVkZXNrKCkge1xuICAgIC5jb2wtMS0yIHtcblxuICAgICAgLnNoYXBlcyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLXNpemUoXCJtaW4td2lkdGg6IDEwMjVweFwiKSB7XG4gICAgLmZsb2F0aW5nLWJsb2NrIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGhlaWdodDogODV2aDtcbiAgICAgIG1pbi1oZWlnaHQ6IDIyMHB4O1xuICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgICAudHh0LWNvbnRlbnRfX2luc2lkZSB7XG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICB9XG4gICAgICAuc2hhcGUtdHh0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtbGFuZHNjYXBlKCkge1xuICAgIC5zaGFwZS10eHQge1xuICAgICAgLnNoYXBlcyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0KCkge1xuICAgIC5zaGFwZS10eHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC5zaGFwZXMge1xuICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgIH1cbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDM4MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xLW1vYmlsZSgpIHtcbiAgICAuY29sLTEtMjpsYXN0LWNoaWxkIHtcbiAgICAgIC5zaGFwZXMge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuICAgICAgICAgICYuc2hhcGVfeWVsbG93IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVkoLTQwcHgpIHNjYWxlKDAuOCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gNDBweCk7XG4gICAgICAgIEBpbmNsdWRlIGFic0NlbnRlcigpO1xuICAgICAgICBsZWZ0OiA1MiU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmN0YS1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5idG4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEtc2l6ZShcIm1heC13aWR0aDogNDYwcHhcIikge1xuICAgIC5jb2wtMS0yOmxhc3QtY2hpbGQge1xuICAgICAgLnNoYXBlcyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5wcm9ncmFtLWRlc2NyaXB0aW9uIHtcbiAgcGFkZGluZzogMTVweDtcbiAgJi1iaWhvbWUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgPiBiciwgaW1nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTE9UUyAoQmxvY2tzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmJsb2NrLWxvdHMge1xuICAvLyAzRCBNQVBcbiAgLnZpc3VhbGlzYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgJiArIC5ibG9jay1sb3RzX19jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gIH1cbiAgLy8gRmlsdGVyc1xuICAuZmlsdGVycyB7XG4gICAgYmFja2dyb3VuZDogJHR1cnF1b2lzZTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHBhZGRpbmc6IDI1cHggMCA0MHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAzNXB4O1xuICAgIH1cbiAgICAuYnRuLS1maWx0ZXIge1xuICAgICAgc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVycy1jb250YWluZXIge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVycy10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIHRleHQtc21hbGwoNjAwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICB9XG4gICAgdWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIExpc3RzXG4gIC5saXN0cyB7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgfVxuICAgIC5ibG9jay0tbGlzdC1sb3RzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmV5TWVkaXVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgbWF4LWhlaWdodDogNTQwcHg7XG4gICAgICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJi5uby1zY3JvbGxhYmxlIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5zY3JvbGwtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMzVweCA2MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA3NDBweDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxpc3QtaXRlbXMge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNTBweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgIEBpbmNsdWRlIG1xLWxpdHRsZWRlc2sge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3QtaXRlbSB7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDI1cHg7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDUwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xLWxpdHRsZWRlc2sge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5idG4tY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDEwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmJ0biB7XG4gICAgICAgIG1pbi13aWR0aDogMjkwcHg7XG4gICAgICB9XG5cbiAgICB9XG4gICAgLnN3aXBlci1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDUwcHgpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAyNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjQwcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIG1heC13aWR0aDogNDc1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJl9faXRlbSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICY6bGFzdC1jaGlsZCgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoXG4gICZfX3B1c2gge1xuICAgIGJhY2tncm91bmQ6ICR0dXJxdW9pc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgyMik7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMzQpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDMwcHggMTVweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAubWVudGlvbi1wYXJraW5nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiAxMDUwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICAubWVudGlvbi1wYXJraW5nIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTUpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlKCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBMT1QgKEJsb2NrcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYmxvY2stbG90IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDc1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiA0NTBweDtcbiAgQGluY2x1ZGUgbXEtbGl0dGxlZGVzayB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxODBweDtcbiAgfVxuICAuYmxvY2stbG90LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMzVzO1xuICB9XG4gICYtLXNpbXBsZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC5ibG9jay1sb3QtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAuYmxvY2stbG90X190ZXh0IHtcbiAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICYtLXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTQpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMjIpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDIyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyNXB4IDEwcHggMjBweDtcbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYmxvY2stbG90X19wcmljZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgIH1cbiAgICAgIC5jb25maWd1cmF0b3ItbGluayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBFeGNsdSB3ZWJcbiAgLmljb24tLWV4Y2x1d2ViIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1zaXplOiBmb250LXNpemUoOS41KTtcbiAgfVxuICAvLyBUYWdzXG4gIC50YWdzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICB9XG4gICZfX2JvZHkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgJjpub3QoLm5vLXBsYW4pOmhvdmVyLCAmOm5vdCgubm8tcGxhbik6Zm9jdXMge1xuICAgICAgLmJsb2NrLWxvdF9fbGF5ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBUZXh0XG4gICZfX3RleHQge1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIxMHB4KTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICBoZWlnaHQ6IDk0cHg7XG4gICAgfVxuICAgICYtLXNpbXBsZSB7XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogNHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjVweCAxNXB4IDIwcHg7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5yZWYsXG4gICAgLmV4Y2x1IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDgpO1xuICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgxMCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIEBpbmNsdWRlIG1xLW1vYmlsZSB7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5leGNsdSB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDE1cHg7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguOCk7XG4gICAgICB9XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMik7XG4gICAgICBsaW5lLWhlaWdodDogZm9udC1zaXplKDIyKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzVweCk7XG4gICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSg5KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtc2l6ZSgxNSk7XG4gICAgICB9XG4gICAgICA+IHNwYW46bm90KC5zdWIpIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMnB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuc3ViIHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE3KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBmb250LXNpemUoMjYpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IGZvbnQtc2l6ZSgwKTtcbiAgICB9XG4gICAgLmluZm8ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKDE0KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXNpemUoMTIpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gUHJpY2VcbiAgJl9fcHJpY2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMjE1cHg7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgNnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgQGluY2x1ZGUgbXEtcG9ydHJhaXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIEBpbmNsdWRlIG1xLXBvcnRyYWl0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDMwcHggMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHggMTBweDtcbiAgICAgICAgQGluY2x1ZGUgbXEtbW9iaWxlIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTBweCAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc3RyaWtlLXRleHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgQGluY2x1ZGUgdGV4dC1wcmljZVN0cmlrZSgpO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNtYWxsLXRleHQge1xuICAgICAgZm9udC1zaXplOiBmb250LXNpemUoJGxpbmtNZWRpdW1TaXplKTtcbiAgICB9XG4gICAgLm1lZGl1bS10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogZm9udC1zaXplKCRib2R5U21hbGxTaXplKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBAaW5jbHVkZSBtcS1tb2JpbGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAubWluaS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIHRleHQtdGFnKDUwMCk7XG4gICAgICBmb250LXNpemU6IGZvbnQtc2l6ZSgxMik7XG4gICAgfVxuICAgIC5wcmljZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XG4gICAgICBjb2xvcjogJGJsdWU7XG4gICAgfVxuICAgIC5wcmljZS1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAudHZhIHtcbiAgICAgIG1heC13aWR0aDogOTBweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICBAaW5jbHVkZSBtcS1wb3J0cmFpdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fbGF5ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC43KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjM1cztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC5sYXllci1jb250YWluZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qKioqKioqKioqKioqKiogU0NST0xMQkFSIEJBU0UgQ1NTICoqKioqKioqKioqKioqKi9cbi5zY3JvbGwtd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zY3JvbGwtd3JhcHBlciA+IC5zY3JvbGwtY29udGVudCB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbWF4LWhlaWdodDogbm9uZTtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBzY3JvbGwgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnNjcm9sbC13cmFwcGVyID4gLnNjcm9sbC1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi5zY3JvbGwtZWxlbWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2Nyb2xsLWVsZW1lbnQsIC5zY3JvbGwtZWxlbWVudCBkaXYge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUsXG4uc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIsXG4uc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1hcnJvdyB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnNjcm9sbC10ZXh0YXJlYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gIGJvcmRlci10b3AtY29sb3I6ICM5OTk5OTk7XG59XG4uc2Nyb2xsLXRleHRhcmVhID4gLnNjcm9sbC1jb250ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuLnNjcm9sbC10ZXh0YXJlYSA+IC5zY3JvbGwtY29udGVudCA+IHRleHRhcmVhIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDA7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBzY3JvbGwgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuLnNjcm9sbC10ZXh0YXJlYSA+IC5zY3JvbGwtY29udGVudCA+IHRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG59XG5cblxuXG5cblxuXG5cblxuXG4vKioqKioqKioqKioqKioqIFNJTVBMRSBJTk5FUiBTQ1JPTExCQVIgKioqKioqKioqKioqKioqL1xuXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50LFxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCBkaXZcbntcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IHtcbiAgYm90dG9tOiAycHg7XG4gIGhlaWdodDogOHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gODBweCk7XG4gIHJpZ2h0OiAyMHB4O1xuICB0b3A6IDQwcHg7XG4gIHdpZHRoOiA4cHg7XG59XG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIsXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF90cmFjayxcbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDhweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2ssXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcblxufVxuXG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGJhY2tncm91bmQtY29sb3I6ICNlMGUwZTA7IH1cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjYzJjMmMyOyB9XG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50OmhvdmVyIC5zY3JvbGwtYmFyIHsgYmFja2dyb3VuZC1jb2xvcjogIzkxOTE5MTsgfVxuLmN1c3RvbS1zY3JvbGxiYXItLXNlY29uZGFyeS5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTsgfVxuLmN1c3RvbS1zY3JvbGxiYXItLXNlY29uZGFyeS5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTsgb3BhY2l0eTogLjk7IH1cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWJhciB7IGJhY2tncm91bmQtY29sb3I6ICM5MTkxOTE7IH1cblxuXG4vKiB1cGRhdGUgc2Nyb2xsYmFyIG9mZnNldCBpZiBib3RoIHNjcm9sbHMgYXJlIHZpc2libGUgKi9cblxuLnNjcm9sbGJhci1pbm5lciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGxlZnQ6IC0xMnB4OyB9XG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgdG9wOiAtMTJweDsgfVxuXG5cbi5zY3JvbGxiYXItaW5uZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IC0xMnB4OyB9XG4uc2Nyb2xsYmFyLWlubmVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC0xMnB4OyB9XG5cblxuXG5cblxuXG5cblxuXG5cbi8qKioqKioqKioqKioqKiogU0lNUExFIE9VVEVSIFNDUk9MTEJBUiAqKioqKioqKioqKioqKiovXG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQsXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IGRpdlxue1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSB7XG4gIGhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEycHg7XG59XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X291dGVyIHsgaGVpZ2h0OiA4cHg7IHRvcDogMnB4OyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGxlZnQ6IDJweDsgd2lkdGg6IDhweDsgfVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IG92ZXJmbG93OiBoaWRkZW47IH1cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgYmFja2dyb3VuZC1jb2xvcjogJHNjcm9sbGJhcjsgfVxuXG4uY3VzdG9tLXNjcm9sbGJhci0tc2Vjb25kYXJ5XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyLFxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2ssXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA4cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7IH1cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2tEYXJrOyB9XG4uY3VzdG9tLXNjcm9sbGJhci0tc2Vjb25kYXJ5LnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhciB7IGJhY2tncm91bmQtY29sb3I6ICRibHVlOyB9XG4uY3VzdG9tLXNjcm9sbGJhci0tc2Vjb25kYXJ5LnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhcjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICRibHVlOyBvcGFjaXR5OiAuOTsgfVxuLnNjcm9sbGJhci1vdXRlciA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwtZHJhZ2dhYmxlIC5zY3JvbGwtYmFyIHsgYmFja2dyb3VuZC1jb2xvcjogIzkxOTE5MTsgfVxuXG5cbi8qIHNjcm9sbGJhciBoZWlnaHQvd2lkdGggJiBvZmZzZXQgZnJvbSBjb250YWluZXIgYm9yZGVycyAqL1xuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgeyBsZWZ0OiAtMTJweDsgbWFyZ2luLWxlZnQ6IDEycHg7IH1cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWNvbnRlbnQuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSB7IHRvcDogIC0xMnB4OyBtYXJnaW4tdG9wOiAgMTJweDsgfVxuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtYmFyIHsgbWluLXdpZHRoOiAxMHB4OyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtYmFyIHsgbWluLWhlaWdodDogMTBweDsgfVxuXG5cbi8qIHVwZGF0ZSBzY3JvbGxiYXIgb2Zmc2V0IGlmIGJvdGggc2Nyb2xscyBhcmUgdmlzaWJsZSAqL1xuXG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgbGVmdDogLTE0cHg7IH1cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyB0b3A6IC0xNHB4OyB9XG5cbi5zY3JvbGxiYXItb3V0ZXIgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IC0xNHB4OyB9XG4uc2Nyb2xsYmFyLW91dGVyID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC0xNHB4OyB9XG5cblxuXG5cblxuXG5cblxuXG5cbi8qKioqKioqKioqKioqKiogU0NST0xMQkFSIE1BQyBPUyBYICoqKioqKioqKioqKioqKi9cblxuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQsXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudCBkaXZcbntcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50IGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF90cmFjayB7IGRpc3BsYXk6IG5vbmU7IH1cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZDNkU3MTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLW1zLWZpbHRlcjpcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgb3BhY2l0eTogMDtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDdweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcblxuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG59XG4uc2Nyb2xsYmFyLW1hY29zeDpob3ZlciA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhcixcbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC1kcmFnZ2FibGUgLnNjcm9sbC1iYXIge1xuICAtbXMtZmlsdGVyOlwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NzApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03MCk7XG4gIG9wYWNpdHk6IDAuNztcbn1cblxuXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCB7XG4gIGJvdHRvbTogMHB4O1xuICBoZWlnaHQ6IDBweDtcbiAgbGVmdDogMDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICByaWdodDogMHB4O1xuICB0b3A6IDA7XG4gIHdpZHRoOiAwcHg7XG59XG5cbi8qIHNjcm9sbGJhciBoZWlnaHQvd2lkdGggJiBvZmZzZXQgZnJvbSBjb250YWluZXIgYm9yZGVycyAqL1xuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1iYXIgeyBoZWlnaHQ6IDdweDsgbWluLXdpZHRoOiAxMHB4OyB0b3A6IC05cHg7IH1cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtYmFyIHsgbGVmdDogLTlweDsgbWluLWhlaWdodDogMTBweDsgd2lkdGg6IDdweDsgfVxuXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyBsZWZ0OiAycHg7IH1cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTRweDsgfVxuXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIgeyB0b3A6IDJweDsgfVxuLnNjcm9sbGJhci1tYWNvc3ggPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC00cHg7IH1cblxuLyogdXBkYXRlIHNjcm9sbGJhciBvZmZzZXQgaWYgYm90aCBzY3JvbGxzIGFyZSB2aXNpYmxlICovXG4uc2Nyb2xsYmFyLW1hY29zeCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtc2Nyb2xseV92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTExcHg7IH1cbi5zY3JvbGxiYXItbWFjb3N4ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC0xMXB4OyB9XG5cblxuXG5cblxuXG5cblxuXG5cbi8qKioqKioqKioqKioqKiogU0NST0xMQkFSIExJR0hUICoqKioqKioqKioqKioqKi9cblxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudCxcbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50IGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X3NpemUge1xuICBiYWNrZ3JvdW5kOiAjZGJkYmRiO1xuICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXhNREFsSWlCNU1qMGlNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJd0pTSWdjM1J2Y0MxamIyeHZjajBpSTJSaVpHSmtZaUlnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpFd01DVWlJSE4wYjNBdFkyOXNiM0k5SWlObE9HVTRaVGdpSUhOMGIzQXRiM0JoWTJsMGVUMGlNU0l2UGdvZ0lEd3ZiR2x1WldGeVIzSmhaR2xsYm5RK0NpQWdQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRWlJR2hsYVdkb2REMGlNU0lnWm1sc2JEMGlkWEpzS0NObmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0tTSWdMejRLUEM5emRtYysnKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgI2RiZGJkYiAwJSwgI2U4ZThlOCAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUsI2RiZGJkYiksIGNvbG9yLXN0b3AoMTAwJSwjZThlOGU4KSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICNkYmRiZGIgMCUsI2U4ZThlOCAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICNkYmRiZGIgMCUsI2U4ZThlOCAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZGJkYmRiIDAlLCNlOGU4ZTggMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2RiZGJkYiAwJSwjZThlOGU4IDEwMCUpO1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDE3cHg7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxN3B4O1xufVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l4TURBbElpQjVNajBpTUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUkyWmxabVZtWlNJZ2MzUnZjQzF2Y0dGamFYUjVQU0l4SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTm1OV1kxWmpVaUlITjBiM0F0YjNCaFkybDBlVDBpTVNJdlBnb2dJRHd2YkdsdVpXRnlSM0poWkdsbGJuUStDaUFnUEhKbFkzUWdlRDBpTUNJZ2VUMGlNQ0lnZDJsa2RHZzlJakVpSUdobGFXZG9kRDBpTVNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtLU0lnTHo0S1BDOXpkbWMrJyk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICNmZWZlZmUgMCUsICNmNWY1ZjUgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCNmZWZlZmUpLCBjb2xvci1zdG9wKDEwMCUsI2Y1ZjVmNSkpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmVmZWZlIDAlLCNmNWY1ZjUgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAjZmVmZWZlIDAlLCNmNWY1ZjUgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgI2ZlZmVmZSAwJSwjZjVmNWY1IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZWZlZmUgMCUsI2Y1ZjVmNSAxMDAlKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAjZGJkYmRiO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLyogc2Nyb2xsYmFyIGhlaWdodC93aWR0aCAmIG9mZnNldCBmcm9tIGNvbnRhaW5lciBib3JkZXJzICovXG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWNvbnRlbnQuc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSB7IGxlZnQ6IC0xN3B4OyBtYXJnaW4tbGVmdDogMTdweDsgfVxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtY29udGVudC5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIHsgdG9wOiAgLTE3cHg7IG1hcmdpbi10b3A6ICAxN3B4OyB9XG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1iYXIgeyBoZWlnaHQ6IDEwcHg7IG1pbi13aWR0aDogMTBweDsgdG9wOiAwcHg7IH1cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1iYXIgeyBsZWZ0OiAwcHg7IG1pbi1oZWlnaHQ6IDEwcHg7IHdpZHRoOiAxMHB4OyB9XG5cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X291dGVyIHsgaGVpZ2h0OiAxMnB4OyBsZWZ0OiAycHg7IHRvcDogMnB4OyB9XG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogLTRweDsgfVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGxlZnQ6IDJweDsgdG9wOiAycHg7IHdpZHRoOiAxMnB4OyB9XG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtNHB4OyB9XG5cbi8qIHVwZGF0ZSBzY3JvbGxiYXIgb2Zmc2V0IGlmIGJvdGggc2Nyb2xscyBhcmUgdmlzaWJsZSAqL1xuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtMTlweDsgfVxuLnNjcm9sbGJhci1saWdodCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF9zaXplIHsgdG9wOiAtMTlweDsgfVxuXG4uc2Nyb2xsYmFyLWxpZ2h0ID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgbGVmdDogLTE5cHg7IH1cbi5zY3JvbGxiYXItbGlnaHQgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyB0b3A6IC0xOXB4OyB9XG5cblxuXG5cblxuXG5cblxuXG5cbi8qKioqKioqKioqKioqKiogU0NST0xMQkFSIFJBSUwgKioqKioqKioqKioqKioqL1xuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQsXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2XG57XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9zaXplIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyOmhvdmVyIC5zY3JvbGwtZWxlbWVudF9zaXplIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXgge1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMTJweDtcbiAgbGVmdDogMDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAzcHggMCAycHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMnB4IDAgM3B4O1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTJweDtcbn1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwYjlhMDtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICBib3gtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXI6aG92ZXIgLnNjcm9sbC1iYXIge1xuICBib3gtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi8qIHNjcm9sbGJhciBoZWlnaHQvd2lkdGggJiBvZmZzZXQgZnJvbSBjb250YWluZXIgYm9yZGVycyAqL1xuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWNvbnRlbnQuc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSB7IGxlZnQ6IC0xN3B4OyBtYXJnaW4tbGVmdDogMTdweDsgfVxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgeyBtYXJnaW4tdG9wOiAxN3B4OyB0b3A6IC0xN3B4OyB9XG5cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWJhciB7IGhlaWdodDogMTBweDsgbWluLXdpZHRoOiAxMHB4OyB0b3A6IDFweDsgfVxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtYmFyIHsgbGVmdDogMXB4OyBtaW4taGVpZ2h0OiAxMHB4OyB3aWR0aDogMTBweDsgfVxuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X291dGVyIHsgaGVpZ2h0OiAxNXB4OyBsZWZ0OiA1cHg7IH1cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGhlaWdodDogMnB4OyBsZWZ0OiAtMTBweDsgdG9wOiA1cHg7IH1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IHRvcDogNXB4OyB3aWR0aDogMTVweDsgfVxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgbGVmdDogNXB4OyB0b3A6IC0xMHB4OyB3aWR0aDogMnB4OyB9XG5cbi8qIHVwZGF0ZSBzY3JvbGxiYXIgb2Zmc2V0IGlmIGJvdGggc2Nyb2xscyBhcmUgdmlzaWJsZSAqL1xuXG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IGxlZnQ6IC0yNXB4OyB9XG4uc2Nyb2xsYmFyLXJhaWwgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IHRvcDogLTI1cHg7IH1cblxuLnNjcm9sbGJhci1yYWlsID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3RyYWNrIHsgbGVmdDogLTI1cHg7IH1cbi5zY3JvbGxiYXItcmFpbCA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtc2Nyb2xseF92aXNpYmxlIC5zY3JvbGwtZWxlbWVudF90cmFjayB7IHRvcDogLTI1cHg7IH1cblxuXG5cblxuXG5cblxuXG5cblxuLyoqKioqKioqKioqKioqKiBTQ1JPTExCQVIgRFlOQU1JQyAqKioqKioqKioqKioqKiovXG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudCxcbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudCBkaXZcbntcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudCBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXgge1xuICBib3R0b206IDJweDtcbiAgaGVpZ2h0OiA3cHg7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IDJweDtcbiAgdG9wOiAwO1xuICB3aWR0aDogN3B4O1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1lbGVtZW50X291dGVyIHtcbiAgb3BhY2l0eTogMC4zO1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9zaXplIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgb3BhY2l0eTogMDtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcblxuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQgLnNjcm9sbC1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM2ZTcxO1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogN3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDdweDtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xufVxuXG4vKiBzY3JvbGxiYXIgaGVpZ2h0L3dpZHRoICYgb2Zmc2V0IGZyb20gY29udGFpbmVyIGJvcmRlcnMgKi9cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtYmFyIHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDdweDtcbiAgbWluLXdpZHRoOiAyNHB4O1xuICB0b3A6IGF1dG87XG59XG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1iYXIge1xuICBsZWZ0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAyNHB4O1xuICByaWdodDogMDtcbiAgd2lkdGg6IDdweDtcbn1cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAycHg7XG5cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgMC4ycztcbiAgLW1vei10cmFuc2l0aW9uOiBoZWlnaHQgMC4ycztcbiAgLW8tdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnM7XG4gIC1tcy10cmFuc2l0aW9uOiBoZWlnaHQgMC4ycztcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnM7XG59XG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgdG9wOiAycHg7XG5cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjJzO1xuICAtbW96LXRyYW5zaXRpb246IHdpZHRoIDAuMnM7XG4gIC1vLXRyYW5zaXRpb246IHdpZHRoIDAuMnM7XG4gIC1tcy10cmFuc2l0aW9uOiB3aWR0aCAwLjJzO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzO1xufVxuXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtNHB4OyB9XG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC00cHg7IH1cblxuXG4vKiB1cGRhdGUgc2Nyb2xsYmFyIG9mZnNldCBpZiBib3RoIHNjcm9sbHMgYXJlIHZpc2libGUgKi9cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtMTFweDsgfVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyB0b3A6IC0xMXB4OyB9XG5cblxuLyogaG92ZXIgJiBkcmFnICovXG5cbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudDpob3ZlciAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIsXG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWVsZW1lbnRfb3V0ZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC1tcy1maWx0ZXI6XCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT03MClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTcwKTtcbiAgb3BhY2l0eTogMC43O1xufVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50OmhvdmVyIC5zY3JvbGwtZWxlbWVudF9vdXRlciAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSxcbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwtZHJhZ2dhYmxlIC5zY3JvbGwtZWxlbWVudF9vdXRlciAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2Nyb2xsYmFyLWR5bmFtaWMgPiAuc2Nyb2xsLWVsZW1lbnQ6aG92ZXIgLnNjcm9sbC1lbGVtZW50X291dGVyIC5zY3JvbGwtYmFyLFxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC1kcmFnZ2FibGUgLnNjcm9sbC1lbGVtZW50X291dGVyIC5zY3JvbGwtYmFyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcblxuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbn1cblxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14OmhvdmVyIC5zY3JvbGwtZWxlbWVudF9vdXRlcixcbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteC5zY3JvbGwtZHJhZ2dhYmxlIC5zY3JvbGwtZWxlbWVudF9vdXRlciB7XG4gIGhlaWdodDogMjBweDtcbiAgbWluLWhlaWdodDogN3B4O1xufVxuLnNjcm9sbGJhci1keW5hbWljID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15OmhvdmVyIC5zY3JvbGwtZWxlbWVudF9vdXRlcixcbi5zY3JvbGxiYXItZHluYW1pYyA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteS5zY3JvbGwtZHJhZ2dhYmxlIC5zY3JvbGwtZWxlbWVudF9vdXRlciB7XG4gIG1pbi13aWR0aDogN3B4O1xuICB3aWR0aDogMjBweDtcbn1cblxuXG5cblxuXG5cblxuXG5cblxuLyoqKioqKioqKioqKioqKiBTQ1JPTExCQVIgR09PR0xFIENIUk9NRSAqKioqKioqKioqKioqKiovXG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LFxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQgZGl2XG57XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50IGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7fVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGJkYmRiO1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBsZWZ0OiAwO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDE2cHg7XG59XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50IC5zY3JvbGwtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZDlkOTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JkYmRiZDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudCAuc2Nyb2xsLWJhcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMmMyYzI7XG4gIGJvcmRlci1jb2xvcjogI2E5YTlhOTtcbn1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLWRyYWdnYWJsZSAuc2Nyb2xsLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MTkxOTE7XG4gIGJvcmRlci1jb2xvcjogIzdlN2U3ZTtcbn1cblxuLyogc2Nyb2xsYmFyIGhlaWdodC93aWR0aCAmIG9mZnNldCBmcm9tIGNvbnRhaW5lciBib3JkZXJzICovXG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgeyBsZWZ0OiAtMTZweDsgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1jb250ZW50LnNjcm9sbC1zY3JvbGx4X3Zpc2libGUgeyB0b3A6ICAtMTZweDsgbWFyZ2luLXRvcDogIDE2cHg7IH1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1iYXIgeyBoZWlnaHQ6IDhweDsgbWluLXdpZHRoOiAxMHB4OyB0b3A6IDNweDsgfVxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkgLnNjcm9sbC1iYXIgeyBsZWZ0OiAzcHg7IG1pbi1oZWlnaHQ6IDEwcHg7IHdpZHRoOiA4cHg7IH1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXggLnNjcm9sbC1lbGVtZW50X291dGVyIHsgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGJkYmRiOyB9XG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteCAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyBoZWlnaHQ6IDE0cHg7IGxlZnQ6IC0zcHg7IH1cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14IC5zY3JvbGwtZWxlbWVudF9zaXplIHsgaGVpZ2h0OiAxNHB4OyBsZWZ0OiAtNHB4OyB9XG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC15IC5zY3JvbGwtZWxlbWVudF9vdXRlciB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGJkYmRiOyB9XG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyB0b3A6IC0zcHg7IHdpZHRoOiAxNHB4OyB9XG4uc2Nyb2xsYmFyLWNocm9tZSA+IC5zY3JvbGwtZWxlbWVudC5zY3JvbGwteSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IHRvcDogLTRweDsgd2lkdGg6IDE0cHg7IH1cblxuLyogdXBkYXRlIHNjcm9sbGJhciBvZmZzZXQgaWYgYm90aCBzY3JvbGxzIGFyZSB2aXNpYmxlICovXG5cbi5zY3JvbGxiYXItY2hyb21lID4gLnNjcm9sbC1lbGVtZW50LnNjcm9sbC14LnNjcm9sbC1zY3JvbGx5X3Zpc2libGUgLnNjcm9sbC1lbGVtZW50X3NpemUgeyBsZWZ0OiAtMTlweDsgfVxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfc2l6ZSB7IHRvcDogLTE5cHg7IH1cblxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXguc2Nyb2xsLXNjcm9sbHlfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyBsZWZ0OiAtMTlweDsgfVxuLnNjcm9sbGJhci1jaHJvbWUgPiAuc2Nyb2xsLWVsZW1lbnQuc2Nyb2xsLXkuc2Nyb2xsLXNjcm9sbHhfdmlzaWJsZSAuc2Nyb2xsLWVsZW1lbnRfdHJhY2sgeyB0b3A6IC0xOXB4OyB9XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/