.p-writer__major-heading,
.p-writer__sub-heading {
  line-height: 1.4;
}
@media (min-width: 48em) {
  .p-writer__major-heading,
.p-writer__sub-heading {
    line-height: 1.5556;
  }
}

.p-writer__major-heading,
.p-writer__sub-heading,
.p-writer p:not(.p-writer__lead, .p-writer__index-heading, .p-writer__index-major, .p-writer__index-sub, .p-writer__writer-text, .p-writer__quote-text, .p-writer__outside-text, .p-writer__col .p-writer__text, .p-writer__tab-block .p-writer__text, .p-writer__position, .p-writer__name, .p-writer__furigana, .p-writer__specialty),
.p-writer__column,
.p-writer__col,
.p-writer__writer,
.p-writer__button,
.p-writer__icons,
.p-writer__youtube,
.p-writer__tab,
.p-writer__images {
  margin-top: 30px !important;
}
@media (min-width: 48em) {
  .p-writer__major-heading,
.p-writer__sub-heading,
.p-writer p:not(.p-writer__lead, .p-writer__index-heading, .p-writer__index-major, .p-writer__index-sub, .p-writer__writer-text, .p-writer__quote-text, .p-writer__outside-text, .p-writer__col .p-writer__text, .p-writer__tab-block .p-writer__text, .p-writer__position, .p-writer__name, .p-writer__furigana, .p-writer__specialty),
.p-writer__column,
.p-writer__col,
.p-writer__writer,
.p-writer__button,
.p-writer__icons,
.p-writer__youtube,
.p-writer__tab,
.p-writer__images {
    margin-top: 50px !important;
  }
}

.p-writer img {
  width: 100%;
  border-radius: 9px;
}
@media (min-width: 48em) {
  .p-writer img {
    border-radius: 16px;
  }
}

.p-writer {
  padding: 50px 15px;
}
@media (min-width: 48em) {
  .p-writer {
    max-width: 1160px;
    padding: 0 0 100px;
    margin: 0 auto;
  }
}

.p-writer__header {
  display: flex;
  align-items: center;
}
@media (min-width: 48em) {
  .p-writer__header {
    display: block;
    margin-top: -105px;
    text-align: center;
  }
}

.p-writer__header-img img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 48em) {
  .p-writer__header-img img {
    width: 210px;
    height: 210px;
  }
}

.p-writer__block {
  width: calc(100% - (150px + 15px));
  margin-left: 15px;
}
@media (min-width: 48em) {
  .p-writer__block {
    width: auto;
    margin-left: 0;
  }
}

.p-writer__position,
.p-writer__specialty {
  font-size: 13px;
}
@media (min-width: 48em) {
  .p-writer__position,
.p-writer__specialty {
    font-size: 15px;
  }
}

@media (min-width: 48em) {
  .p-writer__position {
    margin-top: 35px;
  }
}

.p-writer__name {
  font-family: var(--serif-font);
  font-size: 28px;
  font-weight: 500;
  line-height: 1.4;
}
@media (min-width: 48em) {
  .p-writer__name {
    font-size: 40px;
  }
}

.p-writer__furigana {
  font-family: var(--serif-font);
}
@media (min-width: 48em) {
  .p-writer__furigana {
    font-size: 16px;
  }
}

.p-writer__specialty {
  margin-top: 7px;
}

.p-writer__share {
  margin-top: 40px;
  text-align: center;
}

.p-writer__share span {
  position: relative;
  display: inline-block;
  margin-bottom: 15px;
}
.p-writer__share span::before, .p-writer__share span::after {
  position: absolute;
  top: 0;
  width: 1px;
  height: 20px;
  content: "";
  background-color: var(--primary-color);
}
@media (min-width: 48em) {
  .p-writer__share span::before, .p-writer__share span::after {
    height: 25px;
  }
}
.p-writer__share span::before {
  left: -15px;
  transform: rotate(-30deg);
}
.p-writer__share span::after {
  right: -15px;
  transform: rotate(30deg);
}

@media (min-width: 48em) {
  .p-writer__share .p-writer__icon:nth-child(n+2) {
    margin-left: 20px;
  }
}

.p-writer__share .p-writer__icons {
  margin-top: 0 !important;
}

.p-writer__share img {
  width: 35px;
}
@media (min-width: 48em) {
  .p-writer__share img {
    width: 40px;
  }
}

.p-writer__content {
  padding-top: 30px;
  margin-top: 30px;
  border-top: 1px solid var(--primary-color);
}
@media (min-width: 48em) {
  .p-writer__content {
    padding-top: 50px;
    margin-top: 40px;
    border-top-width: 2px;
  }
}

.p-writer__major-heading span {
  display: flex;
  padding: 15px 20px;
  font-size: 20px;
  background-color: rgba(240, 141, 118, 0.1);
  border-radius: 9px;
}
@media (min-width: 48em) {
  .p-writer__major-heading span {
    padding: 17px 25px;
    font-size: 30px;
    border-radius: 16px;
  }
}
.p-writer__major-heading span::before {
  flex: 0 0 auto;
  width: 2.5px;
  margin-right: 13px;
  content: "";
  background-color: var(--primary-color);
}
@media (min-width: 48em) {
  .p-writer__major-heading span::before {
    width: 4px;
    margin-right: 16px;
  }
}

.p-writer__sub-heading {
  display: flex;
  font-size: 16px;
}
@media (min-width: 48em) {
  .p-writer__sub-heading {
    font-size: 23px;
  }
}
.p-writer__sub-heading::before {
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  margin-top: 7px;
  margin-right: 6px;
  content: "";
  background-color: var(--primary-color);
}
@media (min-width: 48em) {
  .p-writer__sub-heading::before {
    width: 13px;
    height: 13px;
    margin-top: 13px;
    margin-right: 10px;
  }
}

.p-writer__index {
  position: relative;
  padding: 60px 20px 25px;
  margin-top: 30px;
  background-color: #fff;
  border: 1px solid var(--secondary-color);
  border-radius: 10px;
}
@media (min-width: 48em) {
  .p-writer__index {
    max-width: 700px;
    padding: 80px 30px 40px;
    margin-top: 50px;
  }
}

.p-writer__index-heading {
  position: absolute;
  top: 13px;
  left: -7px;
  padding: 6px 35px;
  font-size: 15px;
  font-weight: 600;
  color: #fff;
  background-color: var(--primary-color);
}
@media (min-width: 48em) {
  .p-writer__index-heading {
    top: 20px;
    padding: 6px 40px;
    font-size: 18px;
  }
}

.p-writer__index-block:nth-of-type(n + 2) {
  margin-top: 16px;
}
@media (min-width: 48em) {
  .p-writer__index-block:nth-of-type(n + 2) {
    margin-top: 20px;
  }
}

.p-writer__index-major {
  display: flex;
  margin-top: 5px;
  font-weight: 600;
}
.p-writer__index-major::before {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  margin-top: 8px;
  margin-right: 7px;
  content: "";
  background-color: var(--primary-color);
  border-radius: 50%;
}
@media (min-width: 48em) {
  .p-writer__index-major::before {
    width: 8px;
    height: 8px;
    margin-top: 10px;
    margin-right: 10px;
  }
}

.p-writer__index-sub {
  display: flex;
  margin-top: 8px;
  margin-left: 1em;
  font-size: 13px;
  line-height: 1.5;
}
@media (min-width: 48em) {
  .p-writer__index-sub {
    font-size: 14px;
  }
}
.p-writer__index-sub::before {
  flex-shrink: 0;
  width: 10px;
  height: 1px;
  margin-top: 8px;
  margin-right: 7px;
  content: "";
  background-color: var(--primary-color);
}
@media (min-width: 48em) {
  .p-writer__index-sub::before {
    width: 12px;
    margin-top: 10px;
    margin-right: 10px;
  }
}

@media (min-width: 48em) {
  .p-writer__index-major a:hover,
.p-writer__index-sub a:hover {
    text-decoration: underline;
  }
}

@media (min-width: 48em) {
  .p-writer__column {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 48em) {
  .p-writer__column.-reverse {
    flex-direction: row-reverse;
  }
}
.p-writer__column .p-writer__text {
  margin-top: 0 !important;
}
@media (min-width: 48em) {
  .p-writer__column .p-writer__text {
    width: calc(50% - 60px);
  }
}

.p-writer__column-img {
  margin-bottom: 15px;
}
@media (min-width: 48em) {
  .p-writer__column-img {
    width: 50%;
    margin-bottom: 0;
  }
}

.p-writer__col {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5px;
}
@media (min-width: 48em) {
  .p-writer__col {
    margin: 0 -20px;
  }
}
.p-writer__col .p-writer__col-item {
  width: 50%;
  padding: 0 5px;
}
@media (min-width: 48em) {
  .p-writer__col .p-writer__col-item {
    width: calc(100% / 3);
    padding: 0 20px;
  }
}
.p-writer__col .p-writer__text {
  margin-top: 10px !important;
  font-size: 12px;
}
@media (min-width: 48em) {
  .p-writer__col .p-writer__text {
    margin-top: 20px !important;
    font-size: 16px;
  }
}

.p-writer__column-img {
  margin-bottom: 15px;
}
@media (min-width: 48em) {
  .p-writer__column-img {
    width: 50%;
    margin-bottom: 0;
  }
}

.p-writer__col.-col3,
.p-writer__col.-col2 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5px;
}
@media (min-width: 48em) {
  .p-writer__col.-col3,
.p-writer__col.-col2 {
    margin: 0 -20px;
  }
}
.p-writer__col.-col3 .p-writer__col-item,
.p-writer__col.-col2 .p-writer__col-item {
  padding: 0 5px;
}
@media (min-width: 48em) {
  .p-writer__col.-col3 .p-writer__col-item,
.p-writer__col.-col2 .p-writer__col-item {
    padding: 0 20px;
  }
}

.p-writer__col.-col3 .p-writer__col-item {
  width: 50%;
}
@media (min-width: 48em) {
  .p-writer__col.-col3 .p-writer__col-item {
    width: calc(100% / 3);
  }
}

.p-writer__col.-col2 .p-writer__col-item {
  width: 50%;
}

.p-writer__images.-col3,
.p-writer__images.-col2 {
  display: flex;
  margin: 0 -5px;
}
@media (min-width: 48em) {
  .p-writer__images.-col3,
.p-writer__images.-col2 {
    margin: 0 -20px;
  }
}
.p-writer__images.-col3 .p-writer__image,
.p-writer__images.-col2 .p-writer__image {
  padding: 0 5px;
}
@media (min-width: 48em) {
  .p-writer__images.-col3 .p-writer__image,
.p-writer__images.-col2 .p-writer__image {
    padding: 0 20px;
  }
}

.p-writer__images.-col3 .p-writer__image {
  width: calc(100% / 3);
}

.p-writer__images.-col2 .p-writer__image {
  width: 50%;
}

.p-writer__col-link {
  display: block;
  text-decoration: underline;
}
@media (min-width: 48em) {
  .p-writer__col-link:hover {
    text-decoration: none;
  }
}

.p-writer__tab-list {
  display: flex;
}

.p-writer__tab-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(100% / 3);
  height: 45px;
  background-color: rgba(240, 141, 118, 0.15);
  border-radius: 9px 9px 0 0;
}
@media (min-width: 48em) {
  .p-writer__tab-button {
    width: 250px;
    height: 78px;
    font-size: 19px;
    border-radius: 12px 12px 0 0;
    transition: color var(--duration);
  }
}
.p-writer__tab-button:nth-child(n+2) {
  margin-left: 6px;
}
@media (min-width: 48em) {
  .p-writer__tab-button:nth-child(n+2) {
    margin-left: 10px;
  }
}
@media (min-width: 48em) {
  .p-writer__tab-button:hover {
    color: #e8826b;
  }
}
.p-writer__tab-button.is-active {
  color: #fff;
  background-color: #ef7d64;
}

.p-writer__tab-block {
  padding: 20px 20px 25px;
  background-color: #fff;
  border-radius: 0 0 9px 9px;
  box-shadow: var(--shadow);
}
@media (min-width: 48em) {
  .p-writer__tab-block {
    padding: 40px;
    border-radius: 0 12px 12px 12px;
  }
}
.p-writer__tab-block:nth-child(n+2) {
  display: none;
}
.p-writer__tab-block .p-writer__text {
  padding-top: 0 !important;
}

.p-writer__writer {
  display: flex;
  padding: 25px 0;
  margin-top: 30px;
  border-top: 1px dashed #d9e7ec;
  border-bottom: 1px dashed #d9e7ec;
}
@media (min-width: 48em) {
  .p-writer__writer {
    align-items: center;
    padding: 35px 40px;
    margin-top: 50px;
    border-top-width: 2px;
    border-bottom-width: 2px;
  }
}

.p-writer__writer .p-writer__writer-img {
  text-align: center;
}
.p-writer__writer .p-writer__writer-img img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 48em) {
  .p-writer__writer .p-writer__writer-img img {
    width: 150px;
    height: 150px;
  }
}

.p-writer__writer-text,
.p-writer__outside-text,
.p-writer__quote-text {
  color: #000;
}

.p-writer__writer-text {
  width: calc(100% - (100px + 20px));
  margin-left: 20px;
}
@media (min-width: 48em) {
  .p-writer__writer-text {
    width: calc(100% - (150px + 30px));
    margin-left: 30px;
  }
}

.p-writer__outside {
  margin-top: 30px;
  background-color: #fff;
  border-radius: 9px;
  box-shadow: var(--shadow);
}
@media (min-width: 48em) {
  .p-writer__outside {
    display: flex;
    align-items: center;
    margin-top: 50px;
    border-radius: 16px;
  }
}

.p-writer__outside .p-writer__outside-img img {
  height: 180px;
  border-radius: 9px 9px 0 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 48em) {
  .p-writer__outside .p-writer__outside-img img {
    width: 250px;
    height: 250px;
    border-radius: 16px 0 0 16px;
  }
}

.p-writer__outside-inner {
  padding: 15px 20px 25px;
}
@media (min-width: 48em) {
  .p-writer__outside-inner {
    width: calc(100% - 250px);
    padding: 0 40px;
  }
}

.p-writer__outside-text {
  margin-top: 0;
}

.p-writer__outside-link {
  display: inline-block;
  margin-top: 12px;
  color: var(--primary-color);
  border-bottom: 1px solid currentColor;
}
@media (min-width: 48em) {
  .p-writer__outside-link {
    margin-top: 8px;
  }
}
@media (min-width: 48em) {
  .p-writer__outside-link:hover {
    border-bottom-color: transparent;
  }
}

.p-writer__outside-link svg {
  margin-top: -3px;
}

.p-writer__quote {
  position: relative;
  padding: 20px;
  margin-top: 30px;
  border: 1px solid var(--primary-color);
  border-radius: 9px;
}
@media (min-width: 48em) {
  .p-writer__quote {
    padding: 33px 40px;
    margin-top: 50px;
    border-radius: 16px;
  }
}
.p-writer__quote::before, .p-writer__quote::after {
  position: absolute;
  width: 28px;
  height: 22px;
  content: "";
  background-image: url("/assets/images/pages/common/icon_quote.svg");
  background-size: contain;
}
@media (min-width: 48em) {
  .p-writer__quote::before, .p-writer__quote::after {
    width: 32px;
    height: 26px;
  }
}
.p-writer__quote::before {
  top: -13px;
  left: 13px;
}
@media (min-width: 48em) {
  .p-writer__quote::before {
    left: 23px;
  }
}
.p-writer__quote::after {
  right: 13px;
  bottom: -13px;
  transform: rotate(180deg);
}
@media (min-width: 48em) {
  .p-writer__quote::after {
    right: 23px;
  }
}

.p-writer__quote-text {
  margin-top: 0;
}

.p-writer__quote-text span {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  font-style: italic;
  color: #848484;
}
@media (min-width: 48em) {
  .p-writer__quote-text span {
    font-size: 14px;
  }
}
@media (min-width: 48em) {
  .p-writer__quote-text span a:hover {
    text-decoration: underline;
  }
}

.p-writer__icon:nth-child(n+2) {
  margin-left: 15px;
}
@media (min-width: 48em) {
  .p-writer__icon:nth-child(n+2) {
    margin-left: 25px;
  }
}

.p-writer__youtube iframe {
  width: 100%;
  height: auto;
  margin-bottom: 15px;
  aspect-ratio: 16/9;
}
@media (min-width: 48em) {
  .p-writer__youtube iframe {
    width: 560px;
    margin-bottom: 20px;
  }
}

@media (min-width: 48em) {
  .p-writer__youtube.-grid {
    display: flex;
  }
}
.p-writer__youtube.-grid .p-writer__text {
  padding-top: 0;
}
@media (min-width: 48em) {
  .p-writer__youtube.-grid .p-writer__text {
    width: calc(100% - (560px + 50px));
    margin-left: 50px;
  }
}

.p-writer__col-link,
.p-writer__column a {
  color: var(--primary-color);
  text-decoration: underline;
}
@media (min-width: 48em) {
  .p-writer__col-link:hover,
.p-writer__column a:hover {
    text-decoration: none;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zdHlsZXMvcGFnZXMvd3JpdGVyL2RldGFpbC9fd3JpdGVyLnNjc3MiLCJhc3NldHMvc3R5bGVzL3BhZ2VzL3dyaXRlci9kZXRhaWwvc3R5bGUuY3NzIiwibm9kZV9tb2R1bGVzL3Nhc3MtbXEvX21xLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7O0VBRUUsZ0JBQUE7QUNGRjtBQzhPUTtFRjlPUjs7SUFLSSxtQkFBQTtFQ0FGO0FBQ0Y7O0FER0E7Ozs7Ozs7Ozs7O0VBWUUsMkJBQUE7QUNERjtBQzBOUTtFRnJPUjs7Ozs7Ozs7Ozs7SUFlSSwyQkFBQTtFQ1VGO0FBQ0Y7O0FEUEE7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7QUNVRjtBQ3NNUTtFRmxOUjtJQUtJLG1CQUFBO0VDV0Y7QUFDRjs7QUROQTtFQUNFLGtCQUFBO0FDU0Y7QUM2TFE7RUZ2TVI7SUFJSSxpQkFBQTtJQUNBLGtCQUFBO0lBQ0EsY0FBQTtFQ1VGO0FBQ0Y7O0FEUEE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNVRjtBQ2lMUTtFRjdMUjtJQUtJLGNBQUE7SUFDQSxrQkFBQTtJQUNBLGtCQUFBO0VDV0Y7QUFDRjs7QURSQTtFQUNFLFlBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtLQUFBLGlCQUFBO0FDV0Y7QUNtS1E7RUZsTFI7SUFPSSxZQUFBO0lBQ0EsYUFBQTtFQ1lGO0FBQ0Y7O0FEVEE7RUFDRSxrQ0FBQTtFQUNBLGlCQUFBO0FDWUY7QUN3SlE7RUZ0S1I7SUFLSSxXQUFBO0lBQ0EsY0FBQTtFQ2FGO0FBQ0Y7O0FEVkE7O0VBRUUsZUFBQTtBQ2FGO0FDNklRO0VGNUpSOztJQUtJLGVBQUE7RUNlRjtBQUNGOztBQ3VJUTtFRm5KUjtJQUVJLGdCQUFBO0VDZUY7QUFDRjs7QURaQTtFQUNFLDhCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QUNlRjtBQzBIUTtFRjdJUjtJQU9JLGVBQUE7RUNnQkY7QUFDRjs7QURiQTtFQUNF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O0FESkU7RUFDRSxpQkFBQTtBQ09KO0FDL2ZRO0VGdWZOO0lBSUksaUJBQUE7RUNRSjtBQUNGOztBREhFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FDTUo7QUMzZ0JRO0VGaWdCTjtJQU9JLFlBQUE7SUFDQSxtQkFBQTtFQ09KO0FBQ0Y7O0FDamhCUTtFRjhnQlI7SUFFSSxhQUFBO0VDTUY7QUFDRjtBREpFO0VBQ0UsY0FBQTtBQ01KO0FDMWhCUTtFRm1oQk47SUFJSSxrQ0FBQTtJQUNBLGlCQUFBO0VDT0o7QUFDRjs7QURIQTs7RUFFRSwyQkFBQTtFQUNBLDBCQUFBO0FDTUY7QUN0aUJRO0VGa2lCTjs7SUFFSSxxQkFBQTtFQ09KO0FBQ0YiLCJmaWxlIjoiYXNzZXRzL3N0eWxlcy9wYWdlcy93cml0ZXIvZGV0YWlsL3N0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuLy8g5YWx6YCa44Oe44O844K444OzXG5cbi5wLXdyaXRlcl9fbWFqb3ItaGVhZGluZyxcbi5wLXdyaXRlcl9fc3ViLWhlYWRpbmcge1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTU1NjtcbiAgfVxufVxuXG4ucC13cml0ZXJfX21ham9yLWhlYWRpbmcsXG4ucC13cml0ZXJfX3N1Yi1oZWFkaW5nLFxuLnAtd3JpdGVyIHA6bm90KC5wLXdyaXRlcl9fbGVhZCwgLnAtd3JpdGVyX19pbmRleC1oZWFkaW5nLCAucC13cml0ZXJfX2luZGV4LW1ham9yLCAucC13cml0ZXJfX2luZGV4LXN1YiwgLnAtd3JpdGVyX193cml0ZXItdGV4dCwgLnAtd3JpdGVyX19xdW90ZS10ZXh0LCAucC13cml0ZXJfX291dHNpZGUtdGV4dCwgLnAtd3JpdGVyX19jb2wgLnAtd3JpdGVyX190ZXh0LCAucC13cml0ZXJfX3RhYi1ibG9jayAucC13cml0ZXJfX3RleHQsIC5wLXdyaXRlcl9fcG9zaXRpb24sIC5wLXdyaXRlcl9fbmFtZSwgLnAtd3JpdGVyX19mdXJpZ2FuYSwgLnAtd3JpdGVyX19zcGVjaWFsdHkpLFxuLy8gLnAtd3JpdGVyX190ZXh0LFxuLnAtd3JpdGVyX19jb2x1bW4sXG4ucC13cml0ZXJfX2NvbCxcbi5wLXdyaXRlcl9fd3JpdGVyLFxuLnAtd3JpdGVyX19idXR0b24sXG4ucC13cml0ZXJfX2ljb25zLFxuLnAtd3JpdGVyX195b3V0dWJlLFxuLnAtd3JpdGVyX190YWIsXG4ucC13cml0ZXJfX2ltYWdlcyB7XG4gIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucC13cml0ZXIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDlweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbn1cblxuLy8g44Kz44Oz44OG44Oz44OEXG5cbi5wLXdyaXRlciB7XG4gIHBhZGRpbmc6IDUwcHggMTVweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIG1heC13aWR0aDogMTE2MHB4O1xuICAgIHBhZGRpbmc6IDAgMCAxMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4ucC13cml0ZXJfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtMTA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5wLXdyaXRlcl9faGVhZGVyLWltZyBpbWcge1xuICB3aWR0aDogMTUwcHg7XG4gIGhlaWdodDogMTUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogMjEwcHg7XG4gICAgaGVpZ2h0OiAyMTBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2Jsb2NrIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtICgxNTBweCArIDE1cHgpKTtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX3Bvc2l0aW9uLFxuLnAtd3JpdGVyX19zcGVjaWFsdHkge1xuICBmb250LXNpemU6IDEzcHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19wb3NpdGlvbiB7XG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX25hbWUge1xuICBmb250LWZhbWlseTogdmFyKC0tc2VyaWYtZm9udCk7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2Z1cmlnYW5hIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXNlcmlmLWZvbnQpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fc3BlY2lhbHR5IHtcbiAgbWFyZ2luLXRvcDogN3B4O1xufVxuXG4ucC13cml0ZXJfX3NoYXJlIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucC13cml0ZXJfX3NoYXJlIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuXG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGxlZnQ6IC0xNXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zMGRlZyk7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgcmlnaHQ6IC0xNXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgfVxufVxuXG4ucC13cml0ZXJfX3NoYXJlIC5wLXdyaXRlcl9faWNvbiB7XG4gICY6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucC13cml0ZXJfX3NoYXJlIC5wLXdyaXRlcl9faWNvbnMge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wLXdyaXRlcl9fc2hhcmUgaW1nIHtcbiAgd2lkdGg6IDM1cHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogNDBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2NvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAycHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19tYWpvci1oZWFkaW5nIHNwYW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDAsIDE0MSwgMTE4LCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiA5cHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBwYWRkaW5nOiAxN3B4IDI1cHg7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAyLjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEzcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19zdWItaGVhZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMTZweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDlweDtcbiAgICBoZWlnaHQ6IDlweDtcbiAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBtYXJnaW4tdG9wOiAxM3B4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA2MHB4IDIwcHggMjVweDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgcGFkZGluZzogODBweCAzMHB4IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4LWhlYWRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTNweDtcbiAgbGVmdDogLTdweDtcbiAgcGFkZGluZzogNnB4IDM1cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgdG9wOiAyMHB4O1xuICAgIHBhZGRpbmc6IDZweCA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4LWJsb2NrIHtcbiAgJjpudGgtb2YtdHlwZShuICsgMikge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pbmRleC1tYWpvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAmOjpiZWZvcmUge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiA2cHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4LXN1YiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMS41O1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4LW1ham9yIGEsXG4ucC13cml0ZXJfX2luZGV4LXN1YiBhIHtcbiAgJjpob3ZlciB7XG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2x1bW4ge1xuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgJi4tcmV2ZXJzZSB7XG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cblxuICAucC13cml0ZXJfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSAge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNjBweCk7XG4gICAgfVxuICB9XG59XG5cbi5wLXdyaXRlcl9fY29sdW1uLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2wge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMCAtNXB4O1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgbWFyZ2luOiAwIC0yMHB4O1xuICB9XG5cbiAgLnAtd3JpdGVyX19jb2wtaXRlbSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDVweDtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLnAtd3JpdGVyX190ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2x1bW4taW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2NvbC4tY29sMyxcbi5wLXdyaXRlcl9fY29sLi1jb2wyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTVweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIG1hcmdpbjogMCAtMjBweDtcbiAgfVxuXG4gIC5wLXdyaXRlcl9fY29sLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuXG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2wuLWNvbDMge1xuICAucC13cml0ZXJfX2NvbC1pdGVtIHtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2wuLWNvbDIge1xuICAucC13cml0ZXJfX2NvbC1pdGVtIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5wLXdyaXRlcl9faW1hZ2VzLi1jb2wzLFxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDAgLTVweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIG1hcmdpbjogMCAtMjBweDtcbiAgfVxuXG4gIC5wLXdyaXRlcl9faW1hZ2Uge1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuXG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDMgLnAtd3JpdGVyX19pbWFnZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbn1cblxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDIgLnAtd3JpdGVyX19pbWFnZSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5wLXdyaXRlcl9fY29sLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX190YWIge1xuICAvL1xufVxuXG4ucC13cml0ZXJfX3RhYi1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnAtd3JpdGVyX190YWItYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gIGhlaWdodDogNDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDAsIDE0MSwgMTE4LCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogOXB4IDlweCAwIDA7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgaGVpZ2h0OiA3OHB4O1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4IDEycHggMCAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWR1cmF0aW9uKTtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgY29sb3I6ICNlODgyNmI7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZjdkNjQ7XG4gIH1cbn1cblxuLnAtd3JpdGVyX190YWItY29udGVudCB7XG4gIC8vXG59XG5cbi5wLXdyaXRlcl9fdGFiLWJsb2NrIHtcbiAgcGFkZGluZzogMjBweCAyMHB4IDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA5cHggOXB4O1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDEycHggMTJweCAxMnB4O1xuICB9XG5cbiAgJjpudGgtY2hpbGQobiArIDIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnAtd3JpdGVyX190ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fd3JpdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMjVweCAwO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNkOWU3ZWM7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgI2Q5ZTdlYztcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMzVweCA0MHB4O1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMnB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX3dyaXRlciAucC13cml0ZXJfX3dyaXRlci1pbWcge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX193cml0ZXItdGV4dCxcbi5wLXdyaXRlcl9fb3V0c2lkZS10ZXh0LFxuLnAtd3JpdGVyX19xdW90ZS10ZXh0IHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5wLXdyaXRlcl9fd3JpdGVyLXRleHQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gKDEwMHB4ICsgMjBweCkpO1xuICBtYXJnaW4tbGVmdDogMjBweDtcblxuICBAaW5jbHVkZSBtcShtZCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAoMTUwcHggKyAzMHB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19vdXRzaWRlIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogOXB4O1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX291dHNpZGUgLnAtd3JpdGVyX19vdXRzaWRlLWltZyB7XG4gIGltZyB7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgICBib3JkZXItcmFkaXVzOiA5cHggOXB4IDAgMDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTZweCAwIDAgMTZweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19vdXRzaWRlLWlubmVyIHtcbiAgcGFkZGluZzogMTVweCAyMHB4IDI1cHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjUwcHgpO1xuICAgIHBhZGRpbmc6IDAgNDBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX291dHNpZGUtdGV4dCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wLXdyaXRlcl9fb3V0c2lkZS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMnB4O1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi5wLXdyaXRlcl9fb3V0c2lkZS1saW5rIHN2ZyB7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG5cbi5wLXdyaXRlcl9fcXVvdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiA5cHg7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBwYWRkaW5nOiAzM3B4IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1hZ2VzL3BhZ2VzL2NvbW1vbi9pY29uX3F1b3RlLnN2ZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMjZweDtcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogLTEzcHg7XG4gICAgbGVmdDogMTNweDtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICBsZWZ0OiAyM3B4O1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICByaWdodDogMTNweDtcbiAgICBib3R0b206IC0xM3B4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgcmlnaHQ6IDIzcHg7XG4gICAgfVxuICB9XG59XG5cbi5wLXdyaXRlcl9fcXVvdGUtdGV4dCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wLXdyaXRlcl9fcXVvdGUtdGV4dCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjODQ4NDg0O1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgYSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pY29ucyB7XG4gIC8vXG59XG5cbi5wLXdyaXRlcl9faWNvbiB7XG4gICY6bnRoLWNoaWxkKG4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgfVxuICB9XG59XG5cbi5wLXdyaXRlcl9feW91dHViZSB7XG4gIGlmcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG5cbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgd2lkdGg6IDU2MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnAtd3JpdGVyX195b3V0dWJlLi1ncmlkIHtcbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLnAtd3JpdGVyX190ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gKDU2MHB4ICsgNTBweCkpO1xuICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gICAgfVxuICB9XG59XG5cbi5wLXdyaXRlcl9fY29sLWxpbmssXG4ucC13cml0ZXJfX2NvbHVtbiBhIHtcbiAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLnAtd3JpdGVyX19tYWpvci1oZWFkaW5nLFxuLnAtd3JpdGVyX19zdWItaGVhZGluZyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX21ham9yLWhlYWRpbmcsXG4ucC13cml0ZXJfX3N1Yi1oZWFkaW5nIHtcbiAgICBsaW5lLWhlaWdodDogMS41NTU2O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fbWFqb3ItaGVhZGluZyxcbi5wLXdyaXRlcl9fc3ViLWhlYWRpbmcsXG4ucC13cml0ZXIgcDpub3QoLnAtd3JpdGVyX19sZWFkLCAucC13cml0ZXJfX2luZGV4LWhlYWRpbmcsIC5wLXdyaXRlcl9faW5kZXgtbWFqb3IsIC5wLXdyaXRlcl9faW5kZXgtc3ViLCAucC13cml0ZXJfX3dyaXRlci10ZXh0LCAucC13cml0ZXJfX3F1b3RlLXRleHQsIC5wLXdyaXRlcl9fb3V0c2lkZS10ZXh0LCAucC13cml0ZXJfX2NvbCAucC13cml0ZXJfX3RleHQsIC5wLXdyaXRlcl9fdGFiLWJsb2NrIC5wLXdyaXRlcl9fdGV4dCwgLnAtd3JpdGVyX19wb3NpdGlvbiwgLnAtd3JpdGVyX19uYW1lLCAucC13cml0ZXJfX2Z1cmlnYW5hLCAucC13cml0ZXJfX3NwZWNpYWx0eSksXG4ucC13cml0ZXJfX2NvbHVtbixcbi5wLXdyaXRlcl9fY29sLFxuLnAtd3JpdGVyX193cml0ZXIsXG4ucC13cml0ZXJfX2J1dHRvbixcbi5wLXdyaXRlcl9faWNvbnMsXG4ucC13cml0ZXJfX3lvdXR1YmUsXG4ucC13cml0ZXJfX3RhYixcbi5wLXdyaXRlcl9faW1hZ2VzIHtcbiAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19tYWpvci1oZWFkaW5nLFxuLnAtd3JpdGVyX19zdWItaGVhZGluZyxcbi5wLXdyaXRlciBwOm5vdCgucC13cml0ZXJfX2xlYWQsIC5wLXdyaXRlcl9faW5kZXgtaGVhZGluZywgLnAtd3JpdGVyX19pbmRleC1tYWpvciwgLnAtd3JpdGVyX19pbmRleC1zdWIsIC5wLXdyaXRlcl9fd3JpdGVyLXRleHQsIC5wLXdyaXRlcl9fcXVvdGUtdGV4dCwgLnAtd3JpdGVyX19vdXRzaWRlLXRleHQsIC5wLXdyaXRlcl9fY29sIC5wLXdyaXRlcl9fdGV4dCwgLnAtd3JpdGVyX190YWItYmxvY2sgLnAtd3JpdGVyX190ZXh0LCAucC13cml0ZXJfX3Bvc2l0aW9uLCAucC13cml0ZXJfX25hbWUsIC5wLXdyaXRlcl9fZnVyaWdhbmEsIC5wLXdyaXRlcl9fc3BlY2lhbHR5KSxcbi5wLXdyaXRlcl9fY29sdW1uLFxuLnAtd3JpdGVyX19jb2wsXG4ucC13cml0ZXJfX3dyaXRlcixcbi5wLXdyaXRlcl9fYnV0dG9uLFxuLnAtd3JpdGVyX19pY29ucyxcbi5wLXdyaXRlcl9feW91dHViZSxcbi5wLXdyaXRlcl9fdGFiLFxuLnAtd3JpdGVyX19pbWFnZXMge1xuICAgIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucC13cml0ZXIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDlweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlciBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyIHtcbiAgcGFkZGluZzogNTBweCAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyIHtcbiAgICBtYXgtd2lkdGg6IDExNjBweDtcbiAgICBwYWRkaW5nOiAwIDAgMTAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLnAtd3JpdGVyX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IC0xMDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19oZWFkZXItaW1nIGltZyB7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9faGVhZGVyLWltZyBpbWcge1xuICAgIHdpZHRoOiAyMTBweDtcbiAgICBoZWlnaHQ6IDIxMHB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fYmxvY2sge1xuICB3aWR0aDogY2FsYygxMDAlIC0gKDE1MHB4ICsgMTVweCkpO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fYmxvY2sge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5wLXdyaXRlcl9fcG9zaXRpb24sXG4ucC13cml0ZXJfX3NwZWNpYWx0eSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fcG9zaXRpb24sXG4ucC13cml0ZXJfX3NwZWNpYWx0eSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fcG9zaXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19uYW1lIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXNlcmlmLWZvbnQpO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX25hbWUge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2Z1cmlnYW5hIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXNlcmlmLWZvbnQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19mdXJpZ2FuYSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fc3BlY2lhbHR5IHtcbiAgbWFyZ2luLXRvcDogN3B4O1xufVxuXG4ucC13cml0ZXJfX3NoYXJlIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucC13cml0ZXJfX3NoYXJlIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5wLXdyaXRlcl9fc2hhcmUgc3Bhbjo6YmVmb3JlLCAucC13cml0ZXJfX3NoYXJlIHNwYW46OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMjBweDtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3NoYXJlIHNwYW46OmJlZm9yZSwgLnAtd3JpdGVyX19zaGFyZSBzcGFuOjphZnRlciB7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICB9XG59XG4ucC13cml0ZXJfX3NoYXJlIHNwYW46OmJlZm9yZSB7XG4gIGxlZnQ6IC0xNXB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzBkZWcpO1xufVxuLnAtd3JpdGVyX19zaGFyZSBzcGFuOjphZnRlciB7XG4gIHJpZ2h0OiAtMTVweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzBkZWcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3NoYXJlIC5wLXdyaXRlcl9faWNvbjpudGgtY2hpbGQobisyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19zaGFyZSAucC13cml0ZXJfX2ljb25zIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucC13cml0ZXJfX3NoYXJlIGltZyB7XG4gIHdpZHRoOiAzNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19zaGFyZSBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeS1jb2xvcik7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMnB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fbWFqb3ItaGVhZGluZyBzcGFuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQwLCAxNDEsIDExOCwgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogOXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19tYWpvci1oZWFkaW5nIHNwYW4ge1xuICAgIHBhZGRpbmc6IDE3cHggMjVweDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgfVxufVxuLnAtd3JpdGVyX19tYWpvci1oZWFkaW5nIHNwYW46OmJlZm9yZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMi41cHg7XG4gIG1hcmdpbi1yaWdodDogMTNweDtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX21ham9yLWhlYWRpbmcgc3Bhbjo6YmVmb3JlIHtcbiAgICB3aWR0aDogNHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX3N1Yi1oZWFkaW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19zdWItaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICB9XG59XG4ucC13cml0ZXJfX3N1Yi1oZWFkaW5nOjpiZWZvcmUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDlweDtcbiAgaGVpZ2h0OiA5cHg7XG4gIG1hcmdpbi10b3A6IDdweDtcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19zdWItaGVhZGluZzo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTNweDtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgbWFyZ2luLXRvcDogMTNweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pbmRleCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNjBweCAyMHB4IDI1cHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNlY29uZGFyeS1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2luZGV4IHtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIHBhZGRpbmc6IDgwcHggMzBweCA0MHB4O1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pbmRleC1oZWFkaW5nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEzcHg7XG4gIGxlZnQ6IC03cHg7XG4gIHBhZGRpbmc6IDZweCAzNXB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9faW5kZXgtaGVhZGluZyB7XG4gICAgdG9wOiAyMHB4O1xuICAgIHBhZGRpbmc6IDZweCA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4LWJsb2NrOm50aC1vZi10eXBlKG4gKyAyKSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2luZGV4LWJsb2NrOm50aC1vZi10eXBlKG4gKyAyKSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2luZGV4LW1ham9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLnAtd3JpdGVyX19pbmRleC1tYWpvcjo6YmVmb3JlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1yaWdodDogN3B4O1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19pbmRleC1tYWpvcjo6YmVmb3JlIHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9faW5kZXgtc3ViIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2luZGV4LXN1YiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG4ucC13cml0ZXJfX2luZGV4LXN1Yjo6YmVmb3JlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2luZGV4LXN1Yjo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2luZGV4LW1ham9yIGE6aG92ZXIsXG4ucC13cml0ZXJfX2luZGV4LXN1YiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2NvbHVtbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sdW1uLi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbi5wLXdyaXRlcl9fY29sdW1uIC5wLXdyaXRlcl9fdGV4dCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sdW1uIC5wLXdyaXRlcl9fdGV4dCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNjBweCk7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2x1bW4taW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sdW1uLWltZyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5wLXdyaXRlcl9fY29sIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sIHtcbiAgICBtYXJnaW46IDAgLTIwcHg7XG4gIH1cbn1cbi5wLXdyaXRlcl9fY29sIC5wLXdyaXRlcl9fY29sLWl0ZW0ge1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiAwIDVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sIC5wLXdyaXRlcl9fY29sLWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cbi5wLXdyaXRlcl9fY29sIC5wLXdyaXRlcl9fdGV4dCB7XG4gIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19jb2wgLnAtd3JpdGVyX190ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fY29sdW1uLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2NvbHVtbi1pbWcge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX2NvbC4tY29sMyxcbi5wLXdyaXRlcl9fY29sLi1jb2wyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sLi1jb2wzLFxuLnAtd3JpdGVyX19jb2wuLWNvbDIge1xuICAgIG1hcmdpbjogMCAtMjBweDtcbiAgfVxufVxuLnAtd3JpdGVyX19jb2wuLWNvbDMgLnAtd3JpdGVyX19jb2wtaXRlbSxcbi5wLXdyaXRlcl9fY29sLi1jb2wyIC5wLXdyaXRlcl9fY29sLWl0ZW0ge1xuICBwYWRkaW5nOiAwIDVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fY29sLi1jb2wzIC5wLXdyaXRlcl9fY29sLWl0ZW0sXG4ucC13cml0ZXJfX2NvbC4tY29sMiAucC13cml0ZXJfX2NvbC1pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2wuLWNvbDMgLnAtd3JpdGVyX19jb2wtaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2NvbC4tY29sMyAucC13cml0ZXJfX2NvbC1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2wuLWNvbDIgLnAtd3JpdGVyX19jb2wtaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5wLXdyaXRlcl9faW1hZ2VzLi1jb2wzLFxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDAgLTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9faW1hZ2VzLi1jb2wzLFxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDIge1xuICAgIG1hcmdpbjogMCAtMjBweDtcbiAgfVxufVxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDMgLnAtd3JpdGVyX19pbWFnZSxcbi5wLXdyaXRlcl9faW1hZ2VzLi1jb2wyIC5wLXdyaXRlcl9faW1hZ2Uge1xuICBwYWRkaW5nOiAwIDVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9faW1hZ2VzLi1jb2wzIC5wLXdyaXRlcl9faW1hZ2UsXG4ucC13cml0ZXJfX2ltYWdlcy4tY29sMiAucC13cml0ZXJfX2ltYWdlIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDMgLnAtd3JpdGVyX19pbWFnZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbn1cblxuLnAtd3JpdGVyX19pbWFnZXMuLWNvbDIgLnAtd3JpdGVyX19pbWFnZSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5wLXdyaXRlcl9fY29sLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2NvbC1saW5rOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnAtd3JpdGVyX190YWItbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5wLXdyaXRlcl9fdGFiLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQwLCAxNDEsIDExOCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDlweCA5cHggMCAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX190YWItYnV0dG9uIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgaGVpZ2h0OiA3OHB4O1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4IDEycHggMCAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWR1cmF0aW9uKTtcbiAgfVxufVxuLnAtd3JpdGVyX190YWItYnV0dG9uOm50aC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLWxlZnQ6IDZweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fdGFiLWJ1dHRvbjpudGgtY2hpbGQobisyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fdGFiLWJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICNlODgyNmI7XG4gIH1cbn1cbi5wLXdyaXRlcl9fdGFiLWJ1dHRvbi5pcy1hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmN2Q2NDtcbn1cblxuLnAtd3JpdGVyX190YWItYmxvY2sge1xuICBwYWRkaW5nOiAyMHB4IDIwcHggMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDlweCA5cHg7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3RhYi1ibG9jayB7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDEycHggMTJweCAxMnB4O1xuICB9XG59XG4ucC13cml0ZXJfX3RhYi1ibG9jazpudGgtY2hpbGQobisyKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucC13cml0ZXJfX3RhYi1ibG9jayAucC13cml0ZXJfX3RleHQge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ucC13cml0ZXJfX3dyaXRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDI1cHggMDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjZDllN2VjO1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNkOWU3ZWM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3dyaXRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzNXB4IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAycHg7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fd3JpdGVyIC5wLXdyaXRlcl9fd3JpdGVyLWltZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5wLXdyaXRlcl9fd3JpdGVyIC5wLXdyaXRlcl9fd3JpdGVyLWltZyBpbWcge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3dyaXRlciAucC13cml0ZXJfX3dyaXRlci1pbWcgaW1nIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX3dyaXRlci10ZXh0LFxuLnAtd3JpdGVyX19vdXRzaWRlLXRleHQsXG4ucC13cml0ZXJfX3F1b3RlLXRleHQge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLnAtd3JpdGVyX193cml0ZXItdGV4dCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAoMTAwcHggKyAyMHB4KSk7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX193cml0ZXItdGV4dCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICgxNTBweCArIDMwcHgpKTtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX291dHNpZGUge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA5cHg7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX291dHNpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19vdXRzaWRlIC5wLXdyaXRlcl9fb3V0c2lkZS1pbWcgaW1nIHtcbiAgaGVpZ2h0OiAxODBweDtcbiAgYm9yZGVyLXJhZGl1czogOXB4IDlweCAwIDA7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19vdXRzaWRlIC5wLXdyaXRlcl9fb3V0c2lkZS1pbWcgaW1nIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4IDAgMCAxNnB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fb3V0c2lkZS1pbm5lciB7XG4gIHBhZGRpbmc6IDE1cHggMjBweCAyNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19vdXRzaWRlLWlubmVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjUwcHgpO1xuICAgIHBhZGRpbmc6IDAgNDBweDtcbiAgfVxufVxuXG4ucC13cml0ZXJfX291dHNpZGUtdGV4dCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wLXdyaXRlcl9fb3V0c2lkZS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMnB4O1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX291dHNpZGUtbGluayB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX291dHNpZGUtbGluazpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19vdXRzaWRlLWxpbmsgc3ZnIHtcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cblxuLnAtd3JpdGVyX19xdW90ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDlweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9fcXVvdGUge1xuICAgIHBhZGRpbmc6IDMzcHggNDBweDtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbn1cbi5wLXdyaXRlcl9fcXVvdGU6OmJlZm9yZSwgLnAtd3JpdGVyX19xdW90ZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1hZ2VzL3BhZ2VzL2NvbW1vbi9pY29uX3F1b3RlLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19xdW90ZTo6YmVmb3JlLCAucC13cml0ZXJfX3F1b3RlOjphZnRlciB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICB9XG59XG4ucC13cml0ZXJfX3F1b3RlOjpiZWZvcmUge1xuICB0b3A6IC0xM3B4O1xuICBsZWZ0OiAxM3B4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19xdW90ZTo6YmVmb3JlIHtcbiAgICBsZWZ0OiAyM3B4O1xuICB9XG59XG4ucC13cml0ZXJfX3F1b3RlOjphZnRlciB7XG4gIHJpZ2h0OiAxM3B4O1xuICBib3R0b206IC0xM3B4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19xdW90ZTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAyM3B4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9fcXVvdGUtdGV4dCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5wLXdyaXRlcl9fcXVvdGUtdGV4dCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjODQ4NDg0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19xdW90ZS10ZXh0IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19xdW90ZS10ZXh0IHNwYW4gYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19pY29uOm50aC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX2ljb246bnRoLWNoaWxkKG4rMikge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICB9XG59XG5cbi5wLXdyaXRlcl9feW91dHViZSBpZnJhbWUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBhc3BlY3QtcmF0aW86IDE2Lzk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3lvdXR1YmUgaWZyYW1lIHtcbiAgICB3aWR0aDogNTYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucC13cml0ZXJfX3lvdXR1YmUuLWdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbi5wLXdyaXRlcl9feW91dHViZS4tZ3JpZCAucC13cml0ZXJfX3RleHQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wLXdyaXRlcl9feW91dHViZS4tZ3JpZCAucC13cml0ZXJfX3RleHQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAoNTYwcHggKyA1MHB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gIH1cbn1cblxuLnAtd3JpdGVyX19jb2wtbGluayxcbi5wLXdyaXRlcl9fY29sdW1uIGEge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnAtd3JpdGVyX19jb2wtbGluazpob3Zlcixcbi5wLXdyaXRlcl9fY29sdW1uIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufSIsIkBjaGFyc2V0IFwiVVRGLThcIjsgLy8gRml4ZXMgYW4gaXNzdWUgd2hlcmUgUnVieSBsb2NhbGUgaXMgbm90IHNldCBwcm9wZXJseVxuICAgICAgICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxuXG4vLy8gQmFzZSBmb250IHNpemUgb24gdGhlIGA8Ym9keT5gIGVsZW1lbnRcbi8vL1xuLy8vIERvIG5vdCBvdmVycmlkZSB0aGlzIHZhbHVlLCBvciB0aGluZ3Mgd2lsbCBicmVha1xuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcS9pc3N1ZXMvMTIyXG4vLy8gQGRlcHJlY2F0ZWQgVGhpcyBzZXR0aW5nIHdpbGwgYmUgcmVtb3ZlZCBpbiBzYXNzLW1xIHY2LjAuMFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEB0eXBlIE51bWJlciAodW5pdClcbiRtcS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8vIFJlc3BvbnNpdmUgbW9kZVxuLy8vXG4vLy8gU2V0IHRvIGBmYWxzZWAgdG8gZW5hYmxlIHN1cHBvcnQgZm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgQG1lZGlhIHF1ZXJpZXMsXG4vLy8gKElFIDw9IDgsIEZpcmVmb3ggPD0gMywgT3BlcmEgPD0gOSlcbi8vL1xuLy8vIFlvdSBjb3VsZCBjcmVhdGUgYSBzdHlsZXNoZWV0IHNlcnZlZCBleGNsdXNpdmVseSB0byBvbGRlciBicm93c2Vycyxcbi8vLyB3aGVyZSBAbWVkaWEgcXVlcmllcyBhcmUgcmFzdGVyaXplZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBvbGQtaWUuc2Nzc1xuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcbi8vL1xuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vZmYgRGlzYWJsZWQgcmVzcG9uc2l2ZSBtb2RlIGRvY3VtZW50YXRpb25cbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBsaXN0XG4vLy9cbi8vLyBOYW1lIHlvdXIgYnJlYWtwb2ludHMgaW4gYSB3YXkgdGhhdCBjcmVhdGVzIGEgdWJpcXVpdG91cyBsYW5ndWFnZVxuLy8vIGFjcm9zcyB0ZWFtIG1lbWJlcnMuIEl0IHdpbGwgaW1wcm92ZSBjb21tdW5pY2F0aW9uIGJldHdlZW5cbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXG4vLy9cbi8vLyBAdHlwZSBNYXBcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1icmVha3BvaW50czogKFxuICAgIG1vYmlsZTogIDMyMHB4LFxuICAgIHRhYmxldDogIDc0MHB4LFxuICAgIGRlc2t0b3A6IDk4MHB4LFxuICAgIHdpZGU6ICAgIDEzMDBweFxuKSAhZGVmYXVsdDtcblxuLy8vIFN0YXRpYyBicmVha3BvaW50IChmb3IgZml4ZWQtd2lkdGggbGF5b3V0cylcbi8vL1xuLy8vIERlZmluZSB0aGUgYnJlYWtwb2ludCBmcm9tICRtcS1icmVha3BvaW50cyB0aGF0IHNob3VsZFxuLy8vIGJlIHVzZWQgYXMgdGhlIHRhcmdldCB3aWR0aCBmb3IgdGhlIGZpeGVkLXdpZHRoIGxheW91dFxuLy8vIChpLmUuIHdoZW4gJG1xLXJlc3BvbnNpdmUgaXMgc2V0IHRvICdmYWxzZScpIGluIGEgb2xkLWllLnNjc3Ncbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gdGFibGV0LW9ubHkuc2Nzc1xuLy8vICAvL1xuLy8vICAvLyBJZ25vcmUgYWxsIHN0eWxlcyBhYm92ZSB0YWJsZXQgYnJlYWtwb2ludCxcbi8vLyAgLy8gYW5kIGZpeCB0aGUgc3R5bGVzIChzdWNoIGFzIHRoZSBsYXlvdXQpIGF0IHRhYmxldCB3aWR0aFxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gICRtcS1zdGF0aWMtYnJlYWtwb2ludDogdGFibGV0O1xuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byB0YWJsZXRcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2FkZGluZy1jdXN0b20tYnJlYWtwb2ludHMgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLXN0YXRpYy1icmVha3BvaW50OiBkZXNrdG9wICFkZWZhdWx0O1xuXG4vLy8gU2hvdyBicmVha3BvaW50cyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vXG4vLy8gSWYgeW91IHdhbnQgdG8gZGlzcGxheSB0aGUgY3VycmVudGx5IGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3Bcbi8vLyByaWdodCBjb3JuZXIgb2YgeW91ciBzaXRlIGR1cmluZyBkZXZlbG9wbWVudCwgYWRkIHRoZSBicmVha3BvaW50c1xuLy8vIHRvIHRoaXMgbGlzdCwgb3JkZXJlZCBieSB3aWR0aC4gRm9yIGV4YW1wbGU6IChtb2JpbGUsIHRhYmxldCwgZGVza3RvcCkuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAkbXEtc2hvdy1icmVha3BvaW50czogKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKTtcbi8vLyAgIEBpbXBvcnQgJ3BhdGgvdG8vbXEnO1xuLy8vXG4vLy8gQHR5cGUgbWFwXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG5cbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGZvciBleGFtcGxlOiBgQG1lZGlhIHNjcmVlbmAgb3IgYEBtZWRpYSBwcmludGApXG4vLy8gQnkgZGVmYXVsdCBzYXNzLW1xIHVzZXMgYW4gXCJhbGxcIiBtZWRpYSB0eXBlIChgQG1lZGlhIGFsbCBhbmQg4oCmYClcbi8vL1xuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjY2hhbmdpbmctbWVkaWEtdHlwZSBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtbWVkaWEtdHlwZTogYWxsICFkZWZhdWx0O1xuXG4vLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gdmFsdWUgdG8gY29udmVydFxuLy8vIEBpZ25vcmUgQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSBbJG1xLWJhc2UtZm9udC1zaXplXSAtIGA8Ym9keT5gIGZvbnQgc2l6ZSAoZGVwcmVjYXRlZClcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJGZvbnQtc2l6ZS1pbi1lbXM6IG1xLXB4MmVtKDE2cHgpO1xuLy8vICBwIHsgZm9udC1zaXplOiBtcS1weDJlbSgxNnB4KTsgfVxuLy8vXG4vLy8gQHJlcXVpcmVzICRtcS1iYXNlLWZvbnQtc2l6ZVxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9XG5AZnVuY3Rpb24gbXEtcHgyZW0oJHB4LCAkYmFzZS1mb250LXNpemU6ICRtcS1iYXNlLWZvbnQtc2l6ZSkge1xuICAgIEBpZiAoJG1xLWJhc2UtZm9udC1zaXplICE9IDE2cHgpIHtcbiAgICAgICAgQHdhcm4gXCJPdmVycmlkaW5nICRtcS1iYXNlLWZvbnQtc2l6ZSB3aWxsIGJyZWFrIHRoaW5ncywgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvaXNzdWVzLzEyMi5cIjtcbiAgICB9XG4gICAgQGlmICgkYmFzZS1mb250LXNpemUgIT0gMTZweCkge1xuICAgICAgICBAd2FybiBcIlRoZSAkYmFzZS1mb250LXNpemUgYXJndW1lbnQgd2lsbCBiZSByZW1vdmVkIGluIHNhc3MtbXEgdjYuMC4wLCBhcyBvdmVycmlkaW5nIGl0IGJyZWFrcyB0aGluZ3MsIHNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL2lzc3Vlcy8xMjIuXCI7XG4gICAgfVxuICAgIEBpZiB1bml0bGVzcygkcHgpIHtcbiAgICAgICAgQHdhcm4gXCJBc3N1bWluZyAjeyRweH0gdG8gYmUgaW4gcGl4ZWxzLCBhdHRlbXB0aW5nIHRvIGNvbnZlcnQgaXQgaW50byBwaXhlbHMuXCI7XG4gICAgICAgIEByZXR1cm4gbXEtcHgyZW0oJHB4ICogMXB4LCAkYmFzZS1mb250LXNpemUpO1xuICAgIH0gQGVsc2UgaWYgdW5pdCgkcHgpID09IGVtIHtcbiAgICAgICAgQHJldHVybiAkcHg7XG4gICAgfVxuICAgIEByZXR1cm4gKCRweCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07XG59XG5cbi8vLyBHZXQgYSBicmVha3BvaW50J3Mgd2lkdGhcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnQuIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJHRhYmxldC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgodGFibGV0KTtcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKGRlc2t0b3ApKSB7fVxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBWYWx1ZSBpbiBwaXhlbHNcbkBmdW5jdGlvbiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEB3YXJuIFwiQnJlYWtwb2ludCAjeyRuYW1lfSB3YXNuJ3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzLlwiO1xuICAgIH1cbn1cblxuLy8vIE1lZGlhIFF1ZXJ5IG1peGluXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRmcm9tIFtmYWxzZV0gLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgW2ZhbHNlXSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRhbmQgW2ZhbHNlXSAtIEFkZGl0aW9uYWwgbWVkaWEgcXVlcnkgcGFyYW1ldGVyc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVkaWEtdHlwZSBbJG1xLW1lZGlhLXR5cGVdIC0gTWVkaWEgdHlwZTogc2NyZWVuLCBwcmludOKAplxuLy8vXG4vLy8gQGlnbm9yZSBVbmRvY3VtZW50ZWQgQVBJLCBmb3IgYWR2YW5jZWQgdXNlIG9ubHk6XG4vLy8gQGlnbm9yZSBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskbXEtYnJlYWtwb2ludHNdXG4vLy8gQGlnbm9yZSBAcGFyYW0ge1N0cmluZ30gJHN0YXRpYy1icmVha3BvaW50IFskbXEtc3RhdGljLWJyZWFrcG9pbnRdXG4vLy9cbi8vLyBAY29udGVudCBzdHlsaW5nIHJ1bGVzLCB3cmFwcGVkIGludG8gYSBAbWVkaWEgcXVlcnkgd2hlbiAkcmVzcG9uc2l2ZSBpcyB0cnVlXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtbWVkaWEtdHlwZVxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLXB4MmVtXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGhcbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9uLWRlZmF1bHQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAuZWxlbWVudCB7XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZSkge1xuLy8vICAgICAgY29sb3I6IHJlZDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBibHVlO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcShtb2JpbGUsIHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGdyZWVuO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0LCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xuLy8vICAgICAgY29sb3I6IHRlYWw7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKDk1MHB4KSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEodGFibGV0LCAkbWVkaWEtdHlwZTogc2NyZWVuKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgLy8gQWR2YW5jZWQgdXNlOlxuLy8vICAgICRteS1icmVha3BvaW50czogKEw6IDkwMHB4LCBYTDogMTIwMHB4KTtcbi8vLyAgICBAaW5jbHVkZSBtcShMLCAkYnJlYWtwb2ludHM6ICRteS1icmVha3BvaW50cywgJHN0YXRpYy1icmVha3BvaW50OiBMKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gIH1cbkBtaXhpbiBtcShcbiAgICAkZnJvbTogZmFsc2UsXG4gICAgJHVudGlsOiBmYWxzZSxcbiAgICAkYW5kOiBmYWxzZSxcbiAgICAkbWVkaWEtdHlwZTogJG1xLW1lZGlhLXR5cGUsXG4gICAgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMsXG4gICAgJHJlc3BvbnNpdmU6ICRtcS1yZXNwb25zaXZlLFxuICAgICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XG4pIHtcbiAgICAkbWluLXdpZHRoOiAwO1xuICAgICRtYXgtd2lkdGg6IDA7XG4gICAgJG1lZGlhLXF1ZXJ5OiAnJztcblxuICAgIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxuICAgIEBpZiAkZnJvbSB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCRmcm9tKSA9PSBudW1iZXIge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0oJGZyb20pO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtaW4td2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRmcm9tLCAkYnJlYWtwb2ludHMpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcbiAgICBAaWYgJHVudGlsIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJHVudGlsKSA9PSBudW1iZXIge1xuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0oJHVudGlsKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkdW50aWwsICRicmVha3BvaW50cykpIC0gLjAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZGlzYWJsZWQsIHJhc3Rlcml6ZSB0aGUgb3V0cHV0IG91dHNpZGUgQG1lZGlhIGJsb2Nrc1xuICAgIC8vIFRoZSBicm93c2VyIHdpbGwgcmVseSBvbiB0aGUgY2FzY2FkZSBpdHNlbGYuXG4gICAgQGlmICRyZXNwb25zaXZlID09IGZhbHNlIHtcbiAgICAgICAgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc3RhdGljLWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICR0YXJnZXQtd2lkdGg6IG1xLXB4MmVtKCRzdGF0aWMtYnJlYWtwb2ludC13aWR0aCk7XG5cbiAgICAgICAgLy8gT3V0cHV0IG9ubHkgcnVsZXMgdGhhdCBzdGFydCBhdCBvciBzcGFuIG91ciB0YXJnZXQgd2lkdGhcbiAgICAgICAgQGlmIChcbiAgICAgICAgICAgICRhbmQgPT0gZmFsc2VcbiAgICAgICAgICAgIGFuZCAkbWluLXdpZHRoIDw9ICR0YXJnZXQtd2lkdGhcbiAgICAgICAgICAgIGFuZCAoXG4gICAgICAgICAgICAgICAgJHVudGlsID09IGZhbHNlIG9yICRtYXgtd2lkdGggPj0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgYW5kICRtZWRpYS10eXBlICE9ICdwcmludCdcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBlbmFibGVkLCBvdXRwdXQgcnVsZXMgaW5zaWRlIEBtZWRpYSBxdWVyaWVzXG4gICAgQGVsc2Uge1xuICAgICAgICBAaWYgJG1pbi13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWluLXdpZHRoOiAjeyRtaW4td2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRtYXgtd2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1heC13aWR0aDogI3skbWF4LXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkYW5kICAgICAgICAgICAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kICN7JGFuZH0nOyB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIHVubmVjZXNzYXJ5IG1lZGlhIHF1ZXJ5IHByZWZpeCAnYWxsIGFuZCAnXG4gICAgICAgIEBpZiAoJG1lZGlhLXR5cGUgPT0gJ2FsbCcgYW5kICRtZWRpYS1xdWVyeSAhPSAnJykge1xuICAgICAgICAgICAgJG1lZGlhLXR5cGU6ICcnO1xuICAgICAgICAgICAgJG1lZGlhLXF1ZXJ5OiBzdHItc2xpY2UodW5xdW90ZSgkbWVkaWEtcXVlcnkpLCA2KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRtZWRpYS10eXBlICsgJG1lZGlhLXF1ZXJ5fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vIFF1aWNrIHNvcnRcbi8vL1xuLy8vIEBhdXRob3IgU2FtIFJpY2hhcmRzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtMaXN0fSBTb3J0ZWQgTGlzdFxuQGZ1bmN0aW9uIF9tcS1xdWljay1zb3J0KCRsaXN0KSB7XG4gICAgJGxlc3M6ICAoKTtcbiAgICAkZXF1YWw6ICgpO1xuICAgICRsYXJnZTogKCk7XG5cbiAgICBAaWYgbGVuZ3RoKCRsaXN0KSA+IDEge1xuICAgICAgICAkc2VlZDogbnRoKCRsaXN0LCBjZWlsKGxlbmd0aCgkbGlzdCkgLyAyKSk7XG5cbiAgICAgICAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgICAgICAgICAgQGlmICgkaXRlbSA9PSAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRlcXVhbDogYXBwZW5kKCRlcXVhbCwgJGl0ZW0pO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPCAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRsZXNzOiBhcHBlbmQoJGxlc3MsICRpdGVtKTtcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKCRpdGVtID4gJHNlZWQpIHtcbiAgICAgICAgICAgICAgICAkbGFyZ2U6IGFwcGVuZCgkbGFyZ2UsICRpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEByZXR1cm4gam9pbihqb2luKF9tcS1xdWljay1zb3J0KCRsZXNzKSwgJGVxdWFsKSwgX21xLXF1aWNrLXNvcnQoJGxhcmdlKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFNvcnQgYSBtYXAgYnkgdmFsdWVzICh3b3JrcyB3aXRoIG51bWJlcnMgb25seSlcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNvcnRcbi8vLyBAcmV0dXJucyB7TWFwfSBNYXAgc29ydGVkIGJ5IHZhbHVlXG5AZnVuY3Rpb24gX21xLW1hcC1zb3J0LWJ5LXZhbHVlKCRtYXApIHtcbiAgICAkbWFwLXNvcnRlZDogKCk7XG4gICAgJG1hcC1rZXlzOiBtYXAta2V5cygkbWFwKTtcbiAgICAkbWFwLXZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgICAkbWFwLXZhbHVlcy1zb3J0ZWQ6IF9tcS1xdWljay1zb3J0KCRtYXAtdmFsdWVzKTtcblxuICAgIC8vIFJlb3JkZXIga2V5L3ZhbHVlIHBhaXJzIGJhc2VkIG9uIGtleSB2YWx1ZXNcbiAgICBAZWFjaCAkdmFsdWUgaW4gJG1hcC12YWx1ZXMtc29ydGVkIHtcbiAgICAgICAgJGluZGV4OiBpbmRleCgkbWFwLXZhbHVlcywgJHZhbHVlKTtcbiAgICAgICAgJGtleTogbnRoKCRtYXAta2V5cywgJGluZGV4KTtcbiAgICAgICAgJG1hcC1zb3J0ZWQ6IG1hcC1tZXJnZSgkbWFwLXNvcnRlZCwgKCRrZXk6ICR2YWx1ZSkpO1xuXG4gICAgICAgIC8vIFVuc2V0IHRoZSB2YWx1ZSBpbiAkbWFwLXZhbHVlcyB0byBwcmV2ZW50IHRoZSBsb29wXG4gICAgICAgIC8vIGZyb20gZmluZGluZyB0aGUgc2FtZSBpbmRleCB0d2ljZVxuICAgICAgICAkbWFwLXZhbHVlczogc2V0LW50aCgkbWFwLXZhbHVlcywgJGluZGV4LCAwKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRtYXAtc29ydGVkO1xufVxuXG4vLy8gQWRkIGEgYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgYnJlYWtwb2ludFxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIEBpbmNsdWRlIG1xLWFkZC1icmVha3BvaW50KHR2c2NyZWVuLCAxOTIwcHgpO1xuLy8vICBAaW5jbHVkZSBtcSh0dnNjcmVlbikge31cbkBtaXhpbiBtcS1hZGQtYnJlYWtwb2ludCgkbmFtZSwgJHdpZHRoKSB7XG4gICAgJG5ldy1icmVha3BvaW50OiAoJG5hbWU6ICR3aWR0aCk7XG4gICAgJG1xLWJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJG1xLWJyZWFrcG9pbnRzLCAkbmV3LWJyZWFrcG9pbnQpICFnbG9iYWw7XG4gICAgJG1xLWJyZWFrcG9pbnRzOiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1xLWJyZWFrcG9pbnRzKSAhZ2xvYmFsO1xufVxuXG4vLy8gU2hvdyB0aGUgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgdGhlIHZpZXdwb3J0XG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvdy1icmVha3BvaW50cyBbJG1xLXNob3ctYnJlYWtwb2ludHNdIC0gTGlzdCBvZiBicmVha3BvaW50cyB0byBzaG93IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJG1xLWJyZWFrcG9pbnRzXSAtIEJyZWFrcG9pbnQgbmFtZXMgYW5kIHNpemVzXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc2hvdy1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGdsb2JhbCBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xuLy8vXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgY3VzdG9tIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xuQG1peGluIG1xLXNob3ctYnJlYWtwb2ludHMoJHNob3ctYnJlYWtwb2ludHM6ICRtcS1zaG93LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIGJvZHk6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgY29sb3I6ICNDMDk4NTM7XG4gICAgICAgIGZvbnQ6IHNtYWxsLWNhcHRpb247XG4gICAgICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXG4gICAgICAgIEBlYWNoICRzaG93LWJyZWFrcG9pbnQgaW4gJHNob3ctYnJlYWtwb2ludHMge1xuICAgICAgICAgICAgJHdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiN7JHNob3ctYnJlYWtwb2ludH0g4omlICN7JHdpZHRofSAoI3ttcS1weDJlbSgkd2lkdGgpfSlcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGlmIGxlbmd0aCgkbXEtc2hvdy1icmVha3BvaW50cykgPiAwIHtcbiAgICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xufVxuIl0sInNvdXJjZVJvb3QiOiIvLiJ9 */
