/* Full Article Node */
.region-hero .scroll-progress { position: fixed; width: 100%; background: #FFFFFF; height: 4rem; z-index: 3; top: 0; -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%); -webkit-transition: -webkit-transform 0.4s ease-in-out; transition: -webkit-transform 0.4s ease-in-out; transition: transform 0.4s ease-in-out; transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out; }

@media print, screen and (min-width: 40em) { .region-hero .scroll-progress { top: calc(40px + 78px); } }

.region-hero .scroll-progress.is-showing { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.region-hero .scroll-progress .cell { position: relative; }

.region-hero .scroll-progress__title { font-family: 'Raleway', sans-serif; font-size: 0.875rem; font-weight: 700; line-height: 1.2; overflow: hidden; text-overflow: ellipsis; width: calc(100% - 2rem); position: absolute; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 4rem; }

.region-hero .scroll-progress__shrubber { display: block; position: absolute; top: calc(4rem - 4px); left: 0; background: #DD7A29; width: 0%; max-width: 100%; height: 4px; z-index: 2; border-radius: 2px; }

.region-hero .scroll-progress:after { content: ''; display: block; position: absolute; bottom: 0; left: 0; background: #EEEEEE; width: 100%; height: 4px; z-index: 1; }

.region-hero nav.breadcrumb { padding-top: 4rem; }

@media print, screen and (min-width: 40em) { .region-hero .scroll-progress { height: 5rem; }
  .region-hero .scroll-progress__title { font-size: 1.25rem; height: 5rem; }
  .region-hero .scroll-progress__shrubber { top: calc(5rem - 4px); } }

.node--type-rw-article.full.article--type-blog .author, .node--type-rw-article.full.article--type-spot-checks .author { display: none; }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn-elements { text-align: center; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn-elements { text-align: left; } }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn { width: 2.5rem; height: 2.5rem; border-radius: 50% !important; -webkit-box-shadow: 0px 8px 16px 2px rgba(0, 0, 0, 0.125); box-shadow: 0px 8px 16px 2px rgba(0, 0, 0, 0.125); padding: 0 !important; margin: 0.25rem 0.5rem !important; line-height: 2.5rem !important; position: relative; }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn svg { fill: #aeaeae !important; }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn:focus, .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn:hover { -webkit-transform: unset; -ms-transform: unset; transform: unset; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn:first-child { margin-left: 0 !important; } }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn span.at-icon-wrapper { float: none !important; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-facebook:focus svg, .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-facebook:hover svg { fill: #3B5998 !important; }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-twitter:focus svg, .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-twitter:hover svg { fill: #00ACEE !important; }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-linkedin:focus svg, .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-linkedin:hover svg { fill: #0E76A8 !important; }

.node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-whatsapp:focus svg, .node--type-rw-article.full .addthis_inline_share_toolbox .at-share-btn.at-svc-whatsapp:hover svg { fill: #43D954 !important; }

.node--type-rw-article.full .article--main > .node__content { margin-top: 3rem; }

.node--type-rw-article.full .article--main > .node__content p { font-size: 1rem; }

.node--type-rw-article.full .article--main > .node__content .paragraph h2, .node--type-rw-article.full .article--main > .node__content p h2, .node--type-rw-article.full .article--main > .node__content .rw-paragraph--title h2 { margin-bottom: 1rem; }

.node--type-rw-article.full .article--main > .node__content .popout-p { position: relative; }

.node--type-rw-article.full .article--main > .node__content .popout-p > a.popdown-more:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: '\f0d7'; margin-left: 0.25rem; margin-right: 0.25rem; }

.node--type-rw-article.full .article--main > .node__content .popout-p > a.popdown-more.is-popped:after { content: '\f0d8'; }

.node--type-rw-article.full .article--main > .node__content .popout-p > a.popdown-source:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: '\f069'; margin-left: 0.25rem; margin-right: 0.25rem; font-size: 0.5rem; position: relative; top: -2px; }

.node--type-rw-article.full .article--main > .node__content .popout-p > a.popout-side.is-hovered { text-decoration: underline; }

.node--type-rw-article.full .article--main > .node__content .popout-p > a.popout-info { color: #323232; text-decoration: none; cursor: default; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub { font-size: 0.875rem; bottom: 0; line-height: 1.6; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--more { display: none; margin: 1rem 4rem 1rem 2rem; padding: 1rem 0 1rem 1rem; color: #636363; font-weight: 100; border-left: 2px solid #D7D7D7; }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--more { margin: 1rem 10rem 1rem 2rem; } }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--more a { color: #636363; text-decoration: underline; margin-left: 0.25rem; white-space: nowrap; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--more a:hover { text-decoration: none; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--more.is-active { display: block; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--source { display: none; margin: 1rem 4rem 1rem 2rem; padding: 1rem 0; color: #636363; font-weight: 100; }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--source { margin: 1rem 10rem 1rem 2rem; } }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--source a { text-decoration: underline; margin-left: 0.25rem; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--source a:hover { text-decoration: none; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popdown--source.is-active { display: block; }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side { display: none; }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side { display: block; font-style: italic; position: absolute; left: calc(100% + 3rem); top: 0; width: calc(50% - 3rem); padding: 0 0 0 1rem; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side a { position: relative; color: #a4a4a4; display: block; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side a:before { content: ''; width: 6px; height: 6px; display: block; position: absolute; border-radius: 50%; background: #a4a4a4; left: -1rem; top: 8px; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side a:hover, .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side a.is-hovered { color: #DD7A29; text-decoration: none; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side a:hover:before, .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--side a.is-hovered:before { background: #DD7A29; } }

.node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--info { display: none; }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--info { display: block; font-style: italic; position: absolute; left: calc(100% + 2rem); top: 0; width: calc(50% - 2rem); padding: 0 0 0 1rem; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--info:before { content: 'Did you know?'; display: block; margin-bottom: 0.5rem; font-weight: 700; padding-left: 2rem; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--info:after { content: ''; background: url("../../../images/did-you-know.svg") no-repeat; display: block; width: 1.5rem; height: 1.5rem; position: absolute; top: 0; left: 1rem; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--info a { white-space: nowrap; text-decoration: none; display: block; }
  .node--type-rw-article.full .article--main > .node__content .popout-p sub.sub-popout--info a:hover { text-decoration: underline; } }

.node--type-rw-article.full .article--main > .node__content .report--summary > ul:first-of-type { background: #eeeeee; margin-left: 0; padding: 1rem; margin-bottom: 2rem; }

.node--type-rw-article.full .article--main > .node__content .report--summary > ul:first-of-type br { display: none; visibility: hidden; }

.node--type-rw-article.full .article--main > .node__content .report--summary > ul:first-of-type > li { margin: 0 0 1rem; padding: 0 0 0 1rem; line-height: 1.5; }

.node--type-rw-article.full .article--main > .node__content .report--summary > ul:first-of-type > li:last-of-type { margin-bottom: 0; }

.node--type-rw-article.full .article--main > .node__content .report--summary > ul:first-of-type > li:before { left: 0; top: 0.5rem; }

.node--type-rw-article.full .article--main > .node__content .report--summary > ul:first-of-type > li span { font-size: 1rem; font-weight: 600 !important; }

.node--type-rw-article.full .article--aside--first.show-for-small-only .article-details { margin: 3rem 0 -1rem; }

.node--type-rw-article.full .article--aside .share-content { text-align: center; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .article--aside .share-content { text-align: left; } }

.node--type-rw-article.full .article--aside .share-content .addthis_inline_share_toolbox { margin-bottom: 3rem; }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--aside .share-content .addthis_inline_share_toolbox { margin-bottom: 2rem; } }

.node--type-rw-article.full .article--aside .author-details { text-align: center; }

.node--type-rw-article.full .article--aside .author-details a { display: inline-block; padding: 2rem 0; }

.node--type-rw-article.full .article--aside .author-details a .author-details__profile { width: 80px; height: 80px; border-radius: 50%; margin: 0 auto; overflow: hidden; }

.node--type-rw-article.full .article--aside .author-details a .author-details__profile img { width: 100%; height: auto; }

.node--type-rw-article.full .article--aside .author-details a h4 { margin-top: 1rem; color: #323232; font-weight: 700; margin-bottom: 0; }

.node--type-rw-article.full .article--aside .author-details a span { color: #323232; font-style: italic; font-size: 0.875rem; }

.node--type-rw-article.full .article--aside .author-details a:hover h4, .node--type-rw-article.full .article--aside .author-details a:hover span { color: #DD7A29; }

.node--type-rw-article.full .article--aside .article-details { background: #EEEEEE; padding: 1rem; margin-bottom: 2rem; }

.node--type-rw-article.full .article--aside .article-details .field { font-size: 0.875rem; }

.node--type-rw-article.full .article--aside .article-details__claims { margin-bottom: 1rem; }

.node--type-rw-article.full .article--aside .article-details__verdict { margin-bottom: 1rem; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.node--type-rw-article.full .article--aside .article-details__verdict > h3 { -ms-flex-negative: 0; flex-shrink: 0; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-preferred-size: 100%; flex-basis: 100%; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating { -ms-flex-negative: 0; flex-shrink: 0; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-preferred-size: 5rem; flex-basis: 5rem; height: 4.4375rem; background-image: url("../../../images/ratings-sprite-80px.png"); background-repeat: no-repeat; margin-right: 1rem; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating.is-fr { background-image: url("../../../images/ratings-sprite-fr-80px.png"); }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--aside .article-details__verdict .rating { -ms-flex-preferred-size: 100%; flex-basis: 100%; } }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .article--aside .article-details__verdict .rating { -ms-flex-preferred-size: 5rem; flex-basis: 5rem; } }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--correct { background-position: 0 0; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--mostly-correct { background-position: 0 -71px; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--unproven { background-position: 0 -142px; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--misleading { background-position: 0 -214px; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--understated { background-position: 0 -285px; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--exaggerated { background-position: 0 -357px; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--incorrect { background-position: 0 -428px; }

.node--type-rw-article.full .article--aside .article-details__verdict .rating--checked { background-position: 0 -500px; }

.node--type-rw-article.full .article--aside .article-details__verdict .field { -ms-flex-negative: 0; flex-shrink: 0; -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; -ms-flex-preferred-size: 100%; flex-basis: 100%; }

.node--type-rw-article.full .article--aside .article-details__verdict .field--has-rating { -ms-flex-preferred-size: calc(100% - 6rem); flex-basis: calc(100% - 6rem); }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--aside .article-details__verdict .field--has-rating { -ms-flex-preferred-size: 100%; flex-basis: 100%; margin-top: 0.5rem; } }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .article--aside .article-details__verdict .field--has-rating { -ms-flex-preferred-size: calc(100% - 6rem); flex-basis: calc(100% - 6rem); margin-top: 0; } }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .article--aside--has-hero { padding-top: 3rem; } }

.node--type-rw-article.full .field--name-field-disqus-comments { border-top: 2px solid #D7D7D7; margin: 2rem 0 0; padding-top: 2rem; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .inline-rating { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

.node--type-rw-article.full .inline-rating .report-claim, .node--type-rw-article.full .inline-rating .report-verdict { background: #D7D7D7; padding: 2rem 1rem; margin-bottom: 1rem; -webkit-box-flex: 1; -ms-flex: 1 1 0px; flex: 1 1 0; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .inline-rating .report-claim, .node--type-rw-article.full .inline-rating .report-verdict { padding: 1rem; } }

.node--type-rw-article.full .inline-rating .report-claim h4, .node--type-rw-article.full .inline-rating .report-verdict h4 { font-weight: 600; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .inline-rating .report-claim { margin-right: 0.5rem; } }

.node--type-rw-article.full .inline-rating .report-claim p:last-of-type { margin-bottom: 0; }

.node--type-rw-article.full .inline-rating .report-verdict { position: relative; text-transform: capitalize; }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .inline-rating .report-verdict { margin-left: 0.5rem; } }

.node--type-rw-article.full .inline-rating .report-verdict > span { display: block; word-wrap: break-word; max-width: 6rem; }

.node--type-rw-article.full .inline-rating .report-verdict::after { content: ""; display: block; height: 4.4375rem; background-image: url("../../../images/ratings-sprite-80px.png"); background-repeat: no-repeat; position: absolute; width: 200px; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 7rem; }

@media print, screen and (max-width: 74.99875em) { .node--type-rw-article.full .inline-rating .report-verdict::after { top: 50%; left: 7rem; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } }

@media print, screen and (min-width: 40em) { .node--type-rw-article.full .inline-rating .report-verdict::after { -ms-flex-preferred-size: 100%; flex-basis: 100%; } }

@media print, screen and (min-width: 64em) { .node--type-rw-article.full .inline-rating .report-verdict::after { -ms-flex-preferred-size: 5rem; flex-basis: 5rem; } }

.node--type-rw-article.full .inline-rating.correct .report-verdict::after { background-position: 0 0; }

.node--type-rw-article.full .inline-rating.mostly-correct .report-verdict > span, .node--type-rw-article.full .inline-rating.mostly_correct .report-verdict > span { max-width: 10rem; }

.node--type-rw-article.full .inline-rating.mostly-correct .report-verdict::after, .node--type-rw-article.full .inline-rating.mostly_correct .report-verdict::after { background-position: 0 -71px; left: 9rem; }

.node--type-rw-article.full .inline-rating.unproven .report-verdict::after { background-position: 0 -142px; }

.node--type-rw-article.full .inline-rating.misleading .report-verdict::after { background-position: 0 -214px; }

.node--type-rw-article.full .inline-rating.understated .report-verdict::after { background-position: 0 -285px; }

.node--type-rw-article.full .inline-rating.exaggerated .report-verdict::after { background-position: 0 -357px; }

.node--type-rw-article.full .inline-rating.incorrect .report-verdict::after { background-position: 0 -428px; }

.node--type-rw-article.full .inline-rating.checked .report-verdict::after { background-position: 0 -500px; }

.node--type-rw-article.full.is-fr .report-verdict::after { background-image: url("../../../images/ratings-sprite-fr-80px.png"); }

.node--type-rw-article.full.is-fr .mostly-correct .report-verdict::after, .node--type-rw-article.full.is-fr .mostly_correct .report-verdict::after { left: 12rem; }

.node--type-rw-article { position: relative; }

.node--type-rw-article .webform-submission-sign-up-popup-article-form { display: none; }

.node--type-rw-article .webform-submission-sign-up-popup-article-form .form-item.form-type-email { margin: 0; }

.node--type-rw-article .webform-submission-sign-up-popup-article-form .form-item.form-type-processed-text { clear: left; }

.node--type-rw-article .block-article-truncate-block { position: absolute; bottom: 0; left: 0; background: #FFFFFF; width: 100%; padding: 10px 20px 0 0; text-align: center; }

.node--type-rw-article .block-article-truncate-block:before { content: ""; position: absolute; top: -148px; left: 0; width: 100%; background: linear-gradient(180deg, transparent 0%, white 100px, white 100%); height: 150px; }

.node--type-rw-article .block-article-truncate-block > .block { max-width: 600px; margin: auto; }

.node--type-rw-article .block-article-truncate-block.form--open .webform-submission-sign-up-popup-article-form { display: block; }

.node--type-rw-article .block-article-truncate-block .far.fa-times-circle { position: absolute; top: 10px; right: 10px; cursor: pointer; }

@media print, screen and (min-width: 64em) { .node--type-rw-article .block-article-truncate-block .far.fa-times-circle { top: 0; right: 16vw; } }

@media screen and (min-width: 90em) { .node--type-rw-article .block-article-truncate-block .far.fa-times-circle { right: 14vw; } }

@media only screen and (min-width: 2560px) { .node--type-rw-article .block-article-truncate-block .far.fa-times-circle { right: 2vw; } }

.node--type-rw-article .block-article-truncate-block .far.fa-times-circle:before { color: #636363; }

@media print, screen and (min-width: 40em) { .node--type-rw-article .block-article-truncate-block .far.fa-times-circle:before { font-size: 25px; } }

.node--type-rw-article .block-article-truncate-block .keep-reading--close, .node--type-rw-article .block-article-truncate-block .form-item-markup, .node--type-rw-article .block-article-truncate-block p { color: #636363; }

.node--type-rw-article .block-article-truncate-block .webform-actions { text-align: left; }

.js-cookie-subscribe-donate-2 .node--type-rw-article .block-article-truncate-block { display: none; }

.block-africa-check-article { margin-top: 2rem; }

.block-africa-check-article .slick-track { margin-left: 0; }

.field--name-field-report-summary { margin-bottom: 2rem; }

.field--name-field-report-summary ul li { font-weight: 600; font-size: 1rem; }

.about-fbchecks-box, .field--name-field-report-summary { padding: 0.5rem; background: #EEEEEE; }

@media print, screen and (min-width: 40em) { .about-fbchecks-box, .field--name-field-report-summary { padding: 1rem; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFydGljbGUvYXJ0aWNsZS5zY3NzIiwiLi4vX3NldHRpbmdzLWZvdW5kYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQUE7QUFTQSxnQ0FHSSxlQUFlLEVBQ2YsV0FBVyxFQUNYLG1CQ29FVyxFRGxFWCxZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixvQ0FBNEIsRUFBNUIsZ0NBQTRCLEVBQTVCLDRCQUE0QixFQUM1QixzREFBc0MsRUFBdEMsOENBQXNDLEVBQXRDLHNDQUFzQyxFQUF0QywwRUFBc0MsRUFBQTs7QUU0SmxDLDZDRnZLUixnQ0FjTSxzQkFBdUQsRUFBQSxFQXlEMUQ7O0FBdkVILDJDQWtCTSxnQ0FBd0IsRUFBeEIsNEJBQXdCLEVBQXhCLHdCQUF3QixFQUFBOztBQWxCOUIsc0NBc0JNLGtCQUFrQixFQUFBOztBQXRCeEIsdUNBMEJNLGtDQUFrQyxFQUNsQyxtQkdvRG1ELEVIbkRuRCxnQkFBZ0IsRUFFaEIsZ0JBQWdCLEVBRWhCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLGtCQUFrQixFQUNsQixvQkFBYSxFQUFiLG9CQUFhLEVBQWIsYUFBYSxFQUNiLDRCQUFzQixFQUF0Qiw2QkFBc0IsRUFBdEIsMEJBQXNCLEVBQXRCLHNCQUFzQixFQUN0Qix3QkFBdUIsRUFBdkIscUJBQXVCLEVBQXZCLHVCQUF1QixFQUN2QixZQUFZLEVBQUE7O0FBdkNsQiwwQ0EyQ00sY0FBYyxFQUNkLGtCQUFrQixFQUVsQixxQkFBcUIsRUFDckIsT0FBTyxFQUNQLG1CQ2VZLEVEZFosU0FBUyxFQUNULGVBQWUsRUFDZixXQUFXLEVBQ1gsVUFBVSxFQUNWLGtCQUFrQixFQUFBOztB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QUEsRUFJaEIiLCJmaWxlIjoiYXJ0aWNsZS9hcnRpY2xlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gIEZ1bGwgQXJ0aWNsZSBOb2RlXG4qL1xuXG5AaW1wb3J0ICcuLi8uLi9zZXR0aW5ncy1mb3VuZGF0aW9uJztcblxuJGhlYWRlci1iZWZvcmUtaGVpZ2h0OiA0MHB4O1xuJGhlYWRlci1oZWlnaHQ6IDc4cHg7XG5cbi5yZWdpb24taGVybyB7XG5cbiAgLnNjcm9sbC1wcm9ncmVzcyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAvL2hlaWdodDogcmVtLWNhbGMoNDgpO1xuICAgIGhlaWdodDogNHJlbTtcbiAgICB6LWluZGV4OiAzO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGVhc2UtaW4tb3V0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHRvcDogY2FsYygjeyRoZWFkZXItYmVmb3JlLWhlaWdodH0gKyAjeyRoZWFkZXItaGVpZ2h0fSk7XG4gICAgfVxuXG4gICAgJi5pcy1zaG93aW5nIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICAuY2VsbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIC8vbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAvL3doaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgIH1cblxuICAgICZfX3NocnViYmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy90b3A6IHJlbS1jYWxjKDQ0KTtcbiAgICAgIHRvcDogY2FsYyg0cmVtIC0gNHB4KTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vICAgdG9wOiBjYWxjKDRyZW0gLSA0cHgpO1xuICAgICAgLy8gfVxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxuXG4gIG5hdi5icmVhZGNydW1iIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjQpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAuc2Nyb2xsLXByb2dyZXNzIHtcbiAgICAgIC8vaGVpZ2h0OiByZW0tY2FsYyg2NCk7XG4gICAgICBoZWlnaHQ6IDVyZW07XG5cbiAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIC8vbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDY0KTtcbiAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgfVxuICAgICAgJl9fc2hydWJiZXIge1xuICAgICAgICB0b3A6IGNhbGMoNXJlbSAtIDRweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLm5vZGUtLXR5cGUtcnctYXJ0aWNsZS5mdWxsIHtcblxuICAmLmFydGljbGUtLXR5cGUtYmxvZywgJi5hcnRpY2xlLS10eXBlLXNwb3QtY2hlY2tzIHtcbiAgICAuYXV0aG9yIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmFkZHRoaXNfaW5saW5lX3NoYXJlX3Rvb2xib3gge1xuICAgIC5hdC1zaGFyZS1idG4tZWxlbWVudHMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgICAuYXQtc2hhcmUtYnRuIHtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogMHB4IDhweCAxNnB4IDJweCByZ2JhKDAsMCwwLDAuMTI1KTtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMC4yNXJlbSAwLjVyZW0gIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgZmlsbDogZGFya2VuKCRtZWRpdW0tZ3JheSwgMTYlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzcGFuLmF0LWljb24td3JhcHBlciB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB9XG5cbiAgICAgICYuYXQtc3ZjLWZhY2Vib29rIHtcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICMzQjU5OTggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hdC1zdmMtdHdpdHRlciB7XG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAjMDBBQ0VFICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYXQtc3ZjLWxpbmtlZGluIHtcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICMwRTc2QTggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5hdC1zdmMtd2hhdHNhcHAge1xuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogIzQzRDk1NCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtLW1haW4ge1xuICAgICYgPiAubm9kZV9fY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICB9XG4gICAgICAucGFyYWdyYXBoIGgyLCBwIGgyLCAucnctcGFyYWdyYXBoLS10aXRsZSBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0gO1xuICAgICAgfVxuICAgICAgLnBvcG91dC1wIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYgPiBhIHtcblxuICAgICAgICAgIC8vIHBvcGRvd24gbW9yZVxuICAgICAgICAgICYucG9wZG93bi1tb3JlIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMGQ3JztcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1wb3BwZWQge1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMGQ4JztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIHBvcGRvd24gc291cmNlXG4gICAgICAgICAgJi5wb3Bkb3duLXNvdXJjZSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJztcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA2OSc7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoOCk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIHBvcG91dCBzaWRlXG4gICAgICAgICAgJi5wb3BvdXQtc2lkZSB7XG4gICAgICAgICAgICAmLmlzLWhvdmVyZWQge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBwb3BvdXQgaW5mb1xuICAgICAgICAgICYucG9wb3V0LWluZm8ge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHN1YiB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG5cbiAgICAgICAgICAmLnN1Yi1wb3Bkb3duLS1tb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDFyZW0gNHJlbSAxcmVtIDJyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDAgMXJlbSAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMXJlbSAxMHJlbSAxcmVtIDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuc3ViLXBvcGRvd24tLXNvdXJjZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDRyZW0gMXJlbSAycmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBtYXJnaW46IDFyZW0gMTByZW0gMXJlbSAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuXG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuc3ViLXBvcG91dC0tc2lkZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDNyZW0pO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDNyZW0pO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxcmVtO1xuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRtZWRpdW0tZ3JheSwgMjAlKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJG1lZGl1bS1ncmF5LCAyMCUpO1xuICAgICAgICAgICAgICAgICAgbGVmdDogLTFyZW07XG4gICAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICYuaXMtaG92ZXJlZCB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuc3ViLXBvcG91dC0taW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDJyZW0pO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxcmVtO1xuXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnRGlkIHlvdSBrbm93Pyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9pbWFnZXMvZGlkLXlvdS1rbm93LnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnJlcG9ydC0tc3VtbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBiciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAmID4gbGkge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgLy8gICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC8vICYgPiBsaSB7XG4gICAgICAgIC8vICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgLy8gICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgLy8gICBjb2xvcjogd2hpdGU7XG4gICAgICAgIC8vICAgbGluZS1oZWlnaHQ6IDEuODtcblxuICAgICAgICAvLyAgICY6YmVmb3JlIHtcbiAgICAgICAgLy8gICAgIHRvcDogNTAlO1xuICAgICAgICAvLyAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAvLyAgIH1cbiAgICAgICAgLy8gfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hcnRpY2xlLS1hc2lkZSB7XG5cbiAgICAmLS1maXJzdCB7XG4gICAgICAmLnNob3ctZm9yLXNtYWxsLW9ubHkgLmFydGljbGUtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbjogM3JlbSAwIC0xcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaGFyZS1jb250ZW50IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgLmFkZHRoaXNfaW5saW5lX3NoYXJlX3Rvb2xib3gge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5hdXRob3ItZGV0YWlscyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICAgICAuYXV0aG9yLWRldGFpbHNfX3Byb2ZpbGUge1xuICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgaDQsIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1kZXRhaWxzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgIC5maWVsZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgfVxuXG4gICAgICAmX19jbGFpbXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgICAgJl9fdmVyZGljdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAmID4gaDMge1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IHJlbS1jYWxjKDgwKTtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDcxKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uLy4uL2ltYWdlcy9yYXRpbmdzLXNwcml0ZS04MHB4LnBuZycpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICYuaXMtZnIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi8uLi9pbWFnZXMvcmF0aW5ncy1zcHJpdGUtZnItODBweC5wbmcnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZmxleC1iYXNpczogcmVtLWNhbGMoODApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYtLWNvcnJlY3Qge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLS1tb3N0bHktY29ycmVjdCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03MXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLS11bnByb3ZlbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDJweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi0tbWlzbGVhZGluZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMTRweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi0tdW5kZXJzdGF0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjg1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICYtLWV4YWdnZXJhdGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM1N3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLS1pbmNvcnJlY3Qge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDI4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICYtLWNoZWNrZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcblxuICAgICAgICAgICYtLWhhcy1yYXRpbmcge1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC0gNnJlbSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSA2cmVtKTtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZfX3NvdXJjZSB7fVxuICAgIH1cblxuICAgICYtLWhhcy1oZXJvIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLmFydGljbGUtLWFmdGVyIHt9XG5cbiAgLmZpZWxkLS1uYW1lLWZpZWxkLWRpc3F1cy1jb21tZW50cyB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICBtYXJnaW46IDJyZW0gMCAwO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICB9XG5cbiAgLmlubGluZS1yYXRpbmcge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICAgIC5yZXBvcnQtY2xhaW0sXG4gICAgLnJlcG9ydC12ZXJkaWN0IHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBmbGV4OiAxIDEgMDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJlcG9ydC1jbGFpbSAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICB9XG5cbiAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJlcG9ydC12ZXJkaWN0IHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgfVxuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgJiA+IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBtYXgtd2lkdGg6IDZyZW07XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNzEpO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi8uLi9pbWFnZXMvcmF0aW5ncy1zcHJpdGUtODBweC5wbmcnKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAvL3RvcDogMC41cmVtO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAvL2xlZnQ6IDEyMHB4O1xuICAgICAgbGVmdDogN3JlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIC8vbGVmdDogMTIwcHg7XG4gICAgICBsZWZ0OiA3cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxleC1iYXNpczogcmVtLWNhbGMoODApO1xuICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmNvcnJlY3QgLnJlcG9ydC12ZXJkaWN0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLm1vc3RseS1jb3JyZWN0IC5yZXBvcnQtdmVyZGljdCxcbiAgICAmLm1vc3RseV9jb3JyZWN0IC5yZXBvcnQtdmVyZGljdCAge1xuICAgICAgJiA+IHNwYW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03MXB4O1xuICAgICAgICBsZWZ0OiA5cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnVucHJvdmVuIC5yZXBvcnQtdmVyZGljdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MnB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLm1pc2xlYWRpbmcgLnJlcG9ydC12ZXJkaWN0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjE0cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYudW5kZXJzdGF0ZWQgLnJlcG9ydC12ZXJkaWN0e1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yODVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5leGFnZ2VyYXRlZCAucmVwb3J0LXZlcmRpY3Qge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNTdweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5pbmNvcnJlY3QgLnJlcG9ydC12ZXJkaWN0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDI4cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYuY2hlY2tlZCAucmVwb3J0LXZlcmRpY3Qge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01MDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy9pcyBGcmVuY2hcbiAgJi5pcy1mciB7XG4gICAgLnJlcG9ydC12ZXJkaWN0OjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uLy4uL2ltYWdlcy9yYXRpbmdzLXNwcml0ZS1mci04MHB4LnBuZycpO1xuICAgIH1cbiAgICAubW9zdGx5LWNvcnJlY3QgLnJlcG9ydC12ZXJkaWN0OjphZnRlcixcbiAgICAubW9zdGx5X2NvcnJlY3QgLnJlcG9ydC12ZXJkaWN0OjphZnRlciB7XG4gICAgICAgbGVmdDogMTJyZW07XG4gICAgfVxuICB9XG59XG4ubm9kZS0tdHlwZS1ydy1hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyAuYXJ0aWNsZS0tYXNpZGUge1xuICAvLyAgIGRpc3BsYXk6IG5vbmU7XG4gIC8vIH1cbiAgLndlYmZvcm0tc3VibWlzc2lvbi1zaWduLXVwLXBvcHVwLWFydGljbGUtZm9ybSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAuZm9ybS1pdGVtIHtcbiAgICAgICYuZm9ybS10eXBlLWVtYWlsIHtcbiAgICAgICAgLy8gZmxvYXQ6IGxlZnQ7XG4gICAgICAgIC8vIHdpZHRoOiBjYWxjKDEwMCUgLSAxMTJweCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICAgICYuZm9ybS10eXBlLXByb2Nlc3NlZC10ZXh0IHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ibG9jay1hcnRpY2xlLXRydW5jYXRlLWJsb2NrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweCAwIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xNDhweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHRyYW5zcGFyZW50IDAlLCByZ2JhKCR3aGl0ZSwgMSkgMTAwcHgsIHJnYmEoJHdoaXRlLCAxKSAxMDAlKTtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgfVxuICAgID4gLmJsb2NrIHtcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICAgICYuZm9ybS0tb3BlbiB7XG4gICAgICAud2ViZm9ybS1zdWJtaXNzaW9uLXNpZ24tdXAtcG9wdXAtYXJ0aWNsZS1mb3JtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5mYXIuZmEtdGltZXMtY2lyY2xlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAxNnZ3O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIHJpZ2h0OiAxNHZ3O1xuICAgICAgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyNTYwcHgpIHtcbiAgICAgICAgcmlnaHQ6IDJ2dztcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5rZWVwLXJlYWRpbmctLWNsb3NlLFxuICAgIC5mb3JtLWl0ZW0tbWFya3VwLFxuICAgIHAge1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgfVxuXG4gICAgLndlYmZvcm0tYWN0aW9ucyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuLmpzLWNvb2tpZS1zdWJzY3JpYmUtZG9uYXRlLTIge1xuICAubm9kZS0tdHlwZS1ydy1hcnRpY2xlIHtcbiAgICAuYmxvY2stYXJ0aWNsZS10cnVuY2F0ZS1ibG9jayB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuLmJsb2NrLWFmcmljYS1jaGVjay1hcnRpY2xlIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuLmZpZWxkLS1uYW1lLWZpZWxkLXJlcG9ydC1zdW1tYXJ5IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgdWwgbGkge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4uYWJvdXQtZmJjaGVja3MtYm94LFxuLmZpZWxkLS1uYW1lLWZpZWxkLXJlcG9ydC1zdW1tYXJ5ICB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuXG4gIH1cblxufVxuXG5cblxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuLy8gQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjREQ3QTI5LFxuICBzZWNvbmRhcnk6ICM3M0FBMTQsXG4gIHN1Y2Nlc3M6ICMyRjlCNkEsXG4gIHdhcm5pbmc6ICNFRDk2MjQsXG4gIGFsZXJ0OiAjRTYwMDE5LFxuKTtcbiRsaWdodC1ncmF5OiAjRUVFRUVFO1xuJG1lZGl1bS1ncmF5OiAjRDdEN0Q3O1xuJGRhcmstZ3JheTogIzYzNjM2MztcbiRibGFjazogIzMyMzIzMjtcbiR3aGl0ZTogI0ZGRkZGRjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDZweDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogdHJ1ZTtcblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzXG4pO1xuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSB4bGFyZ2UgeHhsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMTZweCxcbiAgbWVkaXVtOiAzMnB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAzMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNiksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksXG4gICksXG4pO1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbTtcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQic7XG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGw7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAyZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogMDtcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2U7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1zaXplczogKFxuICBzbWFsbDogMC41cmVtLFxuICBkZWZhdWx0OiAxcmVtLFxuICBsYXJnZTogM3JlbSxcbik7XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi16LWluZGV4OiAxMDtcbiRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemU6IG1lZGl1bTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGw7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogMDtcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuJGlucHV0LXNoYWRvdzogbm9uZTsgLy9pbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiBub25lOyAvLzAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogMDtcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIyLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjaztcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQic7XG4kcGFnaW5hdGlvbi1hcnJvdy1uZXh0OiAnXFwwMEJCJztcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsMCwwLC4xNiksXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8vIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKFxuICB3aWR0aCxcbiAgaGVpZ2h0XG4pO1xuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcbiAgb3ZlcmxpbmUsXG4gIHVuZGVybGluZSxcbiAgbGluZS10aHJvdWdoLFxuKTtcblxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246IChcbiAgbG93ZXJjYXNlLFxuICB1cHBlcmNhc2UsXG4gIGNhcGl0YWxpemVcbik7XG5cbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuLy8gNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4kc3dpdGNoLW9wYWNpdHktZGlzYWJsZWQ6IC41O1xuJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiBkYXJrZW4oJG1lZGl1bS1ncmF5LCAxMCUpO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJHdoaXRlO1xuJHRhYi1hY3RpdmUtY29sb3I6ICRkYXJrLWdyYXk7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAwO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAxNnB4LFxuICBtZWRpdW06IDMycHhcbik7XG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtICgxLyRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0X251bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dF9udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0X251bWJlcikge1xuICAgICAgJG5leHRfbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0X251bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIl19 */
