.subscription-recommendation {
  min-height: 305px;
}
.subscription-recommendation p {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .subscription-recommendation .ds-hero__content-wrap {
    display: block;
    padding: 0 20px;
    margin: -40px 0 0;
  }
}
@media screen and (min-width: 1024px) {
  .subscription-recommendation .ds-hero__content-wrap {
    display: flex;
    align-items: flex-end;
    padding: 40px 40px 0;
    margin: 0;
    padding-top: 100px;
  }
}
@media screen and (min-width: 768px) {
  .subscription-recommendation .ds-hero__image {
    max-height: 460px;
  }
}
@media screen and (min-width: 1024px) {
  .subscription-recommendation .dna-grid--2 .dna-grid-item {
    min-width: 280px;
    max-width: 360px;
  }
  .subscription-recommendation .dna-grid--2 .dna-grid-item:first-child {
    justify-self: end;
  }
  .subscription-recommendation .dna-grid--2 .dna-grid-item:last-child {
    justify-self: start;
  }
}
.subscription-recommendation .subscription-recommendation__imageview {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px 50px;
  min-height: 305px;
  margin: 20px 0;
}
@media screen and (min-width: 768px) {
  .subscription-recommendation .subscription-recommendation__imageview {
    flex-wrap: nowrap;
  }
}
.subscription-recommendation .subscription-recommendation__text {
  flex: 1 1 50%;
}
.subscription-recommendation .subscription-recommendation__contact-us {
  text-align: center;
  flex: 1 1 auto;
}
.subscription-recommendation .subscription-recommendation__container--fullwidth {
  width: 100%;
  max-width: none;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .subscription-recommendation .subscription-recommendation__container--fullwidth {
    padding: 40px 60px;
  }
}
.subscription-recommendation .subscription-recommendation__image {
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  flex: 1 1 50%;
  min-width: 250px;
  margin: 30px 0;
}
.subscription-recommendation .subscription-recommendation__image img {
  max-width: 400px;
  max-height: 300px;
}
@media screen and (min-width: 768px) {
  .subscription-recommendation .subscription-recommendation__bg-image {
    position: absolute;
    inset: 0;
    bottom: 40px;
  }
}
.subscription-recommendation .subscription-recommendation__title {
  margin: 0 !important;
}
.subscription-recommendation .subscription-recommendation__content {
  margin: 10px 0;
}
.subscription-recommendation .subscription-recommendation__try-another-number {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #EFEEED;
}
@media screen and (min-width: 480px) {
  .subscription-recommendation .subscription-recommendation__try-another-number {
    align-items: flex-end;
    justify-content: space-between;
  }
}
@media screen and (min-width: 480px) {
  .subscription-recommendation .subscription-recommendation__progress {
    margin: 0 30%;
  }
}
.subscription-recommendation .subscription-recommendation__current-number {
  line-height: 1.5;
}
@media screen and (min-width: 480px) {
  .subscription-recommendation .subscription-recommendation__current-number {
    text-align: left;
  }
}
.subscription-recommendation .subscription-recommendation__footer {
  margin: 10px 0;
  font-size: 14px;
}
.subscription-recommendation .subscription-recommendation__form {
  max-width: 480px;
  margin: 20px 0;
}
.subscription-recommendation .subscription-recommendation__form .form-feedback-group {
  text-align: left;
}
@media screen and (max-width: 479px) {
  .subscription-recommendation .subscription-recommendation__form .ds-btn, .subscription-recommendation .subscription-recommendation__form .ds-input {
    width: 100%;
  }
}
.subscription-recommendation .subscription-recommendation__form-fields {
  display: flex;
  gap: 10px;
  flex-direction: column;
  flex-wrap: wrap;
}
@media screen and (min-width: 480px) {
  .subscription-recommendation .subscription-recommendation__form-fields {
    flex-direction: row;
    align-items: flex-start;
  }
  .subscription-recommendation .subscription-recommendation__form-fields .input-group-container {
    flex: 1 1 auto;
  }
  .subscription-recommendation .subscription-recommendation__form-fields .ds-btn {
    flex: 0 0 auto;
  }
  .subscription-recommendation .subscription-recommendation__form-fields input {
    width: 100%;
    min-width: 160px;
    margin-top: 1px;
  }
}
.subscription-recommendation .subscription-recommendation__form .has-error input {
  border-bottom: 3px solid #DD0A0A;
}
.subscription-recommendation .subscription-recommendation__form .has-error label, .subscription-recommendation .subscription-recommendation__form .has-error .control-label {
  color: #DD0A0A;
}
.subscription-recommendation .subscription-recommendation__form .has-error .help-block {
  display: block;
  color: #DD0A0A;
  margin-bottom: 0;
}
.subscription-recommendation .subscription-recommendation__form label {
  display: block;
  text-align: left;
  margin-bottom: 5px;
}
.subscription-recommendation .subscription-recommendation__products-header {
  text-align: center;
  margin-bottom: 20px;
}
.subscription-recommendation .subscription-recommendation__results {
  text-align: left;
  min-height: 305px;
}
.subscription-recommendation .subscription-recommendation__suggested-products {
  gap: 20px;
}
.subscription-recommendation .subscription-recommendation__cta-area {
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  gap: 10px;
  margin-top: 30px;
}
@media screen and (min-width: 480px) {
  .subscription-recommendation .subscription-recommendation__cta-area {
    flex-direction: row;
  }
}
@media screen and (max-width: 1023px) {
  .subscription-recommendation .subscription-recommendation__cta-area--sticky {
    position: sticky;
    bottom: 0;
    padding: 10px 0;
    z-index: 10;
    background: #FFFFFF;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .subscription-recommendation .ds-hero {
    display: block;
  }
  .subscription-recommendation .subscription-recommendation__bg-image {
    position: relative;
    height: 220px;
  }
  .subscription-recommendation .ds-hero__logo-image {
    top: 10px;
    bottom: 40px;
    left: 20px;
    right: 20px;
  }
  .subscription-recommendation .ds-hero__content {
    max-width: unset;
    width: 100%;
    padding: 20px;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL3NvdXJjZS8iLCJzb3VyY2VzIjpbInN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbi5zY3NzIiwiaG9tZS9qZW5raW5zL2FnZW50L3dvcmtzcGFjZS9ETkFmaS9CVUlMRF9BTkRfREVQTE9ZX1BMQU5TL0ROQS5maV9EWFBfUFJPRF9BV1MvUHJvZF9hcHAxX2xpZmVyYXlfaW5zdGFsbF9hbmRfZGVwbG95L2RuYS1saWZlcmF5LXNvdXJjZS9kbmEtZmktdGhlbWUvc3JjL2Nzcy9kbmEvX21peGlucy5zY3NzIiwiaG9tZS9qZW5raW5zL2FnZW50L3dvcmtzcGFjZS9ETkFmaS9CVUlMRF9BTkRfREVQTE9ZX1BMQU5TL0ROQS5maV9EWFBfUFJPRF9BV1MvUHJvZF9hcHAxX2xpZmVyYXlfaW5zdGFsbF9hbmRfZGVwbG95L2RuYS1saWZlcmF5LXNvdXJjZS9kbmEtZmktdGhlbWUvc3JjL2Nzcy9kbmEvX3ZhcnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQTtFQUNFLFlBUnVDOztBQVV2QztFQUNFLGVBUmlDOztBQ0Q3QjtFRFlOO0lBR0k7SUFDQTtJQUNBOzs7QUNYRTtFRE1OO0lBU0k7SUFDQTtJQUNBO0lBQ0E7SUFFQTs7O0FDMUJFO0VEOEJOO0lBRUk7OztBQzFCRTtFRDhCTjtJQUVJLFdBcENzQztJQXFDdEMsV0FwQ3NDOztFQXNDdEM7SUFDRTs7RUFFRjtJQUNFOzs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUF6RHFDO0VBMERyQzs7QUN4REk7RURrRE47SUFRSTs7O0FBSUo7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FDMUVJO0VEdUVOO0lBS0k7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQzFGRTtFRDhGTjtJQ3VDRTtJQUNBO0lEckNFOzs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUMvRkk7RUR3Rk47SUFTSTtJQUNBOzs7QUNsR0U7RURzR047SUFFSTs7O0FBSUo7RUFDRSxhRWpIMkI7O0FESXZCO0VENEdOO0lBR0k7OztBQUlKO0VBQ0U7RUFDQSxXRTlIMkI7O0FGaUk3QjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTs7QUN2SEU7RUQySEY7SUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUMxSUU7RURzSUo7SUFNSTtJQUNBOztFQUNBO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFO0lBQ0E7SUFDQTs7O0FBTUo7RUFDRTs7QUFHRjtFQUNFLE9FaEhvQjs7QUZtSHRCO0VBQ0U7RUFDQSxPRXJIb0I7RUZzSHBCOztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUlKO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0EsWUFqTnFDOztBQW9OdkM7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FDdE1JO0VEaU1OO0lBT0k7OztBQzFORTtFRDZORjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsWUUxTVk7Ozs7QURUWjtFRDROSjtJQUNFOztFQUVGO0lBQ0U7SUFDQTs7RUFFRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUVGO0lBQ0U7SUFDQTtJQUNBIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwiLi4vdmFyc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG4kc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1pbi1oZWlnaHQ6IDMwNXB4OyAvL3NldCBtaW4gaGVpZ2h0IHRvIHJlZHVjZSB2aWV3IGp1bXBpbmcgd2hlbiBWdWUgY29udGVudCBpcyBsb2FkZWRcbiRzdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb24tbWF4LXdpZHRoOiA4NjBweDsgLy9zZXQgbWluIGhlaWdodCB0byByZWR1Y2UgdmlldyBqdW1waW5nIHdoZW4gVnVlIGNvbnRlbnQgaXMgbG9hZGVkXG4kc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1hcmdpbi1zbWFsbDogMTBweDtcbiRzdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb24tbWFyZ2luOiAyMHB4O1xuJHN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbi1jYXJkLW1pbndpZHRoOiAyODBweDtcbiRzdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb24tY2FyZC1tYXh3aWR0aDogMzYwcHg7XG5cbi5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb24ge1xuICBtaW4taGVpZ2h0OiAkc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1pbi1oZWlnaHQ7XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbi1tYXJnaW47XG4gIH1cblxuICAuZHMtaGVyb19fY29udGVudC13cmFwIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgLy8gT3ZlcnJpZGluZyBoZXJvIHN0eWxlIGZvciB0YWJsZXQgd2l0aCBtb2JpbGUgc3R5bGVzXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIG1hcmdpbjogLTQwcHggMCAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgIC8vIE92ZXJyaWRpbmcgYWJvdmUgc3R5bGVzIGZvciBkZXNrdG9wXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgcGFkZGluZzogNDBweCA0MHB4IDA7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICB9XG4gIH1cblxuICAuZHMtaGVyb19faW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICBtYXgtaGVpZ2h0OiA0NjBweDtcbiAgICB9XG4gIH1cblxuICAuZG5hLWdyaWQtLTIgLmRuYS1ncmlkLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgbWluLXdpZHRoOiAkc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLWNhcmQtbWlud2lkdGg7XG4gICAgICBtYXgtd2lkdGg6ICRzdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb24tY2FyZC1tYXh3aWR0aDtcbiAgICAgIC8vIENhcmRzIGluIDIgY29sdW1uIHdlcmUgY2VudGVyZWQgaW4gdGhlIGNvbHVtbiwgYW5kIHdlIG5lZWQgdGhlbSB0byBiZSBjbG9zZXIgdG8gZWFjaCBvdGhlclxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBzdGFydDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uX19pbWFnZXZpZXcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IDEwcHggNTBweDtcbiAgICBtaW4taGVpZ2h0OiAkc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1pbi1oZWlnaHQ7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX3RleHQge1xuICAgIGZsZXg6IDEgMSA1MCU7XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uX19jb250YWN0LXVzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uX19jb250YWluZXItLWZ1bGx3aWR0aCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgcGFkZGluZzogNDBweCA2MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2ltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4OiAxIDEgNTAlO1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICB9XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uX19iZy1pbWFnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgIEBpbmNsdWRlIHBvc2l0aW9uQWJzb2x1dGVGdWxsO1xuICAgICAgYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX3RpdGxlIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2NvbnRlbnQge1xuICAgIG1hcmdpbjogJHN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbi1tYXJnaW4tc21hbGwgMDtcbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX3RyeS1hbm90aGVyLW51bWJlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWxpbmUtLTA0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtbW9iaWxlKSB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICB9XG5cbiAgLnN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbl9fcHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtbW9iaWxlKSB7XG4gICAgICBtYXJnaW46IDAgMzAlO1xuICAgIH1cbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2N1cnJlbnQtbnVtYmVyIHtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtbW9iaWxlKSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2Zvb3RlciB7XG4gICAgbWFyZ2luOiAkc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1hcmdpbi1zbWFsbCAwO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2Zvcm0ge1xuICAgIG1heC13aWR0aDogNDgwcHg7XG4gICAgbWFyZ2luOiAkc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1hcmdpbiAwO1xuXG4gICAgLmZvcm0tZmVlZGJhY2stZ3JvdXAge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsLW1vYmlsZSkge1xuICAgICAgLmRzLWJ0biwgLmRzLWlucHV0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1maWVsZHMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMTBweDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLW1vYmlsZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgLmlucHV0LWdyb3VwLWNvbnRhaW5lciB7XG4gICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmRzLWJ0biB7XG4gICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1pbi13aWR0aDogMTYwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMXB4OyAvLyBhbGlnbiA0MHB4IGlucHV0IHdpdGggNDJweCBidXR0b25cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5oYXMtZXJyb3Ige1xuICAgICAgaW5wdXQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGNvbG9yLW5vdGlmaWNhdGlvbi0tZXJyb3I7XG4gICAgICB9XG5cbiAgICAgIGxhYmVsLCAuY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itbm90aWZpY2F0aW9uLS1lcnJvcjtcbiAgICAgIH1cblxuICAgICAgLmhlbHAtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICRjb2xvci1ub3RpZmljYXRpb24tLWVycm9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uX19wcm9kdWN0cy1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLnN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbl9fcmVzdWx0cyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtaW4taGVpZ2h0OiAkc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLW1pbi1oZWlnaHQ7XG4gIH1cblxuICAuc3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uX19zdWdnZXN0ZWQtcHJvZHVjdHMge1xuICAgIGdhcDogMjBweDtcbiAgfVxuXG4gIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2N0YS1hcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZS1tb2JpbGUpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxlci10aGFuLWRlc2t0b3ApIHtcbiAgICAgICYtLXN0aWNreSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICB6LWluZGV4OiAxMDsgLy8gc28gaXQgZ29lcyBhYm92ZSBjYXJkIGxhYmVsXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1tYWluLS13aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gSW4gc3Vic2NyaXB0aW9uIHJlY29tbWVuZGF0aW9ucyB3ZSB1c2UgaGVybyBlbGVtZW50J3MgbW9iaWxlIHN0eWxlcyBpbiB0YWJsZXRcbkBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0LW9ubHkpIHtcbiAgLnN1YnNjcmlwdGlvbi1yZWNvbW1lbmRhdGlvbiB7XG4gICAgLmRzLWhlcm8ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5zdWJzY3JpcHRpb24tcmVjb21tZW5kYXRpb25fX2JnLWltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMjIwcHg7XG4gICAgfVxuICAgIC5kcy1oZXJvX19sb2dvLWltYWdlIHtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGJvdHRvbTogNDBweDtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICByaWdodDogMjBweDtcbiAgICB9XG4gICAgLmRzLWhlcm9fX2NvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG4gIH1cbn0iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkBtaXhpbiBicmVha3BvaW50KCRwb2ludCkge1xuICAgIEBpZiAkcG9pbnQgPT0gbW9iaWxlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtdGFibGV0IC0gMSkgIHsgQGNvbnRlbnQ7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LXRhYmxldCkgeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gc21hbGxlci10aGFuLWRlc2t0b3Age1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1kZXNrdG9wIC0gMSkgeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gZGVza3RvcCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LWRlc2t0b3ApIHsgQGNvbnRlbnQ7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IGRlc2t0b3AtY29udGVudCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LWRlc2t0b3AtY29udGVudCkgeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gbGFyZ2UtZGVza3RvcCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlLWRlc2t0b3ApIHsgQGNvbnRlbnQ7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IGV4dHJhbGFyZ2UtZGVza3RvcCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LWV4dHJhbGFyZ2UtZGVza3RvcCkgeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0LW9ubHkge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC10YWJsZXQpIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1kZXNrdG9wIC0gMSkgeyBAY29udGVudDsgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcG9pbnQgPT0gbGFyZ2UtbW9iaWxlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UtbW9iaWxlKSB7IEBjb250ZW50OyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSBsYXJnZS1tb2JpbGUtb25seSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlLW1vYmlsZSkgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXRhYmxldCAtIDEpIHsgQGNvbnRlbnQ7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IHNtYWxsLW1vYmlsZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LWxhcmdlLW1vYmlsZSAtIDEpICB7IEBjb250ZW50OyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwb2ludCA9PSB0aW55LW1vYmlsZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXRpbnktbW9iaWxlIC0gMSkgIHsgQGNvbnRlbnQ7IH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHBvaW50ID09IG1heC1wYWdlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHBhZ2UtbWF4LXdpZHRoKSAgeyBAY29udGVudDsgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhICgjeyRwb2ludH0pIHsgQGNvbnRlbnQ7IH1cbiAgICB9XG59XG5AbWl4aW4gY29udGFpbmVyLXNtYWxsLW1vYmlsZSB7XG4gICAgQGNvbnRhaW5lciAobWF4LXdpZHRoOiAjeyRjb250YWluZXItd2lkdGgtbGFyZ2UtbW9iaWxlIC0gMX0pIHsgQGNvbnRlbnQ7IH1cbn1cbkBtaXhpbiBjb250YWluZXItbGFyZ2UtbW9iaWxlIHtcbiAgICBAY29udGFpbmVyIChtaW4td2lkdGg6ICN7JGNvbnRhaW5lci13aWR0aC1sYXJnZS1tb2JpbGV9KSB7IEBjb250ZW50OyB9XG59XG5AbWl4aW4gY29udGFpbmVyLXRhYmxldCB7XG4gICAgQGNvbnRhaW5lciAobWluLXdpZHRoOiAjeyRjb250YWluZXItd2lkdGgtdGFibGV0fSkgeyBAY29udGVudDsgfVxufVxuQG1peGluIGNvbnRhaW5lci1kZXNrdG9wIHtcbiAgICBAY29udGFpbmVyIChtaW4td2lkdGg6ICN7JGNvbnRhaW5lci13aWR0aC1kZXNrdG9wfSkgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gb3JpZW50YXRpb24oJG9yaWVudGF0aW9uKSB7XG4gICAgQGlmICRvcmllbnRhdGlvbiA9PSBsYW5kc2NhcGUge1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSB7IEBjb250ZW50OyB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRvcmllbnRhdGlvbiA9PSBwb3J0cmFpdCB7XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCkgeyBAY29udGVudDsgfVxuICAgIH1cbn1cblxuQG1peGluIGhpZ2gtcmVzKCkge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcGkpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLyBUaGUgbWljcm8gY2xlYXJmaXggaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICBkaXNwbGF5OnRhYmxlO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6Ym90aDtcbiAgICB9XG59XG5cbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHJhdGlvLW9yLXdpZHRoLCAkaGVpZ2h0OiBudWxsKSB7XG4gICAgJHBhZGRpbmc6IGlmKCRoZWlnaHQsIHBlcmNlbnRhZ2UobWF0aC5kaXYoJGhlaWdodCwkcmF0aW8tb3Itd2lkdGgpKSwgcGVyY2VudGFnZShtYXRoLmRpdigxLCRyYXRpby1vci13aWR0aCkpKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG5cbkBtaXhpbiB0cmFuc3BhcmVudC1zZWxlY3Rpb24ge1xuICAgICY6OnNlbGVjdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbn1cblxuQG1peGluIGhlcm8tZm9udC1zaXplKCRtb2JpbGUsICRsYXJnZW1vYmlsZSwgJHRhYmxldCwgJGRlc2t0b3AsICRsYXJnZWRlc2t0b3A6ICRkZXNrdG9wKSB7XG4gICAgZm9udC1zaXplOiAkbW9iaWxlICsgcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZS1tb2JpbGUpIHtcbiAgICAgICAgZm9udC1zaXplOiAkbGFyZ2Vtb2JpbGUgKyBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgZm9udC1zaXplOiAkdGFibGV0ICsgcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICBmb250LXNpemU6ICRkZXNrdG9wICsgcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgICBmb250LXNpemU6ICRsYXJnZWRlc2t0b3AgKyBweDtcbiAgICB9XG59XG5cbkBtaXhpbiBtYXRjaFRvSGVhZGVySGVpZ2h0KCRwcm9wZXJ0eSwgJGlzQm9keUVsZW1lbnQ6IGZhbHNlLCAkZXh0cmFoZWlnaHQ6IDAsICRuZWdhdGl2ZTpmYWxzZSkge1xuICAgICRtdWx0aXBsaWVyOiAxO1xuICAgIEBpZiAkbmVnYXRpdmUgeyAkbXVsdGlwbGllcjogLTF9XG5cbiAgICAjeyRwcm9wZXJ0eX06ICgkaGVhZGVyLWhlaWdodC1tb2JpbGUgKyAkZXh0cmFoZWlnaHQpICogJG11bHRpcGxpZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogKCRoZWFkZXItaGVpZ2h0LWRlc2t0b3AgKyAkZXh0cmFoZWlnaHQpICogJG11bHRpcGxpZXI7XG4gICAgfVxufVxuXG5AbWl4aW4gcG9zaXRpb25BYnNvbHV0ZUZ1bGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbn1cbkBtaXhpbiBwb3NpdGlvbkFic29sdXRlQ2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG59XG5cbkBtaXhpbiBidXR0b25TdHlsZVJlc2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuQG1peGluIGxpc3RTdHlsZVJlc2V0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgID4gbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG5AbWl4aW4gZHJvcHNoYWRvdy1lbGV2YXRpb24tbG93KCRjbGlwOiBudWxsKSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWxpbmUtLTA0O1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggMTZweCAwcHggc2NhbGVfY29sb3IoJGNvbG9yLXRleHQtLWJsYWNrLCAkYWxwaGE6IC05NCUpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLS1ub3JtYWw7XG4gICAgQGlmKCRjbGlwKSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuQG1peGluIGRyb3BzaGFkb3ctZWxldmF0aW9uLWhpZ2goJGNsaXA6IG51bGwpIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItbGluZS0tMDQ7XG4gICAgYm94LXNoYWRvdzogMHB4IDRweCAyNHB4IDBweCBzY2FsZV9jb2xvcigkY29sb3ItdGV4dC0tYmxhY2ssICRhbHBoYTogLTkyJSk7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtLW5vcm1hbDtcbiAgICBAaWYoJGNsaXApIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5AbWl4aW4gZHJvcHNoYWRvdy1lbGV2YXRpb24tZXh0cmEtaGlnaCgkY2xpcDogbnVsbCkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1saW5lLS0wNDtcbiAgICBib3gtc2hhZG93OiAwcHggOHB4IDY0cHggMHB4IHNjYWxlX2NvbG9yKCRjb2xvci10ZXh0LS1ibGFjaywgJGFscGhhOiAtODQlKTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy0tbm9ybWFsO1xuICAgIEBpZigkY2xpcCkge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cbkBtaXhpbiBkZWZhdWx0LWZvY3VzKCRyYWRpdXM6IG51bGwpIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggJGNvbG9yLXV0aWxpdHktLWZvY3VzLWxpZ2h0LCAwcHggMHB4IDBweCA0cHggJGNvbG9yLXV0aWxpdHktLWZvY3VzO1xuICAgICAgICBAaWYoJHJhZGl1cykge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICAgICAgfVxuICAgIH1cbn1cbkBtaXhpbiBpbm5lci1mb2N1cygkcmFkaXVzOiBudWxsKSB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDJweCAkY29sb3ItdXRpbGl0eS0tZm9jdXMsIGluc2V0IDBweCAwcHggMHB4IDRweCAkY29sb3ItdXRpbGl0eS0tZm9jdXMtbGlnaHQ7XG4gICAgICAgIEBpZigkcmFkaXVzKSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICB9XG4gICAgfVxufVxuQG1peGluIGlucHV0LWZpZWxkLWljb24oJHVybCwgJHVybDI6IG51bGwpIHtcbiAgICBAaWYoJHVybDIpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCR1cmwpLCB1cmwoJHVybDIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHVybCk7XG4gICAgfVxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggY2VudGVyLCByaWdodCAzNXB4IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xufVxuQG1peGluIHVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87XG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogZnJvbS1mb250O1xufVxuQG1peGluIGxpbmstdW5kZXJsaW5lIHtcbiAgICBAaW5jbHVkZSB1bmRlcmxpbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIEBpbmNsdWRlIHVuZGVybGluZTtcbiAgICB9XG59XG5cbkBtaXhpbiBob3Zlci1hY3RpdmUtc3RhdGUtZWZmZWN0cygkdGV4dC1jb2xvcjogbnVsbCwgJHRleHQtY29sb3ItY2hhbmdlOiBmYWxzZSwgJGJnLWNvbG9yOiBudWxsLCAkYm9yZGVyLWNvbG9yOiBudWxsKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIEBpZigkdGV4dC1jb2xvci1jaGFuZ2UpIHtcbiAgICAgICAgICAgIGNvbG9yOiBzY2FsZV9jb2xvcigkdGV4dC1jb2xvciwgJGxpZ2h0bmVzczogLTIwJSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIEBpZigkYmctY29sb3IpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlX2NvbG9yKCRiZy1jb2xvciwgJGxpZ2h0bmVzczogLTIwJSk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmKCRib3JkZXItY29sb3IpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogc2NhbGVfY29sb3IoJGJvcmRlci1jb2xvciwgJGxpZ2h0bmVzczogLTIwJSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjphY3RpdmUge1xuICAgICAgICBAaWYoJHRleHQtY29sb3ItY2hhbmdlKSB7XG4gICAgICAgICAgICBjb2xvcjogc2NhbGVfY29sb3IoJHRleHQtY29sb3IsICRsaWdodG5lc3M6IDEwJSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIEBpZigkYmctY29sb3IpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlX2NvbG9yKCRiZy1jb2xvciwgJGxpZ2h0bmVzczogMTAlKTtcbiAgICAgICAgfVxuICAgICAgICBAaWYoJGJvcmRlci1jb2xvcikge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBzY2FsZV9jb2xvcigkYm9yZGVyLWNvbG9yLCAkbGlnaHRuZXNzOiAxMCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBHUklEXG5AbWl4aW4gZ3JpZCgkY29sdW1uczoxLCAkZ2FwOiRncmlkLWdhcC0tc21hbGwpIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogJGdhcDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkY29sdW1ucywgbWlubWF4KDAsIDFmcikpO1xufVxuQG1peGluIGdyaWQtY29sdW1ucygkY29sdW1uczoxKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGNvbHVtbnMsIG1pbm1heCgwLCAxZnIpKTtcbn1cblxuQG1peGluIGZ1bGwtY2FyZC1saW5rLW92ZXJsYXkoKSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgfVxufSIsIi8vIEJyZWFrcG9pbnRzXG4kYnJlYWtwb2ludC10aW55LW1vYmlsZTogMzYwcHg7XG4kYnJlYWtwb2ludC1sYXJnZS1tb2JpbGU6IDQ4MHB4O1xuJGJyZWFrcG9pbnQtdGFibGV0OiA3NjhweDtcbiRicmVha3BvaW50LWRlc2t0b3A6IDEwMjRweDtcbiRicmVha3BvaW50LWRlc2t0b3AtY29udGVudDogMTI4MHB4O1xuJGJyZWFrcG9pbnQtbGFyZ2UtZGVza3RvcDogMTQ0MHB4O1xuJGJyZWFrcG9pbnQtZXh0cmFsYXJnZS1kZXNrdG9wOiAxOTIwcHg7XG4vLyBjb250YWluZXIgd2lkdGhzIGluIG5vcm1hbCBwYWdlIGNvbnRlbnRcbiRjb250YWluZXItd2lkdGgtbGFyZ2UtbW9iaWxlOiAkYnJlYWtwb2ludC1sYXJnZS1tb2JpbGUgLSAyKjIwcHg7XG4kY29udGFpbmVyLXdpZHRoLXRhYmxldDogJGJyZWFrcG9pbnQtdGFibGV0IC0gMio0MHB4O1xuJGNvbnRhaW5lci13aWR0aC1kZXNrdG9wOiAkYnJlYWtwb2ludC1kZXNrdG9wIC0gMio0MHB4O1xuXG4kZm9udC1zaXplLW5vcm1hbDogICAgICAgICAgICAgMTZweDtcbiRmb250LXNpemUtZW1waGFzaXplZDogICAgICAgICAxOHB4O1xuJGZvbnQtc2l6ZS1iaWdnZXI6ICAgICAgICAgICAgIDIwcHg7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgICAgICAgMzJweDtcbiRmb250LXNpemUtbGFyZ2VzdDogICAgICAgICAgICA0NHB4O1xuJGZvbnQtc2l6ZS1odWdlOiAgICAgICAgICAgICAgIDgwcHg7XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgICAgICAgMTRweDtcbiRmb250LXNpemUtZXh0cmFzbWFsbDogICAgICAgICAxMnB4O1xuJGZvbnQtc2l6ZS10aW55OiAgICAgICAgICAgICAgIDEwcHg7XG5cbiRsaW5lLWhlaWdodC1ub3JtYWw6ICAgICAgICAgICAxLjI1OyAvLyBmb3IgMTZweCwgMjBweFxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgIDEuNTsgLy8gZm9yIDE2cHgsIDI0cHhcblxuJGZvbnQtZmFtaWx5LWhlYWRpbmctZGVtaS1ib2xkOiAnRE5BIEhlYWRpbmcgRGVtaSBCb2xkJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1oZWFkaW5nLWJvbGQ6ICAgICAgJ0ROQSBIZWFkaW5nIEJvbGQnLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWhlYWRpbmctYmxhY2s6ICAgICAnRE5BIEhlYWRpbmcgQmxhY2snLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LXRleHQtYm9sZDogICAgICAgICAnRE5BIFRleHQgQm9sZCcsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktdGV4dC1tZWRpdW06ICAgICAgICdETkEgVGV4dCBNZWRpdW0nLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LXRleHQtcmVndWxhcjogICAgICAnRE5BIFRleHQgUmVndWxhcicsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbi8vIGNvbG9ycyBodHRwczovL3d3dy5maWdtYS5jb20vZmlsZS9MNElHNlNHM0FMN3N1ZTlZRzFnMmdCL0ROQS1Db2xvcnMtTkVXP25vZGUtaWQ9MiUzQTQxOVxuJGNvbG9yLW1haW4tLXdoaXRlOiAjRkZGRkZGO1xuJGNvbG9yLW1haW4tLWJsYWNrOiAjMTIxMjEyO1xuJGNvbG9yLW1haW4tLXBpbms6ICNEQTAwNzA7XG4kY29sb3ItbWFpbi0tcGluay0wMTogI0ZGODJDMTtcbiRjb2xvci1tYWluLS1waW5rLTAyOiAjRkZCRkRGO1xuJGNvbG9yLW1haW4tLXBsdW06ICM1NTFDM0U7XG4kY29sb3ItbWFpbi0tcGx1bS0wMTogIzY5MjE0QztcbiRjb2xvci1tYWluLS1wbHVtLTAyOiAjNzkyQTU5O1xuXG4kY29sb3ItYWNjZW50LS1sZW1vbjogI0ZGRjM0NztcbiRjb2xvci1hY2NlbnQtLWxlbW9uLTAxOiAjRkZGOUEzO1xuJGNvbG9yLWFjY2VudC0tbGVtb24tMDI6ICNGRkZBQkE7XG4kY29sb3ItYWNjZW50LS1za3k6ICMyRUNBRjA7XG4kY29sb3ItYWNjZW50LS1za3ktMDE6ICM3N0RDRjU7XG4kY29sb3ItYWNjZW50LS1za3ktMDI6ICM5NkU0Rjg7XG4kY29sb3ItYWNjZW50LS1vcmFuZ2U6ICNGRkE2MzM7XG4kY29sb3ItYWNjZW50LS1vcmFuZ2UtMDE6ICNGRkNBODU7XG4kY29sb3ItYWNjZW50LS1vcmFuZ2UtMDI6ICNGRkRCQUQ7XG5cbiRjb2xvci1iZy0td2hpdGU6ICNGRkZGRkY7XG4kY29sb3ItYmctLXNhbmQ6ICNGREZCRkE7XG4kY29sb3ItYmctLXNhbmQtMDE6ICNGOEY0RjE7XG4kY29sb3ItYmctLXNhbmQtMDI6ICNFREU4RTE7XG4kY29sb3ItYmctLWZyb3N0ZWRnbGFzczogI2Y1ZjVmNWViO1xuXG4kY29sb3ItdGV4dC0tYmxhY2s6ICMxMjEyMTI7XG4kY29sb3ItdGV4dC0tZGFyay1ncmF5OiAjNTA1MDUwO1xuJGNvbG9yLXRleHQtLXBsdW06ICM1NTFDM0U7XG4kY29sb3ItdGV4dC0tcGluazogI0RBMDA3MDtcbiRjb2xvci10ZXh0LS13aGl0ZTogI0ZGRkZGRjtcbiRjb2xvci10ZXh0LS1kaXNhYmxlZDogc2NhbGVfY29sb3IoJGNvbG9yLXRleHQtLWJsYWNrLCAkYWxwaGE6IC01MCUpO1xuXG4kY29sb3ItdXRpbGl0eS0tdGV4dC1saW5rOiAjREEwMDcwO1xuJGNvbG9yLXV0aWxpdHktLXRleHQtbGluay1ob3Zlcjogc2NhbGVfY29sb3IoJGNvbG9yLXV0aWxpdHktLXRleHQtbGluaywgJGxpZ2h0bmVzczogLTIwJSk7XG4kY29sb3ItdXRpbGl0eS0tZm9jdXM6ICMwMDY0RTI7XG4kY29sb3ItdXRpbGl0eS0tZm9jdXMtbGlnaHQ6ICNEOEU5RkY7XG5cbiRjb2xvci1saW5lLS0wMTogIzk0OEI4OTtcbiRjb2xvci1saW5lLS0wMjogI0Q0RDJDRTtcbiRjb2xvci1saW5lLS0wMzogI0U3RTVFMztcbiRjb2xvci1saW5lLS0wNDogI0VGRUVFRDtcblxuJGNvbG9yLW5vdGlmaWNhdGlvbi0taW5mbzogIzBCN0M5OTtcbiRjb2xvci1ub3RpZmljYXRpb24tLXdhcm5pbmc6ICNFQjY2MDA7XG4kY29sb3Itbm90aWZpY2F0aW9uLS1lcnJvcjogI0REMEEwQTtcbiRjb2xvci1ub3RpZmljYXRpb24tLXN1Y2Nlc3M6ICMwMDg1MDA7XG5cbiRib3JkZXItcmFkaXVzLS1zbWFsbDogNHB4O1xuJGJvcmRlci1yYWRpdXMtLW5vcm1hbDogOHB4O1xuJGJvcmRlci1yYWRpdXMtLWZ1bGw6IDUwJTtcblxuXG4vL3BhZ2UgbWluIG1heCB3aWR0aHNcbiRwYWdlLW1pbi13aWR0aDogMzIwcHg7XG4kcGFnZS1tYXgtd2lkdGg6IDI1NjBweDtcbiRwYWdlLWxheW91dC1ub3JtYWwtY29udGVudC1tYXh3aWR0aDogMTIwMHB4O1xuJHBhZ2UtbGF5b3V0LW1lZGl1bS1jb250ZW50LW1heHdpZHRoOiA4NjBweDtcbiRwYWdlLWxheW91dC1zbWFsbC1jb250ZW50LW1heHdpZHRoOiA2NDBweDtcblxuLy8gZ3JpZCBwYWRkaW5nc1xuJGdyaWQtZ2FwLS1zbWFsbDogMTBweDtcbiRncmlkLWdhcC0td2lkZTogMzBweDtcbiRncmlkLWdhcC0tbGFyZ2U6IDYwcHg7XG4kZ3JpZC1wYWRkaW5nOiAxMHB4O1xuXG4vL3BvcnRsZXQgbWFyZ2luc1xuJG1hcmdpbi1wb3J0bGV0LWRlZmF1bHQ6ICAgICAgICA1MHB4O1xuJG1hcmdpbi1wb3J0bGV0LXNtYWxsOiAgICAgICAgICAzMHB4O1xuJG1hcmdpbi1wb3J0bGV0LWV4dHJhc21hbGw6ICAgICAxMHB4O1xuJG1hcmdpbi1wb3J0bGV0LWV4dHJhbGFyZ2U6ICAgICAyMHZoO1xuXG4vL2lucHV0IHZhcmlhYmxlc1xuJGJ1dHRvbi1oZWlnaHQtZGVmYXVsdDogICA0MHB4O1xuJGJ1dHRvbi1oZWlnaHQtc21hbGw6ICAgICAzMnB4O1xuJGlucHV0LWhlaWdodC1kZWZhdWx0OiAgICA0MHB4O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAkY29sb3ItbGluZS0tMDE7XG4kaW5wdXQtZmllbGQtYmc6ICAgICAgICAgICAgICAgICRjb2xvci1iZy0td2hpdGU7XG4kaW5wdXQtdGV4dC1jb2xvcjogICAgICAgICAgICAgICRjb2xvci10ZXh0LS1ibGFjaztcbiRpbnB1dC1ib3JkZXItc2hvcnRoYW5kOiAgICAgICAgMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4kZm9ybS1lbGVtZW50cy1tYXgtd2lkdGg6ICAgICAgIDUxNXB4O1xuXG4vL2xhYmVsXG4kZHMtbGFiZWwtaGVpZ2h0OiAyMnB4O1xuXG4vLyBVc2UgdGhlc2UgY29sb3JzIGFueXdoZXJlIGEgbGluaywgaW5wdXQgb3IgYSBidXR0b24gaXMgZGlzYWJsZWQhXG4kZGlzYWJsZWQtYmFja2dyb3VuZDogICAgICAgICAgICNmMmYyZjI7XG4kZGlzYWJsZWQtdGV4dDogICAgICAgICAgICAgICAgICM5OTk5OTk7XG5cblxuJGhlYWRlci1oZWlnaHQtZGVza3RvcDogMTA4cHg7IC8vIDQ4cHggc2l0ZSBuYXYgKyA2MCBtYWluIG5hdlxuJGhlYWRlci1oZWlnaHQtbW9iaWxlOiA5OHB4OyAvLyAzOHB4IHNpdGUgbmF2ICsgNjAgbWFpbiBuYXZcbiRoZWFkZXItbWFpbi1uYXYtaGVpZ2h0OiA2MHB4O1xuJHNlY29uZGFyeS1uYXYtaGVpZ2h0LWRlc2t0b3A6IDU3cHg7IC8vIG5lZWRlZCBmb3IgdG9hc3RlciBwb3NpdGlvbmluZ1xuJHNlY29uZGFyeS1uYXYtaGVpZ2h0LW1vYmlsZTogNjRweDtcbiRhZG1pbi1kb2NrYmFyLWhlaWdodDogNzRweDtcbiRhZG1pbi1lZGl0LW1vZGUtZG9ja2Jhci1oZWlnaHQ6IDE1NXB4O1xuXG4kY2FyZC1oZWlnaHQ6IDQwMHB4O1xuJGNhcmQtaGVpZ2h0LWFjdHVhbDogNDAwcHggLSAycHg7IC8vYm9yZGVyc1xuJGNhcmQtaGVpZ2h0LWV4dGVuZGVkOiA2MDBweDtcbiRjYXJkLXRpdGxlLWxpbmUtaGVpZ2h0OiAyMHB4O1xuXG4kZm9ybS1lbGVtZW50LWJvcmRlci13aWR0aDogMCAxcHggMXB4O1xuXG4kdGFiLWl0ZW0taGVpZ2h0OiAzNnB4O1xuXG4vLyB6LWluZGV4IGxldmVsc1xuJHotaW5kZXgtbGV2ZWwtMS1iYXNlOiAwO1xuJHotaW5kZXgtbGV2ZWwtMi1mbG9hdGluZzogMjAwOyAvLyBmb3IgYWxsIGZpcnN0IGxldmVsIGZsb2F0aW5nIGVsZW1lbnRzXG4kei1pbmRleC1sZXZlbC0zLXBvcHVwLW92ZXJsYXk6IDYwMDsgLy8gZm9yIGhlYWRlciBsb2dpbiBtb2RhbHMgYW5kIG90aGVyIHBvcHVwcyB0aGF0IHNob3VsZCBiZSB1bmRlciB0aGUgaGVhZGVyXG4kei1pbmRleC1sZXZlbC00LWhlYWRlcjogMTAwMDtcbiR6LWluZGV4LWxldmVsLTUtY2hhdDogMTA0MDsgLy8gU2hvdWxkIGJlIGFib3ZlIGhlYWRlciBidXQgYmVsb3cgb3ZlcmxheS4gUm9ja2V0IG1vZGFsIGhhcyB6LWluZGV4OiAxMDUwLCBzbyB3ZSBuZWVkIENoYXQgdG8gYmUganVzdCBiZWxvdywgYW5kIGFib3ZlIHRoZWlyIGhlYWRlciB0aGF0IGhhcyAxMDMwLlxuJHotaW5kZXgtbGV2ZWwtNi1tb2RhbC1vdmVybGF5OiAxMTAwOyAvLyBmb3IgbW9kYWwgdGhhdCBzaG91bGQgY292ZXIgdGhlIGhlYWRlclxuJHotaW5kZXgtbGV2ZWwtNy1tb2RhbDogMTIwMDsgLy8gdG9wIGxldmVsIG1vZGFscyJdLCJmaWxlIjoic3Vic2NyaXB0aW9uLXJlY29tbWVuZGF0aW9uLmNzcyJ9 */
