/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}main{display:block}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}input{overflow:visible}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;display:table;max-width:100%;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}template{display:none}[hidden]{display:none}:root{--header-height-sm:72px;--header-height-lg:116px;--body-padding-sm:24px;--body-padding-lg:40px}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:Raleway,sans-serif;padding-top:72px;position:relative}nav>ul{margin:0;padding:0;list-style:none}button.text-button{appearance:none;background-color:transparent;border:none;padding:0}figure{margin:0}.ign-container{padding-inline:24px;max-width:1320px;margin-inline:auto}@media screen and (min-width:992px){.ign-container{padding-inline:40px}}h1,h2,h3,h4,h5{font-family:Raleway,sans-serif;margin-block:0 2rem}h1{font-weight:700;font-size:6.5rem;line-height:1;letter-spacing:-.04em}@media screen and (min-width:992px){h1{font-size:12.4rem;line-height:1}}h2{font-weight:600;font-size:5.6rem;line-height:54px;letter-spacing:-4px}@media screen and (min-width:576px){h2{letter-spacing:-.04em}}@media screen and (min-width:992px){h2{font-size:12.4rem;line-height:114px}}.h3,h3{font-weight:600;font-size:4.2rem;line-height:40px;letter-spacing:-.04em}@media screen and (min-width:992px){.h3,h3{font-size:5.8rem;line-height:56px}}h4{font-weight:800;font-size:2.4rem;line-height:32px;letter-spacing:.04em}@media screen and (min-width:992px){h4{font-size:2.8rem;line-height:36px}}h5{font-weight:800;font-size:1.5rem;line-height:22px;letter-spacing:.04em}@media screen and (min-width:992px){h5{font-size:1.6rem;line-height:24px}}ol,p,ul{font-family:Raleway,sans-serif;font-weight:400;font-size:1.6rem;line-height:24px;margin-block:0 2rem}p{margin-bottom:12px}a{font:inherit;color:inherit;text-decoration:none;font-weight:600;transition:all .4s ease-in-out}a:hover{color:#c20f2f;transition:all .4s ease-in-out}.text-button{font-family:Raleway,sans-serif;font-size:1.5rem;line-height:20px;font-weight:700;text-transform:uppercase;cursor:pointer;display:inline-block;transition:all .4s ease-in-out;letter-spacing:.07em;color:#000}.text-button--small{font-size:1.2rem;line-height:16px;letter-spacing:.08em}.text-button--back-to-top{appearance:none;background-color:transparent;border:none}.text-button--red{color:#c20f2f}.text-button--red:hover{color:#000}.text-button--black{color:#0a0a0a}.text-button--white{color:#fff}.text-button--white:hover{color:#c20f2f}.text-button .icon-arrow{height:16px;width:16px}.text-link-large{font-weight:600;font-size:5.6rem;line-height:54px;letter-spacing:-4px;color:#000;white-space:nowrap}@media screen and (min-width:576px){.text-link-large{letter-spacing:-.04em}}@media screen and (min-width:992px){.text-link-large{font-size:12.4rem;line-height:114px}}@media screen and (min-width:992px){.text-link-large{color:#dedede}.text-link-large:hover{color:#000}}.transparent{color:#fff;opacity:.5}.transparent:hover{opacity:1}.text-link-large:hover .svg,button[type=submit]:hover .svg{transition:all .4s ease-in-out}.text-link-large:hover .svg.svg-upper,button[type=submit]:hover .svg.svg-upper{transform:translateY(-100%)}.text-link-large:hover .svg.svg-lower,button[type=submit]:hover .svg.svg-lower{transform:translateY(0)}.svg-container{position:relative;overflow:hidden;display:inline-block;aspect-ratio:1/1;width:4.6rem;margin-left:-10px}@media screen and (min-width:992px){.svg-container{margin-left:0;width:12.4rem}}.svg-container .svg{position:absolute;inset:0;height:100%;width:100%;transition:all .4s ease-in-out}.svg-container .svg.svg-lower{transform:translateY(100%)}.body-large{font-size:2rem;line-height:28px;letter-spacing:-.02em}@media screen and (min-width:992px){.body-large{font-size:2.4rem;line-height:32px;letter-spacing:-.02em}.body-large a{font-weight:500}}.body-large a{font-weight:500}.body-small{font-size:1.4rem;line-height:22px}.body-small a{font-weight:600}.caption{font-size:1.2rem;line-height:1.6rem}.caption a{font-weight:600}.eyebrow{font-family:Raleway,sans-serif;font-weight:700;font-size:1.3rem;line-height:15px;letter-spacing:.12em;text-transform:uppercase}@media screen and (min-width:992px){.eyebrow{font-size:1.4rem;line-height:16px}}.text-primary{color:#000}.text-secondary{color:#323232}.text-accent-1,.text-white{color:#fff}.text-accent-2{color:#dedede}.text-accent-3{color:#a8a8a8}.text-placeholder{color:#737373}.text-brand-primary{color:#c20f2f}.interactive-overlay-white-50{color:rgba(255,255,255,.5)}.ign-font-size-14{font-size:1.4rem}.text-semi-bold{font-weight:600}@keyframes fade-up{from{opacity:0;transform:translateY(50%)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}@keyframes fade-out{0%{opacity:1}100%{opacity:0}}:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.85714%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{user-select:all!important}.user-select-auto{user-select:auto!important}.user-select-none{user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;word-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.width{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.width{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.site-footer{padding-inline:24px}@media screen and (min-width:992px){.site-footer{padding-inline:40px}}.site-footer__upper .site-location{margin-block-end:40px;display:flex}@media screen and (min-width:992px){.site-footer__upper .site-location{margin-block-end:48px}}.site-footer__upper .site-location figure{margin:0 10px 0 0}.site-footer__upper .site-location figure .footer-logo{height:43px;width:43px}.site-footer__upper .site-location__text p{margin-bottom:2px}.site-footer__upper .office-locations{margin-block-end:52px}.site-footer__upper .office-locations h4{margin-bottom:2px}.site-footer__upper .office-locations .text-button--contact{display:block}@media screen and (min-width:992px){.site-footer__upper .office-locations{display:flex;margin-block-end:0}}.site-footer__upper .office-locations p{margin-bottom:0;line-height:28px}.site-footer__upper .office-locations a+a{margin-top:12px}.site-footer__upper .office-locations__la{margin-bottom:32px}@media screen and (min-width:992px){.site-footer__upper .office-locations__la{margin-bottom:0;margin-right:80px}}.site-footer__upper .back-to-top{display:flex;justify-content:flex-end;margin-bottom:32px}@media screen and (min-width:992px){.site-footer__upper .back-to-top{margin-top:-21px;margin-bottom:58px}}.site-footer__upper .back-to-top #back-to-top-button{display:flex;align-items:center}.site-footer__upper .back-to-top #back-to-top-button span{margin-right:12px}.site-footer__upper .back-to-top #back-to-top-button svg{transform:rotate(-45deg)}.site-footer__lower{padding-top:32px;padding-bottom:32px;border-top:1px solid #dedede;display:flex;flex-direction:column}@media screen and (min-width:992px){.site-footer__lower{display:flex;flex-direction:row;align-items:center}}.footer-nav ul,.footer-nav-social ul{margin:0;padding:0;list-style:none;display:flex;justify-content:center}@media screen and (min-width:992px){.footer-nav ul,.footer-nav-social ul{margin-bottom:0}}.footer-nav-social{margin-top:16px}@media screen and (min-width:992px){.footer-nav-social{margin-left:auto}}.footer-nav ul li{padding-inline:16px;border-inline:1px solid #dedede}.footer-nav ul li:first-of-type{padding-inline-start:0;border-inline:none}.footer-nav ul li:last-of-type{padding-inline-end:0;border-inline:none}.footer-nav ul li a{font-size:1.4rem}.footer-nav-social ul li{padding-inline:18px}.footer-nav-social ul li:first-of-type{padding-inline-start:0}.footer-nav-social ul li:last-of-type{padding-inline-end:0}.footer-nav-social ul li .menu-social a:before{padding-bottom:.25em;display:inline-block;vertical-align:middle}.footer-nav-social ul li.icon-insta a:before{content:url(../assets/img/instagram.svg)}.footer-nav-social ul li.icon-fb a:before{content:url(../assets/img/facebook.svg)}.footer-nav-social ul li.icon-twitter a:before{content:url(../assets/img/twitter.svg)}.footer-nav-social ul li.icon-linkedin a:before{content:url(../assets/img/linkedin.svg)}body.admin-bar .site-header{top:32px}body.sub-nav-is-visible{overflow-y:hidden}@media screen and (min-width:992px){body.sub-nav-is-visible{overflow-y:auto}body.sub-nav-is-visible .overlay{display:block}}body .overlay{display:none;position:absolute;inset:0;width:100%;height:100%;background-color:#000;opacity:.8;z-index:5}.site-header{position:fixed;top:0;right:0;left:0;z-index:1030}.site-header:not(.transparent-site-header) .main-nav{box-shadow:0 1px 8px rgba(0,0,0,.08)}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav{background:linear-gradient(180deg,rgba(0,0,0,.8) 0,rgba(0,0,0,0) 100%)}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-logo-img.main-nav-logo-img-black{display:none}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-logo-img.main-nav-logo-img-white{display:block}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-menu-london a,.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-menu-los-angeles a{color:#fff}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-menu-london a:hover,.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-menu-los-angeles a:hover{color:#c20f2f}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-office-selector-button{color:#fff}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-menu-london .text-button,.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-mobile-button .text-button{color:#fff}.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-container .main-nav-search .main-nav-search-button{color:#fff}@media screen and (min-width:992px){.site-header.transparent-site-header:not(.nav-is-visible) .main-nav .main-nav-container .main-nav-search .main-nav-search-button:hover{color:#c20f2f}}.site-header.nav-is-visible .main-nav-search.sub-nav-is-open{margin-left:auto}.site-header.nav-is-visible .main-nav-search.sub-nav-is-open+.main-nav-mobile-button{display:none}.site-header .main-nav{background-color:#fff;height:72px}@media screen and (min-width:992px){.site-header .main-nav{height:116px}}.site-header .main-nav-container{display:flex;align-items:center;padding-inline:24px;height:100%}@media screen and (min-width:992px){.site-header .main-nav-container{padding-inline:40px}}.site-header .main-nav-container .main-nav-logo{order:1}.site-header .main-nav-container .main-nav-logo .main-nav-logo-img-black{display:block}.site-header .main-nav-container .main-nav-logo .main-nav-logo-img-white{display:none}.site-header .main-nav-container .main-nav-logo-img{width:114px;height:auto}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-logo-img{width:169px}}.site-header .main-nav-container .main-nav-office-selection{order:2;margin-left:12px}.site-header .main-nav-container .main-nav-office-selection .text-button{font-size:.8rem}@media screen and (min-width:321px){.site-header .main-nav-container .main-nav-office-selection{margin-left:12px}.site-header .main-nav-container .main-nav-office-selection .text-button{font-size:.9rem}}@media screen and (min-width:768px){.site-header .main-nav-container .main-nav-office-selection .text-button{font-size:1.5rem}}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-office-selection{margin-left:40px}}.site-header .main-nav-container .main-nav-office-selection.sub-nav-is-open .main-nav-office-selector-button{color:#c20f2f}.site-header .main-nav-container .main-nav-office-selection.sub-nav-is-open .main-nav-office-selector-button svg{transition:all .4s ease-in-out;transform:rotate(-180deg)}.site-header .main-nav-container .main-nav-office-selection .main-nav-office-selector-button{color:#000}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-office-selection .main-nav-office-selector-button:hover{color:#c20f2f}}.site-header .main-nav-container .main-nav-office-selection .office-location-link{display:flex;align-items:center}.site-header .main-nav-container .main-nav-office-selection .office-location-link:not(.is-selected){display:none}.site-header .main-nav-container .main-nav-menu{order:3;display:none}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-menu{margin-left:auto;display:block}}.site-header .main-nav-container .main-nav-menu .main-nav-menu-london>ul,.site-header .main-nav-container .main-nav-menu .main-nav-menu-los-angeles>ul{display:flex;gap:64px;margin-bottom:0;margin-right:40px;align-items:center}.site-header .main-nav-container .main-nav-menu .main-nav-menu-london>ul .sub-menu,.site-header .main-nav-container .main-nav-menu .main-nav-menu-los-angeles>ul .sub-menu{display:none}.site-header .main-nav-container .main-nav-menu .main-nav-menu-london>ul li>a#secondaryNavButton>span,.site-header .main-nav-container .main-nav-menu .main-nav-menu-los-angeles>ul li>a#secondaryNavButton>span{margin-right:8px}.site-header .main-nav-container .main-nav-menu .icon-menu{display:block}.site-header .main-nav-container .main-nav-menu .icon-close{display:none}.site-header .main-nav-container .main-nav-menu.sub-nav-is-open #secondaryNavButton{color:#c20f2f}.site-header .main-nav-container .main-nav-menu.sub-nav-is-open #secondaryNavButton svg{transition:all .4s ease-in-out;transform:rotate(-180deg)}.site-header .main-nav-container .main-nav-menu.sub-nav-is-open .icon-menu{display:none}.site-header .main-nav-container .main-nav-menu.sub-nav-is-open .icon-close{display:block}.site-header .main-nav-container .main-nav-mobile-button{order:5;margin-left:24px}.site-header .main-nav-container .main-nav-mobile-button .icon-menu{display:block}.site-header .main-nav-container .main-nav-mobile-button .icon-close{display:none}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-mobile-button{display:none}}.site-header .main-nav-container .main-nav-mobile-button.sub-nav-is-open{margin-left:auto}.site-header .main-nav-container .main-nav-mobile-button.sub-nav-is-open .icon-menu{display:none}.site-header .main-nav-container .main-nav-mobile-button.sub-nav-is-open .icon-close{display:block}.site-header .main-nav-container .main-nav-search{margin-left:auto;order:4}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-search{margin-left:0}}.site-header .main-nav-container .main-nav-search .main-nav-search-button{appearance:none;border:none;background-color:transparent;padding:0;cursor:pointer;font-size:1.6rem;color:#000;transition:all .4s ease-in-out}@media screen and (min-width:992px){.site-header .main-nav-container .main-nav-search .main-nav-search-button:hover{transition:all .4s ease-in-out;color:#c20f2f}}.site-header .main-nav-container .main-nav-search .main-nav-search-button .icon-search{display:block}.site-header .main-nav-container .main-nav-search .main-nav-search-button .icon-close{display:none}.site-header .main-nav-container .main-nav-search.sub-nav-is-open .icon-search{display:none}.site-header .main-nav-container .main-nav-search.sub-nav-is-open .icon-close{display:block}.site-header .main-nav-container>.sub-nav-is-open>.sub-nav{display:block;animation:fade-in .5s forwards}.site-header .main-nav-container>*>.sub-nav{display:none;position:fixed;top:72px;left:0;right:0;bottom:0;width:100%;background-color:#fff;z-index:-1}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav{height:474px;top:116px}}.site-header .main-nav-container>*>.sub-nav .sub-nav-container{padding-inline:24px;height:100%}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav .sub-nav-container{padding-inline:40px}}.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer{position:absolute;left:0;right:0;bottom:0;margin-inline:auto;background-color:#fff;border-top:1px solid #dedede;padding-block:32px;width:100vw}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer{display:none}}.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer .sub-nav-footer-container{padding-inline:24px}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer .sub-nav-footer-container{padding-inline:40px}}.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer.london-sub-nav-footer{border-top:none;padding-block:16px;background-color:transparent}.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer.london-sub-nav-footer .sub-nav-footer-container .office-locations{display:flex;gap:80px;padding-bottom:32px}.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer.london-sub-nav-footer .social{border-top:1px solid #dedede;display:flex;padding-top:10px;margin-top:10px}.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer.london-sub-nav-footer .social .footer-nav ul,.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer.london-sub-nav-footer .social .menu-items{padding-block:5px}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav .sub-nav-container .sub-nav-footer.london-sub-nav-footer{display:block}}.site-header .main-nav-container>*>.sub-nav.office-selection-sub-nav .sub-nav-container{display:grid;align-items:center}.site-header .main-nav-container>*>.sub-nav.office-selection-sub-nav .sub-nav-container .office-select-menu li+li{margin-top:23px}.site-header .main-nav-container>*>.sub-nav.office-selection-sub-nav .sub-nav-container .office-select-menu a .short{display:inline-block}.site-header .main-nav-container>*>.sub-nav.office-selection-sub-nav .sub-nav-container .office-select-menu a .long{display:none}@media screen and (min-width:321px){.site-header .main-nav-container>*>.sub-nav.office-selection-sub-nav .sub-nav-container .office-select-menu a .short{display:none}.site-header .main-nav-container>*>.sub-nav.office-selection-sub-nav .sub-nav-container .office-select-menu a .long{display:inline-block}}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container{height:calc(100dvh - (var(--header-height-sm) + 130px));display:flex;align-items:center}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container{height:100%}}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container{display:grid;grid-template-columns:1fr 1fr;width:100%}}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .all-work-link{display:grid;align-items:end}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .all-work-link a{font-weight:600;font-size:5.6rem;line-height:54px;letter-spacing:-4px;color:#dedede;transition:all .4s ease-in-out}@media screen and (min-width:576px){.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .all-work-link a{letter-spacing:-.04em}}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .all-work-link a{font-size:12.4rem;line-height:114px}}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .all-work-link a:hover{color:#000;transition:all .4s ease-in-out}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .main-menu-sub-nav-menu{margin-left:auto}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .main-menu-sub-nav-menu li{margin-bottom:16px}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .main-menu-sub-nav-menu li>a{font-size:5.8rem;line-height:56px;text-align:right;display:block}.site-header .main-nav-container>*>.sub-nav.main-menu-sub-nav .sub-nav-container .sub-nav-grid-container .main-menu-sub-nav-menu li:last-of-type{margin-bottom:0}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.search-sub-nav{height:392px}}.site-header .main-nav-container>*>.sub-nav.search-sub-nav .sub-nav-container{display:grid;align-items:flex-start;padding-top:64px}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.search-sub-nav .sub-nav-container{padding-top:0;align-items:center}}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container{padding-top:52px}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li>a{font-weight:600;font-size:5.6rem;line-height:54px;letter-spacing:-4px}@media screen and (min-width:576px){.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li>a{letter-spacing:-.04em}}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li>a{font-size:12.4rem;line-height:114px}}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li+li{margin-top:32px}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children>a{display:flex;align-items:center}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children>a svg{margin-left:auto;width:32px;aspect-ratio:1/1}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav{margin:0;padding:0;list-style:none;background-color:#f5f5f5;position:absolute;inset:0;transform:translateX(0);transition:all .4s ease-in-out;height:100%}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav.is-hidden{transition:all .4s ease-in-out;transform:translateX(100%)}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav li{padding-inline:24px}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav li.go-back{background-color:#fff;padding-block:24px}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav li.go-back .icon-chevron-right{transform:rotate(180deg);width:1.5rem;aspect-ratio:1/1}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav li.go-back span{margin-left:8px}.site-header .main-nav-container>*>.sub-nav.mobile-nav-sub-nav .sub-nav-container nav.mobile-nav>ul>li.has-children ul.secondary-nav li+li{margin-top:24px}.site-header .main-nav-container>*>.sub-nav.london-secondary-nav{height:calc(100vh - 72px)}@media screen and (min-width:992px){.site-header .main-nav-container>*>.sub-nav.london-secondary-nav{height:calc(100vh - 116px)}}.site-header .main-nav-container>*>.sub-nav.london-secondary-nav .sub-nav-container{position:relative}.site-header .main-nav-container>*>.sub-nav.london-secondary-nav .sub-nav-container ul{margin:0;padding:0;list-style:none;padding-block:50px;text-align:right}.cta{padding-block:80px;padding-inline:24px}@media screen and (min-width:992px){.cta{padding-inline:40px}}.cta a{font-family:Raleway,sans-serif;font-weight:600;font-size:5.6rem;line-height:54px;letter-spacing:-4px;color:#dedede}@media screen and (min-width:576px){.cta a{letter-spacing:-.04em}}@media screen and (min-width:992px){.cta a{font-size:12.4rem;line-height:114px}}.cta a span{transition:all .4s ease-in-out}.cta a:hover{color:#dedede}.cta a:hover span:not(.transparent){color:#000;transition:all .4s ease-in-out}.hero{position:relative}.hero.london .hero-video-container video{object-position:top center}.hero-video-container{background-color:#000;height:85dvh;width:100%}@media screen and (min-width:768px){.hero-video-container{height:65vw}}@media screen and (min-width:992px){.hero-video-container{height:85vh}}.hero-video-container video{height:100%;object-fit:cover;width:100%}.hero-overlay{position:absolute;inset:0;height:100%;width:100%;background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.7) 100%)}.hero-overlay .hero-overlay-container{height:100%;display:grid;align-items:flex-end;padding-inline:24px}@media screen and (min-width:992px){.hero-overlay .hero-overlay-container{padding-inline:40px;padding-top:48px;padding-bottom:48px}}.hero-overlay .hero-overlay-container .hero-overlay-grid-container{display:flex;flex-direction:column;overflow:hidden}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .campaign-info{display:grid;align-items:end;min-height:400px}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .campaign-info .client-logo{margin-left:8px;margin-bottom:16px;width:72px;height:auto}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .campaign-info .campaign-logo{width:100%;height:auto}@media screen and (min-width:512px){.hero-overlay .hero-overlay-container .hero-overlay-grid-container .campaign-info .campaign-logo{width:225px}}@media screen and (min-width:992px){.hero-overlay .hero-overlay-container .hero-overlay-grid-container .campaign-info .campaign-logo{width:385px}}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls{display:grid;justify-content:center;padding-top:56px;padding-bottom:24px}@media screen and (min-width:992px){.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls{padding-top:8%;padding-bottom:0}}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul{margin:0;padding:0;list-style:none;display:flex;gap:16px;height:20px;justify-content:center;align-items:center;margin-top:24px;padding-inline:5px}@media screen and (min-width:992px){.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul{padding-inline:20px}}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul li{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);box-shadow:0 4px 4px rgba(0,0,0,.25)}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul li:last-of-type{margin-right:0;margin-bottom:0}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul li.selected{background:#c20f2f content-box;outline:1px solid #c20f2f;height:16px;width:16px;padding:3px}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul li:hover{border-color:#c20f2f;cursor:pointer;background-image:var(--background);transition:all .4s ease-in-out}.hero-overlay .hero-overlay-container .hero-overlay-grid-container .player-controls ul li img{width:100%;height:100%;object-fit:cover}.work-grid{width:100%}.work-grid.london .work-grid-container{background-position:top center}.work-grid.london .work-grid-container .campaign-card .campaign-card-container .campaign-logo{max-width:100%}.work-grid.london .work-grid-container .category-tags li[data-category=av]{order:1}.work-grid.london .work-grid-container .category-tags li[data-category=social]{order:2}.work-grid.london .work-grid-container .category-tags li[data-category=print]{order:3}.work-grid.london .work-grid-container .category-tags li[data-category=dooh]{order:4}.work-grid .work-grid-container{display:grid;grid-auto-flow:dense;grid-template-columns:1fr 1fr}@media screen and (min-width:768px){.work-grid .work-grid-container{grid-template-columns:repeat(3,1fr)}}.work-grid .work-grid-container .campaign-card{background-position:center;background-size:cover;background-repeat:no-repeat;background-image:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.7) 100%),var(--background);padding:24px;position:relative;height:50vw}@media screen and (min-width:768px){.work-grid .work-grid-container .campaign-card{height:auto;aspect-ratio:16/9}}@media screen and (min-width:1280px){.work-grid .work-grid-container .campaign-card{padding:32px 40px 40px 40px}}.work-grid .work-grid-container .campaign-card .campaign-card-overlay{position:absolute;height:100%;width:100%;background-color:#000;opacity:0;inset:0;transition:opacity .3s ease-out;z-index:1}.work-grid .work-grid-container .campaign-card .campaign-card-container{display:flex;flex-direction:column;height:100%;position:relative;z-index:3}.work-grid .work-grid-container .campaign-card .campaign-card-container .client-logo{opacity:0;align-self:flex-end;transition:opacity .3s ease-out}.work-grid .work-grid-container .campaign-card .campaign-card-container .client-logo img{height:auto;width:auto;max-width:56px;max-height:32px}.work-grid .work-grid-container .campaign-card .campaign-card-container .campaign-logo{margin-top:auto;transform:translateY(24px);transition:all .3s ease-out;pointer-events:none;max-width:112px}@media screen and (min-width:1280px){.work-grid .work-grid-container .campaign-card .campaign-card-container .campaign-logo{max-width:224px}}.work-grid .work-grid-container .campaign-card .campaign-card-container .campaign-logo img{max-width:100%;height:auto;object-fit:contain;max-height:124px}.work-grid .work-grid-container .campaign-card .campaign-card-container .campaign-logo.london{max-width:100%}.work-grid .work-grid-container .campaign-card .campaign-card-container .category-tags{opacity:0;transform:translateY(-100%);transition:all .3s ease-out}.work-grid .work-grid-container .campaign-card .campaign-card-container .category-tags p{font-weight:600}@media (hover:hover){.work-grid .work-grid-container .campaign-card:hover{border:1px solid #c20f2f}.work-grid .work-grid-container .campaign-card:hover .campaign-card-overlay{opacity:.5;transition:opacity .3s ease-out}.work-grid .work-grid-container .campaign-card:hover .campaign-card-container .client-logo{opacity:1;transition:opacity .3s ease-out}.work-grid .work-grid-container .campaign-card:hover .campaign-logo{transform:translateY(0);transition:all .3s ease-out}.work-grid .work-grid-container .campaign-card:hover .category-tags{opacity:1;transform:translateY(0);transition:all .3s ease-out}}.work-grid .work-grid-container .campaign-card.quickview-open{border:4px solid #fff}.work-grid .work-grid-container .campaign-card.quickview-open .campaign-card-overlay{opacity:.5;transition:opacity .3s ease-out}.work-grid .work-grid-container .campaign-card.quickview-open .campaign-card-container .client-logo{opacity:1;transition:opacity .3s ease-out}.work-grid .work-grid-container .campaign-card.quickview-open .campaign-logo{transform:translateY(0);transition:all .3s ease-out}.work-grid .work-grid-container .campaign-card.quickview-open .category-tags{opacity:1;transform:translateY(0);transition:all .3s ease-out}.work-grid .work-grid-container .campaign-card.quickview-open:before{content:'';position:absolute;border-left:13px solid transparent;border-right:13px solid transparent;margin:0 auto;right:50%;bottom:-11px;border-top:11px solid #fff;z-index:1}.work-grid .work-grid-container .quickview{scroll-margin-top:72px;background-position:center;background-size:cover;background-repeat:no-repeat;background-image:linear-gradient(90deg,rgba(0,0,0,.75) 0,rgba(0,0,0,.5) 100%),var(--background)}@media screen and (min-width:992px){.work-grid .work-grid-container .quickview{scroll-margin-top:116px}}.work-grid .work-grid-container .quickview.is-hidden{display:none}.work-grid .work-grid-container .quickview.fullwidth{grid-column:1/-1}.work-grid .work-grid-container .quickview .quickview-container{backdrop-filter:blur(8px);padding-inline:24px;padding-top:24px;padding-bottom:36px}@media screen and (min-width:992px){.work-grid .work-grid-container .quickview .quickview-container{padding-inline:40px;padding-top:40px;padding-bottom:96px}}.work-grid .work-grid-container .quickview .quickview-container .button{display:flex;justify-content:flex-end}.work-grid .work-grid-container .quickview .quickview-container .button svg{pointer-events:none}.work-grid .work-grid-container .quickview .quickview-container .campaign-categories{display:grid;grid-template-columns:1fr;gap:16px}@media screen and (min-width:992px){.work-grid .work-grid-container .quickview .quickview-container .campaign-categories{grid-template-columns:repeat(3,1fr);gap:16px 48px;padding-inline:60px}}@media screen and (min-width:1700px){.work-grid .work-grid-container .quickview .quickview-container .campaign-categories{grid-template-columns:repeat(4,1fr)}}.work-grid .work-grid-container .quickview .quickview-container .campaign-categories .campaign-category .category-artifacts{padding-top:8px;display:flex;flex-wrap:wrap;gap:12px}.work-grid .work-grid-container .quickview .quickview-container .quickview-footer{padding-top:24px;display:flex;flex-direction:column}@media screen and (min-width:992px){.work-grid .work-grid-container .quickview .quickview-container .quickview-footer{padding-left:60px}}@media screen and (min-width:1280px){.work-grid .work-grid-container .quickview .quickview-container .quickview-footer{flex-direction:row;justify-content:space-between;align-items:center}}.work-grid .work-grid-container .quickview .quickview-container .quickview-footer .cta{text-align:right;padding-inline:0;padding-block:24px}@media screen and (min-width:1280px){.work-grid .work-grid-container .quickview .quickview-container .quickview-footer .cta{margin-left:auto}}.work-grid .work-grid-container .quickview .quickview-container .quickview-footer .cta .svg-container{margin-right:-10px}.work-grid .work-grid-container .quickview .quickview-container .quickview-footer .awards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min-content,0));gap:48px;align-items:flex-end}.work-grid .work-grid-container .quickview .quickview-container .quickview-footer .awards img{height:56px;width:auto}@media screen and (min-width:992px){.work-grid .work-grid-container .quickview .quickview-container .quickview-footer .awards img{height:87px}}.image-wrapper{position:relative;border:1px solid transparent}@media (hover:hover){.image-wrapper:hover{border:1px solid #c20f2f}.image-wrapper:hover .image-overlay{opacity:.5;transition:all .4s ease-in-out}.image-wrapper:hover .icon-overlay{opacity:1;transition:all .4s ease-in-out}}.image-wrapper img{cursor:pointer;width:100%;object-fit:contain;vertical-align:text-bottom}.image-wrapper .image-overlay{position:absolute;inset:0;width:100%;height:100%;background-color:#000;opacity:0;pointer-events:none;transition:all .4s ease-in-out}.image-wrapper .icon-overlay{position:absolute;inset:0;width:100%;height:100%;display:grid;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:all .4s ease-in-out}.image-wrapper .icon-overlay svg{width:15px;height:auto}.image-wrapper.video-wrapper{flex:1;background-color:#000}.image-wrapper.video-wrapper img{aspect-ratio:16/9}.image-wrapper.video-wrapper+.video-wrapper{display:none}.image-wrapper.horizontal-wrapper{flex:.5}.image-wrapper.horizontal-wrapper+.landscape-wrapper{display:none}.image-wrapper.landscape-wrapper+.landscape-wrapper{display:none}.artifact-button,.image-artifact-button,.video-artifact-button{border:0;padding:0;background-color:transparent;cursor:pointer;width:100%}.artifact-image,.video-thumb{cursor:pointer;width:100%;height:100%}.artifact-thumbs .artifact-image,.artifact-thumbs .video-thumb{cursor:pointer;height:auto;width:auto;vertical-align:bottom;min-height:initial}.category-header,.category-tags{padding-top:8px}.category-header ul,.category-tags ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:0 16px}.category-header ul li,.category-tags ul li{line-height:17px}.category-header ul li.category-name[data-category=av],.category-tags ul li.category-name[data-category=av]{order:1}.category-header ul li.category-name[data-category=print],.category-tags ul li.category-name[data-category=print]{order:2}.category-header ul li.category-name[data-category=motion],.category-tags ul li.category-name[data-category=motion]{order:3}.category-header ul li.category-name[data-category=social],.category-tags ul li.category-name[data-category=social]{order:4}.category-header ul li.category-name[data-category=production],.category-tags ul li.category-name[data-category=production]{order:5}.category-header ul li.category-name p span,.category-tags ul li.category-name p span{margin-left:4px}.category-header li{border-bottom-width:1px;border-bottom-style:solid;border-image:linear-gradient(90deg,rgba(255,255,255,.5) 0,rgba(255,255,255,.1) 100%) 1;width:100%;padding-bottom:8px}.category-tags ul{gap:4px 12px}.category-tags ul .body-small{font-size:1.2rem;line-height:1}.category-tags ul .body-small svg{height:13px}@media screen and (min-width:992px){.category-tags ul .body-small{font-size:1.4rem}.category-tags ul .body-small svg{height:15px}}@media screen and (min-width:768px){body.single-ignition_campaigns .work-grid .work-grid-container a:last-of-type{display:none}}.breadcrumb-block .breadcrumb{margin:0;padding:0;list-style:none;display:flex;gap:6px;align-items:center;max-height:16px}.breadcrumb-block .breadcrumb li{line-height:15px}.breadcrumb-block .breadcrumb li.seperator>img{height:16px;width:auto}body.single-ignition_campaigns .breadcrumb-block .item-home a{color:rgba(255,255,255,.7)}.image-modal .modal-content,.slider-modal .modal-content,.video-modal .modal-content{border:0;background-color:transparent}.image-modal .modal-content button:not(.slick-arrow),.slider-modal .modal-content button:not(.slick-arrow),.video-modal .modal-content button:not(.slick-arrow){background-color:transparent;outline:transparent;border:transparent;color:#fff;font-size:2rem;text-align:right;cursor:pointer}@media screen and (min-width:576px){.image-modal .modal-dialog,.slider-modal .modal-dialog,.video-modal .modal-dialog{max-width:60vw}}.image-modal .modal-dialog img,.slider-modal .modal-dialog img,.video-modal .modal-dialog img{max-height:75vh;width:100%;height:100%;object-fit:contain;background-color:#000}@media screen and (min-width:992px){.image-modal .modal-dialog img,.slider-modal .modal-dialog img,.video-modal .modal-dialog img{max-height:80vh}}.modal-backdrop{opacity:.9!important}.campaign-filters{margin-bottom:24px}.campaign-filters .filter-navigation{display:flex;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #dedede}.campaign-filters .filter-navigation .mobile-location-indicator{display:block}@media screen and (min-width:992px){.campaign-filters .filter-navigation .mobile-location-indicator{display:none}}.campaign-filters .filter-navigation .campaign-filters-nav{display:none}@media screen and (min-width:992px){.campaign-filters .filter-navigation .campaign-filters-nav{display:block}}.campaign-filters .filter-navigation .campaign-filters-nav ul{display:flex;gap:16px}.campaign-filters .filter-navigation .campaign-filters-nav ul li a.active{color:#c20f2f}.campaign-filters .filter-navigation .campaign-filters-nav ul .category-list-item{padding:0 1rem}.campaign-filters .filter-navigation .campaign-filters-nav ul.london .dooh-london{order:4}.campaign-filters .filter-navigation .campaign-filters-nav ul.london .key-art-london{order:3}.campaign-filters .filter-navigation .campaign-filters-nav ul.london .social-tv,.campaign-filters .filter-navigation .campaign-filters-nav ul.london .social-tv-london{order:2}.campaign-filters .filter-navigation .campaign-filters-nav ul.london .trailer-london{order:1}.campaign-filters .filter-navigation .more-filters{font-weight:500}@media screen and (min-width:992px){.campaign-filters .filter-navigation .more-filters{padding:0 1rem}}.campaign-filters .filter-navigation button[aria-expanded=true]{color:#c20f2f}.campaign-filters .filter-navigation button[aria-expanded=true] svg{transform:rotate(180deg)}.campaign-filters .filters{padding-top:16px}.campaign-filters .filters .mobile-nav-container{padding-bottom:16px}@media screen and (min-width:992px){.campaign-filters .filters .mobile-nav-container{display:none}}.campaign-filters .filters .select-filters-container{display:flex;flex-direction:column}@media screen and (min-width:992px){.campaign-filters .filters .select-filters-container{flex-direction:row;gap:8px}}.campaign-filters .additional-filters{padding-top:25px;display:flex;justify-content:space-between}@media screen and (min-width:992px){.campaign-filters .additional-filters .results{padding:0 1rem}}.campaign-filters .additional-filters .sort-by-options{position:relative}@media screen and (min-width:992px){.campaign-filters .additional-filters .sort-by-options{padding:0 1rem}}.campaign-filters .additional-filters .sort-by-options #postsSortDropdown{margin-left:-10px!important}.campaign-filters .additional-filters .sort-by-options .dropdown-item{padding:1.6rem;letter-spacing:.02em}.campaign-filters .additional-filters .sort-by-options .dropdown-item:hover{background-color:#f5f5f5}.ign-dropdown.ign-select{flex:1 0 100%;position:relative;margin-bottom:12px}@media screen and (min-width:992px){.ign-dropdown.ign-select{flex:0 0 248px;margin-bottom:0}}.ign-dropdown.ign-select label{font-size:1.6rem;line-height:24px}.ign-dropdown.ign-select .ign-dropdown-container{border-radius:2px;background-color:#f5f5f5;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;width:100%;border-left:1px solid transparent;border-right:1px solid transparent;border-top:1px solid transparent;border-bottom:1px solid transparent;margin-top:8px;transition:all .1s ease-in-out;position:relative}.ign-dropdown.ign-select .ign-dropdown-container[aria-expanded=true]{background-color:#fff;border-left-color:#c20f2f;border-right-color:#c20f2f;border-top-color:#c20f2f;border-bottom-color:#dedede;transition:all .1s ease-in-out;border-bottom-left-radius:0;border-bottom-right-radius:0}.ign-dropdown.ign-select .ign-dropdown-container[aria-expanded=true] .indicator{transform:rotate(180deg)}.ign-dropdown.ign-select .ign-dropdown-container[aria-expanded=true]+.ign-dropdown-menu{display:block;padding:0;border:none;transform:translate(0,85px)!important;width:100%;top:-6px!important}.ign-dropdown.ign-select .ign-dropdown-container[aria-expanded=true]+.ign-dropdown-menu ul{border:1px solid #c20f2f;border-top:none;max-height:300px;overflow-y:auto}.ign-dropdown.ign-select .ign-dropdown-container .selections{margin:0;padding:0;list-style:none;width:100%;display:flex;flex-wrap:wrap;gap:4px}.ign-dropdown.ign-select .ign-dropdown-container .selections .search input{background-color:transparent;border:none;outline:0;box-shadow:none;font-size:1.6rem;width:100%;height:100%;font-family:Raleway,sans-serif}.ign-dropdown.ign-select .ign-dropdown-container .selections li+li.search{width:5px}.ign-dropdown.ign-select .ign-dropdown-container .selections .tag{height:24px;border-radius:2px;border:1px solid #dedede;padding:3px 8px;display:flex;align-items:center;background-color:#fff;gap:8px}.ign-dropdown.ign-select .ign-dropdown-container .selections .tag span{font-weight:600}.ign-dropdown.ign-select .ign-dropdown-container .selections .tag button{background:0 0;outline:transparent;border:none;cursor:pointer;font-family:Raleway,sans-serif;font-size:2rem;padding:0;color:#c20f2f;position:relative;bottom:1px}.ign-dropdown.ign-select .ign-dropdown-container .selections .tag button:hover{color:#c20f2f}.ign-dropdown.ign-select .ign-dropdown-container .selections .tag:hover{border-color:#c20f2f}.ign-dropdown.ign-select .dropdown-menu{position:absolute;background-color:#fff;z-index:1000}@media screen and (min-width:992px){.ign-dropdown.ign-select .dropdown-menu{width:248px}}.ign-dropdown.ign-select .dropdown-menu ul{margin:0;padding:0;list-style:none}.ign-dropdown.ign-select .dropdown-menu ul li{padding:1.6rem}.ign-dropdown.ign-select .dropdown-menu ul li:hover{cursor:pointer;background-color:#f5f5f5}button.dropdown-toggle.no-caret:after{content:'';display:none}fieldset{padding:0;border:none}.ign-radio{margin-bottom:16px}.ign-radio input[type=radio]{display:none}.ign-radio input[type=radio]:checked+label:before{background-color:#c20f2f}.ign-radio label{display:flex;align-items:center;margin-bottom:5px}.ign-radio label:before{content:'';height:16px;width:16px;border:6px solid #f5f5f5;background-color:#f5f5f5;border-radius:50%;display:inline-block;margin-right:10px;display:flex;justify-content:center;align-items:center}form#mainSearchForm label,form#searchForm label{margin-bottom:16px;display:block}form#mainSearchForm .form-group,form#searchForm .form-group{display:flex;border-bottom:1px solid #dedede}form#mainSearchForm .form-group input[type=text],form#searchForm .form-group input[type=text]{width:100%;appearance:none;border:transparent;font-family:Raleway,sans-serif;font-weight:600;font-size:5.6rem;line-height:54px;letter-spacing:-4px;outline:transparent;padding:0;text-indent:0}@media screen and (min-width:576px){form#mainSearchForm .form-group input[type=text],form#searchForm .form-group input[type=text]{letter-spacing:-.04em}}@media screen and (min-width:992px){form#mainSearchForm .form-group input[type=text],form#searchForm .form-group input[type=text]{font-size:12.4rem;line-height:114px}}form#mainSearchForm .form-group input[type=text]::placeholder,form#searchForm .form-group input[type=text]::placeholder{font-family:Raleway,sans-serif;color:#dedede;font-weight:600}form#mainSearchForm .form-group button[type=submit],form#searchForm .form-group button[type=submit]{width:10%;font-size:5.6rem;appearance:none;border:none;background-color:transparent}@media screen and (min-width:992px){form#mainSearchForm .form-group button[type=submit],form#searchForm .form-group button[type=submit]{font-size:12.4rem;height:144px;position:relative;top:16px}}form#mainSearchForm .main-search-suggestions,form#mainSearchForm .search-suggestions,form#searchForm .main-search-suggestions,form#searchForm .search-suggestions{margin:0;padding:0;list-style:none;width:100%;background-color:#fff;border-radius:2px;border:1px solid #c20f2f;box-shadow:0 1px 8px 0 rgba(0,0,0,.08);padding-block:12px;max-height:250px;overflow-y:scroll;z-index:10}form#mainSearchForm .main-search-suggestions:empty,form#mainSearchForm .search-suggestions:empty,form#searchForm .main-search-suggestions:empty,form#searchForm .search-suggestions:empty{display:none}form#mainSearchForm .main-search-suggestions li,form#mainSearchForm .search-suggestions li,form#searchForm .main-search-suggestions li,form#searchForm .search-suggestions li{padding-inline:16px}form#mainSearchForm .main-search-suggestions li a,form#mainSearchForm .search-suggestions li a,form#searchForm .main-search-suggestions li a,form#searchForm .search-suggestions li a{display:inline-block;padding-block:16px;font-weight:400}form#mainSearchForm .main-search-suggestions li a:hover,form#mainSearchForm .search-suggestions li a:hover,form#searchForm .main-search-suggestions li a:hover,form#searchForm .search-suggestions li a:hover{cursor:pointer}.ign-carousel-next-arrow,.ign-carousel-prev-arrow{outline:0;border:none;background-color:transparent;position:absolute;top:50%;z-index:999;cursor:pointer;padding:0;transform:translateY(-50%)}.ign-carousel-prev-arrow{left:-24px;transform:translateY(-50%) rotate(180deg)}@media screen and (min-width:992px){.ign-carousel-prev-arrow{left:0}}.ign-carousel-next-arrow{right:-24px}@media screen and (min-width:992px){.ign-carousel-next-arrow{right:0}}.ign-carousel-arrow:before{content:url(../assets/img/icon-chevron-right.svg);display:inline-block;width:24px}@media screen and (min-width:992px){.ign-carousel-arrow:before{width:70px}}.ign-carousel-arrow.white-arrow:before{content:url(../assets/img/icon-chevron-right-white.svg);display:inline-block;width:36px}@media screen and (min-width:992px){.ign-carousel-arrow.white-arrow:before{width:70px}}.slider-modal .ign-carousel-next-arrow{bottom:calc(-52.5px - 25px);right:32%;top:unset;background-color:rgba(0,0,0,.8);border-radius:50%;padding:3px 3px 1px 5px}@media screen and (min-width:992px){.slider-modal .ign-carousel-next-arrow{top:50%;right:-75px;transform:translateY(-50%);background-color:transparent;padding:0}}.slider-modal .ign-carousel-prev-arrow{bottom:calc(-52.5px - 25px);left:32%;top:unset;background-color:rgba(0,0,0,.8);border-radius:50%;padding:3px 3px 1px 5px}@media screen and (min-width:992px){.slider-modal .ign-carousel-prev-arrow{background-color:transparent;left:-75px;top:50%;transform:translateY(-50%) rotate(180deg);padding:0}}.loader{animation:spin 4s infinite linear}body.page-template-home{height:100dvh;padding-top:0}.home-page{height:100vh;padding-inline:24px}@media screen and (min-width:992px){.home-page{padding-inline:40px}}.home-page ul{width:100%;margin:0;padding:0;list-style:none}.home-page ul li+li{margin-top:23px}@media screen and (min-width:992px){.home-page ul li+li{margin-top:35px}}.home-page ul li a>.long{display:none}@media screen and (min-width:321px){.home-page ul li a>.long{display:inline}}.home-page ul li a>.short{display:inline}@media screen and (min-width:321px){.home-page ul li a>.short{display:none}}body.page-template-home .site-footer{position:absolute;bottom:0;left:0;right:0;width:calc(100vw - var(--body-padding-sm));margin-inline:auto}@media screen and (min-width:992px){body.page-template-home .site-footer{width:calc(100vw - var(--body-padding-lg))}}body.page-template-home .site-footer__upper{display:none}body.page-template-los_angeles{padding-top:0}body.page-template-london{padding-top:0}.contact-page{padding-block:64px}@media screen and (min-width:992px){.contact-page{padding-block:96px}}.contact-page .contact-header .contact-header-container{display:flex;flex-direction:column}.contact-page .contact-header .contact-header-container h1{margin-top:24px;margin-bottom:0}.contact-page .contact-header .contact-header-container .contact-info{display:flex;flex-direction:column;justify-content:flex-start;margin-top:64px;margin-bottom:96px}@media screen and (min-width:992px){.contact-page .contact-header .contact-header-container .contact-info{flex-direction:row;gap:56px;margin-top:80px;margin-bottom:144px}}.contact-page .contact-header .contact-header-container .contact-info .featured-image img{width:100%;height:auto}@media screen and (min-width:992px){.contact-page .contact-header .contact-header-container .contact-info .featured-image img{object-fit:cover}}@media screen and (min-width:992px){.contact-page .contact-header .contact-header-container .contact-info .featured-image{width:55%;max-height:560px;overflow:hidden;display:flex;align-items:center;align-self:flex-end;object-fit:cover;gap:56px}}.contact-page .contact-header .contact-header-container .contact-info .contact-info-wrapper{display:flex;flex-direction:column;gap:32px;margin-top:56px}@media screen and (min-width:992px){.contact-page .contact-header .contact-header-container .contact-info .contact-info-wrapper{padding-inline:0;width:45%;margin-top:0;display:flex;flex-direction:row;gap:60px;align-self:flex-end;margin-bottom:56px;margin-top:0}}.contact-page .contact-header .contact-header-container .contact-info .contact-info-wrapper .london-contact-info h4,.contact-page .contact-header .contact-header-container .contact-info .contact-info-wrapper .los-angeles-contact-info h4{margin-bottom:2px}.contact-page .contact-header .contact-header-container .contact-info .contact-info-wrapper .london-contact-info p,.contact-page .contact-header .contact-header-container .contact-info .contact-info-wrapper .los-angeles-contact-info p{line-height:28px;margin-bottom:0}.contact-page .contact-careers{background-color:#000}.contact-page .contact-careers .contact-careers-container{display:flex;flex-direction:column;padding-top:64px;padding-bottom:96px}@media screen and (min-width:992px){.contact-page .contact-careers .contact-careers-container{padding-top:96px;padding-bottom:144px;flex-direction:row;justify-content:space-between}}.contact-page .contact-careers .contact-careers-container .contact-careers-content{margin-bottom:56px}@media screen and (min-width:992px){.contact-page .contact-careers .contact-careers-container .contact-careers-content{max-width:610px;margin-bottom:0}}.contact-page .contact-careers .contact-careers-container .contact-careers-content header p span{margin-left:6px}.contact-page .contact-careers .contact-careers-container .contact-careers-content h3{color:#dedede}.contact-page .contact-careers .contact-careers-container .contact-careers-content .external-links{padding-top:12px}.contact-page .contact-careers .contact-careers-container .contact-careers-content .external-links a+a{margin-top:24px}@media screen and (min-width:992px){.contact-page .contact-careers .contact-careers-container .contact-careers-content .external-links a+a{margin-top:0;margin-left:24px}}.contact-page .contact-careers .contact-careers-container .contact-careers-contact-info{margin-top:32px}@media screen and (min-width:992px){.contact-page .contact-careers .contact-careers-container .contact-careers-contact-info{align-self:flex-end;margin-top:64px;padding-right:60px}}.contact-page .contact-careers .contact-careers-container .contact-careers-contact-info h5{margin-top:32px;margin-bottom:12px}.page-template-contact .site-footer .site-footer__upper .office-locations,.page-template-contact .site-footer .site-footer__upper .site-location{display:none}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:.35}50%{opacity:.5}75%{opacity:.75}100%{opacity:.25}}.work-page{padding-block:64px}@media screen and (min-width:992px){.work-page{padding-block:96px}}.work-page-container .breadcrumb-block{margin-bottom:24px}body.single-ignition_campaigns{padding-top:0}body.single-ignition_campaigns .work-grid{margin-bottom:80px}body.single-ignition_campaigns .artifact-image,body.single-ignition_campaigns .video-thumb{max-height:49px;vertical-align:bottom}@media screen and (min-width:992px){body.single-ignition_campaigns .artifact-image,body.single-ignition_campaigns .video-thumb{max-height:85px}}.campaign-header{background-position:center;background-size:cover;background-repeat:no-repeat;background-image:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.7) 100%),var(--background);padding-block:224px 24px;background-position:top}.campaign-header .ign-container{display:grid;grid-template-columns:1fr;grid-template-rows:auto}@media screen and (min-width:768px){.campaign-header .ign-container{grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto auto;column-gap:10em}}.campaign-header .ign-container .breadcrumb-block{margin-bottom:24px;display:none}@media screen and (min-width:768px){.campaign-header .ign-container .breadcrumb-block{display:block;grid-column:1/3;grid-row:1/2}}.campaign-header .ign-container .campaign-name{max-width:931px;grid-row:3/4}.campaign-header .ign-container .campaign-name h1{margin-bottom:24px;font-size:5rem}@media screen and (min-width:768px){.campaign-header .ign-container .campaign-name h1{margin-bottom:10px;font-size:11rem}}.campaign-header .ign-container .campaign-name img{max-width:75%;height:auto}@media screen and (min-width:992px){.campaign-header .ign-container .campaign-name img{max-width:45%}}@media screen and (min-width:768px){.campaign-header .ign-container .campaign-name{margin-bottom:0;grid-column:1/3;grid-row:2/-1}}.campaign-header .ign-container .client-logo{grid-row:2/3;margin-bottom:16px}.campaign-header .ign-container .client-logo img{max-width:72px;height:auto}@media screen and (min-width:992px){.campaign-header .ign-container .client-logo img{max-width:124px}}@media screen and (min-width:768px){.campaign-header .ign-container .client-logo{grid-column:3/4;grid-row:1/3;text-align:right;display:flex;align-items:start;justify-content:flex-end;align-self:flex-end}}.campaign-header .ign-container .awards:empty{display:none}@media screen and (min-width:768px){.campaign-header .ign-container .awards:empty+.client-logo{grid-row:1/-1}}.campaign-header .ign-container .awards:not(:empty){grid-row:4/5;margin-bottom:12px;margin-top:16px;border-top:1px;border-top-style:solid;border-image:linear-gradient(90deg,rgba(255,255,255,.5) 0,rgba(255,255,255,.1) 100%) 1;padding-top:12px}.campaign-header .ign-container .awards:not(:empty) img{height:48px;width:auto}@media screen and (min-width:768px){.campaign-header .ign-container .awards:not(:empty) img{height:64px}}.campaign-header .ign-container .awards:not(:empty) img+img{margin-left:24px}@media screen and (min-width:768px){.campaign-header .ign-container .awards:not(:empty) img+img{margin-left:48px}}@media screen and (min-width:768px){.campaign-header .ign-container .awards:not(:empty){margin-top:0;padding-top:16px;grid-column:3/4;grid-row:3/-1;display:flex;align-items:flex-end;margin-bottom:0}}@media screen and (min-width:768px){.campaign-header .ign-container.has-awards .campaign-name{grid-row:2/4}.campaign-header .ign-container.has-awards .awards{grid-row:3/4}.campaign-header .ign-container.has-awards .client-logo{grid-row:1/3}}.artifacts-wrapper .ign-container{display:block;margin-top:20px;margin-bottom:80px}@media screen and (min-width:768px){.artifacts-wrapper .ign-container{display:grid;grid-template-columns:1fr;grid-template-columns:68% auto;gap:48px;margin-top:40px;margin-bottom:116px}}.artifacts-wrapper .ign-container>div{position:sticky;top:71px;background-color:#fff;z-index:1}@media screen and (min-width:768px){.artifacts-wrapper .ign-container>div{height:100%;position:static}}.sticky-container.sticky-mobile{position:sticky;top:116px;background-color:#fff;z-index:1020}@media screen and (min-width:992px){.sticky-container.sticky-mobile{position:static;background-color:transparent}}@media screen and (min-width:992px){.sticky-container.sticky-desktop{position:sticky;top:136px}}.artifact-slider{grid-column:1;display:none}.artifact-slider.slick-initialized{display:block}.artifact-slider.slick-initialized+.loader{display:none}@media screen and (min-width:992px){.artifact-slider .slide .image-container,.artifact-slider .slide .video-container{padding-inline:75px;background-color:#f5f5f5}}.artifact-slider .slide .video-container{position:relative}.artifact-slider .slide .video-container button{position:absolute;border:none;bottom:0;right:0;background-color:transparent;cursor:pointer}.artifact-slider .slide .image-container.video picture img{max-height:360px}.artifact-slider .slide .image-container picture{position:relative}.artifact-slider .slide .image-container picture img{object-fit:contain;object-position:center;max-height:400px;width:100%}@media screen and (min-width:992px){.artifact-slider .slide .image-container picture img{max-height:650px}}.artifact-slider .slide .image-container .button-container{position:absolute;bottom:0;right:20px}.artifact-slider .slide .image-container .button-container.video{inset:50%;transform:translate(-50%,-50%);height:50px;width:50px}.artifact-slider .slide .image-container .button-container button{border:none;padding:0;background-color:transparent;cursor:pointer}.artifact-slider .slide .image-container .button-container button svg{height:50px;width:50px}.artifact-info{display:grid;grid-template-columns:1fr;gap:20px;margin-top:24px}@media screen and (min-width:992px){.artifact-info{grid-template-columns:1fr 1fr;min-height:200px}}.artifact-info .artifact-title{grid-column:1/2}.artifact-info .artifact-title h3{font-size:3rem}@media screen and (min-width:992px){.artifact-info .artifact-title h3{font-size:4.2rem}}.artifact-info .artifact-title .eyebrow{font-size:1.2rem}@media screen and (min-width:992px){.artifact-info .artifact-title .eyebrow{font-size:1.3rem}}.artifact-info .artifact-awards{border-top:1px;border-top-style:solid;border-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,rgba(0,0,0,.1) 100%) 1;padding-top:10px}.artifact-info .artifact-awards .artifact-award{display:flex;gap:6px}.artifact-info .campaign-description{display:none}@media screen and (min-width:992px){.artifact-info .campaign-description{display:block;grid-column:2/3;padding:28px 8px}}@media screen and (min-width){.artifact-categories{grid-column:2}}.artifact-categories .category{padding-bottom:24px}.artifact-categories .category .category-header{border-bottom-style:solid;border-width:1px;border-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,rgba(0,0,0,.1) 100%) 1}.artifact-categories .subcategories p{margin-top:8px;margin-bottom:2px}.artifact-thumbs{display:flex;flex-wrap:wrap;gap:1px}@media screen and (min-width:992px){.mobile-campaign-description{display:none}}.campaign-cta-text{padding-inline:24px;display:flex;justify-content:space-between}@media screen and (min-width:992px){.campaign-cta-text{padding-inline:40px}}.search-page{padding-block:64px 96px}@media screen and (min-width:992px){.search-page{padding-block:96px}}.search-page-container{padding-inline:24px}@media screen and (min-width:992px){.search-page-container{padding-inline:40px}}.search-page-container .search-page-header{margin-bottom:24px}.search-page-container .search-page-header form label{visibility:hidden}.search-page-container .search-results{border-bottom:1px solid #dedede;padding-bottom:40px;margin-bottom:48px}.search-page-container .search-results-count{margin-bottom:16px}.search-page-container .work-grid.ymal .work-grid-container{gap:16px;grid-template-columns:1fr}@media screen and (min-width:992px){.search-page-container .work-grid.ymal .work-grid-container{grid-template-columns:repeat(3,1fr)}}.search-page-container .work-grid.ymal .work-grid-container .campaign-logo{max-width:160px}.search-page-container .work-grid.ymal .work-grid-container .campaign-logo img{max-height:75px}.ign-404-page{padding-block:64px 96px}@media screen and (min-width:992px){.ign-404-page{padding-block:96px}}.ign-404-page .ign-404-container{padding-inline:24px}@media screen and (min-width:992px){.ign-404-page .ign-404-container{padding-inline:40px}}.about-page{padding-top:64px}@media screen and (min-width:992px){.about-page{padding-top:96px}}.about-page-header{margin-bottom:64px}@media screen and (min-width:992px){.about-page-header{margin-bottom:80px}}.about-page-header .breadcrumb-block{margin-bottom:24px}.about-page-info{width:100%}.about-page-info .info-container{display:flex;flex-direction:column;justify-content:flex-start;margin-bottom:96px}.about-page-info .info-container .featured-image img{width:100%;height:auto}@media screen and (min-width:992px){.about-page-info .info-container .featured-image img{object-fit:cover;width:auto}}.about-page-info .info-container .featured-content{margin-top:56px}@media screen and (min-width:992px){.about-page-info .info-container{margin-bottom:144px;flex-direction:row}.about-page-info .info-container .featured-image{width:55%;max-height:560px;overflow:hidden;display:flex;align-items:center;align-self:flex-end;object-fit:cover}.about-page-info .info-container .featured-content{padding-inline:0;width:40%;margin-top:0;margin-left:56px;display:flex;flex-direction:column;align-self:flex-end;padding-right:40px;margin-bottom:56px}}.about-page-awards,.about-page-clients{padding-block:64px 96px}@media screen and (min-width:992px){.about-page-awards,.about-page-clients{padding-block:96px 144px}}.about-page-awards h2,.about-page-clients h2{margin-bottom:56px}@media screen and (min-width:992px){.about-page-awards h2,.about-page-clients h2{margin-bottom:80px}}.about-page-awards .awards,.about-page-awards .clients,.about-page-clients .awards,.about-page-clients .clients{max-width:1500px;margin-inline:auto;padding-inline:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}@media screen and (min-width:768px){.about-page-awards .awards,.about-page-awards .clients,.about-page-clients .awards,.about-page-clients .clients{padding-inline:60px;grid-template-columns:repeat(5,1fr);column-gap:0;row-gap:64px}}.about-page-awards .awards figure,.about-page-awards .clients figure,.about-page-clients .awards figure,.about-page-clients .clients figure{text-align:center}.about-page-awards .awards figure img,.about-page-awards .clients figure img,.about-page-clients .awards figure img,.about-page-clients .clients figure img{height:64px;width:64px}@media screen and (min-width:768px){.about-page-awards .awards figure img,.about-page-awards .clients figure img,.about-page-clients .awards figure img,.about-page-clients .clients figure img{width:100px;height:100px}}.about-page-awards .awards figure .caption,.about-page-awards .clients figure .caption,.about-page-clients .awards figure .caption,.about-page-clients .clients figure .caption{margin-top:16px}.about-page-awards{background-color:#f5f5f5}.privacy-page{padding-top:64px;padding-bottom:96px}@media screen and (min-width:992px){.privacy-page{padding-top:96px;padding-bottom:144px}}.privacy-page .breadcrumb-block{margin-bottom:24px}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsInRoZW1lLmNzcyIsInNldHRpbmdzL192YXJpYWJsZXMuc2NzcyIsImdsb2JhbHMvX2dsb2JhbC5zY3NzIiwibWl4aW5zL19taXhpbnMuc2NzcyIsImdsb2JhbHMvX3R5cG9ncmFwaHkuc2NzcyIsInNldHRpbmdzL19hbmltYXRpb25zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fY3RhLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLXZpZGVvLXBsYXllci5zY3NzIiwiY29tcG9uZW50cy9fd29yay1ncmlkLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fbW9kYWxzLnNjc3MiLCJjb21wb25lbnRzL19jYW1wYWlnbi1maWx0ZXJzLnNjc3MiLCJjb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsImNvbXBvbmVudHMvX3NwaW5uZXIuc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiLCJwYWdlcy9fbG9zLWFuZ2VsZXMuc2NzcyIsInBhZ2VzL19sb25kb24uc2NzcyIsInBhZ2VzL19jb250YWN0LnNjc3MiLCJwYWdlcy9fd29yay5zY3NzIiwicGFnZXMvX2NhbXBhaWducy5zY3NzIiwicGFnZXMvX3NlYXJjaC5zY3NzIiwicGFnZXMvXzQwNC5zY3NzIiwicGFnZXMvX2Fib3V0LnNjc3MiLCJwYWdlcy9fcGFnZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJDRSxpRUFZRSxLQWNJLFlBQWEsS0FFZixxQkFBc0IsS0FDdEIseUJBQTBCLEtBWTVCLEtBQ0UsT0FBUSxFQU9WLFFBQ0EsTUFDQSxPQUNBLE9BQ0EsSUFDQSxRQUNFLFFBQVMsTUFRWCxHQ2hGRixVQVhVLElEc0dKLE9BQVEsTUFBQSxFQWtGWixXQUNBLE9BQ0UsUUFBUyxNQU9YLE9BS0ksT0FBUSxJRXpMQSxLRmtNWixHQUNFLFdBQVksWUFDWixPQUFRLEVBQ1IsU0FBVSxRQU9aLEtBQ0UsUUFBUyxNQW1CWCxJQUNFLFlBQWEsU0FBQSxDQUFBLFVBQ2IsVUFBVyxJQWFiLEVBQ0UsaUJBQWtCLFlBQ2xC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dEIsVUFDRSxpQkNFTyxrQkRBVCxpQkVRQSxpQkZQQSxzQkFBQSxzQkFFSSxpQkFBa0Isa0JBTnRCLFNBQ0UsaUJDU08sa0JEUFQsZ0JFUUEsZ0JGUEEscUJBQUEscUJBRUksaUJBQWtCLGtCR0N4QixVQUNFLGlCRk5TLGVFU1gsZ0JBQ0UsaUJBQWtCLHNCQ1hwQixRQUFrQixPSHNPWSxJR3RPVSxNSEk3QixrQkdIWCxZQUFrQixXSHFPWSxJR3JPYyxNSEdqQyxrQkdGWCxjQUFrQixhSG9PWSxJR3BPZ0IsTUhFbkMsa0JHRFgsZUFBa0IsY0htT1ksSUduT2lCLE1IQ3BDLGtCR0FYLGFBQWtCLFlIa09ZLElHbE9lLE1IQWxDLGtCR0VYLFVBQW1CLE9BQVEsWUFDM0IsY0FBbUIsV0FBWSxZQUMvQixnQkFBbUIsYUFBYyxZQUNqQyxpQkFBbUIsY0FBZSxZQUNsQyxlQUFtQixZQUFhLFlBRzlCLGdCQUNFLGFIZU0sa0JHaEJSLGtCQUNFLGFIUE8sa0JHTVQsZ0JBQ0UsYUhzQk0sa0JHdkJSLGFBQ0UsYUh3Qk0sa0JHekJSLGdCQUNFLGFIcUJNLGtCR3RCUixlQUNFLGFIbUJNLGtCR3BCUixjQUNFLGFIWk8sa0JHV1QsYUFDRSxhSExPLGtCR1NYLGNBQ0UsYUhsQlMsZUd5QlgsWUFDRSxjSGdONEIsZ0JHN005QixTQUNFLGNIME00QixpQkd2TTlCLGFBQ0UsdUJIc000QixpQkdyTTVCLHdCSHFNNEIsaUJHbE05QixlQUNFLHdCSGlNNEIsaUJHaE01QiwyQkhnTTRCLGlCRzdMOUIsZ0JBQ0UsMkJINEw0QixpQkczTDVCLDBCSDJMNEIsaUJHeEw5QixjQUNFLHVCSHVMNEIsaUJHdEw1QiwwQkhzTDRCLGlCR25MOUIsWUFDRSxjSG1MNEIsZ0JHaEw5QixnQkFDRSxjQUFlLGNBR2pCLGNBQ0UsY0g4SzRCLGdCRzNLOUIsV0FDRSxjQUFlLFlDeEVmLGlCQUNFLFFBQVMsTUFDVCxNQUFPLEtBQ1AsUUFBUyxHQ09QLFFBQXdCLFFMd21DbkIsZUt4bUNMLFVBQXdCLFFMd21DYixpQkt4bUNYLGdCQUF3QixRTHdtQ0wsdUJLeG1DbkIsU0FBd0IsUUx3bUNTLGdCS3htQ2pDLFNBQXdCLFFMd21DZ0IsZ0JLeG1DeEMsYUFBd0IsUUx3bUN1QixvQkt4bUMvQyxjQUF3QixRTHdtQ2tDLHFCS3htQzFELFFBQXdCLFFMd21DOEMsZUt4bUN0RSxlQUF3QixRTHdtQ29ELHNCTXZqQzlFLHlCRGpERSxXQUF3QixRTHdtQ25CLGVLeG1DTCxhQUF3QixRTHdtQ2IsaUJLeG1DWCxtQkFBd0IsUUx3bUNMLHVCS3htQ25CLFlBQXdCLFFMd21DUyxnQkt4bUNqQyxZQUF3QixRTHdtQ2dCLGdCS3htQ3hDLGdCQUF3QixRTHdtQ3VCLG9CS3htQy9DLGlCQUF3QixRTHdtQ2tDLHFCS3htQzFELFdBQXdCLFFMd21DOEMsZUt4bUN0RSxrQkFBd0IsUUx3bUNvRCx1Qk12akM5RSx5QkRqREUsV0FBd0IsUUx3bUNuQixlS3htQ0wsYUFBd0IsUUx3bUNiLGlCS3htQ1gsbUJBQXdCLFFMd21DTCx1Qkt4bUNuQixZQUF3QixRTHdtQ1MsZ0JLeG1DakMsWUFBd0IsUUx3bUNnQixnQkt4bUN4QyxnQkFBd0IsUUx3bUN1QixvQkt4bUMvQyxpQkFBd0IsUUx3bUNrQyxxQkt4bUMxRCxXQUF3QixRTHdtQzhDLGVLeG1DdEUsa0JBQXdCLFFMd21Db0QsdUJNdmpDOUUseUJEakRFLFdBQXdCLFFMd21DbkIsZUt4bUNMLGFBQXdCLFFMd21DYixpQkt4bUNYLG1CQUF3QixRTHdtQ0wsdUJLeG1DbkIsWUFBd0IsUUx3bUNTLGdCS3htQ2pDLFlBQXdCLFFMd21DZ0IsZ0JLeG1DeEMsZ0JBQXdCLFFMd21DdUIsb0JLeG1DL0MsaUJBQXdCLFFMd21Da0MscUJLeG1DMUQsV0FBd0IsUUx3bUM4QyxlS3htQ3RFLGtCQUF3QixRTHdtQ29ELHVCTXZqQzlFLDBCRGpERSxXQUF3QixRTHdtQ25CLGVLeG1DTCxhQUF3QixRTHdtQ2IsaUJLeG1DWCxtQkFBd0IsUUx3bUNMLHVCS3htQ25CLFlBQXdCLFFMd21DUyxnQkt4bUNqQyxZQUF3QixRTHdtQ2dCLGdCS3htQ3hDLGdCQUF3QixRTHdtQ3VCLG9CS3htQy9DLGlCQUF3QixRTHdtQ2tDLHFCS3htQzFELFdBQXdCLFFMd21DOEMsZUt4bUN0RSxrQkFBd0IsUUx3bUNvRCx1Qks5bENsRixhQUVJLGNBQXFCLFFMNGxDZCxlSzVsQ1AsZ0JBQXFCLFFMNGxDUixpQks1bENiLHNCQUFxQixRTDRsQ0EsdUJLNWxDckIsZUFBcUIsUUw0bENjLGdCSzVsQ25DLGVBQXFCLFFMNGxDcUIsZ0JLNWxDMUMsbUJBQXFCLFFMNGxDNEIsb0JLNWxDakQsb0JBQXFCLFFMNGxDdUMscUJLNWxDNUQsY0FBcUIsUUw0bENtRCxlSzVsQ3hFLHFCQUFxQixRTDRsQ3lELHVCT2puQ2xGLGtCQUNFLFNBQVUsU0FDVixRQUFTLE1BQ1QsTUFBTyxLQUNQLFFBQVMsRUFDVCxTQUFVLE9BTFosMEJBUUksUUFBUyxNQUNULFFBQVMsR0FUYix5Q0FBQSx3QkFBQSx5QkFBQSx5QkFBQSx3QkFpQkksU0FBVSxTQUNWLElBQUssRUFDTCxPQUFRLEVBQ1IsS0FBTSxFQUNOLE1BQU8sS0FDUCxPQUFRLEtBQ1IsT0FBUSxFQVFWLGdDQUVJLFlBQWEsVUFGakIsZ0NBRUksWUFBYSxPQUZqQiwrQkFFSSxZQUFhLElBRmpCLCtCQUVJLFlBQWEsS0N6QmYsVUFBZ0MsZUFBZ0IsY0FDaEQsYUFBZ0MsZUFBZ0IsaUJBQ2hELGtCQUFnQyxlQUFnQixzQkFDaEQscUJBQWdDLGVBQWdCLHlCQUVoRCxXQUE4QixVQUFXLGVBQ3pDLGFBQThCLFVBQVcsaUJBQ3pDLG1CQUE4QixVQUFXLHVCQUN6QyxXQUE4QixLQUFNLEVBQUEsRUFBQSxlQUNwQyxhQUE4QixVQUFXLFlBQ3pDLGFBQThCLFVBQVcsWUFDekMsZUFBOEIsWUFBYSxZQUMzQyxlQUE4QixZQUFhLFlBRTNDLHVCQUFvQyxnQkFBaUIscUJBQ3JELHFCQUFvQyxnQkFBaUIsbUJBQ3JELHdCQUFvQyxnQkFBaUIsaUJBQ3JELHlCQUFvQyxnQkFBaUIsd0JBQ3JELHdCQUFvQyxnQkFBaUIsdUJBRXJELG1CQUFpQyxZQUFhLHFCQUM5QyxpQkFBaUMsWUFBYSxtQkFDOUMsb0JBQWlDLFlBQWEsaUJBQzlDLHNCQUFpQyxZQUFhLG1CQUM5QyxxQkFBaUMsWUFBYSxrQkFFOUMscUJBQWtDLGNBQWUscUJBQ2pELG1CQUFrQyxjQUFlLG1CQUNqRCxzQkFBa0MsY0FBZSxpQkFDakQsdUJBQWtDLGNBQWUsd0JBQ2pELHNCQUFrQyxjQUFlLHVCQUNqRCx1QkFBa0MsY0FBZSxrQkFFakQsaUJBQWdDLFdBQVksZUFDNUMsa0JBQWdDLFdBQVkscUJBQzVDLGdCQUFnQyxXQUFZLG1CQUM1QyxtQkFBZ0MsV0FBWSxpQkFDNUMscUJBQWdDLFdBQVksbUJBQzVDLG9CQUFnQyxXQUFZLGtCRlk1Qyx5QkVsREEsYUFBZ0MsZUFBZ0IsY0FDaEQsZ0JBQWdDLGVBQWdCLGlCQUNoRCxxQkFBZ0MsZUFBZ0Isc0JBQ2hELHdCQUFnQyxlQUFnQix5QkFFaEQsY0FBOEIsVUFBVyxlQUN6QyxnQkFBOEIsVUFBVyxpQkFDekMsc0JBQThCLFVBQVcsdUJBQ3pDLGNBQThCLEtBQU0sRUFBQSxFQUFBLGVBQ3BDLGdCQUE4QixVQUFXLFlBQ3pDLGdCQUE4QixVQUFXLFlBQ3pDLGtCQUE4QixZQUFhLFlBQzNDLGtCQUE4QixZQUFhLFlBRTNDLDBCQUFvQyxnQkFBaUIscUJBQ3JELHdCQUFvQyxnQkFBaUIsbUJBQ3JELDJCQUFvQyxnQkFBaUIsaUJBQ3JELDRCQUFvQyxnQkFBaUIsd0JBQ3JELDJCQUFvQyxnQkFBaUIsdUJBRXJELHNCQUFpQyxZQUFhLHFCQUM5QyxvQkFBaUMsWUFBYSxtQkFDOUMsdUJBQWlDLFlBQWEsaUJBQzlDLHlCQUFpQyxZQUFhLG1CQUM5Qyx3QkFBaUMsWUFBYSxrQkFFOUMsd0JBQWtDLGNBQWUscUJBQ2pELHNCQUFrQyxjQUFlLG1CQUNqRCx5QkFBa0MsY0FBZSxpQkFDakQsMEJBQWtDLGNBQWUsd0JBQ2pELHlCQUFrQyxjQUFlLHVCQUNqRCwwQkFBa0MsY0FBZSxrQkFFakQsb0JBQWdDLFdBQVksZUFDNUMscUJBQWdDLFdBQVkscUJBQzVDLG1CQUFnQyxXQUFZLG1CQUM1QyxzQkFBZ0MsV0FBWSxpQkFDNUMsd0JBQWdDLFdBQVksbUJBQzVDLHVCQUFnQyxXQUFZLG1CRlk1Qyx5QkVsREEsYUFBZ0MsZUFBZ0IsY0FDaEQsZ0JBQWdDLGVBQWdCLGlCQUNoRCxxQkFBZ0MsZUFBZ0Isc0JBQ2hELHdCQUFnQyxlQUFnQix5QkFFaEQsY0FBOEIsVUFBVyxlQUN6QyxnQkFBOEIsVUFBVyxpQkFDekMsc0JBQThCLFVBQVcsdUJBQ3pDLGNBQThCLEtBQU0sRUFBQSxFQUFBLGVBQ3BDLGdCQUE4QixVQUFXLFlBQ3pDLGdCQUE4QixVQUFXLFlBQ3pDLGtCQUE4QixZQUFhLFlBQzNDLGtCQUE4QixZQUFhLFlBRTNDLDBCQUFvQyxnQkFBaUIscUJBQ3JELHdCQUFvQyxnQkFBaUIsbUJBQ3JELDJCQUFvQyxnQkFBaUIsaUJBQ3JELDRCQUFvQyxnQkFBaUIsd0JBQ3JELDJCQUFvQyxnQkFBaUIsdUJBRXJELHNCQUFpQyxZQUFhLHFCQUM5QyxvQkFBaUMsWUFBYSxtQkFDOUMsdUJBQWlDLFlBQWEsaUJBQzlDLHlCQUFpQyxZQUFhLG1CQUM5Qyx3QkFBaUMsWUFBYSxrQkFFOUMsd0JBQWtDLGNBQWUscUJBQ2pELHNCQUFrQyxjQUFlLG1CQUNqRCx5QkFBa0MsY0FBZSxpQkFDakQsMEJBQWtDLGNBQWUsd0JBQ2pELHlCQUFrQyxjQUFlLHVCQUNqRCwwQkFBa0MsY0FBZSxrQkFFakQsb0JBQWdDLFdBQVksZUFDNUMscUJBQWdDLFdBQVkscUJBQzVDLG1CQUFnQyxXQUFZLG1CQUM1QyxzQkFBZ0MsV0FBWSxpQkFDNUMsd0JBQWdDLFdBQVksbUJBQzVDLHVCQUFnQyxXQUFZLG1CRlk1Qyx5QkVsREEsYUFBZ0MsZUFBZ0IsY0FDaEQsZ0JBQWdDLGVBQWdCLGlCQUNoRCxxQkFBZ0MsZUFBZ0Isc0JBQ2hELHdCQUFnQyxlQUFnQix5QkFFaEQsY0FBOEIsVUFBVyxlQUN6QyxnQkFBOEIsVUFBVyxpQkFDekMsc0JBQThCLFVBQVcsdUJBQ3pDLGNBQThCLEtBQU0sRUFBQSxFQUFBLGVBQ3BDLGdCQUE4QixVQUFXLFlBQ3pDLGdCQUE4QixVQUFXLFlBQ3pDLGtCQUE4QixZQUFhLFlBQzNDLGtCQUE4QixZQUFhLFlBRTNDLDBCQUFvQyxnQkFBaUIscUJBQ3JELHdCQUFvQyxnQkFBaUIsbUJBQ3JELDJCQUFvQyxnQkFBaUIsaUJBQ3JELDRCQUFvQyxnQkFBaUIsd0JBQ3JELDJCQUFvQyxnQkFBaUIsdUJBRXJELHNCQUFpQyxZQUFhLHFCQUM5QyxvQkFBaUMsWUFBYSxtQkFDOUMsdUJBQWlDLFlBQWEsaUJBQzlDLHlCQUFpQyxZQUFhLG1CQUM5Qyx3QkFBaUMsWUFBYSxrQkFFOUMsd0JBQWtDLGNBQWUscUJBQ2pELHNCQUFrQyxjQUFlLG1CQUNqRCx5QkFBa0MsY0FBZSxpQkFDakQsMEJBQWtDLGNBQWUsd0JBQ2pELHlCQUFrQyxjQUFlLHVCQUNqRCwwQkFBa0MsY0FBZSxrQkFFakQsb0JBQWdDLFdBQVksZUFDNUMscUJBQWdDLFdBQVkscUJBQzVDLG1CQUFnQyxXQUFZLG1CQUM1QyxzQkFBZ0MsV0FBWSxpQkFDNUMsd0JBQWdDLFdBQVksbUJBQzVDLHVCQUFnQyxXQUFZLG1CRlk1QywwQkVsREEsYUFBZ0MsZUFBZ0IsY0FDaEQsZ0JBQWdDLGVBQWdCLGlCQUNoRCxxQkFBZ0MsZUFBZ0Isc0JBQ2hELHdCQUFnQyxlQUFnQix5QkFFaEQsY0FBOEIsVUFBVyxlQUN6QyxnQkFBOEIsVUFBVyxpQkFDekMsc0JBQThCLFVBQVcsdUJBQ3pDLGNBQThCLEtBQU0sRUFBQSxFQUFBLGVBQ3BDLGdCQUE4QixVQUFXLFlBQ3pDLGdCQUE4QixVQUFXLFlBQ3pDLGtCQUE4QixZQUFhLFlBQzNDLGtCQUE4QixZQUFhLFlBRTNDLDBCQUFvQyxnQkFBaUIscUJBQ3JELHdCQUFvQyxnQkFBaUIsbUJBQ3JELDJCQUFvQyxnQkFBaUIsaUJBQ3JELDRCQUFvQyxnQkFBaUIsd0JBQ3JELDJCQUFvQyxnQkFBaUIsdUJBRXJELHNCQUFpQyxZQUFhLHFCQUM5QyxvQkFBaUMsWUFBYSxtQkFDOUMsdUJBQWlDLFlBQWEsaUJBQzlDLHlCQUFpQyxZQUFhLG1CQUM5Qyx3QkFBaUMsWUFBYSxrQkFFOUMsd0JBQWtDLGNBQWUscUJBQ2pELHNCQUFrQyxjQUFlLG1CQUNqRCx5QkFBa0MsY0FBZSxpQkFDakQsMEJBQWtDLGNBQWUsd0JBQ2pELHlCQUFrQyxjQUFlLHVCQUNqRCwwQkFBa0MsY0FBZSxrQkFFakQsb0JBQWdDLFdBQVksZUFDNUMscUJBQWdDLFdBQVkscUJBQzVDLG1CQUFnQyxXQUFZLG1CQUM1QyxzQkFBZ0MsV0FBWSxpQkFDNUMsd0JBQWdDLFdBQVksbUJBQzVDLHVCQUFnQyxXQUFZLG1CQzFDNUMsWUFBd0IsTUFBTyxlQUMvQixhQUF3QixNQUFPLGdCQUMvQixZQUF3QixNQUFPLGVIb0QvQix5Qkd0REEsZUFBd0IsTUFBTyxlQUMvQixnQkFBd0IsTUFBTyxnQkFDL0IsZUFBd0IsTUFBTyxnQkhvRC9CLHlCR3REQSxlQUF3QixNQUFPLGVBQy9CLGdCQUF3QixNQUFPLGdCQUMvQixlQUF3QixNQUFPLGdCSG9EL0IseUJHdERBLGVBQXdCLE1BQU8sZUFDL0IsZ0JBQXdCLE1BQU8sZ0JBQy9CLGVBQXdCLE1BQU8sZ0JIb0QvQiwwQkd0REEsZUFBd0IsTUFBTyxlQUMvQixnQkFBd0IsTUFBTyxnQkFDL0IsZUFBd0IsTUFBTyxnQkNMakMsaUJBQXlCLFlWbW5DWixjVW5uQ2Isa0JBQXlCLFlWbW5DUCxlVW5uQ2xCLGtCQUF5QixZVm1uQ0QsZVdubkN4QixlQUFzQixTWGluQ1osZVdqbkNWLGlCQUFzQixTWGluQ04saUJZaG5DaEIsaUJBQXlCLFNaaW5DZixpQllqbkNWLG1CQUF5QixTWmluQ1AsbUJZam5DbEIsbUJBQXlCLFNaaW5DRyxtQllqbkM1QixnQkFBeUIsU1ppbkNhLGdCWWpuQ3RDLGlCQUF5QixTWmluQ29CLGlCWTVtQy9DLFdBQ0UsU0FBVSxNQUNWLElBQUssRUFDTCxNQUFPLEVBQ1AsS0FBTSxFQUNOLFFaaXFCa0MsS1k5cEJwQyxjQUNFLFNBQVUsTUFDVixNQUFPLEVBQ1AsT0FBUSxFQUNSLEtBQU0sRUFDTixRWnlwQmtDLEtZcnBCTiw0QkFEOUIsWUFFSSxTQUFVLE9BQ1YsSUFBSyxFQUNMLFFaaXBCZ0MsTWExcUJwQyxTQ0VFLFNBQVUsU0FDVixNQUFPLElBQ1AsT0FBUSxJQUNSLFFBQVMsRUFDVCxPQUFRLEtBQ1IsU0FBVSxPQUNWLEtBQU0sY0FDTixZQUFhLE9BQ2IsT0FBUSxFQVVSLDBCRGhCRix5QkNrQkksU0FBVSxPQUNWLE1BQU8sS0FDUCxPQUFRLEtBQ1IsU0FBVSxRQUNWLEtBQU0sS0FDTixZQUFhLE9DN0JqQixXQUFhLFdmbVBpQixFQUFFLFFBQVEsT0FwTzdCLDJCZWRYLFFBQVUsV2ZtUG9CLEVBQUUsTUFBTSxLQXJPM0IsMEJlYlgsV0FBYSxXZm1QaUIsRUFBRSxLQUFLLEtBdE8xQiwyQmVaWCxhQUFlLFdBQVksZUNDdkIsTUFBdUIsTWhCbUpuQixjZ0JuSkosTUFBdUIsTWhCb0puQixjZ0JwSkosTUFBdUIsTWhCcUpuQixjZ0JySkosT0FBdUIsTWhCc0psQixlZ0J0SkwsUUFBdUIsTWhCdUpqQixlZ0J2Sk4sTUFBdUIsT2hCbUpuQixjZ0JuSkosTUFBdUIsT2hCb0puQixjZ0JwSkosTUFBdUIsT2hCcUpuQixjZ0JySkosT0FBdUIsT2hCc0psQixlZ0J0SkwsUUFBdUIsT2hCdUpqQixlZ0JuSlYsUUFBVSxVQUFXLGVBQ3JCLFFBQVUsV0FBWSxlQUl0QixZQUFjLFVBQVcsZ0JBQ3pCLFlBQWMsV0FBWSxnQkFFMUIsUUFBVSxNQUFPLGdCQUNqQixRQUFVLE9BQVEsZ0JDVFYsS0FBZ0MsT2pCaUlqQyxZaUJoSUMsTUFDQSxNQUNFLFdqQjhISCxZaUI1SEMsTUFDQSxNQUNFLGFqQjBISCxZaUJ4SEMsTUFDQSxNQUNFLGNqQnNISCxZaUJwSEMsTUFDQSxNQUNFLFlqQmtISCxZaUJqSUMsS0FBZ0MsT2pCa0lqQyxpQmlCaklDLE1BQ0EsTUFDRSxXakIrSEgsaUJpQjdIQyxNQUNBLE1BQ0UsYWpCMkhILGlCaUJ6SEMsTUFDQSxNQUNFLGNqQnVISCxpQmlCckhDLE1BQ0EsTUFDRSxZakJtSEgsaUJpQmxJQyxLQUFnQyxPakJtSWpDLGdCaUJsSUMsTUFDQSxNQUNFLFdqQmdJSCxnQmlCOUhDLE1BQ0EsTUFDRSxhakI0SEgsZ0JpQjFIQyxNQUNBLE1BQ0UsY2pCd0hILGdCaUJ0SEMsTUFDQSxNQUNFLFlqQm9ISCxnQmlCbklDLEtBQWdDLE9qQjZIL0IsZWlCNUhELE1BQ0EsTUFDRSxXakIwSEQsZWlCeEhELE1BQ0EsTUFDRSxhakJzSEQsZWlCcEhELE1BQ0EsTUFDRSxjakJrSEQsZWlCaEhELE1BQ0EsTUFDRSxZakI4R0QsZWlCN0hELEtBQWdDLE9qQnFJakMsaUJpQnBJQyxNQUNBLE1BQ0UsV2pCa0lILGlCaUJoSUMsTUFDQSxNQUNFLGFqQjhISCxpQmlCNUhDLE1BQ0EsTUFDRSxjakIwSEgsaUJpQnhIQyxNQUNBLE1BQ0UsWWpCc0hILGlCaUJySUMsS0FBZ0MsT2pCc0lqQyxlaUJySUMsTUFDQSxNQUNFLFdqQm1JSCxlaUJqSUMsTUFDQSxNQUNFLGFqQitISCxlaUI3SEMsTUFDQSxNQUNFLGNqQjJISCxlaUJ6SEMsTUFDQSxNQUNFLFlqQnVISCxlaUJ0SUMsS0FBZ0MsUWpCaUlqQyxZaUJoSUMsTUFDQSxNQUNFLFlqQjhISCxZaUI1SEMsTUFDQSxNQUNFLGNqQjBISCxZaUJ4SEMsTUFDQSxNQUNFLGVqQnNISCxZaUJwSEMsTUFDQSxNQUNFLGFqQmtISCxZaUJqSUMsS0FBZ0MsUWpCa0lqQyxpQmlCaklDLE1BQ0EsTUFDRSxZakIrSEgsaUJpQjdIQyxNQUNBLE1BQ0UsY2pCMkhILGlCaUJ6SEMsTUFDQSxNQUNFLGVqQnVISCxpQmlCckhDLE1BQ0EsTUFDRSxhakJtSEgsaUJpQmxJQyxLQUFnQyxRakJtSWpDLGdCaUJsSUMsTUFDQSxNQUNFLFlqQmdJSCxnQmlCOUhDLE1BQ0EsTUFDRSxjakI0SEgsZ0JpQjFIQyxNQUNBLE1BQ0UsZWpCd0hILGdCaUJ0SEMsTUFDQSxNQUNFLGFqQm9ISCxnQmlCbklDLEtBQWdDLFFqQjZIL0IsZWlCNUhELE1BQ0EsTUFDRSxZakIwSEQsZWlCeEhELE1BQ0EsTUFDRSxjakJzSEQsZWlCcEhELE1BQ0EsTUFDRSxlakJrSEQsZWlCaEhELE1BQ0EsTUFDRSxhakI4R0QsZWlCN0hELEtBQWdDLFFqQnFJakMsaUJpQnBJQyxNQUNBLE1BQ0UsWWpCa0lILGlCaUJoSUMsTUFDQSxNQUNFLGNqQjhISCxpQmlCNUhDLE1BQ0EsTUFDRSxlakIwSEgsaUJpQnhIQyxNQUNBLE1BQ0UsYWpCc0hILGlCaUJySUMsS0FBZ0MsUWpCc0lqQyxlaUJySUMsTUFDQSxNQUNFLFlqQm1JSCxlaUJqSUMsTUFDQSxNQUNFLGNqQitISCxlaUI3SEMsTUFDQSxNQUNFLGVqQjJISCxlaUJ6SEMsTUFDQSxNQUNFLGFqQnVISCxlaUIvR0MsTUFBd0IsT2pCMkd6QixrQmlCMUdDLE9BQ0EsT0FDRSxXakJ3R0gsa0JpQnRHQyxPQUNBLE9BQ0UsYWpCb0dILGtCaUJsR0MsT0FDQSxPQUNFLGNqQmdHSCxrQmlCOUZDLE9BQ0EsT0FDRSxZakI0Rkgsa0JpQjNHQyxNQUF3QixPakI0R3pCLGlCaUIzR0MsT0FDQSxPQUNFLFdqQnlHSCxpQmlCdkdDLE9BQ0EsT0FDRSxhakJxR0gsaUJpQm5HQyxPQUNBLE9BQ0UsY2pCaUdILGlCaUIvRkMsT0FDQSxPQUNFLFlqQjZGSCxpQmlCNUdDLE1BQXdCLE9qQnNHdkIsZ0JpQnJHRCxPQUNBLE9BQ0UsV2pCbUdELGdCaUJqR0QsT0FDQSxPQUNFLGFqQitGRCxnQmlCN0ZELE9BQ0EsT0FDRSxjakIyRkQsZ0JpQnpGRCxPQUNBLE9BQ0UsWWpCdUZELGdCaUJ0R0QsTUFBd0IsT2pCOEd6QixrQmlCN0dDLE9BQ0EsT0FDRSxXakIyR0gsa0JpQnpHQyxPQUNBLE9BQ0UsYWpCdUdILGtCaUJyR0MsT0FDQSxPQUNFLGNqQm1HSCxrQmlCakdDLE9BQ0EsT0FDRSxZakIrRkgsa0JpQjlHQyxNQUF3QixPakIrR3pCLGdCaUI5R0MsT0FDQSxPQUNFLFdqQjRHSCxnQmlCMUdDLE9BQ0EsT0FDRSxhakJ3R0gsZ0JpQnRHQyxPQUNBLE9BQ0UsY2pCb0dILGdCaUJsR0MsT0FDQSxPQUNFLFlqQmdHSCxnQmlCMUZILFFBQW1CLE9BQVEsZUFDM0IsU0FDQSxTQUNFLFdBQVksZUFFZCxTQUNBLFNBQ0UsYUFBYyxlQUVoQixTQUNBLFNBQ0UsY0FBZSxlQUVqQixTQUNBLFNBQ0UsWUFBYSxlWFRmLHlCV2xESSxRQUFnQyxPakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsV2pCOEhILFlpQjVIQyxTQUNBLFNBQ0UsYWpCMEhILFlpQnhIQyxTQUNBLFNBQ0UsY2pCc0hILFlpQnBIQyxTQUNBLFNBQ0UsWWpCa0hILFlpQmpJQyxRQUFnQyxPakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFdqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxhakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsY2pCdUhILGlCaUJySEMsU0FDQSxTQUNFLFlqQm1ISCxpQmlCbElDLFFBQWdDLE9qQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsV2pCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGFqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxjakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsWWpCb0hILGdCaUJuSUMsUUFBZ0MsT2pCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFdqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGFqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGNqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLFlqQjhHRCxlaUI3SEQsUUFBZ0MsT2pCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxXakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsYWpCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGNqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxZakJzSEgsaUJpQnJJQyxRQUFnQyxPakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsV2pCbUlILGVpQmpJQyxTQUNBLFNBQ0UsYWpCK0hILGVpQjdIQyxTQUNBLFNBQ0UsY2pCMkhILGVpQnpIQyxTQUNBLFNBQ0UsWWpCdUhILGVpQnRJQyxRQUFnQyxRakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsWWpCOEhILFlpQjVIQyxTQUNBLFNBQ0UsY2pCMEhILFlpQnhIQyxTQUNBLFNBQ0UsZWpCc0hILFlpQnBIQyxTQUNBLFNBQ0UsYWpCa0hILFlpQmpJQyxRQUFnQyxRakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFlqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxjakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsZWpCdUhILGlCaUJySEMsU0FDQSxTQUNFLGFqQm1ISCxpQmlCbElDLFFBQWdDLFFqQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsWWpCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGNqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxlakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsYWpCb0hILGdCaUJuSUMsUUFBZ0MsUWpCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFlqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGNqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGVqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLGFqQjhHRCxlaUI3SEQsUUFBZ0MsUWpCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxZakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsY2pCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGVqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxhakJzSEgsaUJpQnJJQyxRQUFnQyxRakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsWWpCbUlILGVpQmpJQyxTQUNBLFNBQ0UsY2pCK0hILGVpQjdIQyxTQUNBLFNBQ0UsZWpCMkhILGVpQnpIQyxTQUNBLFNBQ0UsYWpCdUhILGVpQi9HQyxTQUF3QixPakIyR3pCLGtCaUIxR0MsVUFDQSxVQUNFLFdqQndHSCxrQmlCdEdDLFVBQ0EsVUFDRSxhakJvR0gsa0JpQmxHQyxVQUNBLFVBQ0UsY2pCZ0dILGtCaUI5RkMsVUFDQSxVQUNFLFlqQjRGSCxrQmlCM0dDLFNBQXdCLE9qQjRHekIsaUJpQjNHQyxVQUNBLFVBQ0UsV2pCeUdILGlCaUJ2R0MsVUFDQSxVQUNFLGFqQnFHSCxpQmlCbkdDLFVBQ0EsVUFDRSxjakJpR0gsaUJpQi9GQyxVQUNBLFVBQ0UsWWpCNkZILGlCaUI1R0MsU0FBd0IsT2pCc0d2QixnQmlCckdELFVBQ0EsVUFDRSxXakJtR0QsZ0JpQmpHRCxVQUNBLFVBQ0UsYWpCK0ZELGdCaUI3RkQsVUFDQSxVQUNFLGNqQjJGRCxnQmlCekZELFVBQ0EsVUFDRSxZakJ1RkQsZ0JpQnRHRCxTQUF3QixPakI4R3pCLGtCaUI3R0MsVUFDQSxVQUNFLFdqQjJHSCxrQmlCekdDLFVBQ0EsVUFDRSxhakJ1R0gsa0JpQnJHQyxVQUNBLFVBQ0UsY2pCbUdILGtCaUJqR0MsVUFDQSxVQUNFLFlqQitGSCxrQmlCOUdDLFNBQXdCLE9qQitHekIsZ0JpQjlHQyxVQUNBLFVBQ0UsV2pCNEdILGdCaUIxR0MsVUFDQSxVQUNFLGFqQndHSCxnQmlCdEdDLFVBQ0EsVUFDRSxjakJvR0gsZ0JpQmxHQyxVQUNBLFVBQ0UsWWpCZ0dILGdCaUIxRkgsV0FBbUIsT0FBUSxlQUMzQixZQUNBLFlBQ0UsV0FBWSxlQUVkLFlBQ0EsWUFDRSxhQUFjLGVBRWhCLFlBQ0EsWUFDRSxjQUFlLGVBRWpCLFlBQ0EsWUFDRSxZQUFhLGdCWFRmLHlCV2xESSxRQUFnQyxPakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsV2pCOEhILFlpQjVIQyxTQUNBLFNBQ0UsYWpCMEhILFlpQnhIQyxTQUNBLFNBQ0UsY2pCc0hILFlpQnBIQyxTQUNBLFNBQ0UsWWpCa0hILFlpQmpJQyxRQUFnQyxPakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFdqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxhakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsY2pCdUhILGlCaUJySEMsU0FDQSxTQUNFLFlqQm1ISCxpQmlCbElDLFFBQWdDLE9qQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsV2pCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGFqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxjakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsWWpCb0hILGdCaUJuSUMsUUFBZ0MsT2pCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFdqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGFqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGNqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLFlqQjhHRCxlaUI3SEQsUUFBZ0MsT2pCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxXakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsYWpCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGNqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxZakJzSEgsaUJpQnJJQyxRQUFnQyxPakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsV2pCbUlILGVpQmpJQyxTQUNBLFNBQ0UsYWpCK0hILGVpQjdIQyxTQUNBLFNBQ0UsY2pCMkhILGVpQnpIQyxTQUNBLFNBQ0UsWWpCdUhILGVpQnRJQyxRQUFnQyxRakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsWWpCOEhILFlpQjVIQyxTQUNBLFNBQ0UsY2pCMEhILFlpQnhIQyxTQUNBLFNBQ0UsZWpCc0hILFlpQnBIQyxTQUNBLFNBQ0UsYWpCa0hILFlpQmpJQyxRQUFnQyxRakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFlqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxjakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsZWpCdUhILGlCaUJySEMsU0FDQSxTQUNFLGFqQm1ISCxpQmlCbElDLFFBQWdDLFFqQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsWWpCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGNqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxlakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsYWpCb0hILGdCaUJuSUMsUUFBZ0MsUWpCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFlqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGNqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGVqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLGFqQjhHRCxlaUI3SEQsUUFBZ0MsUWpCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxZakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsY2pCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGVqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxhakJzSEgsaUJpQnJJQyxRQUFnQyxRakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsWWpCbUlILGVpQmpJQyxTQUNBLFNBQ0UsY2pCK0hILGVpQjdIQyxTQUNBLFNBQ0UsZWpCMkhILGVpQnpIQyxTQUNBLFNBQ0UsYWpCdUhILGVpQi9HQyxTQUF3QixPakIyR3pCLGtCaUIxR0MsVUFDQSxVQUNFLFdqQndHSCxrQmlCdEdDLFVBQ0EsVUFDRSxhakJvR0gsa0JpQmxHQyxVQUNBLFVBQ0UsY2pCZ0dILGtCaUI5RkMsVUFDQSxVQUNFLFlqQjRGSCxrQmlCM0dDLFNBQXdCLE9qQjRHekIsaUJpQjNHQyxVQUNBLFVBQ0UsV2pCeUdILGlCaUJ2R0MsVUFDQSxVQUNFLGFqQnFHSCxpQmlCbkdDLFVBQ0EsVUFDRSxjakJpR0gsaUJpQi9GQyxVQUNBLFVBQ0UsWWpCNkZILGlCaUI1R0MsU0FBd0IsT2pCc0d2QixnQmlCckdELFVBQ0EsVUFDRSxXakJtR0QsZ0JpQmpHRCxVQUNBLFVBQ0UsYWpCK0ZELGdCaUI3RkQsVUFDQSxVQUNFLGNqQjJGRCxnQmlCekZELFVBQ0EsVUFDRSxZakJ1RkQsZ0JpQnRHRCxTQUF3QixPakI4R3pCLGtCaUI3R0MsVUFDQSxVQUNFLFdqQjJHSCxrQmlCekdDLFVBQ0EsVUFDRSxhakJ1R0gsa0JpQnJHQyxVQUNBLFVBQ0UsY2pCbUdILGtCaUJqR0MsVUFDQSxVQUNFLFlqQitGSCxrQmlCOUdDLFNBQXdCLE9qQitHekIsZ0JpQjlHQyxVQUNBLFVBQ0UsV2pCNEdILGdCaUIxR0MsVUFDQSxVQUNFLGFqQndHSCxnQmlCdEdDLFVBQ0EsVUFDRSxjakJvR0gsZ0JpQmxHQyxVQUNBLFVBQ0UsWWpCZ0dILGdCaUIxRkgsV0FBbUIsT0FBUSxlQUMzQixZQUNBLFlBQ0UsV0FBWSxlQUVkLFlBQ0EsWUFDRSxhQUFjLGVBRWhCLFlBQ0EsWUFDRSxjQUFlLGVBRWpCLFlBQ0EsWUFDRSxZQUFhLGdCWFRmLHlCV2xESSxRQUFnQyxPakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsV2pCOEhILFlpQjVIQyxTQUNBLFNBQ0UsYWpCMEhILFlpQnhIQyxTQUNBLFNBQ0UsY2pCc0hILFlpQnBIQyxTQUNBLFNBQ0UsWWpCa0hILFlpQmpJQyxRQUFnQyxPakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFdqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxhakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsY2pCdUhILGlCaUJySEMsU0FDQSxTQUNFLFlqQm1ISCxpQmlCbElDLFFBQWdDLE9qQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsV2pCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGFqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxjakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsWWpCb0hILGdCaUJuSUMsUUFBZ0MsT2pCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFdqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGFqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGNqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLFlqQjhHRCxlaUI3SEQsUUFBZ0MsT2pCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxXakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsYWpCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGNqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxZakJzSEgsaUJpQnJJQyxRQUFnQyxPakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsV2pCbUlILGVpQmpJQyxTQUNBLFNBQ0UsYWpCK0hILGVpQjdIQyxTQUNBLFNBQ0UsY2pCMkhILGVpQnpIQyxTQUNBLFNBQ0UsWWpCdUhILGVpQnRJQyxRQUFnQyxRakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsWWpCOEhILFlpQjVIQyxTQUNBLFNBQ0UsY2pCMEhILFlpQnhIQyxTQUNBLFNBQ0UsZWpCc0hILFlpQnBIQyxTQUNBLFNBQ0UsYWpCa0hILFlpQmpJQyxRQUFnQyxRakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFlqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxjakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsZWpCdUhILGlCaUJySEMsU0FDQSxTQUNFLGFqQm1ISCxpQmlCbElDLFFBQWdDLFFqQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsWWpCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGNqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxlakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsYWpCb0hILGdCaUJuSUMsUUFBZ0MsUWpCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFlqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGNqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGVqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLGFqQjhHRCxlaUI3SEQsUUFBZ0MsUWpCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxZakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsY2pCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGVqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxhakJzSEgsaUJpQnJJQyxRQUFnQyxRakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsWWpCbUlILGVpQmpJQyxTQUNBLFNBQ0UsY2pCK0hILGVpQjdIQyxTQUNBLFNBQ0UsZWpCMkhILGVpQnpIQyxTQUNBLFNBQ0UsYWpCdUhILGVpQi9HQyxTQUF3QixPakIyR3pCLGtCaUIxR0MsVUFDQSxVQUNFLFdqQndHSCxrQmlCdEdDLFVBQ0EsVUFDRSxhakJvR0gsa0JpQmxHQyxVQUNBLFVBQ0UsY2pCZ0dILGtCaUI5RkMsVUFDQSxVQUNFLFlqQjRGSCxrQmlCM0dDLFNBQXdCLE9qQjRHekIsaUJpQjNHQyxVQUNBLFVBQ0UsV2pCeUdILGlCaUJ2R0MsVUFDQSxVQUNFLGFqQnFHSCxpQmlCbkdDLFVBQ0EsVUFDRSxjakJpR0gsaUJpQi9GQyxVQUNBLFVBQ0UsWWpCNkZILGlCaUI1R0MsU0FBd0IsT2pCc0d2QixnQmlCckdELFVBQ0EsVUFDRSxXakJtR0QsZ0JpQmpHRCxVQUNBLFVBQ0UsYWpCK0ZELGdCaUI3RkQsVUFDQSxVQUNFLGNqQjJGRCxnQmlCekZELFVBQ0EsVUFDRSxZakJ1RkQsZ0JpQnRHRCxTQUF3QixPakI4R3pCLGtCaUI3R0MsVUFDQSxVQUNFLFdqQjJHSCxrQmlCekdDLFVBQ0EsVUFDRSxhakJ1R0gsa0JpQnJHQyxVQUNBLFVBQ0UsY2pCbUdILGtCaUJqR0MsVUFDQSxVQUNFLFlqQitGSCxrQmlCOUdDLFNBQXdCLE9qQitHekIsZ0JpQjlHQyxVQUNBLFVBQ0UsV2pCNEdILGdCaUIxR0MsVUFDQSxVQUNFLGFqQndHSCxnQmlCdEdDLFVBQ0EsVUFDRSxjakJvR0gsZ0JpQmxHQyxVQUNBLFVBQ0UsWWpCZ0dILGdCaUIxRkgsV0FBbUIsT0FBUSxlQUMzQixZQUNBLFlBQ0UsV0FBWSxlQUVkLFlBQ0EsWUFDRSxhQUFjLGVBRWhCLFlBQ0EsWUFDRSxjQUFlLGVBRWpCLFlBQ0EsWUFDRSxZQUFhLGdCWFRmLDBCV2xESSxRQUFnQyxPakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsV2pCOEhILFlpQjVIQyxTQUNBLFNBQ0UsYWpCMEhILFlpQnhIQyxTQUNBLFNBQ0UsY2pCc0hILFlpQnBIQyxTQUNBLFNBQ0UsWWpCa0hILFlpQmpJQyxRQUFnQyxPakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFdqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxhakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsY2pCdUhILGlCaUJySEMsU0FDQSxTQUNFLFlqQm1ISCxpQmlCbElDLFFBQWdDLE9qQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsV2pCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGFqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxjakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsWWpCb0hILGdCaUJuSUMsUUFBZ0MsT2pCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFdqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGFqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGNqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLFlqQjhHRCxlaUI3SEQsUUFBZ0MsT2pCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxXakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsYWpCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGNqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxZakJzSEgsaUJpQnJJQyxRQUFnQyxPakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsV2pCbUlILGVpQmpJQyxTQUNBLFNBQ0UsYWpCK0hILGVpQjdIQyxTQUNBLFNBQ0UsY2pCMkhILGVpQnpIQyxTQUNBLFNBQ0UsWWpCdUhILGVpQnRJQyxRQUFnQyxRakJpSWpDLFlpQmhJQyxTQUNBLFNBQ0UsWWpCOEhILFlpQjVIQyxTQUNBLFNBQ0UsY2pCMEhILFlpQnhIQyxTQUNBLFNBQ0UsZWpCc0hILFlpQnBIQyxTQUNBLFNBQ0UsYWpCa0hILFlpQmpJQyxRQUFnQyxRakJrSWpDLGlCaUJqSUMsU0FDQSxTQUNFLFlqQitISCxpQmlCN0hDLFNBQ0EsU0FDRSxjakIySEgsaUJpQnpIQyxTQUNBLFNBQ0UsZWpCdUhILGlCaUJySEMsU0FDQSxTQUNFLGFqQm1ISCxpQmlCbElDLFFBQWdDLFFqQm1JakMsZ0JpQmxJQyxTQUNBLFNBQ0UsWWpCZ0lILGdCaUI5SEMsU0FDQSxTQUNFLGNqQjRISCxnQmlCMUhDLFNBQ0EsU0FDRSxlakJ3SEgsZ0JpQnRIQyxTQUNBLFNBQ0UsYWpCb0hILGdCaUJuSUMsUUFBZ0MsUWpCNkgvQixlaUI1SEQsU0FDQSxTQUNFLFlqQjBIRCxlaUJ4SEQsU0FDQSxTQUNFLGNqQnNIRCxlaUJwSEQsU0FDQSxTQUNFLGVqQmtIRCxlaUJoSEQsU0FDQSxTQUNFLGFqQjhHRCxlaUI3SEQsUUFBZ0MsUWpCcUlqQyxpQmlCcElDLFNBQ0EsU0FDRSxZakJrSUgsaUJpQmhJQyxTQUNBLFNBQ0UsY2pCOEhILGlCaUI1SEMsU0FDQSxTQUNFLGVqQjBISCxpQmlCeEhDLFNBQ0EsU0FDRSxhakJzSEgsaUJpQnJJQyxRQUFnQyxRakJzSWpDLGVpQnJJQyxTQUNBLFNBQ0UsWWpCbUlILGVpQmpJQyxTQUNBLFNBQ0UsY2pCK0hILGVpQjdIQyxTQUNBLFNBQ0UsZWpCMkhILGVpQnpIQyxTQUNBLFNBQ0UsYWpCdUhILGVpQi9HQyxTQUF3QixPakIyR3pCLGtCaUIxR0MsVUFDQSxVQUNFLFdqQndHSCxrQmlCdEdDLFVBQ0EsVUFDRSxhakJvR0gsa0JpQmxHQyxVQUNBLFVBQ0UsY2pCZ0dILGtCaUI5RkMsVUFDQSxVQUNFLFlqQjRGSCxrQmlCM0dDLFNBQXdCLE9qQjRHekIsaUJpQjNHQyxVQUNBLFVBQ0UsV2pCeUdILGlCaUJ2R0MsVUFDQSxVQUNFLGFqQnFHSCxpQmlCbkdDLFVBQ0EsVUFDRSxjakJpR0gsaUJpQi9GQyxVQUNBLFVBQ0UsWWpCNkZILGlCaUI1R0MsU0FBd0IsT2pCc0d2QixnQmlCckdELFVBQ0EsVUFDRSxXakJtR0QsZ0JpQmpHRCxVQUNBLFVBQ0UsYWpCK0ZELGdCaUI3RkQsVUFDQSxVQUNFLGNqQjJGRCxnQmlCekZELFVBQ0EsVUFDRSxZakJ1RkQsZ0JpQnRHRCxTQUF3QixPakI4R3pCLGtCaUI3R0MsVUFDQSxVQUNFLFdqQjJHSCxrQmlCekdDLFVBQ0EsVUFDRSxhakJ1R0gsa0JpQnJHQyxVQUNBLFVBQ0UsY2pCbUdILGtCaUJqR0MsVUFDQSxVQUNFLFlqQitGSCxrQmlCOUdDLFNBQXdCLE9qQitHekIsZ0JpQjlHQyxVQUNBLFVBQ0UsV2pCNEdILGdCaUIxR0MsVUFDQSxVQUNFLGFqQndHSCxnQmlCdEdDLFVBQ0EsVUFDRSxjakJvR0gsZ0JpQmxHQyxVQUNBLFVBQ0UsWWpCZ0dILGdCaUIxRkgsV0FBbUIsT0FBUSxlQUMzQixZQUNBLFlBQ0UsV0FBWSxlQUVkLFlBQ0EsWUFDRSxhQUFjLGVBRWhCLFlBQ0EsWUFDRSxjQUFlLGVBRWpCLFlBQ0EsWUFDRSxZQUFhLGdCQ2pFbkIsdUJBRUksU0FBVSxTQUNWLElBQUssRUFDTCxNQUFPLEVBQ1AsT0FBUSxFQUNSLEtBQU0sRUFDTixRQUFTLEVBRVQsZUFBZ0IsS0FDaEIsUUFBUyxHQUVULGlCQUFrQixjQ1Z0QixnQkFBa0IsWW5CZ1JZLGNBQWMsQ0FBRSxLQUFLLENBQUUsTUFBTSxDQUFFLFFBQVEsQ0FBRSxpQkFBaUIsQ0FBRSxhQUFhLENBQUUsb0JtQjVRekcsY0FBaUIsV0FBWSxrQkFDN0IsV0FBaUIsWUFBYSxpQkFDOUIsYUFBaUIsWUFBYSxpQkFDOUIsZUNURSxTQUFVLE9BQ1YsY0FBZSxTQUNmLFlBQWEsT0RlWCxXQUF3QixXQUFZLGVBQ3BDLFlBQXdCLFdBQVksZ0JBQ3BDLGFBQXdCLFdBQVksaUJicUNwQyx5QmF2Q0EsY0FBd0IsV0FBWSxlQUNwQyxlQUF3QixXQUFZLGdCQUNwQyxnQkFBd0IsV0FBWSxrQmJxQ3BDLHlCYXZDQSxjQUF3QixXQUFZLGVBQ3BDLGVBQXdCLFdBQVksZ0JBQ3BDLGdCQUF3QixXQUFZLGtCYnFDcEMseUJhdkNBLGNBQXdCLFdBQVksZUFDcEMsZUFBd0IsV0FBWSxnQkFDcEMsZ0JBQXdCLFdBQVksa0JicUNwQywwQmF2Q0EsY0FBd0IsV0FBWSxlQUNwQyxlQUF3QixXQUFZLGdCQUNwQyxnQkFBd0IsV0FBWSxrQkFNeEMsZ0JBQW1CLGVBQWdCLG9CQUNuQyxnQkFBbUIsZUFBZ0Isb0JBQ25DLGlCQUFtQixlQUFnQixxQkFJbkMsbUJBQXVCLFluQjRQTyxjbUIzUDlCLHFCQUF1QixZbkIwUE8sa0JtQnpQOUIsb0JBQXVCLFluQjJQTyxjbUIxUDlCLGtCQUF1QixZbkIyUE8sY21CMVA5QixvQkFBdUIsWW5CMlBPLGlCbUIxUDlCLGFBQXVCLFdBQVksaUJBSW5DLFlBQWMsTW5CckNILGVMdU9YLGMwQnhPSSxNckI2Qk0sa0JxQjFCTixxQnBCT0YscUJvQkxNLE1BQU8sa0IxQnVPZixnQjBCNU9JLE1yQk9PLGtCcUJKUCx1QnBCT0YsdUJvQkxNLE1BQU8sa0JBTmIsY0FDRSxNckJvQ00sa0JxQmpDTixxQnBCT0YscUJvQkxNLE1BQU8sa0JBTmIsV0FDRSxNckJzQ00sa0JxQm5DTixrQnBCT0Ysa0JvQkxNLE1BQU8sa0JBTmIsY0FDRSxNckJtQ00sa0JxQmhDTixxQnBCT0YscUJvQkxNLE1BQU8sa0JBTmIsYUFDRSxNckJpQ00sa0JxQjlCTixvQnBCT0Ysb0JvQkxNLE1BQU8sa0JBTmIsWUFDRSxNckJFTyxrQnFCQ1AsbUJwQk9GLG1Cb0JMTSxNQUFPLGtCQU5iLFdBQ0UsTXJCU08sa0JxQk5QLGtCcEJPRixrQm9CTE0sTUFBTyxrQkZ1Q2YsV0FBYSxNbkJsQ0Ysa0JtQm1DWCxZQUFjLE1uQnRDSCxrQm1Cd0NYLGVBQWlCLE1uQnBDTix5Qm1CcUNYLGVBQWlCLE1uQi9DTiwrQm1CbURYLFdHdkRFLEtBQU0sQ0FBQSxDQUFBLEVBQUEsRUFDTixNQUFPLFlBQ1AsWUFBYSxLQUNiLGlCQUFrQixZQUNsQixPQUFRLEVIdURWLHNCQUF3QixnQkFBaUIsZUFFekMsWUFDRSxXQUFZLHFCQUNaLFVBQVcscUJBS2IsWUFBYyxNQUFPLGtCSWpFckIsU0FDRSxXQUFZLGtCQUdkLFdBQ0UsV0FBWSxpQkNWZCxTQUNFLFNBQVUsU0FDVixReEJnckJrQyxLd0IvcUJsQyxRQUFTLE1BQ1QsT3hCNjFCa0MsRXlCajJCbEMsWXpCb1I0QixhQUFhLENBQUUsa0JBQWtCLENBQUUsVUFBVSxDQUFFLE1BQU0sQ0FBRSxnQkFBZ0IsQ0FBRSxLQUFLLENBQUUsV0FBVyxDQUFFLGlCQUFpQixDQUFFLFVBQVUsQ0FBRSxtQkFBbUIsQ0FBRSxnQkFBZ0IsQ0FBRSxpQkFBaUIsQ0FBRSxtQnlCbFJsTixXQUFZLE9BQ1osWXpCNFI0QixJeUIzUjVCLFl6QmdTNEIsSXlCL1I1QixXQUFZLEtBQ1osV0FBWSxNQUNaLGdCQUFpQixLQUNqQixZQUFhLEtBQ2IsZUFBZ0IsS0FDaEIsZUFBZ0IsT0FDaEIsV0FBWSxPQUNaLFlBQWEsT0FDYixhQUFjLE9BQ2QsV0FBWSxLQ3FLUixVQUFVLFFGektkLFVBQVcsV0FDWCxRQUFTLEVBWFgsY0FhVyxReEJpMUJ5QixHd0I5MUJwQyxnQkFnQkksU0FBVSxTQUNWLFFBQVMsTUFDVCxNeEJpMUJnQyxNd0JoMUJoQyxPeEJpMUJnQyxNd0JwMkJwQyx3QkFzQk0sU0FBVSxTQUNWLFFBQVMsR0FDVCxhQUFjLFlBQ2QsYUFBYyxNQWlFcEIsbUNBNURBLGdCQUNFLFF4QnEwQmtDLE13QnIwQkgsRUEyRGpDLDBDQTVEQSx1QkFJSSxPQUFRLEVBd0RaLGtEQTVEQSwrQkFPTSxJQUFLLEVBQ0wsYXhCOHpCOEIsTXdCOXpCTSxNQUE0QixFQUNoRSxpQnhCdkJLLEt3QjBFWCxxQ0E5Q0Esa0JBQ0UsUUFBUyxFeEJ1ekJ5QixNd0Ixd0JwQyw0Q0E5Q0EseUJBSUksS0FBTSxFQUNOLE14Qm16QmdDLE13Qmx6QmhDLE94Qml6QmdDLE13Qnp3QnBDLG9EQTlDQSxpQ0FTTSxNQUFPLEVBQ1AsYUFBYyxNeEI4eUJnQixNd0I5eUJrQyxNQUE0QixFQUM1RixtQnhCdkNLLEt3QjBFWCxzQ0E5QkEsbUJBQ0UsUXhCdXlCa0MsTXdCdnlCSCxFQTZCakMsNkNBOUJBLDBCQUlJLElBQUssRUEwQlQscURBOUJBLGtDQU9NLE9BQVEsRUFDUixhQUFjLEVBQUUsTXhCZ3lCYyxNd0IveEI5QixvQnhCckRLLEt3QjBFWCxvQ0FoQkEsaUJBQ0UsUUFBUyxFeEJ5eEJ5QixNd0Ixd0JwQywyQ0FoQkEsd0JBSUksTUFBTyxFQUNQLE14QnF4QmdDLE13QnB4QmhDLE94Qm14QmdDLE13Qnp3QnBDLG1EQWhCQSxnQ0FTTSxLQUFNLEVBQ04sYUFBYyxNQUE0QixFQUFFLE14Qmd4QmQsTXdCL3dCOUIsa0J4QnJFSyxLd0IwRlgsZUFDRSxVeEIrdUJrQyxNd0I5dUJsQyxReEJtdkJrQyxPQUNBLE13Qm52QmxDLE14QnZHUyxLd0J3R1QsV0FBWSxPQUNaLGlCeEIvRlMsSzJCQ1AsYzNCNk4wQixPNEJ6TzlCLFlBRUUsU0FBVSxPQUZaLG1CQUtJLFdBQVksT0FDWixXQUFZLEtBS2hCLE9BQ0UsU0FBVSxNQUNWLElBQUssRUFDTCxLQUFNLEVBQ04sUTVCNHBCa0MsSzRCM3BCbEMsUUFBUyxLQUNULE1BQU8sS0FDUCxPQUFRLEtBQ1IsU0FBVSxPQUdWLFFBQVMsRUFPWCxjQUNFLFNBQVUsU0FDVixNQUFPLEtBQ1AsTzVCaTVCa0MsTTRCLzRCbEMsZUFBZ0IsS0FHaEIsMEJDM0JJLFc3QnM4QjhCLFVBQVUsSUFBSSxTNEJ6NkI5QyxVNUJ1NkJnQyxtQjZCaDhCOUIsdUNEdUJKLDBCQ3RCTSxXQUFZLE1EMEJsQiwwQkFDRSxVNUJxNkJnQyxLNEJqNkJsQyxrQ0FDRSxVNUJrNkJnQyxZNEI5NUJwQyx5QkFDRSxRQUFTLEtBQ1QsV0V1RmlDLGtCRnpGbkMsd0NBS0ksV0VvRitCLG1CRm5GL0IsU0FBVSxPQU5kLHVDQUFBLHVDQVdJLFlBQWEsRUFYakIscUNBZUksV0FBWSxLQUloQix1QkFDRSxRQUFTLEtBQ1QsWUFBYSxPQUNiLFdFbUVpQyxrQkZ0RW5DLCtCQU9JLFFBQVMsTUFDVCxPRThEK0IsbUJGN0QvQixPQUFRLFlBQ1IsUUFBUyxHQVZiLCtDQWVJLGVBQWdCLE9BQ2hCLGdCQUFpQixPQUNqQixPQUFRLEtBakJaLDhEQW9CTSxXQUFZLEtBcEJsQix1REF3Qk0sUUFBUyxLQU1mLGVBQ0UsU0FBVSxTQUNWLFFBQVMsS0FDVCxlQUFnQixPQUNoQixNQUFPLEtBR1AsZUFBZ0IsS0FDaEIsaUI1QjNHUyxLNEI0R1QsZ0JBQWlCLFlBQ2pCLE81QndINEIsSTRCeEhRLE01Qm5HM0IsZTJCQ1AsYzNCOE4wQixNNEJ4SDVCLFFBQVMsRUFJWCxnQkFDRSxTQUFVLE1BQ1YsSUFBSyxFQUNMLEtBQU0sRUFDTixRNUJnakJrQyxLNEIvaUJsQyxNQUFPLE1BQ1AsT0FBUSxNQUNSLGlCNUJsSFMsSzRCMkdYLHFCQVVXLFFBQVMsRUFWcEIscUJBV1csUTVCK3pCeUIsRzRCMXpCcEMsY0FDRSxRQUFTLEtBQ1QsWUFBYSxXQUNiLGdCQUFpQixjQUNqQixRNUIyekJrQyxLQUNBLEs0QjN6QmxDLGM1QjJGNEIsSTRCM0ZjLE01QnZJakMsUTJCaUJQLHVCR3VIK0Isa0JIdEgvQix3QkdzSCtCLGtCRk5uQyxxQkFTSSxRNUJzekJnQyxLQUNBLEs0QnJ6QmhDLE81Qm96QmdDLE1BQ0EsTUFEQSxNNEJwekJ5RCxLQUs3RixhQUNFLGNBQWUsRUFDZixZNUJ1STRCLEk0QmxJOUIsWUFDRSxTQUFVLFNBR1YsS0FBTSxFQUFBLEVBQUEsS0FDTixRNUIwd0JrQyxLNEJ0d0JwQyxjQUNFLFFBQVMsS0FDVCxVQUFXLEtBQ1gsWUFBYSxPQUNiLGdCQUFpQixTQUNqQixRQUFTLE9BQ1QsVzVCMEQ0QixJNEIxRFcsTTVCeEs5QixRMkIrQlAsMkJHeUcrQixrQkh4Ry9CLDBCR3dHK0Isa0JGMEJuQyxnQkFhSSxPQUFRLE9BS1oseUJBQ0UsU0FBVSxTQUNWLElBQUssUUFDTCxNQUFPLEtBQ1AsT0FBUSxLQUNSLFNBQVUsT3RCdklSLHlCc0J6QkosY0F1S0ksVTVCdXdCZ0MsTTRCdHdCaEMsTzVCNnVCZ0MsUTRCN3VCSyxLQWxKekMseUJBc0pJLFdFN0QrQixvQkZ6Rm5DLHdDQXlKTSxXRWhFNkIscUJGdEVuQyx1QkEySUksV0VyRStCLG9CRnRFbkMsK0JBOElNLE9FeEU2QixxQkZ5RTdCLE9BQVEsWUFRWixVQUFZLFU1Qit1QnNCLE9NdDVCaEMseUJzQjJLRixVQUNBLFVBQ0UsVTVCdXVCZ0MsT01wNUJoQywwQnNCa0xGLFVBQVksVTVCaXVCc0IsUStCLzhCcEMsTUZnQk0sVzdCaVB3QixRQUFRLEtBQUssTzZCN09yQyx1Q0VwQk4sTUZxQlEsV0FBWSxNRXJCcEIsaUJBSUksUUFBUyxFQUliLHFCQUVJLFFBQVMsS0FJYixZQUNFLFNBQVUsU0FDVixPQUFRLEVBQ1IsU0FBVSxPRkROLFc3QmtQd0IsT0FBTyxLQUFLLEs2QjlPcEMsdUNFTk4sWUZPUSxXQUFZLE1FUHBCLGtCQU9JLE1BQU8sRUFDUCxPQUFRLEtGTk4sVzdCbVB3QixNQUFNLEtBQUssSzZCL09uQyx1Q0VOTixrQkZPUSxXQUFZLE1HbEJwQixVQUNBLFVBRkEsV0FEQSxRQUlFLFNBQVUsU0FHWixpQkFDRSxZQUFhLE9Db0JYLHdCQUNFLFFBQVMsYUFDVCxZakMrTndCLE9pQzlOeEIsZWpDNk53QixPaUM1TnhCLFFBQVMsR0FoQ2IsV2pDMlA0QixLaUMzUEgsTUFDekIsYWpDMFA0QixLaUMxUEQsTUFBTSxZQUNqQyxjQUFlLEVBQ2YsWWpDd1A0QixLaUN4UEYsTUFBTSxZQXFEOUIsOEJBQ0UsWUFBYSxFRDFDbkIsZUFDRSxTQUFVLFNBQ1YsSUFBSyxLQUNMLEtBQU0sRUFDTixRaEN5cEJrQyxLZ0N4cEJsQyxRQUFTLEtBQ1QsTUFBTyxLQUNQLFVoQ2l1QmtDLE1nQ2h1QmxDLFFoQ2t1QmtDLE1BREEsRWdDaHVCbEMsT2hDa3VCa0MsUWdDbHVCVCxFQUFFLEVOMkp2QixVQUFVLEtNekpkLE1oQ1hTLFFnQ1lULFdBQVksS0FDWixXQUFZLEtBQ1osaUJoQ3ZCUyxLZ0N3QlQsZ0JBQWlCLFlBQ2pCLE9oQzRNNEIsSWdDNU1HLE1oQ2Z0QixnQjJCQ1AsYzNCNk4wQixPZ0N0TTFCLG9CQUNFLE1BQU8sS0FDUCxLQUFNLEVBR1IscUJBQ0UsTUFBTyxFQUNQLEtBQU0sSzFCWVIseUIwQm5CQSx1QkFDRSxNQUFPLEtBQ1AsS0FBTSxFQUdSLHdCQUNFLE1BQU8sRUFDUCxLQUFNLE0xQllSLHlCMEJuQkEsdUJBQ0UsTUFBTyxLQUNQLEtBQU0sRUFHUix3QkFDRSxNQUFPLEVBQ1AsS0FBTSxNMUJZUix5QjBCbkJBLHVCQUNFLE1BQU8sS0FDUCxLQUFNLEVBR1Isd0JBQ0UsTUFBTyxFQUNQLEtBQU0sTTFCWVIsMEIwQm5CQSx1QkFDRSxNQUFPLEtBQ1AsS0FBTSxFQUdSLHdCQUNFLE1BQU8sRUFDUCxLQUFNLE1BT1osdUJBRUksSUFBSyxLQUNMLE9BQVEsS0FDUixXQUFZLEVBQ1osY2hDK3JCZ0MsUWlDOXRCaEMsZ0NBQ0UsUUFBUyxhQUNULFlqQytOd0IsT2lDOU54QixlakM2TndCLE9pQzVOeEIsUUFBUyxHQXpCYixXQUFZLEVBQ1osYWpDbVA0QixLaUNuUEQsTUFBTSxZQUNqQyxjakNrUDRCLEtpQ2xQQSxNQUM1QixZakNpUDRCLEtpQ2pQRixNQUFNLFlBOEM5QixzQ0FDRSxZQUFhLEVEVW5CLDBCQUVJLElBQUssRUFDTCxNQUFPLEtBQ1AsS0FBTSxLQUNOLFdBQVksRUFDWixZaENpckJnQyxRaUM5dEJoQyxtQ0FDRSxRQUFTLGFBQ1QsWWpDK053QixPaUM5TnhCLGVqQzZOd0IsT2lDNU54QixRQUFTLEdBbEJiLFdqQzZPNEIsS2lDN09ILE1BQU0sWUFDL0IsYUFBYyxFQUNkLGNqQzJPNEIsS2lDM09BLE1BQU0sWUFDbEMsWWpDME80QixLaUMxT0YsTUF1Q3hCLHlDQUNFLFlBQWEsRUE3QmYsbUNEbURFLGVBQWdCLEVBS3RCLHlCQUVJLElBQUssRUFDTCxNQUFPLEtBQ1AsS0FBTSxLQUNOLFdBQVksRUFDWixhaENncUJnQyxRaUM5dEJoQyxrQ0FDRSxRQUFTLGFBQ1QsWWpDK053QixPaUM5TnhCLGVqQzZOd0IsT2lDNU54QixRQUFTLEdBSlgsa0NBZ0JJLFFBQVMsS0FHWCxtQ0FDRSxRQUFTLGFBQ1QsYWpDNE1zQixPaUMzTXRCLGVqQzBNc0IsT2lDek10QixRQUFTLEdBOUJmLFdqQ3NPNEIsS2lDdE9ILE1BQU0sWUFDL0IsYWpDcU80QixLaUNyT0QsTUFDM0IsY2pDb080QixLaUNwT0EsTUFBTSxZQWlDaEMsd0NBQ0UsWUFBYSxFQVZiLG1DRGlEQSxlQUFnQixFQU90QixvQ0FBQSxrQ0FBQSxtQ0FBQSxpQ0FLSSxNQUFPLEtBQ1AsT0FBUSxLQUtaLGtCRTlHRSxPQUFRLEVBQ1IsT2xDbXNCa0MsTWtDbnNCaEIsRUFDbEIsU0FBVSxPQUNWLFdBQVksSUFBSSxNbENDUCxRZ0NpSFgsZUFDRSxRQUFTLE1BQ1QsTUFBTyxLQUNQLFFoQ21wQmtDLE9BQ0EsT2dDbnBCbEMsTUFBTyxLQUNQLFloQ2lLNEIsSWdDaEs1QixNaENoSFMsUWdDaUhULFdBQVksUUFFWixZQUFhLE9BQ2IsaUJBQWtCLFlBQ2xCLE9BQVEsRUFYVixxQi9CMUdFLHFCK0JvSUUsTWhDb25CZ0MsUWdDbm5CaEMsZ0JBQWlCLEtHL0lqQixpQm5DR08sUWdDaUhYLHNCQUFBLHNCQWlDSSxNaENwSk8sS2dDcUpQLGdCQUFpQixLR3RKakIsaUJuQzZCTSxRZ0N1RlYsd0JBQUEsd0JBd0NJLE1oQ3RKTyxRZ0N1SlAsZUFBZ0IsS0FDaEIsaUJBQWtCLFlBUXRCLG9CQUNFLFFBQVMsTUFJWCxpQkFDRSxRQUFTLE1BQ1QsUWhDdWtCa0MsTUF1QkEsT2dDN2xCbEMsY0FBZSxFTkFYLFVBQVUsUU1FZCxNaEN6S1MsUWdDMEtULFlBQWEsT0FJZixvQkFDRSxRQUFTLE1BQ1QsUWhDbWxCa0MsT0FDQSxPZ0NubEJsQyxNaEM5S1MsUW9DWFgsT0FDRSxRQUFTLGFBQ1QsUXBDMjVCa0MsTUFDQSxLMEIvdkJoQyxVQUFVLElVM0paLFlwQ3dSNEIsSW9DdlI1QixZQUFhLEVBQ2IsV0FBWSxPQUNaLFlBQWEsT0FDYixlQUFnQixTVEtkLGMzQjZOMEIsTzZCL054QixXN0JpYndCLE1BQU0sS0FBSyxXQUFXLENBQUUsaUJBQWlCLEtBQUssV0FBVyxDQUFFLGFBQWEsS0FBSyxXQUFXLENBQUUsV0FBVyxLQUFLLFk2QjdhbEksdUNPZk4sT1BnQlEsV0FBWSxNT0pWLGNuQ0RSLGNtQ0dJLGdCQUFpQixLQWR2QixhQW9CSSxRQUFTLEtBS2IsWUFDRSxTQUFVLFNBQ1YsSUFBSyxLQU9QLFlBQ0UsY3BDaTRCa0MsS29DaDRCbEMsYXBDZzRCa0MsSzJCdjVCaEMsYzNCMDVCZ0MsTW9DMTNCbEMsZUNqREEsTXJDTVMsS3FDTFQsaUJyQ2lDUSxRcUMvQkEsc0JwQ1lSLHNCb0NWSSxNckNDSyxLcUNBTCxpQkFBa0IsUUFIZCxzQkFBQSxzQkFRSixRQUFTLEVBQ1QsV0FBWSxFQUFFLEVBQUUsRXJDNFhRLE1BdFdwQixtQm9DZVIsaUJDakRBLE1yQ01TLEtxQ0xULGlCckNXUyxRcUNURCx3QnBDWVIsd0JvQ1ZJLE1yQ0NLLEtxQ0FMLGlCQUFrQixRQUhkLHdCQUFBLHdCQVFKLFFBQVMsRUFDVCxXQUFZLEVBQUUsRUFBRSxFckM0WFEsTUE1WG5CLHFCb0NxQ1QsZUNqREEsTXJDTVMsS3FDTFQsaUJyQ3dDUSxRcUN0Q0Esc0JwQ1lSLHNCb0NWSSxNckNDSyxLcUNBTCxpQkFBa0IsUUFIZCxzQkFBQSxzQkFRSixRQUFTLEVBQ1QsV0FBWSxFQUFFLEVBQUUsRXJDNFhRLE1BL1ZwQixtQm9DUVIsWUNqREEsTXJDTVMsS3FDTFQsaUJyQzBDUSxRcUN4Q0EsbUJwQ1lSLG1Cb0NWSSxNckNDSyxLcUNBTCxpQkFBa0IsUUFIZCxtQkFBQSxtQkFRSixRQUFTLEVBQ1QsV0FBWSxFQUFFLEVBQUUsRXJDNFhRLE1BN1ZwQixvQm9DTVIsZUNqREEsTXJDZVMsUXFDZFQsaUJyQ3VDUSxRcUNyQ0Esc0JwQ1lSLHNCb0NWSSxNckNVSyxRcUNUTCxpQkFBa0IsUUFIZCxzQkFBQSxzQkFRSixRQUFTLEVBQ1QsV0FBWSxFQUFFLEVBQUUsRXJDNFhRLE1BaFdwQixtQm9DU1IsY0NqREEsTXJDTVMsS3FDTFQsaUJyQ3FDUSxRcUNuQ0EscUJwQ1lSLHFCb0NWSSxNckNDSyxLcUNBTCxpQkFBa0IsUUFIZCxxQkFBQSxxQkFRSixRQUFTLEVBQ1QsV0FBWSxFQUFFLEVBQUUsRXJDNFhRLE1BbFdwQixtQm9DV1IsYUNqREEsTXJDZVMsUXFDZFQsaUJyQ01TLFFxQ0pELG9CcENZUixvQm9DVkksTXJDVUssUXFDVEwsaUJBQWtCLFFBSGQsb0JBQUEsb0JBUUosUUFBUyxFQUNULFdBQVksRUFBRSxFQUFFLEVyQzRYUSxNQWpZbkIscUJvQzBDVCxZQ2pEQSxNckNNUyxLcUNMVCxpQnJDYVMsUXFDWEQsbUJwQ1lSLG1Cb0NWSSxNckNDSyxLcUNBTCxpQkFBa0IsUUFIZCxtQkFBQSxtQkFRSixRQUFTLEVBQ1QsV0FBWSxFQUFFLEVBQUUsRXJDNFhRLE1BMVhuQixrQnNDZlgsYUFDRSxlOUNPZ0IsSzhDTmhCLG9DQUZGLGFBR0ksZTlDTWMsTThDSmYsbUNBRUcsaUJBQWtCLEtBQ2xCLFFBQVMsS0FDVCxvQ0FKSCxtQ0FLSyxpQkFBa0IsTUFMdkIsMENBUUssT0FBUSxFQUFBLEtBQUEsRUFBQSxFQVJiLHVEQVdPLE9BQVEsS0FDUixNQUFPLEtBWmQsMkNBaUJPLGNBQWUsSUFqQnRCLHNDQXNCRyxpQkFBa0IsS0F0QnJCLHlDQXlCSyxjQUFlLElBekJwQiw0REE2QkssUUFBUyxNQUdYLG9DQWhDSCxzQ0FpQ0ssUUFBUyxLQUNULGlCQUFrQixHQWxDdkIsd0NBc0NLLGNBQWUsRUFDZixZQUFhLEtBdkNsQiwwQ0EyQ0ssV0FBWSxLQTNDakIsMENBK0NLLGNBQWUsS0FDZixvQ0FoREwsMENBaURPLGNBQWUsRUFDZixhQUFjLE1BbERyQixpQ0F1REcsUUFBUyxLQUNULGdCQUFpQixTQUNqQixjQUFlLEtBRWYsb0NBM0RILGlDQTRESyxXQUFZLE1BQ1osY0FBZSxNQTdEcEIscURBaUVLLFFBQVMsS0FDVCxZQUFhLE9BbEVsQiwwREFxRU8sYUFBYyxLQXJFckIseURBeUVPLFVBQVcsZUFLbkIsb0JBQ0UsWUFBYSxLQUNiLGVBQWdCLEtBQ2hCLFdBQVksSUFBSSxNOUNyRUUsUThDc0VsQixRQUFTLEtBQ1QsZUFBZ0IsT0FDaEIsb0NBTkYsb0JBT0ksUUFBUyxLQUNULGVBQWdCLElBQ2hCLFlBQWEsUUFLbkIsZUFDQSxzQjVDakdFLE9BQVEsRUFDUixRQUFTLEVBQ1QsV0FBWSxLNENrR1YsUUFBUyxLQUNULGdCQUFpQixPQUNqQixvQ0FOSixlQUNBLHNCQU1NLGNBQWUsR0FJckIsbUJBQ0UsV0FBWSxLQUNaLG9DQUZGLG1CQUdJLFlBQWEsTUFHakIsa0JBRUksZUFBZ0IsS0FDaEIsY0FBZSxJQUFJLE05Q3BHRCxROENpR3RCLGdDQUtNLHFCQUFzQixFQUN0QixjQUFlLEtBTnJCLCtCQVNNLG1CQUFvQixFQUNwQixjQUFlLEtBVnJCLG9CQWFNLFVBQVcsT0FJakIseUJBRUksZUFBZ0IsS0FGcEIsdUNBSU0scUJBQXNCLEVBSjVCLHNDQU9NLG1CQUFvQixFQVAxQiwrQ0FVTSxlQUFnQixNQUNoQixRQUFTLGFBQ1QsZUFBZ0IsT0FadEIsNkNBZU0sUUFBUyxpQ0FmZiwwQ0FrQk0sUUFBUyxnQ0FsQmYsK0NBcUJNLFFBQVMsK0JBckJmLGdEQXdCTSxRQUFTLGdDQzNKZiw0QkFHTSxJQUFLLEtBSFgsd0JBT0ksV0FBWSxPQUNaLG9DQVJKLHdCQVNNLFdBQVksS0FUbEIsaUNBWVEsUUFBUyxPQVpqQixjQWlCSSxRQUFTLEtBQ1QsU0FBVSxTQUNWLE1BQU8sRUFDUCxNQUFPLEtBQ1AsT0FBUSxLQUNSLGlCQUFrQixLQUNsQixRQUFTLEdBQ1QsUUFBUyxFQUliLGFBQ0UsU0FBVSxNQUNWLElBQUssRUFDTCxNQUFPLEVBQ1AsS0FBTSxFQUNOLFFBQVMsS0FMWCxxREFRTSxXQUFZLEVBQUksSUFBSSxJQUFJLGdCQVI5QixvRUFjTSxXQUFZLDREQWRsQiwrR0FrQlUsUUFBUyxLQWxCbkIsK0dBc0JVLFFBQVMsTUF0Qm5CLDRGQUFBLGlHQTRCUSxNQUFPLEtBNUJmLGtHQUFBLHVHQStCVSxNL0M1Q00sUStDYWhCLHFHQW9DUSxNQUFPLEtBcENmLHVHQUFBLHlHQXlDUSxNQUFPLEtBekNmLGlJQStDWSxNQUFPLEtBRUwsb0NBakRkLHVJQWtEZ0IsTS9DL0RBLFMrQ2FoQiw2REE4RFEsWUFBYSxLQTlEckIscUZBZ0VVLFFBQVMsS0FoRW5CLHVCQXVFSSxpQkFBa0IsS0FDbEIsTy9DakRlLEsrQ21EZixvQ0ExRUosdUJBMkVNLE8vQ25EYSxPK0N4Qm5CLGlDQStFTSxRQUFTLEtBQ1QsWUFBYSxPQUNiLGUvQ3JHWSxLK0NzR1osT0FBUSxLQUNSLG9DQW5GTixpQ0FvRlEsZS9DdkdVLE0rQ21CbEIsZ0RBd0ZRLE1BQU8sRUF4RmYseUVBMEZVLFFBQVMsTUExRm5CLHlFQThGVSxRQUFTLEtBOUZuQixvREFpR1UsTUFBTyxNQUNQLE9BQVEsS0FDUixvQ0FuR1Ysb0RBb0dZLE1BQU8sT0FwR25CLDREQTBHUSxNQUFPLEVBQ1AsWUFBYSxLQTNHckIseUVBNkdVLFVBQVcsTUFFYixvQ0EvR1IsNERBbUhVLFlBQWEsS0FuSHZCLHlFQWlIWSxVQUFXLE9BSWYsb0NBckhSLHlFQXVIWSxVQUFXLFFBR2Ysb0NBMUhSLDREQTJIVSxZQUFhLE1BM0h2Qiw2R0FnSVksTS9DN0lJLFErQ2FoQixpSEFtSWMsVy9DbkpELElBQUksSUFBSyxZK0NvSlIsVUFBVyxnQkFwSXpCLDZGQTBJVSxNL0N0SlEsSytDeUpOLG9DQTdJWixtR0E4SWMsTS9DM0pFLFMrQ2FoQixrRkFvSlUsUUFBUyxLQUNULFlBQWEsT0FySnZCLG9HQXlKVSxRQUFTLEtBekpuQixnREE4SlEsTUFBTyxFQUNQLFFBQVMsS0FDVCxvQ0FoS1IsZ0RBaUtVLFlBQWEsS0FDYixRQUFTLE9BbEtuQix5RUFBQSw4RUFzS1UsUUFBUyxLQUNULElBQUssS0FDTCxjQUFlLEVBQ2YsYUFBYyxLQUNkLFlBQWEsT0ExS3ZCLG1GQUFBLHdGQTRLWSxRQUFTLEtBNUtyQixzR0FBQSwyR0ErS1ksYUFBYyxJQS9LMUIsMkRBbUxVLFFBQVMsTUFuTG5CLDREQXVMVSxRQUFTLEtBdkxuQixvRkEyTFksTS9DeE1JLFErQ2FoQix3RkE2TGMsVy9DN01ELElBQUksSUFBSyxZK0M4TVIsVUFBVyxnQkE5THpCLDJFQWtNWSxRQUFTLEtBbE1yQiw0RUFzTVksUUFBUyxNQXRNckIseURBNE1RLE1BQU8sRUFDUCxZQUFhLEtBN01yQixvRUErTVUsUUFBUyxNQS9NbkIscUVBa05VLFFBQVMsS0FFWCxvQ0FwTlIseURBcU5VLFFBQVMsTUFyTm5CLHlFQXdOVSxZQUFhLEtBeE52QixvRkEwTlksUUFBUyxLQTFOckIscUZBNk5ZLFFBQVMsTUE3TnJCLGtEQW1PUSxZQUFhLEtBQ2IsTUFBTyxFQUNQLG9DQXJPUixrREFzT1UsWUFBYSxHQXRPdkIsMEVBeU9VLFdBQVksS0FDWixPQUFRLEtBQ1IsaUJBQWtCLFlBQ2xCLFFBQVMsRUFDVCxPQUFRLFFBQ1IsVUFBVyxPQUNYLE0vQzNQUSxLK0M0UFIsVy9DaFFHLElBQUksSUFBSyxZK0NrUVYsb0NBbFBaLGdGQW1QYyxXL0NuUUQsSUFBSSxJQUFLLFkrQ29RUixNL0NqUUUsUytDYWhCLHVGQXdQWSxRQUFTLE1BeFByQixzRkEyUFksUUFBUyxLQTNQckIsK0VBZ1FZLFFBQVMsS0FoUXJCLDhFQW1RWSxRQUFTLE1BblFyQiwyREF5UVEsUUFBUyxNQUNULFVBQVcsUUFBQSxJQUFBLFNBMVFuQiw0Q0E4UVEsUUFBUyxLQUNULFNBQVUsTUFDVixJL0N6UFcsSytDMFBYLEtBQU0sRUFDTixNQUFPLEVBQ1AsT0FBUSxFQUNSLE1BQU8sS0FDUCxpQkFBa0IsS0FDbEIsUUFBUyxHQUdULG9DQXpSUiw0Q0EwUlUsT0FBUSxNQUNSLEkvQ25RUyxPK0N4Qm5CLCtEQStSVSxlL0NuVFEsSytDdVRSLE9BQVEsS0FIUixvQ0FoU1YsK0RBaVNZLGUvQ3BUTSxNK0NtQmxCLCtFQXNTWSxTQUFVLFNBQ1YsS0FBTSxFQUNOLE1BQU8sRUFDUCxPQUFRLEVBQ1IsY0FBZSxLQUNmLGlCQUFrQixLQUNsQixXQUFZLElBQUksTS9DdlROLFErQ3dUVixjQUFlLEtBQ2YsTUFBTyxNQUNQLG9DQS9TWiwrRUFnVGMsUUFBUyxNQWhUdkIseUdBbVRjLGUvQ3ZVSSxLK0N3VUosb0NBcFRkLHlHQXFUZ0IsZS9DeFVFLE0rQ21CbEIscUdBeVRjLFdBQVksS0FDWixjQUFlLEtBQ2YsaUJBQWtCLFlBM1RoQyxpSkE4VGtCLFFBQVMsS0FDVCxJQUFLLEtBQ0wsZUFBZ0IsS0FoVWxDLDZHQW9VZ0IsV0FBWSxJQUFJLE0vQy9VVixRK0NnVk4sUUFBUyxLQUNULFlBQWEsS0FDYixXQUFZLEtBdlU1Qiw0SEFBQSx5SEEyVWtCLGNBQWUsSUFHbkIsb0NBOVVkLHFHQStVZ0IsUUFBUyxPQS9VekIsd0ZBdVZZLFFBQVMsS0FDVCxZQUFhLE9BeFZ6QixrSEEyVmdCLFdBQVksS0EzVjVCLHFIQStWa0IsUUFBUyxhQS9WM0Isb0hBa1drQixRQUFTLEtBRVgsb0NBcFdoQixxSEFzV29CLFFBQVMsS0F0VzdCLG9IQXlXb0IsUUFBUyxjQXpXN0IsaUZBbVhZLE9BQVEsaURBQ1IsUUFBUyxLQUNULFlBQWEsT0FFYixvQ0F2WFosaUZBd1hjLE9BQVEsTUFJUixvQ0E1WGQseUdBNlhnQixRQUFTLEtBQ1Qsc0JBQXVCLElBQUEsSUFDdkIsTUFBTyxNQS9YdkIsd0hBbVlnQixRQUFTLEtBQ1QsWUFBYSxJQXBZN0IsMEg3Q0hFLFlGa0JVLElFakJWLFVGSFUsT0VJVixZQUFhLEtBQ2IsZUFBZ0IsSzZDdVlBLE0vQ2xaSSxRK0NtWkosV0FBWSxJQUFBLElBQUEsWTdDdFk1QixvQzZDRkYsMEg3Q0dJLGVBQWdCLFFBR2xCLG9DNkNORiwwSDdDT0ksVUZYUyxRRVlULFlBQWEsTzZDUmpCLGdJQTBZb0IsTS9DdFpGLEsrQ3VaRSxXQUFZLElBQUEsSUFBQSxZQTNZaEMsaUlBaVpnQixZQUFhLEtBalo3QixvSUFtWmtCLGNBQWUsS0FuWmpDLHNJQXFab0IsVS9DdlpQLE8rQ3daTyxZQUFhLEtBQ2IsV0FBWSxNQUNaLFFBQVMsTUF4WjdCLGlKQTRab0IsY0FBZSxFQVN6QixvQ0FyYVYsMkRBc2FZLE9BQVEsT0F0YXBCLDhFQXlhWSxRQUFTLEtBQ1QsWUFBYSxXQUNiLFlBQWEsS0FDYixvQ0E1YVosOEVBNmFjLFlBQWEsRUFDYixZQUFhLFFBOWEzQixrRkFxYlksWUFBYSxLQXJiekIseUc3Q0hFLFlGa0JVLElFakJWLFVGSFUsT0VJVixZQUFhLEtBQ2IsZUFBZ0IsS0FFaEIsb0M2Q0ZGLHlHN0NHSSxlQUFnQixRQUdsQixvQzZDTkYseUc3Q09JLFVGWFMsUUVZVCxZQUFhLE82Q1JqQiwwR0E2YmdCLFdBQVksS0E3YjVCLHNIQWtja0IsUUFBUyxLQUNULFlBQWEsT0FuYy9CLDBIQXNjb0IsWUFBYSxLQUNiLE1BQU8sS0FDUCxhQUFjLENBQUEsQ0FBQSxFQXhjbEMscUk3QzNCRSxPQUFRLEVBQ1IsUUFBUyxFQUNULFdBQVksSzZDMmVJLGlCQUFrQixRQUNsQixTQUFVLFNBQ1YsTUFBTyxFQUNQLFVBQVcsY0FDWCxXL0N0ZUwsSUFBSSxJQUFLLFkrQ3VlSixPQUFRLEtBdmQxQiwrSUE4Y29CLFcvQzlkUCxJQUFJLElBQUssWStDK2RGLFVBQVcsaUJBL2MvQix3SUEwZG9CLGUvQzllRixLK0NvQmxCLGdKQTRkc0IsaUJBQWtCLEtBQ2xCLGNBQWUsS0E3ZHJDLG9LQWdld0IsVUFBVyxlQUNYLE1BQU8sT0FDUCxhQUFjLENBQUEsQ0FBQSxFQWxldEMscUpBc2V3QixZQUFhLElBdGVyQywySUEwZXNCLFdBQVksS0ExZWxDLGlFQW9mVSxPQUFRLG1CQUNSLG9DQXJmVixpRUFzZlksT0FBUSxxQkF0ZnBCLG9GQXlmWSxTQUFVLFNBemZ0Qix1RjdDM0JFLE9BQVEsRUFDUixRQUFTLEVBQ1QsV0FBWSxLNkNxaEJBLGNBQWUsS0FDZixXQUFZLE1DemhCMUIsS0FDRSxjQUFlLEtBQ2YsZWhETWdCLEtnRExoQixvQ0FIRixLQUlJLGVoREtjLE1nRFRsQixPQU9JLFloRHlDTSxPQUFTLENBQUUsV0V2Qm5CLFlGa0JVLElFakJWLFVGSFUsT0VJVixZQUFhLEtBQ2IsZUFBZ0IsSzhDbkJkLE1oRFFrQixRRWFwQixvQzhDOUJGLE85QytCSSxlQUFnQixRQUdsQixvQzhDbENGLE85Q21DSSxVRlhTLFFFWVQsWUFBYSxPOENwQ2pCLFlBV00sV2hEQ08sSUFBSSxJQUFLLFlnRFp0QixhQWNNLE1oREdnQixRZ0RqQnRCLG9DQWdCUSxNQUFPLEtBQ1AsV2hETEssSUFBSSxJQUFLLFlpRFp0QixNQVNFLFNBQVUsU0FUWix5Q0FLUSxnQkFBaUIsSUFBQSxPQUt2QixzQkFDRSxpQkFBa0IsS0FDbEIsT0FBUSxNQUNSLE1BQU8sS0FFUCxvQ0FMRixzQkFNSSxPQUFRLE1BR1Ysb0NBVEYsc0JBVUksT0FBUSxNQVZYLDRCQWNHLE9BQVEsS0FDUixXQUFZLE1BQ1osTUFBTyxLQUdYLGNBQ0UsU0FBVSxTQUNWLE1BQU8sRUFDUCxPQUFRLEtBQ1IsTUFBTyxLQUNQLFdBQVksNERBTGIsc0NBUUcsT0FBUSxLQUNSLFFBQVMsS0FDVCxZQUFhLFNBQ2IsZWpEaENZLEtpRGtDWixvQ0FiSCxzQ0FjSyxlakRsQ1UsS2lEbUNWLFlBQWEsS0FDYixlQUFnQixNQWhCckIsbUVBb0JLLFFBQVMsS0FDVCxlQUFnQixPQUNoQixTQUFVLE9BdEJmLGtGQXdCTyxRQUFTLEtBQ1QsWUFBYSxJQUNiLFdBQVksTUExQm5CLCtGQTZCUyxZQUFhLElBQ2IsY0FBZSxLQUNmLE1BQU8sS0FDUCxPQUFRLEtBaENqQixpR0FvQ1MsTUFBTyxLQUNQLE9BQVEsS0FFUixvQ0F2Q1QsaUdBd0NXLE1BQU8sT0FHVCxvQ0EzQ1QsaUdBNENXLE1BQU8sT0E1Q2xCLG9GQWtETyxRQUFTLEtBQ1QsZ0JBQWlCLE9BQ2pCLFlBQWEsS0FDYixlQUFnQixLQUVoQixvQ0F2RFAsb0ZBd0RTLFlBQWEsR0FDYixlQUFnQixHQXpEekIsdUYvQzVCRCxPQUFRLEVBQ1IsUUFBUyxFQUNULFdBQVksSytDd0ZGLFFBQVMsS0FDVCxJQUFLLEtBQ0wsT0FBUSxLQUNSLGdCQUFpQixPQUNqQixZQUFhLE9BQ2IsV0FBWSxLQUNaLGVBQWdCLElBRWhCLG9DQXRFVCx1RkF1RVcsZUFBZ0IsTUF2RTNCLDBGQTJFVyxNQUFPLElBQ1AsT0FBUSxJQUNSLGNBQWUsSUFDZixXQUFZLHFCQUNaLFdBQVksRUFBSSxJQUFJLElBQUksZ0JBL0VuQyx1R0FtRmEsYUFBYyxFQUNkLGNBQWUsRUFwRjVCLG1HQXdGYSxXakR0R0EsUWlEc0cyQixZQUMzQixRQUFTLElBQUksTWpEdkdiLFFpRHdHQSxPQUFRLEtBQ1IsTUFBTyxLQUNQLFFBQVMsSUE1RnRCLGdHQWdHYSxhakQ5R0EsUWlEK0dBLE9BQVEsUUFDUixpQkFBa0Isa0JBQ2xCLFdqRHBISCxJQUFJLElBQUssWWlEaUJuQiw4RkF1R2EsTUFBTyxLQUNQLE9BQVEsS0FDUixXQUFZLE1DdEk1QixXQUNFLE1BQU8sS0FEVCx1Q0FJTSxvQkFBcUIsSUFBQSxPQUozQiw4RkFNUSxVQUFXLEtBTm5CLDJFQVdVLE1BQU8sRUFYakIsK0VBY1UsTUFBTyxFQWRqQiw4RUFpQlUsTUFBTyxFQWpCakIsNkVBb0JVLE1BQU8sRUFwQmpCLGdDQTBCSSxRQUFTLEtBQ1QsZUFBZ0IsTUFDaEIsc0JBQXVCLElBQUEsSUFDdkIsb0NBN0JKLGdDQThCTSxzQkFBdUIsZUE5QjdCLCtDaERPRSxvQkFBcUIsT0FDckIsZ0JBQWlCLE1BQ2pCLGtCQUFtQixVZ0QwQmYsaUJBQWtCLDJEQUF5RSxDQUFFLGtCQUM3RixRQUFTLEtBQ1QsU0FBVSxTQUNWLE9BQVEsS0FFUixvQ0F4Q04sK0NBeUNRLE9BQVEsS0FDUixhQUFjLEVBQUEsQ0FBQSxHQUdoQixxQ0E3Q04sK0NBOENRLFFBQVMsS0FBQSxLQUFBLEtBQUEsTUE5Q2pCLHNFQWtEUSxTQUFVLFNBQ1YsT0FBUSxLQUNSLE1BQU8sS0FDUCxpQkFBa0IsS0FDbEIsUUFBUyxFQUNULE1BQU8sRUFDUCxXQUFZLFFBQUEsSUFBQSxTQUNaLFFBQVMsRUF6RGpCLHdFQTZEUSxRQUFTLEtBQ1QsZUFBZ0IsT0FDaEIsT0FBUSxLQUNSLFNBQVUsU0FDVixRQUFTLEVBakVqQixxRkFvRVUsUUFBUyxFQUNULFdBQVksU0FDWixXQUFZLFFBQUEsSUFBQSxTQXRFdEIseUZBeUVZLE9BQVEsS0FDUixNQUFPLEtBQ1AsVUFBVyxLQUNYLFdBQVksS0E1RXhCLHVGQWlGVSxXQUFZLEtBQ1osVUFBVyxpQkFDWCxXQUFZLElBQUEsSUFBQSxTQUNaLGVBQWdCLEtBQ2hCLFVBQVcsTUFDWCxxQ0F0RlYsdUZBdUZZLFVBQVcsT0F2RnZCLDJGQTBGWSxVQUFXLEtBQ1gsT0FBUSxLQUNSLFdBQVksUUFDWixXQUFZLE1BN0Z4Qiw4RkFnR1ksVUFBVyxLQWhHdkIsdUZBcUdVLFFBQVMsRUFDVCxVQUFXLGtCQUNYLFdBQVksSUFBQSxJQUFBLFNBdkd0Qix5RkEwR1ksWUFBYSxJQUluQixxQkE5R04scURBZ0hVLE9BQVEsSUFBSSxNbERqR04sUWtEZmhCLDRFQWtIWSxRQUFTLEdBQ1QsV0FBWSxRQUFBLElBQUEsU0FuSHhCLDJGQXVIYyxRQUFTLEVBQ1QsV0FBWSxRQUFBLElBQUEsU0F4SDFCLG9FQTRIWSxVQUFXLGNBQ1gsV0FBWSxJQUFBLElBQUEsU0E3SHhCLG9FQWdJWSxRQUFTLEVBQ1QsVUFBVyxjQUNYLFdBQVksSUFBQSxJQUFBLFVBbEl4Qiw4REF1SVEsT0FBUSxJQUFBLE1BQUEsS0F2SWhCLHFGQXlJVSxRQUFTLEdBQ1QsV0FBWSxRQUFBLElBQUEsU0ExSXRCLG9HQThJWSxRQUFTLEVBQ1QsV0FBWSxRQUFBLElBQUEsU0EvSXhCLDZFQW1KVSxVQUFXLGNBQ1gsV0FBWSxJQUFBLElBQUEsU0FwSnRCLDZFQXVKVSxRQUFTLEVBQ1QsVUFBVyxjQUNYLFdBQVksSUFBQSxJQUFBLFNBekp0QixxRUE0SlUsUUFBUyxHQUNULFNBQVUsU0FDVixZQUFhLEtBQUEsTUFBQSxZQUNiLGFBQWMsS0FBQSxNQUFBLFlBQ2QsT0FBUSxFQUFBLEtBQ1IsTUFBTyxJQUNQLE9BQVEsTUFDUixXQUFZLEtBQUEsTUFBQSxLQUNaLFFBQVMsRUFwS25CLDJDQXlLTSxrQmxEdEhhLEtFNUNqQixvQkFBcUIsT0FDckIsZ0JBQWlCLE1BQ2pCLGtCQUFtQixVZ0QyS2YsaUJBQWtCLDREQUF3RSxDQUFFLGtCQVY1RixvQ0ExS04sMkNBMktRLGtCbER2SFcsT2tEcERuQixxREE4S1EsUUFBUyxLQTlLakIscURBaUxRLFlBQWEsQ0FBQSxDQUFBLEdBakxyQixnRUFzTFEsZ0JBQWlCLFVBQ2pCLGVsRC9LVSxLa0RnTFYsWUFBYSxLQUNiLGVBQWdCLEtBRWhCLG9DQTNMUixnRUE0TFUsZWxEbkxRLEtrRG9MUixZQUFhLEtBQ2IsZUFBZ0IsTUE5TDFCLHdFQWlNVSxRQUFTLEtBQ1QsZ0JBQWlCLFNBbE0zQiw0RUFxTVksZUFBZ0IsS0FyTTVCLHFGQTBNVSxRQUFTLEtBQ1Qsc0JBQXVCLElBQ3ZCLElBQUssS0FFTCxvQ0E5TVYscUZBK01ZLHNCQUF1QixjQUN2QixJQUFLLEtBQUEsS0FDTCxlQUFnQixNQUdsQixxQ0FwTlYscUZBcU5ZLHNCQUF1QixlQXJObkMsNEhBMk5jLFlBQWEsSUFDYixRQUFTLEtBQ1QsVUFBVyxLQUNYLElBQUssS0E5Tm5CLGtGQW9PVSxZQUFhLEtBQ2IsUUFBUyxLQUNULGVBQWdCLE9BRWhCLG9DQXhPVixrRkF5T1ksYUFBYyxNQUdoQixxQ0E1T1Ysa0ZBNk9ZLGVBQWdCLElBQ2hCLGdCQUFpQixjQUNqQixZQUFhLFFBL096Qix1RkFtUFksV0FBWSxNQUNaLGVBQWdCLEVBQ2hCLGNBQWUsS0FDZixxQ0F0UFosdUZBdVBjLFlBQWEsTUF2UDNCLHNHQTBQYyxhQUFjLE1BMVA1QiwwRkErUFksUUFBUyxLQUNULHNCQUF1Qix1Q0FDdkIsSUFBSyxLQUNMLFlBQWEsU0FsUXpCLDhGQXFRYyxPQUFRLEtBQ1IsTUFBTyxLQUNQLG9DQXZRZCw4RkF3UWdCLE9BQVEsTUFVeEIsZUFDRSxTQUFVLFNBQ1YsT0FBUSxJQUFBLE1BQUEsWUFDUixxQkFIRixxQkFLTSxPQUFRLElBQUksTWxEeFFGLFFrRG1RaEIsb0NBT1EsUUFBUyxHQUVULFdBQVksSUFBQSxJQUFBLFlBVHBCLG1DQVlRLFFBQVMsRUFDVCxXQUFZLElBQUEsSUFBQSxhQWJwQixtQkFrQkksT0FBUSxRQUNSLE1BQU8sS0FDUCxXQUFZLFFBQ1osZUFBZ0IsWUFyQnBCLDhCQXlCSSxTQUFVLFNBQ1YsTUFBTyxFQUNQLE1BQU8sS0FDUCxPQUFRLEtBQ1IsaUJBQWtCLEtBQ2xCLFFBQVMsRUFDVCxlQUFnQixLQUNoQixXQUFZLElBQUEsSUFBQSxZQWhDaEIsNkJBbUNJLFNBQVUsU0FDVixNQUFPLEVBQ1AsTUFBTyxLQUNQLE9BQVEsS0FDUixRQUFTLEtBQ1QsZ0JBQWlCLE9BQ2pCLFlBQWEsT0FDYixRQUFTLEVBQ1QsZUFBZ0IsS0FDaEIsV0FBWSxJQUFBLElBQUEsWUE1Q2hCLGlDQThDTSxNQUFPLEtBQ1AsT0FBUSxLQS9DZCw2QkFtREksS0FBTSxFQUNOLGlCQUFrQixLQXBEdEIsaUNBc0RNLGFBQWMsRUFBQSxDQUFBLEVBdERwQiw0Q0F5RE0sUUFBUyxLQXpEZixrQ0E2REksS0FBTSxHQTdEVixxREErRE0sUUFBUyxLQS9EZixvREFvRU0sUUFBUyxLQU9mLGlCQUZBLHVCQUNBLHVCQUVFLE9BQVEsRUFDUixRQUFTLEVBQ1QsaUJBQWtCLFlBQ2xCLE9BQVEsUUFDUixNQUFPLEtBSVQsZ0JBREEsYUFFRSxPQUFRLFFBQ1IsTUFBTyxLQUNQLE9BQVEsS0FJVixpQ0FBQSw4QkFHSSxPQUFRLFFBQ1IsT0FBUSxLQUNSLE1BQU8sS0FDUCxlQUFnQixPQUNoQixXQUFZLFFBSWhCLGlCQUNBLGVBQ0UsWUFBYSxJQUZmLG9CQUNBLGtCaER4WEUsT0FBUSxFQUNSLFFBQVMsRUFDVCxXQUFZLEtnRDBYVixRQUFTLEtBQ1QsVUFBVyxLQUNYLElBQUssRUFBQSxLQVBULHVCQUNBLHFCQVFNLFlBQWEsS0FUbkIsdURBQ0EscURBWVUsTUFBTyxFQWJqQiwwREFDQSx3REFlVSxNQUFPLEVBaEJqQiwyREFDQSx5REFrQlUsTUFBTyxFQW5CakIsMkRBQ0EseURBcUJVLE1BQU8sRUF0QmpCLCtEQUNBLDZEQXdCVSxNQUFPLEVBekJqQiw0Q0FDQSwwQ0E0QlksWUFBYSxJQVF6QixvQkFFSSxvQkFBcUIsSUFDckIsb0JBQXFCLE1BQ3JCLGFBQWMsd0VBQXFGLEVBQ25HLE1BQU8sS0FDUCxlQUFnQixJQUlwQixrQkFFSSxJQUFLLElBQUEsS0FGVCw4QkFJTSxVQUFXLE9BQ1gsWUFBYSxFQUxuQixrQ0FPUSxPQUFRLEtBRVYsb0NBVE4sOEJBVVEsVUFBVyxPQVZuQixrQ0FZVSxPQUFRLE1BVWhCLG9DQURGLDhFQUdNLFFBQVMsTUMvYmYsOEJqRENFLE9BQVEsRUFDUixRQUFTLEVBQ1QsV0FBWSxLaURBVixRQUFTLEtBQ1QsSUFBSyxJQUNMLFlBQWEsT0FDYixXQUFZLEtBTmhCLGlDQVFNLFlBQWEsS0FSbkIsK0NBVVEsT0FBUSxLQUNSLE1BQU8sS0FNZiw4REFFSSxNQUFPLHFCQ2xCWCw0QkFDQSw2QkFGQSw0QkFJSSxPQUFRLEVBQ1IsaUJBQWtCLFlBSnRCLHFEQUNBLHNEQUZBLHFEQU9NLGlCQUFrQixZQUNsQixRQUFTLFlBQ1QsT0FBUSxZQUNSLE1BQU8sS0FDUCxVQUFXLEtBQ1gsV0FBWSxNQUNaLE9BQVEsUUFTVixvQ0FKSiwyQkFFQSw0QkFEQSwyQkFJTSxVQUFXLE1BTGpCLCtCQUVBLGdDQURBLCtCQVFNLFdBQVksS0FJWixNQUFPLEtBQ1AsT0FBUSxLQUNSLFdBQVksUUFDWixpQkFBa0IsS0FObEIsb0NBVk4sK0JBRUEsZ0NBREEsK0JBVVEsV0FBWSxNaEIrRnBCLGdCZ0JwRkUsUUFBUSxhQ3hDVixrQkFDRSxjQUFlLEtBRGpCLHFDQUdJLFFBQVMsS0FDVCxnQkFBaUIsY0FDakIsZUFBZ0IsS0FDaEIsY0FBZSxJQUFJLE1yRFdELFFxRGpCdEIsZ0VBU00sUUFBUyxNQUNULG9DQVZOLGdFQVdRLFFBQVMsTUFYakIsMkRBZ0JNLFFBQVMsS0FDVCxvQ0FqQk4sMkRBa0JRLFFBQVMsT0FsQmpCLDhEQXNCUSxRQUFTLEtBQ1QsSUFBSyxLQXZCYiwwRUEwQlUsTXJEWE0sUXFEZmhCLGtGQThCVSxRQUFTLEVBQUEsS0E5Qm5CLGtGQWlDeUIsTUFBTyxFQWpDaEMscUZBa0M0QixNQUFPLEVBbENuQyxnRkFBQSx1RkFvQ3VCLE1BQU8sRUFwQzlCLHFGQXFDNEIsTUFBTyxFQXJDbkMsbURBMkNNLFlBQWEsSUFDYixvQ0E1Q04sbURBNkNRLFFBQVMsRUFBQSxNQTdDakIsZ0VBa0RNLE1yRG5DVSxRcURmaEIsb0VBb0RRLFVBQVcsZUFwRG5CLDJCQTBESSxZQUFhLEtBMURqQixpREE0RE0sZUFBZ0IsS0FDaEIsb0NBN0ROLGlEQThEUSxRQUFTLE1BOURqQixxREFrRU0sUUFBUyxLQUNULGVBQWdCLE9BRWhCLG9DQXJFTixxREFzRVEsZUFBZ0IsSUFDaEIsSUFBSyxLQXZFYixzQ0E2RUksWUFBYSxLQUNiLFFBQVMsS0FDVCxnQkFBaUIsY0FHZixvQ0FsRk4sK0NBbUZRLFFBQVMsRUFBQSxNQW5GakIsdURBd0ZNLFNBQVUsU0FDVixvQ0F6Rk4sdURBMEZRLFFBQVMsRUFBQSxNQTFGakIsMEVBNkZRLFlBQWMsZ0JBN0Z0QixzRUFnR1EsUUFBUyxPQUNULGVBQWdCLE1Bakd4Qiw0RUFvR1UsaUJBQWtCLFFDcEc1Qix5QkFDRSxLQUFNLEVBQUEsRUFBQSxLQUNOLFNBQVUsU0FDVixjQUFlLEtBQ2Ysb0NBSkYseUJBS0ksS0FBTSxFQUFBLEVBQUEsTUFDTixjQUFlLEdBTm5CLCtCQVNJLFVBQVcsT0FDWCxZQUFhLEtBVmpCLGlEQWNJLGNBQWUsSUFDZixpQkFBa0IsUUFDbEIsUUFBUyxLQUFBLEtBQ1QsUUFBUyxLQUNULFlBQWEsT0FDYixnQkFBaUIsY0FDakIsTUFBTyxLQUNQLFlBQWEsSUFBQSxNQUFBLFlBQ2IsYUFBYyxJQUFBLE1BQUEsWUFDZCxXQUFZLElBQUEsTUFBQSxZQUNaLGNBQWUsSUFBQSxNQUFBLFlBQ2YsV0FBWSxJQUNaLFdBQVksSUFBQSxJQUFBLFlBQ1osU0FBVSxTQTNCZCxxRUE4Qk0saUJBQWtCLEtBQ2xCLGtCdERoQlUsUXNEaUJWLG1CdERqQlUsUXNEa0JWLGlCdERsQlUsUXNEbUJWLG9CdERqQmdCLFFzRGtCaEIsV0FBWSxJQUFBLElBQUEsWUFDWiwwQkFBMkIsRUFDM0IsMkJBQTRCLEVBckNsQyxnRkF3Q1EsVUFBVyxlQXhDbkIsd0ZBNENRLFFBQVMsTUFDVCxRQUFTLEVBQ1QsT0FBUSxLQUNSLFVBQVcsNEJBQ1gsTUFBTyxLQUNQLElBQUssZUFqRGIsMkZBb0RVLE9BQVEsSUFBSSxNdERyQ04sUXNEc0NOLFdBQVksS0FDWixXQUFZLE1BQ1osV0FBWSxLQXZEdEIsNkRwRENFLE9BQVEsRUFDUixRQUFTLEVBQ1QsV0FBWSxLb0QyRFIsTUFBTyxLQUNQLFFBQVMsS0FDVCxVQUFXLEtBQ1gsSUFBSyxJQWpFWCwyRUFvRVEsaUJBQWtCLFlBQ2xCLE9BQVEsS0FDUixRQUFTLEVBQ1QsV0FBWSxLQUNaLFVBQVcsT0FDWCxNQUFPLEtBQ1AsT0FBUSxLQUNSLFl0RDNCRSxPQUFTLENBQUUsV3NEaERyQiwwRUErRVEsTUFBTyxJQS9FZixrRUFtRlEsT0FBUSxLQUNSLGNBQWUsSUFDZixPQUFRLElBQUksTXREcEVFLFFzRHFFZCxRQUFTLElBQUEsSUFDVCxRQUFTLEtBQ1QsWUFBYSxPQUNiLGlCQUFrQixLQUNsQixJQUFLLElBMUZiLHVFQTZGVSxZdERsREUsSXNEM0NaLHlFQWlHVSxXQUFZLElBQ1osUUFBUyxZQUNULE9BQVEsS0FDUixPQUFRLFFBQ1IsWXREckRBLE9BQVMsQ0FBRSxXc0RzRFgsVUFBVyxLQUNYLFFBQVMsRUFDVCxNdER6Rk0sUXNEMEZOLFNBQVUsU0FDVixPQUFRLElBMUdsQiwrRUE2R1ksTXREOUZJLFFzRGZoQix3RUFrSFUsYXREbkdNLFFzRGZoQix3Q0F5SEksU0FBVSxTQUNWLGlCQUFrQixLQUNsQixRQUFTLEtBQ1Qsb0NBNUhKLHdDQTZITSxNQUFPLE9BN0hiLDJDcERDRSxPQUFRLEVBQ1IsUUFBUyxFQUNULFdBQVksS29ESGQsOENBa0lRLFFBQVMsT0FsSWpCLG9EQW9JVSxPQUFRLFFBQ1IsaUJBQWtCLFFBTzVCLHNDQUVJLFFBQVMsR0FDVCxRQUFTLEsxRGlaVCxTMEQ1WUYsUUFBUyxFQUNULE9BQVEsS0FHVixXQUNFLGNBQWUsS0FEakIsNkJBSUksUUFBUyxLQUpiLGtEQVFVLGlCdERqSk0sUXNEeUloQixpQkFlSSxRQUFTLEtBQ1QsWUFBYSxPQUNiLGNBQWUsSUFqQm5CLHdCQW1CTSxRQUFTLEdBQ1QsT0FBUSxLQUNSLE1BQU8sS0FDUCxPQUFRLElBQUEsTUFBQSxRQUNSLGlCQUFrQixRQUNsQixjQUFlLElBQ2YsUUFBUyxhQUNULGFBQWMsS0FDZCxRQUFTLEtBQ1QsZ0JBQWlCLE9BQ2pCLFlBQWEsT0FNbkIsMEJBREEsc0JBR0ksY0FBZSxLQUNmLFFBQVMsTUFIYixnQ0FEQSw0QkFPSSxRQUFTLEtBQ1QsY0FBZSxJQUFJLE10RGpMRCxRc0QwS3RCLGlEQURBLDZDQVVNLE1BQU8sS0FDUCxXQUFZLEtBQ1osT0FBUSxZQUNSLFl0RHZKSSxPQUFTLENBQUUsV0V2Qm5CLFlGa0JVLElFakJWLFVGSFUsT0VJVixZQUFhLEtBQ2IsZUFBZ0IsS29ENktaLFFBQVMsWUFDVCxRQUFTLEVBQ1QsWUFBYSxFcEQ3S2pCLG9Db0Q2SkYsaURBREEsNkNwRDNKSSxlQUFnQixRQUdsQixvQ29EeUpGLGlEQURBLDZDcER2SkksVUZYUyxRRVlULFlBQWEsT29EdUpqQiw4REFEQSwwREFvQk0sWXREOUpJLE9BQVMsQ0FBRSxXc0QrSmYsTXREOUxnQixRc0QrTGhCLFlBQWEsSUFyQm5CLG9EQURBLGdEQXlCTSxNQUFPLElBQ1AsVUFBVyxPQUNYLFdBQVksS0FDWixPQUFRLEtBQ1IsaUJBQWtCLFlBQ2xCLG9DQTdCTixvREFEQSxnREErQlEsVUFBVyxRQUNYLE9BQVEsTUFDUixTQUFVLFNBQ1YsSUFBSyxNQWpDYiw2Q0FBQSx3Q0FEQSx5Q0FBQSxvQ3BEekxFLE9BQVEsRUFDUixRQUFTLEVBQ1QsV0FBWSxLb0RnT1YsTUFBTyxLQUNQLGlCQUFrQixLQUNsQixjQUFlLElBQ2YsT0FBUSxJQUFJLE10RHZOQSxRc0R3TlosV0FBWSxFQUFJLElBQUksSUFBSSxFQUFJLGdCQUM1QixjQUFlLEtBQ2YsV0FBWSxNQUNaLFdBQVksT0FDWixRQUFTLEdBaERiLG1EQUFBLDhDQURBLCtDQUFBLDBDQW1ETSxRQUFTLEtBbERmLGdEQUFBLDJDQURBLDRDQUFBLHVDQXNETSxlQUFnQixLQXJEdEIsa0RBQUEsNkNBREEsOENBQUEseUNBd0RRLFFBQVMsYUFDVCxjQUFlLEtBQ2YsWUFBYSxJQXpEckIsd0RBQUEsbURBREEsb0RBQUEsK0NBNERVLE9BQVEsUUNyUGxCLHlCQURBLHlCQUVDLFFBQVMsRUFDVCxPQUFRLEtBQ1IsaUJBQWtCLFlBQ2xCLFNBQVUsU0FDVixJQUFLLElBQ0wsUUFBUyxJQUNULE9BQVEsUUFDUixRQUFTLEVBQ1QsVUFBVyxpQkFHWix5QkFDRSxLQUFNLE1BQ04sVUFBVyxpQkFBaUIsZUFDNUIsb0NBSEYseUJBSUksS0FBTSxHQUlWLHlCQUNFLE1BQU8sTUFDUCxvQ0FGRix5QkFHSSxNQUFPLEdBSVgsMkJBRUksUUFBUywwQ0FDVCxRQUFTLGFBQ1QsTUFBTyxLQUNQLG9DQUxKLDJCQU1NLE1BQU8sTUFOYix1Q0FXTSxRQUFTLGdEQUNULFFBQVMsYUFDVCxNQUFPLEtBQ1Asb0NBZE4sdUNBZVEsTUFBTyxNQU9mLHVDQUVJLE9BQVEscUJBQ1IsTUFBTyxJQUNQLElBQUssTUFDTCxpQkFBa0IsZUFDbEIsY0FBZSxJQUNmLFFBQVMsSUFBQSxJQUFBLElBQUEsSUFDVCxvQ0FSSix1Q0FTTSxJQUFLLElBQ0wsTUFBTyxNQUNQLFVBQVcsaUJBQ1gsaUJBQWtCLFlBQ2xCLFFBQVMsR0FiZix1Q0FpQkksT0FBUSxxQkFDUixLQUFNLElBQ04sSUFBSyxNQUNMLGlCQUFrQixlQUNsQixjQUFlLElBQ2YsUUFBUyxJQUFBLElBQUEsSUFBQSxJQUNULG9DQXZCSix1Q0F3Qk0saUJBQWtCLFlBQ2xCLEtBQU0sTUFDTixJQUFLLElBQ0wsVUFBVyxpQkFBaUIsZUFDNUIsUUFBUyxHQzlFZixRQUNFLFVBQVcsS0FBQSxHQUFBLFNBQUEsT0NEYix3QkFDRSxPQUFRLE9BQ1IsWUFBYSxFQUdmLFdBQ0UsT0FBUSxNQUNSLGV6RENnQixLeURDaEIsb0NBSkYsV0FLSSxlekREYyxNeURKbEIsY0FTSSxNQUFPLEt2RGJULE9BQVEsRUFDUixRQUFTLEVBQ1QsV0FBWSxLdURFZCxvQkFjUSxXQUFZLEtBQ1osb0NBZlIsb0JBZ0JVLFdBQVksTUFoQnRCLHlCQW9CUSxRQUFTLEtBQ1Qsb0NBckJSLHlCQXNCVSxRQUFTLFFBdEJuQiwwQkEwQlEsUUFBUyxPQUNULG9DQTNCUiwwQkE0QlUsUUFBUyxNQU9uQixxQ0FFRSxTQUFVLFNBQ1YsT0FBUSxFQUNSLEtBQU0sRUFDTixNQUFPLEVBQ1AsTUFBTyxxQ0FDUCxjQUFlLEtBQ2Ysb0NBUkYscUNBU0ksTUFBTyxzQ0FUWCw0Q0FZSSxRQUFTLEtDcERiLCtCQUNFLFlBQWEsRUNEZiwwQkFDRSxZQUFhLEVDRGYsY0FDRSxjNURTb0IsSzREUnBCLG9DQUZGLGNBR0ksYzVEUWtCLE00RFh0Qix3REFPTSxRQUFTLEtBQ1QsZUFBZ0IsT0FSdEIsMkRBV1EsV0FBWSxLQUNaLGNBQWUsRUFadkIsc0VBZ0JRLFFBQVMsS0FDVCxlQUFnQixPQUNoQixnQkFBaUIsV0FDakIsV0FBWSxLQUNaLGNBQWUsS0FFZixvQ0F0QlIsc0VBdUJVLGVBQWdCLElBQ2hCLElBQUssS0FDTCxXQUFZLEtBQ1osY0FBZSxPQTFCekIsMEZBK0JZLE1BQU8sS0FDUCxPQUFRLEtBRVIsb0NBbENaLDBGQW1DYyxXQUFZLE9BSWhCLG9DQXZDVixzRkF3Q1ksTUFBTyxJQUNQLFdBQVksTUFDWixTQUFVLE9BQ1YsUUFBUyxLQUNULFlBQWEsT0FDYixXQUFZLFNBQ1osV0FBWSxNQUNaLElBQUssTUEvQ2pCLDRGQW9EVSxRQUFTLEtBQ1QsZUFBZ0IsT0FDaEIsSUFBSyxLQUNMLFdBQVksS0FFWixvQ0F6RFYsNEZBMERZLGVBQWdCLEVBQ2hCLE1BQU8sSUFDUCxXQUFZLEVBQ1osUUFBUyxLQUNULGVBQWdCLElBQ2hCLElBQUssS0FDTCxXQUFZLFNBQ1osY0FBZSxLQUNmLFdBQVksR0FsRXhCLG9IQUFBLHlIQXdFYyxjQUFlLElBeEU3QixtSEFBQSx3SEE0RWMsWUFBYSxLQUNiLGNBQWUsRUE3RTdCLCtCQXFGSSxpQkFBa0IsS0FyRnRCLDBEQXdGTSxRQUFTLEtBQ1QsZUFBZ0IsT0FDaEIsWUFBYSxLQUNiLGVBQWdCLEtBRWhCLG9DQTdGTiwwREE4RlEsWUFBYSxLQUNiLGVBQWdCLE1BQ2hCLGVBQWdCLElBQ2hCLGdCQUFpQixlQWpHekIsbUZBcUdRLGNBQWUsS0FDZixvQ0F0R1IsbUZBdUdVLFVBQVcsTUFDWCxjQUFlLEdBeEd6QixpR0EyR1UsWUFBYSxJQTNHdkIsc0ZBOEdVLE01RDdGWSxRNERqQnRCLG1HQWtIVSxZQUFhLEtBbEh2Qix1R0FxSFksV0FBWSxLQUVaLG9DQXZIWix1R0F3SGMsV0FBWSxFQUNaLFlBQWEsTUF6SDNCLHdGQStIUSxXQUFZLEtBQ1osb0NBaElSLHdGQWlJVSxXQUFZLFNBQ1osV0FBWSxLQUNaLGNBQWUsTUFuSXpCLDJGQXVJVSxXQUFZLEtBQ1osY0FBZSxLQU96QiwwRUFBQSx1RUFLUSxRQUFTLEtDcEpqQixnQkFDRSxLQUFNLFVBQVUsVUFDaEIsR0FBSSxVQUFVLGdCQUVoQixrQkFDRSxHQUNJLFFBQVMsSUFFYixJQUNJLFFBQVMsR0FFYixJQUNJLFFBQVMsSUFFYixLQUNJLFFBQVMsS0FJZixXQUNFLGM3RFZvQixLNkRXcEIsb0NBRkYsV0FHSSxjN0RYa0IsTTZEYW5CLHVDQUVHLGNBQWUsS0MxQnJCLCtCQUNFLFlBQWEsRUFEZiwwQ0FJSSxjQUFlLEtBSm5CLCtDQUFBLDRDQVNJLFdBQVksS0FDWixlQUFnQixPQUNoQixvQ0FYSiwrQ0FBQSw0Q0FZTSxXQUFZLE1BS2xCLGlCNURWRSxvQkFBcUIsT0FDckIsZ0JBQWlCLE1BQ2pCLGtCQUFtQixVNERVbkIsaUJBQWtCLDJEQUF5RSxDQUFFLGtCQUM3RixjQUFlLE1BQUEsS0FDZixvQkFBcUIsSUFKdkIsZ0NBUUksUUFBUyxLQUNULHNCQUF1QixJQUN2QixtQkFBb0IsS0FHcEIsb0NBYkosZ0NBY00sc0JBQXVCLGNBQ3ZCLG1CQUFvQixLQUFBLEtBQUEsS0FDcEIsV0FBWSxNQWhCbEIsa0RBb0JNLGNBQWUsS0FDZixRQUFTLEtBRVQsb0NBdkJOLGtEQXdCUSxRQUFTLE1BQ1QsWUFBYSxDQUFBLENBQUEsRUFDYixTQUFVLENBQUEsQ0FBQSxHQTFCbEIsK0NBK0JNLFVBQVcsTUFtQlgsU0FBVSxDQUFBLENBQUEsRUFsRGhCLGtEQWtDUSxjQUFlLEtBQ2YsVUFBVyxLQUNYLG9DQXBDUixrREFxQ1UsY0FBZSxLQUNmLFVBQVcsT0F0Q3JCLG1EQTJDUSxVQUFXLElBQ1gsT0FBUSxLQUNSLG9DQTdDUixtREE4Q1UsVUFBVyxLQU1mLG9DQXBETiwrQ0FxRFEsY0FBZSxFQUNmLFlBQWEsQ0FBQSxDQUFBLEVBQ2IsU0FBVSxDQUFBLENBQUEsSUF2RGxCLDZDQTRETSxTQUFVLENBQUEsQ0FBQSxFQUNWLGNBQWUsS0E3RHJCLGlEQWdFUSxVQUFXLEtBQ1gsT0FBUSxLQUNSLG9DQWxFUixpREFtRVUsVUFBVyxPQUlmLG9DQXZFTiw2Q0F3RVEsWUFBYSxDQUFBLENBQUEsRUFDYixTQUFVLENBQUEsQ0FBQSxFQUNWLFdBQVksTUFDWixRQUFTLEtBQ1QsWUFBYSxNQUNiLGdCQUFpQixTQUNqQixXQUFZLFVBOUVwQiw4Q0FvRlEsUUFBUyxLQUdQLG9DQXZGViwyREF3RlksU0FBVSxDQUFBLENBQUEsSUF4RnRCLG9EQTZGUSxTQUFVLENBQUEsQ0FBQSxFQUNWLGNBQWUsS0FDZixXQUFZLEtBQ1osV0FBWSxJQUNaLGlCQUFrQixNQUNsQixhQUFjLHdFQUFxRixFQUNuRyxZQUFhLEtBbkdyQix3REFzR1UsT0FBUSxLQUNSLE1BQU8sS0FFUCxvQ0F6R1Ysd0RBMEdZLE9BQVEsTUExR3BCLDREQThHVSxZQUFhLEtBQ2Isb0NBL0dWLDREQWdIWSxZQUFhLE1BR2pCLG9DQW5IUixvREFvSFUsV0FBWSxFQUNaLFlBQWEsS0FDYixZQUFhLENBQUEsQ0FBQSxFQUNiLFNBQVUsQ0FBQSxDQUFBLEdBQ1YsUUFBUyxLQUNULFlBQWEsU0FDYixjQUFlLEdBS25CLG9DQS9ITiwwREFpSVUsU0FBVSxDQUFBLENBQUEsRUFqSXBCLG1EQXFJVSxTQUFVLENBQUEsQ0FBQSxFQXJJcEIsd0RBeUlVLFNBQVUsQ0FBQSxDQUFBLEdBT3BCLGtDQUVJLFFBQVMsTUFDVCxXQUFZLEtBQ1osY0FBZSxLQUNmLG9DQUxKLGtDQU1NLFFBQVMsS0FDVCxzQkFBdUIsSUFDdkIsc0JBQXVCLElBQUEsS0FDdkIsSUFBSyxLQUNMLFdBQVksS0FDWixjQUFlLE9BWHJCLHNDQWVNLFNBQVUsT0FDVixJQUFLLEtBQ0wsaUJBQWtCLEtBQ2xCLFFBQVMsRUFFVCxvQ0FwQk4sc0NBcUJRLE9BQVEsS0FDUixTQUFVLFFBTWxCLGdDQUVJLFNBQVUsT0FDVixJQUFLLE1BQ0wsaUJBQWtCLEtBQ2xCLFFBQVMsS0FDVCxvQ0FOSixnQ0FPTSxTQUFVLE9BQ1YsaUJBQWtCLGFBSXBCLG9DQVpKLGlDQWFNLFNBQVUsT0FDVixJQUFLLE9BS1gsaUJBQ0UsWUFBYSxFQUNiLFFBQVMsS0FGWCxtQ0FJSSxRQUFTLE1BSmIsMkNBT00sUUFBUyxLQVFULG9DQWZOLHlDQUFBLHlDQWdCUSxlQUFnQixLQUNoQixpQkFBa0IsU0FqQjFCLHlDQXNCTSxTQUFVLFNBdEJoQixnREF3QlEsU0FBVSxTQUNWLE9BQVEsS0FDUixPQUFRLEVBQ1IsTUFBTyxFQUNQLGlCQUFrQixZQUNsQixPQUFRLFFBN0JoQiwyREFvQ1UsV0FBWSxNQXBDdEIsaURBd0NRLFNBQVUsU0F4Q2xCLHFEQTBDVSxXQUFZLFFBQ1osZ0JBQWlCLE9BQ2pCLFdBQVksTUFDWixNQUFPLEtBQ1Asb0NBOUNWLHFEQStDWSxXQUFZLE9BL0N4QiwyREFvRFEsU0FBVSxTQUNWLE9BQVEsRUFDUixNQUFPLEtBdERmLGlFQXdEWSxNQUFPLElBQ1AsVUFBVyxxQkFDWCxPQUFRLEtBQ1IsTUFBTyxLQTNEbkIsa0VBOERVLE9BQVEsS0FDUixRQUFTLEVBQ1QsaUJBQWtCLFlBQ2xCLE9BQVEsUUFqRWxCLHNFQW9FWSxPQUFRLEtBQ1IsTUFBTyxLQVFuQixlQUNFLFFBQVMsS0FDVCxzQkFBdUIsSUFDdkIsSUFBSyxLQUNMLFdBQVksS0FFWixvQ0FORixlQU9JLHNCQUF1QixJQUFBLElBQ3ZCLFdBQVksT0FSaEIsK0JBWUksWUFBYSxDQUFBLENBQUEsRUFaakIsa0NBZU0sVUFBVyxLQUNYLG9DQWhCTixrQ0FpQlEsVUFBVyxRQWpCbkIsd0NBc0JNLFVBQVcsT0FDWCxvQ0F2Qk4sd0NBd0JRLFVBQVcsUUF4Qm5CLGdDQThCSSxXQUFZLElBQ1osaUJBQWtCLE1BQ2xCLGFBQWMsNERBQXlFLEVBQ3ZGLFlBQWEsS0FqQ2pCLGdEQW9DTSxRQUFTLEtBQ1QsSUFBSyxJQXJDWCxxQ0EwQ0ksUUFBUyxLQUNULG9DQTNDSixxQ0E0Q00sUUFBUyxNQUNULFlBQWEsQ0FBQSxDQUFBLEVBQ2IsUUFBUyxLQUFBLEtBTWIsOEJBREYscUJBRUksWUFBYSxHQUZqQiwrQkFNSSxlQUFnQixLQU5wQixnREFTTSxvQkFBcUIsTUFDckIsYUFBYyxJQUNkLGFBQWMsNERBQTRELEVBWGhGLHNDQWlCTSxXQUFZLElBQ1osY0FBZSxJQUtyQixpQkFDRSxRQUFTLEtBQ1QsVUFBVyxLQUNYLElBQUssSUFJTCxvQ0FERiw2QkFFSSxRQUFTLE1BSWIsbUJBQ0UsZTlENVdnQixLOEQ2V2hCLFFBQVMsS0FDVCxnQkFBaUIsY0FFakIsb0NBTEYsbUJBTUksZUFBZ0IsTUN6WHBCLGFBQ0UsY0FBZSxLQUFBLEtBRWYsb0NBSEYsYUFJSSxjQUFlLE1BR2pCLHVCQUNFLGUvREFjLEsrREVkLG9DQUhGLHVCQUlJLGUvREZZLE0rREZmLDJDQWVHLGNBQWUsS0FmbEIsc0RBV08sV0FBWSxPQVhuQix1Q0FtQkcsY0FBZSxJQUFBLE1BQUEsUUFDZixlQUFnQixLQUNoQixjQUFlLEtBckJsQiw2Q0F1QkssY0FBZSxLQXZCcEIsNERBOEJPLElBQUssS0FDTCxzQkFBdUIsSUFFdkIsb0NBakNQLDREQWtDUyxzQkFBdUIsZUFsQ2hDLDJFQXNDUyxVQUFXLE1BdENwQiwrRUF3Q1csV0FBWSxLQy9DMUIsY0FDRSxjQUFlLEtBQUEsS0FFZixvQ0FIRixjQUlJLGNBQWUsTUFKbkIsaUNBUUksZWhFQWMsS2dFRWQsb0NBVkosaUNBV00sZWhFRlksTWlFVGxCLFlBQ0UsWWpFU29CLEtpRVBwQixvQ0FIRixZQUlJLFlqRU9rQixNaUVKcEIsbUJBQ0UsY0FBZSxLQUVmLG9DQUhGLG1CQUlJLGNBQWUsTUFKbEIscUNBUUcsY0FBZSxLQUluQixpQkFDRSxNQUFPLEtBRFIsaUNBR0csUUFBUyxLQUNULGVBQWdCLE9BQ2hCLGdCQUFpQixXQUNqQixjQUFlLEtBTmxCLHFEQVVPLE1BQU8sS0FDUCxPQUFRLEtBRVIsb0NBYlAscURBY1MsV0FBWSxNQUNaLE1BQU8sTUFmaEIsbURBcUJLLFdBQVksS0FHZCxvQ0F4QkgsaUNBeUJLLGNBQWUsTUFDZixlQUFnQixJQTFCckIsaURBNkJPLE1BQU8sSUFDUCxXQUFZLE1BQ1osU0FBVSxPQUNWLFFBQVMsS0FDVCxZQUFhLE9BQ2IsV0FBWSxTQUNaLFdBQVksTUFuQ25CLG1EQXVDTyxlQUFnQixFQUNoQixNQUFPLElBQ1AsV0FBWSxFQUNaLFlBQWEsS0FDYixRQUFTLEtBQ1QsZUFBZ0IsT0FDaEIsV0FBWSxTQUNaLGNBQWUsS0FDZixjQUFlLE1BTXZCLG1CQUNDLG9CQUNDLGNBQWUsS0FBQSxLQUVmLG9DQUpGLG1CQUNDLG9CQUlHLGNBQWUsS0FBQSxPQUxsQixzQkFDQSx1QkFPRyxjQUFlLEtBRWYsb0NBVkgsc0JBQ0EsdUJBVUssY0FBZSxNQVhwQiwyQkFBQSw0QkFDQSw0QkFBQSw2QkFlRyxVQUFXLE9BQ1gsY0FBZSxLQUNmLGVBQWdCLElBQ2hCLFFBQVMsS0FDVCxzQkFBdUIsY0FDdkIsSUFBSyxLQUVMLG9DQXZCSCwyQkFBQSw0QkFDQSw0QkFBQSw2QkF1QkssZUFBZ0IsS0FDaEIsc0JBQXVCLGNBQ3ZCLFdBQVksRUFDWixRQUFTLE1BM0JkLGtDQUFBLG1DQUNBLG1DQUFBLG9DQThCSyxXQUFZLE9BL0JqQixzQ0FBQSx1Q0FDQSx1Q0FBQSx3Q0FnQ08sT0FBUSxLQUNSLE1BQU8sS0FDUCxvQ0FuQ1Asc0NBQUEsdUNBQ0EsdUNBQUEsd0NBbUNTLE1BQU8sTUFDUCxPQUFRLE9BckNqQiwyQ0FBQSw0Q0FDQSw0Q0FBQSw2Q0F3Q08sV0FBWSxLQU1wQixtQkFDRSxpQkFBa0IsUUN2SHRCLGNBQ0UsWUFBYSxLQUNiLGVBQWdCLEtBQ2hCLG9DQUhGLGNBSUksWUFBYSxLQUNiLGVBQWdCLE9BTHBCLGdDQVFJLGNBQWUiLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIEBpZiAkYmFzZS1mb250LWZhbWlseSB7XG4gICAgICAgIC8qIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS4gKi9cbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgICAgfVxuICAgICAgQGlmICRiYXNlLWZvbnQtc2l6ZSAhPSAxNnB4IG9yICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogaWYoJGJhc2UtZm9udC1mYW1pbHksICRiYXNlLWZvbnQtZmFtaWx5LCBzYW5zLXNlcmlmKTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGxlZ2VuZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5cbiAgICBwcm9ncmVzcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XG4gICAgLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBkZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgICAqIDIuIFNldCBjb25zaXN0ZW50IHNwYWNlIGZvciB0aGUgbGlzdCBzdHlsZSBpbWFnZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50OyAvKiAyICovXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICAgKi9cblxuICAgICAgICBtZW51ICYsXG4gICAgICAgIG9sICYsXG4gICAgICAgIHVsICYge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XG4gICAgLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgY2FudmFzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRlbXBsYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShoaWRkZW4pIHtcbiAgICAvKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLG51bGwsIjpyb290IHtcbiAgLS1oZWFkZXItaGVpZ2h0LXNtOiA3MnB4O1xuICAtLWhlYWRlci1oZWlnaHQtbGc6IDExNnB4O1xuICAtLWJvZHktcGFkZGluZy1zbTogMjRweDtcbiAgLS1ib2R5LXBhZGRpbmctbGc6IDQwcHg7XG59XG5cbi8vIFNpdGUgU2V0dGluZ3NcbiRib2R5LXBhZGRpbmctc206IDI0cHg7XG4kYm9keS1wYWRkaW5nLWxnOiA0MHB4O1xuJGJvZHktdG9wLXBhZGRpbmctc206IDY0cHg7XG4kYm9keS10b3AtcGFkZGluZy1sZzogOTZweDtcbiR0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcblxuLy8gQnJhbmQgQ29sb3JzXG4kaWduLWJyYW5kLXJlZDogI0MyMEYyRjtcbiRpZ24tYnJhbmQtYmxhY2s6ICMwMDAwMDA7XG4kaWduLWJyYW5kLWxpZ2h0Z3JleTogI0RFREVERTtcbiRpZ24tYnJhbmQtd2hpdGU6ICNGRkZGRkY7XG5cbi8vIEZvbnQgU2l6ZXNcbiRoMS1tb2JpbGU6IDYuNXJlbTtcbiRoMS1kZXNrdG9wOiAxMi40cmVtO1xuJGgyLW1vYmlsZTogNS42cmVtO1xuJGgyLWRlc2t0b3A6IDEyLjRyZW07XG4kaDMtbW9iaWxlOiA0LjJyZW07XG4kaDMtZGVza3RvcDogNS44cmVtO1xuJGg0LW1vYmlsZTogMi40cmVtO1xuJGg0LWRlc2t0b3A6IDIuOHJlbTtcbiRoNS1tb2JpbGU6IDEuNXJlbTtcbiRoNS1kZXNrdG9wOiAxLjZyZW07XG5cbi8vIEZvbnQgQ29sb3JzXG4kaWduLXRleHQtcHJpbWFyeTogJGlnbi1icmFuZC1ibGFjaztcbiRpZ24tdGV4dC1zZWNvbmRhcnk6ICMzMjMyMzI7XG4kaWduLXRleHQtYWNjZW50LTE6ICRpZ24tYnJhbmQtd2hpdGU7XG4kaWduLXRleHQtYWNjZW50LTI6ICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuJGlnbi10ZXh0LWFjY2VudC0zOiAjQThBOEE4O1xuJGlnbi10ZXh0LXBsYWNlaG9sZGVyOiAjNzM3MzczO1xuXG4vLyBGb250IFdlaWdodHNcbiRyZWd1bGFyOiA0MDA7XG4kbWVkaXVtOiA1MDA7XG4kc2VtaS1ib2xkOiA2MDA7XG4kYm9sZDogNzAwO1xuJGV4dHJhLWJvbGQ6IDgwMDtcblxuLy8gRm9udCBGYW1pbGllc1xuJHJhbGV3YXk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcblxuLy8gSGVhZGVyXG4kaGVhZGVyLWhlaWdodC1zbTogNzJweDtcbiRoZWFkZXItaGVpZ2h0LWxnOiAxMTZweDtcblxuLy8gV1BcbiRhZG1pbi1iYXItaGVpZ2h0LXNtOiA0NnB4O1xuJGFkbWluLWJhci1oZWlnaHQtbGc6IDMycHg7IiwiKiB7XG4gIC13ZWJraXQtYm94LXNpemluZyA6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZyAgICA6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmcgICAgICAgICA6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDYyLjUlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJHJhbGV3YXk7XG4gIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1zbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBOYXZzXG5uYXYgPiB1bCB7XG4gIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG59XG5cbi8vIEJ1dHRvbnNcbmJ1dHRvbi50ZXh0LWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vIFJlc2V0c1xuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBDb250YWluZXJcbi5pZ24tY29udGFpbmVyIHtcbiAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctc207XG4gIG1heC13aWR0aDogMTMyMHB4O1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICB9XG59IiwiQG1peGluIHJlc2V0LWxpc3QoKSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuQG1peGluIGZ1bGwtd2lkdGgtYmFja2dyb3VuZCgpIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG5AbWl4aW4gaDEoKSB7XG4gIGZvbnQtd2VpZ2h0OiAkYm9sZDtcbiAgZm9udC1zaXplOiAkaDEtbW9iaWxlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6ICRoMS1kZXNrdG9wO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG5cbkBtaXhpbiBoMigpIHtcbiAgZm9udC13ZWlnaHQ6ICRzZW1pLWJvbGQ7XG4gIGZvbnQtc2l6ZTogJGgyLW1vYmlsZTtcbiAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtNHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZvbnQtc2l6ZTogJGgyLWRlc2t0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDExNHB4O1xuICB9XG59IiwiLy8gSGVhZGluZ3NcbmgxLCBoMiwgaDMsIGg0LCBoNSB7XG4gIGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcbiAgbWFyZ2luLWJsb2NrOiAwIDJyZW07XG59XG5cbmgxIHtcbiAgQGluY2x1ZGUgaDE7XG59XG5cbmgyIHtcbiAgQGluY2x1ZGUgaDI7XG59XG5cbmgzLCAuaDMge1xuICBmb250LXdlaWdodDogJHNlbWktYm9sZDtcbiAgZm9udC1zaXplOiAkaDMtbW9iaWxlO1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6ICRoMy1kZXNrdG9wO1xuICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xuICB9XG59XG5cbmg0IHtcbiAgZm9udC13ZWlnaHQ6ICRleHRyYS1ib2xkO1xuICBmb250LXNpemU6ICRoNC1tb2JpbGU7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAkaDQtZGVza3RvcDtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgfVxufVxuXG5oNSB7XG4gIGZvbnQtd2VpZ2h0OiAkZXh0cmEtYm9sZDtcbiAgZm9udC1zaXplOiAkaDUtbW9iaWxlO1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZvbnQtc2l6ZTogJGg1LWRlc2t0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cbn1cblxuLy8gQm9keSBjb3B5XG5wLFxub2wsXG51bCB7XG4gIGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcbiAgZm9udC13ZWlnaHQ6ICRyZWd1bGFyO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi1ibG9jazogMCAycmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cblxuLy8gTGlua3NcbmEge1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogJHNlbWktYm9sZDtcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgfVxufVxuXG4udGV4dC1idXR0b24ge1xuICBmb250LWZhbWlseTogJHJhbGV3YXk7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6ICRib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG4gIGNvbG9yOiAkaWduLXRleHQtcHJpbWFyeTtcblxuICAmLS1zbWFsbCB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgfVxuXG4gICYtLWJhY2stdG8tdG9wIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gICYtLXJlZCB7XG4gICAgY29sb3I6ICRpZ24tYnJhbmQtcmVkO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRpZ24tdGV4dC1wcmltYXJ5O1xuICAgIH1cbiAgfVxuXG4gICYtLWJsYWNrIHtcbiAgICBjb2xvcjogIzBBMEEwQTtcbiAgfVxuXG4gICYtLXdoaXRlIHtcbiAgICBjb2xvcjogJGlnbi1icmFuZC13aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICB9XG4gIH1cblxuICAuaWNvbi1hcnJvdyB7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIHdpZHRoOiAxNnB4O1xuICB9XG59XG5cbi50ZXh0LWxpbmstbGFyZ2Uge1xuICBAaW5jbHVkZSBoMjtcbiAgY29sb3I6ICRpZ24tdGV4dC1wcmltYXJ5O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGNvbG9yOiAkaWduLXRleHQtYWNjZW50LTI7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGlnbi10ZXh0LXByaW1hcnk7XG4gICAgfVxuICB9XG59XG5cbi50cmFuc3BhcmVudCB7XG4gIGNvbG9yOiAkaWduLXRleHQtYWNjZW50LTE7XG4gIG9wYWNpdHk6IDAuNTtcbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4udGV4dC1saW5rLWxhcmdlLFxuYnV0dG9uW3R5cGU9c3VibWl0XSB7XG4gICY6aG92ZXIge1xuICAgIC5zdmcge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAmLnN2Zy11cHBlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB9XG4gICAgICAmLnN2Zy1sb3dlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnN2Zy1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgd2lkdGg6IDQuNnJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHdpZHRoOiAkaDItZGVza3RvcDtcbiAgfVxuICAuc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICYuc3ZnLWxvd2VyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVHlwb2dyYXBoeSBjbGFzc2VzXG4uYm9keS1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuICB9XG59XG5cbi5ib2R5LXNtYWxsIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuXG4gIGEge1xuICAgIGZvbnQtd2VpZ2h0OiAkc2VtaS1ib2xkO1xuICB9XG59XG5cbi5jYXB0aW9uIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjZyZW07XG5cbiAgYSB7XG4gICAgZm9udC13ZWlnaHQ6ICRzZW1pLWJvbGQ7XG4gIH1cbn1cblxuLmV5ZWJyb3cge1xuICBmb250LWZhbWlseTogJHJhbGV3YXk7XG4gIGZvbnQtd2VpZ2h0OiAkYm9sZDtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cbn1cblxuLy8gRm9udCBDb2xvcnNcbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogJGlnbi10ZXh0LXByaW1hcnk7XG59XG5cbi50ZXh0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkaWduLXRleHQtc2Vjb25kYXJ5O1xufVxuXG4udGV4dC1hY2NlbnQtMSxcbi50ZXh0LXdoaXRlIHtcbiAgLy8gI2ZmZmZmZlxuICBjb2xvcjogJGlnbi10ZXh0LWFjY2VudC0xO1xufVxuXG4udGV4dC1hY2NlbnQtMiB7XG4gIGNvbG9yOiAkaWduLXRleHQtYWNjZW50LTI7XG59XG5cbi50ZXh0LWFjY2VudC0zIHtcbiAgY29sb3I6ICRpZ24tdGV4dC1hY2NlbnQtMztcbn1cblxuLnRleHQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGlnbi10ZXh0LXBsYWNlaG9sZGVyO1xufVxuXG4udGV4dC1icmFuZC1wcmltYXJ5IHtcbiAgY29sb3I6ICRpZ24tYnJhbmQtcmVkO1xufVxuXG4uaW50ZXJhY3RpdmUtb3ZlcmxheS13aGl0ZS01MCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTApXG59XG5cbi8vIEZvbnQgU2l6ZXNcblxuLmlnbi1mb250LXNpemUtMTQge1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuLnRleHQtc2VtaS1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuIiwiQGtleWZyYW1lcyBmYWRlLXVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufSIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSBuby1yZXBlYXQgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ6ICAgICAgNzV2aCAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbkBlYWNoICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbyBpbiAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zIHtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXg6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDEpO1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teTogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMik7XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtI3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teH1ieSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXl9IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoZGl2aWRlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15LCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teCkpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlKCkge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLnNoYWRvdy1zbSB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3cgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1ub25lIHsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcblxuLm1pbi12dy0xMDAgeyBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHsgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiBcIiN7JHNpemV9XCIgIT0gXCIwXCIge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIHJlc3BvbnNpdmUgZm9udCBzaXplc1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvdjgueC9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1mb250LXNpemUtdW5pdCAhPSByZW0gYW5kICRyZnMtZm9udC1zaXplLXVuaXQgIT0gcHgge1xuICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHB4IGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBlbSBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcmVtIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIFJlc2l6ZSBmb250IHNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICAkcmVzdWx0OiAwO1xuICAkZmFjdG9yOiAxMDtcbiAgQHdoaWxlICgkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+PSAwKSB7XG4gICAgJHF1b3RpZW50OiAwO1xuICAgIEB3aGlsZSAoJHJlbWFpbmRlciA+PSAkZGl2aXNvcikge1xuICAgICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICAgICAgJHF1b3RpZW50OiAkcXVvdGllbnQgKyAxO1xuICAgIH1cbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyAkcXVvdGllbnQ7XG4gICAgJGZhY3RvcjogJGZhY3RvciAqIC4xO1xuICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgKiAxMDtcbiAgICAkcHJlY2lzaW9uOiAkcHJlY2lzaW9uIC0gMTtcbiAgICBAaWYgKCRwcmVjaXNpb24gPCAwIGFuZCAkcmVtYWluZGVyID49ICRkaXZpc29yICogNSkge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIDE7XG4gICAgfVxuICB9XG4gICRyZXN1bHQ6ICRyZXN1bHQgKiAkZmFjdG9yICogJHNpZ247XG4gICRkaXZpZGVuZC11bml0OiB1bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IHVuaXQoJGRpdmlzb3IpO1xuICAkdW5pdC1tYXA6IChcbiAgICBcInB4XCI6IDFweCxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwiZW1cIjogMWVtLFxuICAgIFwiJVwiOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUsIGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsICRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1lbmFibGUtY2xhc3Mge1xuICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSgkbXEtdmFsdWUpIHtcbiAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250IHNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6IGRpdmlkZSgkZnMsICRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6IGRpdmlkZSgkZnMsIGRpdmlkZSgkZnMgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250IHNpemVcbiAgICAkcmZzLXN0YXRpYzogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCRmcywgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skZnN9cHgpO1xuXG4gICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSBmb250IHNpemUgaXMgYmlnZ2VyIHRoYW4gdGhlIG1pbmltdW0gZm9udCBzaXplXG4gICAgQGlmICRmcyA8PSAkcmZzLWJhc2UtZm9udC1zaXplIG9yIG5vdCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSBmb250IHNpemUgZm9yICRmc1xuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArIGRpdmlkZSgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJGZzIGFuZCB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3tkaXZpZGUoJGZzLWRpZmYgKiAxMDAsICRyZnMtYnJlYWtwb2ludCl9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemVcbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG5cbiAgICAgIC8vIEJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgJG1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcblxuICAgICAgQGluY2x1ZGUgX3Jmcy1kaXNhYmxlLWNsYXNzIHtcbiAgICAgICAgZm9udC1zaXplOiAjeyRyZnMtc3RhdGljfSN7JHJmcy1zdWZmaXh9O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICAgICAgICBAaW5jbHVkZSBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW5zIHVzZSBSRlMgdG8gcmVzY2FsZSB0aGUgZm9udCBzaXplXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcbiAgICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBTZWUgaHR0cHM6Ly9jb2RlcGVuLmlvL2tldmlud2ViZXIvcGVuL2RYV29Sd1xuLy9cbi8vIFJlcXVpcmVzIHRoZSB1c2Ugb2YgcXVvdGVzIGFyb3VuZCBkYXRhIFVSSXMuXG5cbkBmdW5jdGlvbiBlc2NhcGUtc3ZnKCRzdHJpbmcpIHtcbiAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcImRhdGE6aW1hZ2Uvc3ZnK3htbFwiKSB7XG4gICAgQGVhY2ggJGNoYXIsICRlbmNvZGVkIGluICRlc2NhcGVkLWNoYXJhY3RlcnMge1xuICAgICAgLy8gRG8gbm90IGVzY2FwZSB0aGUgdXJsIGJyYWNrZXRzXG4gICAgICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwidXJsKFwiKSA9PSAxIHtcbiAgICAgICAgJHN0cmluZzogdXJsKFwiI3tzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgNiwgLTMpLCAkY2hhciwgJGVuY29kZWQpfVwiKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc3RyaW5nOiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkY2hhciwgJGVuY29kZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgKiAuMDAxO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuXG4vLyBSZXR1cm4gdmFsaWQgY2FsY1xuQGZ1bmN0aW9uIGFkZCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxICsgJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSArICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiArIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gc3VidHJhY3QoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwgYW5kICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAtJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSAtICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUyKSAhPSBudW1iZXIge1xuICAgICR2YWx1ZTI6IHVucXVvdGUoXCIoXCIpICsgJHZhbHVlMiArIHVucXVvdGUoXCIpXCIpO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9IC0gI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiIC0gXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLndpZHRoIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wcmlnaHQsXG4uZHJvcGRvd24sXG4uZHJvcGxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1wYWRkaW5nLXg7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gUG9wcGVyIGlzIGVuYWJsZWQsIHJlc2V0IHRoZSBiYXNpYyBkcm9wZG93biBwb3NpdGlvblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5kcm9wZG93bi1tZW51IHtcbiAgJlt4LXBsYWNlbWVudF49XCJ0b3BcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwicmlnaHRcIl0sXG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgfVxufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZywgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duKCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbmF2LWRpdmlkZXIoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYmFkZ2UtZm9jdXMtd2lkdGggcmdiYSgkYmcsIC41KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5zaXRlLWZvb3RlciB7XG4gIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLXNtO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICB9XG4gICZfX3VwcGVyIHtcbiAgICAuc2l0ZS1sb2NhdGlvbiB7XG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiA0MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDQ4cHg7XG4gICAgICB9XG4gICAgICBmaWd1cmUge1xuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XG5cbiAgICAgICAgLmZvb3Rlci1sb2dvIHtcbiAgICAgICAgICBoZWlnaHQ6IDQzcHg7XG4gICAgICAgICAgd2lkdGg6IDQzcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZfX3RleHQge1xuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm9mZmljZS1sb2NhdGlvbnMge1xuICAgICAgbWFyZ2luLWJsb2NrLWVuZDogNTJweDtcblxuICAgICAgaDQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICB9XG5cbiAgICAgIC50ZXh0LWJ1dHRvbi0tY29udGFjdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiAwO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICB9XG5cbiAgICAgIGEgKyBhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgIH1cblxuICAgICAgJl9fbGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5iYWNrLXRvLXRvcCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1OHB4O1xuICAgICAgfVxuXG4gICAgICAjYmFjay10by10b3AtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fbG93ZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaWduLWJyYW5kLWxpZ2h0Z3JleTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1uYXYsXG4uZm9vdGVyLW5hdi1zb2NpYWwge1xuICB1bCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuLmZvb3Rlci1uYXYtc29jaWFsIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwge1xuICBsaSB7XG4gICAgcGFkZGluZy1pbmxpbmU6IDE2cHg7XG4gICAgYm9yZGVyLWlubGluZTogMXB4IHNvbGlkICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgICAgIGJvcmRlci1pbmxpbmU6IG5vbmU7XG4gICAgfVxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMDtcbiAgICAgIGJvcmRlci1pbmxpbmU6IG5vbmU7XG4gICAgfVxuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuICB9XG59XG4uZm9vdGVyLW5hdi1zb2NpYWwgdWwge1xuICBsaSB7XG4gICAgcGFkZGluZy1pbmxpbmU6IDE4cHg7XG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICAgIH1cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gICAgfVxuICAgIC5tZW51LXNvY2lhbCBhOmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC4yNWVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gICAgJi5pY29uLWluc3RhIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgnLi8uLi9hc3NldHMvaW1nL2luc3RhZ3JhbS5zdmcnKTtcbiAgICB9XG4gICAgJi5pY29uLWZiIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgnLi8uLi9hc3NldHMvaW1nL2ZhY2Vib29rLnN2ZycpO1xuICAgIH1cbiAgICAmLmljb24tdHdpdHRlciBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1cmwoJy4vLi4vYXNzZXRzL2ltZy90d2l0dGVyLnN2ZycpO1xuICAgIH1cbiAgICAmLmljb24tbGlua2VkaW4gYTpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKCcuLy4uL2Fzc2V0cy9pbWcvbGlua2VkaW4uc3ZnJyk7XG4gICAgfVxuICB9XG59IiwiYm9keSB7XG4gICYuYWRtaW4tYmFyIHtcbiAgICAuc2l0ZS1oZWFkZXIge1xuICAgICAgdG9wOiAzMnB4O1xuICAgIH1cbiAgfVxuICAmLnN1Yi1uYXYtaXMtdmlzaWJsZSB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAub3ZlcmxheSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAub3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLDAsMCk7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgei1pbmRleDogNTtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMzA7XG4gICY6bm90KC50cmFuc3BhcmVudC1zaXRlLWhlYWRlcikge1xuICAgIC5tYWluLW5hdiB7XG4gICAgICBib3gtc2hhZG93OiAwcHggMXB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgIH1cbiAgfVxuXG4gICYudHJhbnNwYXJlbnQtc2l0ZS1oZWFkZXI6bm90KC5uYXYtaXMtdmlzaWJsZSkge1xuICAgIC5tYWluLW5hdiB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuOCkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG5cbiAgICAgIC5tYWluLW5hdi1sb2dvLWltZyB7XG4gICAgICAgICYubWFpbi1uYXYtbG9nby1pbWctYmxhY2sge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgXG4gICAgICAgICYubWFpbi1uYXYtbG9nby1pbWctd2hpdGUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW5hdi1tZW51LWxvcy1hbmdlbGVzIGEsXG4gICAgICAubWFpbi1uYXYtbWVudS1sb25kb24gYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWFpbi1uYXYtb2ZmaWNlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuXG4gICAgICAubWFpbi1uYXYtbW9iaWxlLWJ1dHRvbiAudGV4dC1idXR0b24sXG4gICAgICAubWFpbi1uYXYtbWVudS1sb25kb24gLnRleHQtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW5hdi1jb250YWluZXIge1xuICAgICAgICAubWFpbi1uYXYtc2VhcmNoIHtcbiAgICAgICAgICAubWFpbi1uYXYtc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubmF2LWlzLXZpc2libGUge1xuICAgIC5tYWluLW5hdi1zZWFyY2gge1xuICAgICAgJi5zdWItbmF2LWlzLW9wZW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgJiArIC5tYWluLW5hdi1tb2JpbGUtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1haW4tbmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtc207XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1sZztcbiAgICB9XG5cbiAgICAmLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLXNtO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctbGc7XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW5hdi1sb2dvIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIC5tYWluLW5hdi1sb2dvLWltZy1ibGFjayB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIC5tYWluLW5hdi1sb2dvLWltZy13aGl0ZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLWltZyB7XG4gICAgICAgICAgd2lkdGg6IDExNHB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgd2lkdGg6IDE2OXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWFpbi1uYXYtb2ZmaWNlLXNlbGVjdGlvbiB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgLnRleHQtYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjFweCkge1xuICAgICAgICAgIC50ZXh0LWJ1dHRvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7IFxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgLnRleHQtYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLnN1Yi1uYXYtaXMtb3BlbiB7XG4gICAgICAgICAgLm1haW4tbmF2LW9mZmljZS1zZWxlY3Rvci1idXR0b24ge1xuICAgICAgICAgICAgY29sb3I6ICRpZ24tYnJhbmQtcmVkO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tbmF2LW9mZmljZS1zZWxlY3Rvci1idXR0b24ge1xuICAgICAgICAgIGNvbG9yOiAkaWduLXRleHQtcHJpbWFyeTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRpZ24tYnJhbmQtcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZpY2UtbG9jYXRpb24tbGluayB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmljZS1sb2NhdGlvbi1saW5rOm5vdCguaXMtc2VsZWN0ZWQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW5hdi1tZW51IHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLm1haW4tbmF2LW1lbnUtbG9zLWFuZ2VsZXMgPiB1bCxcbiAgICAgICAgLm1haW4tbmF2LW1lbnUtbG9uZG9uID4gdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZ2FwOiA2NHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpID4gYSNzZWNvbmRhcnlOYXZCdXR0b24gPiBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaWNvbi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLWNsb3NlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgICYuc3ViLW5hdi1pcy1vcGVuIHtcbiAgICAgICAgICAjc2Vjb25kYXJ5TmF2QnV0dG9uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmljb24tbWVudSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgLmljb24tY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW5hdi1tb2JpbGUtYnV0dG9uIHtcbiAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgICAgICAuaWNvbi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAuaWNvbi1jbG9zZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5zdWItbmF2LWlzLW9wZW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIC5pY29uLW1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmljb24tY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW5hdi1zZWFyY2gge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLm1haW4tbmF2LXNlYXJjaC1idXR0b24ge1xuICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgIGNvbG9yOiAkaWduLXRleHQtcHJpbWFyeTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICBjb2xvcjogJGlnbi1icmFuZC1yZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pY29uLXNlYXJjaCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgLmljb24tY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zdWItbmF2LWlzLW9wZW4ge1xuICAgICAgICAgIC5pY29uLXNlYXJjaCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuaWNvbi1jbG9zZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJiA+IC5zdWItbmF2LWlzLW9wZW4gPiAuc3ViLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBhbmltYXRpb246IGZhZGUtaW4gNTAwbXMgZm9yd2FyZHM7XG4gICAgICB9XG5cbiAgICAgICYgPiAqID4gLnN1Yi1uYXYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQtc207XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgLy9hbmltYXRpb246IGZhZGUtb3V0IDUwMG1zIGZvcndhcmRzO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgaGVpZ2h0OiA0NzRweDtcbiAgICAgICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0LWxnO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuc3ViLW5hdi1jb250YWluZXIge1xuICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLXNtO1xuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogJGJvZHktcGFkZGluZy1sZztcbiAgICAgICAgICB9XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgLnN1Yi1uYXYtZm9vdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMzJweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN1Yi1uYXYtZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLXNtO1xuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmxvbmRvbi1zdWItbmF2LWZvb3RlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDE2cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAuc3ViLW5hdi1mb290ZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAub2ZmaWNlLWxvY2F0aW9ucyB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgZ2FwOiA4MHB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaWduLWJyYW5kLWxpZ2h0Z3JleTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAubWVudS1pdGVtcyxcbiAgICAgICAgICAgICAgICAuZm9vdGVyLW5hdiB1bCB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9mZmljZS1zZWxlY3Rpb24tc3ViLW5hdiB7XG4gICAgICAgICAgLnN1Yi1uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgLm9mZmljZS1zZWxlY3QtbWVudSB7XG4gICAgICAgICAgICAgIGxpICsgbGkgIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyM3B4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIC5zaG9ydCB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5sb25nIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMXB4KSB7XG4gICAgICAgICAgICAgICAgICAuc2hvcnQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLmxvbmcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tYWluLW1lbnUtc3ViLW5hdiB7XG4gICAgICAgICAgLnN1Yi1uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDBkdmggLSAodmFyKC0taGVhZGVyLWhlaWdodC1zbSkgKyAxMzBweCkpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN1Yi1uYXYtZ3JpZC1jb250YWluZXIge1xuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmFsbC13b3JrLWxpbmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGgyO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRpZ24tdGV4dC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIC5tYWluLW1lbnUtc3ViLW5hdi1tZW51IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaDMtZGVza3RvcDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9ja1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWFyY2gtc3ViLW5hdiB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogMzkycHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zdWItbmF2LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNjRweDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubW9iaWxlLW5hdi1zdWItbmF2IHtcbiAgICAgICAgICAuc3ViLW5hdi1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUycHg7XG5cbiAgICAgICAgICAgIG5hdi5tb2JpbGUtbmF2ID4gdWwgPiBsaSB7XG4gICAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBoMjtcbiAgICAgICAgICAgICAgfSAgIFxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgICAgICAgICAgICB9XG4gIFxuICAgICAgICAgICAgICAmLmhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIFxuICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgICAgICAgdWwuc2Vjb25kYXJ5LW5hdiB7XG4gICAgICAgICAgICAgICAgICAmLmlzLWhpZGRlbiB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNldC1saXN0O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gIFxuICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogJGJvZHktcGFkZGluZy1zbTtcbiAgICAgICAgICAgICAgICAgICAgJi5nby1iYWNrIHtcbiAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDI0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAuaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBcbiAgICAgICAgICB9IFxuICAgICAgICB9XG5cbiAgICAgICAgJi5sb25kb24tc2Vjb25kYXJ5LW5hdiB7XG4gICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skaGVhZGVyLWhlaWdodC1zbX0pO1xuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0LWxnfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zdWItbmF2LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcbiAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogNTBweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmN0YSB7XG4gIHBhZGRpbmctYmxvY2s6IDgwcHg7XG4gIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLXNtO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICB9XG4gIGEge1xuICAgIGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcbiAgICBAaW5jbHVkZSBoMjtcbiAgICBjb2xvcjogJGlnbi10ZXh0LWFjY2VudC0yO1xuICAgIHNwYW4ge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRpZ24tdGV4dC1hY2NlbnQtMjtcbiAgICAgIHNwYW46bm90KC50cmFuc3BhcmVudCkge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmhlcm8ge1xuXG4gICYubG9uZG9uIHtcbiAgICAuaGVyby12aWRlby1jb250YWluZXIge1xuICAgICAgdmlkZW8ge1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi12aWRlby1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgaGVpZ2h0OiA4NWR2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgaGVpZ2h0OiA2NXZ3O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBoZWlnaHQ6IDg1dmg7XG4gICAgfVxuXG4gICAgdmlkZW8ge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgJi1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC43KSAxMDAlKTtcblxuICAgIC5oZXJvLW92ZXJsYXktY29udGFpbmVyIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBwYWRkaW5nLWlubGluZTogJGJvZHktcGFkZGluZy1zbTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctbGc7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDhweDtcbiAgICAgIH1cblxuICAgICAgLmhlcm8tb3ZlcmxheS1ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIC5jYW1wYWlnbi1pbmZvIHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG5cbiAgICAgICAgICAuY2xpZW50LWxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogNzJweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY2FtcGFpZ24tbG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTEycHgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICB3aWR0aDogMzg1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBsYXllci1jb250cm9scyB7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNTZweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiA1cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA3cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcblxuXG4gICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRpZ24tYnJhbmQtcmVkIGNvbnRlbnQtYm94O1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3B4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi53b3JrLWdyaWQge1xuICB3aWR0aDogMTAwJTtcbiAgJi5sb25kb24ge1xuICAgIC53b3JrLWdyaWQtY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgICAuY2FtcGFpZ24tY2FyZCAuY2FtcGFpZ24tY2FyZC1jb250YWluZXIgLmNhbXBhaWduLWxvZ28ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY2F0ZWdvcnktdGFncyB7XG4gICAgICAgIC8vIGxvbmRvbiBjYXRlZ29yeSBvcmRlclxuICAgICAgICBsaVtkYXRhLWNhdGVnb3J5PVwiYXZcIl0ge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgICAgIGxpW2RhdGEtY2F0ZWdvcnk9XCJzb2NpYWxcIl0ge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICAgIGxpW2RhdGEtY2F0ZWdvcnk9XCJwcmludFwiXSB7XG4gICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIH1cbiAgICAgICAgbGlbZGF0YS1jYXRlZ29yeT1cImRvb2hcIl0ge1xuICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53b3JrLWdyaWQtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtYXV0by1mbG93OiBkZW5zZTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuXG4gICAgLmNhbXBhaWduLWNhcmQge1xuICAgICAgQGluY2x1ZGUgZnVsbC13aWR0aC1iYWNrZ3JvdW5kKCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMDApIDAlLCByZ2JhKDAsIDAsIDAsIDAuNzApIDEwMCUpLCB2YXIoLS1iYWNrZ3JvdW5kKTtcbiAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDUwdnc7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICBwYWRkaW5nOiAzMnB4IDQwcHggNDBweCA0MHB4O1xuICAgICAgfVxuXG4gICAgICAuY2FtcGFpZ24tY2FyZC1vdmVybGF5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC5jYW1wYWlnbi1jYXJkLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBcbiAgICAgICAgLmNsaWVudC1sb2dvIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2Utb3V0O1xuICAgICAgICAgIFxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogNTZweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhbXBhaWduLWxvZ28ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI0cHgpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTJweDtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjI0cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTI0cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubG9uZG9uIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktdGFncyB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgICAuY2FtcGFpZ24tY2FyZC1vdmVybGF5IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2Utb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FtcGFpZ24tY2FyZC1jb250YWluZXIge1xuICAgICAgICAgICAgLmNsaWVudC1sb2dvIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYW1wYWlnbi1sb2dvIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXRlZ29yeS10YWdzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2Utb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5xdWlja3ZpZXctb3BlbiAge1xuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICAuY2FtcGFpZ24tY2FyZC1vdmVybGF5IHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgLmNhbXBhaWduLWNhcmQtY29udGFpbmVyIHtcbiAgICAgICAgICAuY2xpZW50LWxvZ28ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2Utb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY2FtcGFpZ24tbG9nbyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgLmNhdGVnb3J5LXRhZ3Mge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3JkZXItbGVmdDogMTNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDEzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICBib3R0b206IC0xMXB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IDExcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5xdWlja3ZpZXcge1xuICAgICAgc2Nyb2xsLW1hcmdpbi10b3A6ICRoZWFkZXItaGVpZ2h0LXNtO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgc2Nyb2xsLW1hcmdpbi10b3A6ICRoZWFkZXItaGVpZ2h0LWxnO1xuICAgICAgfVxuICAgICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgJi5mdWxsd2lkdGgge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgZnVsbC13aWR0aC1iYWNrZ3JvdW5kKCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCUsIHJnYmEoMCwgMCwgMCwgMC41MCkgMTAwJSksIHZhcigtLWJhY2tncm91bmQpO1xuICAgICAgLnF1aWNrdmlldy1jb250YWluZXIge1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctc207XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzZweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5NnB4O1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FtcGFpZ24tY2F0ZWdvcmllcyB7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICBnYXA6IDE2cHg7XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgIGdhcDogMTZweCA0OHB4O1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTcwMHB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5jYW1wYWlnbi1jYXRlZ29yeSB7XG5cbiAgICAgICAgICAgIC5jYXRlZ29yeS1hcnRpZmFjdHMge1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgIGdhcDogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucXVpY2t2aWV3LWZvb3RlciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5jdGEge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDI0cHg7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmF3YXJkcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heChtaW4tY29udGVudCwgMCkpO1xuICAgICAgICAgICAgZ2FwOiA0OHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogODdweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW1hZ2Utd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkaWduLWJyYW5kLXJlZDtcbiAgICAgIC5pbWFnZS1vdmVybGF5IHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgICAuaWNvbi1vdmVybGF5IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGltZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICB9XG5cbiAgLmltYWdlLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICB9XG4gIC5pY29uLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgc3ZnIHtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICAmLnZpZGVvLXdyYXBwZXIge1xuICAgIGZsZXg6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBpbWcge1xuICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG4gICAgfVxuICAgICsgLnZpZGVvLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi5ob3Jpem9udGFsLXdyYXBwZXIge1xuICAgIGZsZXg6IDAuNTtcbiAgICArIC5sYW5kc2NhcGUtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAmLmxhbmRzY2FwZS13cmFwcGVyIHtcbiAgICArIC5sYW5kc2NhcGUtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaW1hZ2UtYXJ0aWZhY3QtYnV0dG9uLFxuLnZpZGVvLWFydGlmYWN0LWJ1dHRvbixcbi5hcnRpZmFjdC1idXR0b24ge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udmlkZW8tdGh1bWIsXG4uYXJ0aWZhY3QtaW1hZ2Uge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbn1cblxuLmFydGlmYWN0LXRodW1icyB7XG4gIC52aWRlby10aHVtYixcbiAgLmFydGlmYWN0LWltYWdlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgbWluLWhlaWdodDogaW5pdGlhbDtcbiAgfVxufVxuXG4uY2F0ZWdvcnktaGVhZGVyLFxuLmNhdGVnb3J5LXRhZ3Mge1xuICBwYWRkaW5nLXRvcDogOHB4O1xuICB1bCB7XG4gICAgQGluY2x1ZGUgcmVzZXQtbGlzdCgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMCAxNnB4O1xuICAgIGxpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuXG4gICAgICAmLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAmW2RhdGEtY2F0ZWdvcnk9XCJhdlwiXSB7XG4gICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJltkYXRhLWNhdGVnb3J5PVwicHJpbnRcIl0ge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICAgICZbZGF0YS1jYXRlZ29yeT1cIm1vdGlvblwiXSB7XG4gICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIH1cbiAgICAgICAgJltkYXRhLWNhdGVnb3J5PVwic29jaWFsXCJdIHtcbiAgICAgICAgICBvcmRlcjogNDtcbiAgICAgICAgfVxuICAgICAgICAmW2RhdGEtY2F0ZWdvcnk9XCJwcm9kdWN0aW9uXCJdIHtcbiAgICAgICAgICBvcmRlcjogNTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jYXRlZ29yeS1oZWFkZXIge1xuICBsaSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTApIDEwMCUpIDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgfVxufVxuXG4uY2F0ZWdvcnktdGFncyB7XG4gIHVsIHtcbiAgICBnYXA6IDRweCAxMnB4O1xuICAgIC5ib2R5LXNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbmJvZHkuc2luZ2xlLWlnbml0aW9uX2NhbXBhaWducyB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLndvcmstZ3JpZCAud29yay1ncmlkLWNvbnRhaW5lciBhOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufSIsIi5icmVhZGNydW1iLWJsb2NrIHtcbiAgLmJyZWFkY3J1bWIge1xuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogNnB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWF4LWhlaWdodDogMTZweDtcbiAgICBsaSB7XG4gICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICYuc2VwZXJhdG9yID4gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYm9keS5zaW5nbGUtaWduaXRpb25fY2FtcGFpZ25zIHtcbiAgLmJyZWFkY3J1bWItYmxvY2sgLml0ZW0taG9tZSBhIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICB9XG59IiwiLnZpZGVvLW1vZGFsLFxuLmltYWdlLW1vZGFsLFxuLnNsaWRlci1tb2RhbCB7XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYnV0dG9uOm5vdCguc2xpY2stYXJyb3cpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZTogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmltYWdlLW1vZGFsLFxuLnZpZGVvLW1vZGFsLFxuLnNsaWRlci1tb2RhbCB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgICBtYXgtd2lkdGg6IDYwdnc7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDc1dmg7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBtYXgtaGVpZ2h0OiA4MHZoO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgb3BhY2l0eTowLjkgIWltcG9ydGFudDtcbn1cblxuIiwiLmNhbXBhaWduLWZpbHRlcnMge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAuZmlsdGVyLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaWduLWJyYW5kLWxpZ2h0Z3JleTtcblxuICAgIC5tb2JpbGUtbG9jYXRpb24taW5kaWNhdG9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FtcGFpZ24tZmlsdGVycy1uYXYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMTZweDtcblxuICAgICAgICBsaSBhLmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICRpZ24tYnJhbmQtcmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhdGVnb3J5LWxpc3QtaXRlbSB7XG4gICAgICAgICAgcGFkZGluZzogMHJlbSAxcmVtO1xuICAgICAgICB9XG4gICAgICAgICYubG9uZG9uIHtcbiAgICAgICAgICAuZG9vaC1sb25kb24geyBvcmRlcjogNDsgfVxuICAgICAgICAgIC5rZXktYXJ0LWxvbmRvbiB7IG9yZGVyOiAzO31cbiAgICAgICAgICAuc29jaWFsLXR2LWxvbmRvbixcbiAgICAgICAgICAuc29jaWFsLXR2IHsgb3JkZXI6IDI7IH1cbiAgICAgICAgICAudHJhaWxlci1sb25kb24geyBvcmRlcjogMTsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1vcmUtZmlsdGVycyB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGJ1dHRvblthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICBjb2xvcjogJGlnbi1icmFuZC1yZWQ7XG4gICAgICBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5maWx0ZXJzIHtcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICAubW9iaWxlLW5hdi1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VsZWN0LWZpbHRlcnMtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBnYXA6IDhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWRkaXRpb25hbC1maWx0ZXJzIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC5yZXN1bHRzIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc29ydC1ieS1vcHRpb25zIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgIH1cbiAgICAgICNwb3N0c1NvcnREcm9wZG93biB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweCFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuZHJvcGRvd24taXRlbSAgIHtcbiAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9ICAgIFxuICB9XG59IiwiLmlnbi1kcm9wZG93bi5pZ24tc2VsZWN0IHtcbiAgZmxleDogMSAwIDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmbGV4OiAwIDAgMjQ4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cbiAgXG4gIC5pZ24tZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGlnbi1icmFuZC1yZWQ7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG5cbiAgICAgIC5pbmRpY2F0b3Ige1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuXG4gICAgICAmICsgLmlnbi1kcm9wZG93bi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCA4NXB4KSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAtNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRpZ24tYnJhbmQtcmVkO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zZWxlY3Rpb25zIHtcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogNHB4O1xuXG4gICAgICAuc2VhcmNoIGlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcbiAgICAgIH1cblxuICAgICAgbGkgKyBsaS5zZWFyY2gge1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgfVxuXG4gICAgICAudGFnIHtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuICAgICAgICBwYWRkaW5nOiAzcHggOHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkc2VtaS1ib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBvdXRsaW5lOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBjb2xvcjogJGlnbi1icmFuZC1yZWQ7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJvdHRvbTogMXB4O1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGlnbi1icmFuZC1yZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICB3aWR0aDogMjQ4cHg7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5idXR0b24uZHJvcGRvd24tdG9nZ2xlLm5vLWNhcmV0IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmlnbi1yYWRpbyB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG5cbiAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgJjpjaGVja2VkIHtcbiAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWduLWJyYW5kLXJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBib3JkZXI6IDZweCBzb2xpZCAjZjVmNWY1O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbmZvcm0jc2VhcmNoRm9ybSxcbmZvcm0jbWFpblNlYXJjaEZvcm0ge1xuICBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlnbi1icmFuZC1saWdodGdyZXk7XG4gICAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC1mYW1pbHk6ICRyYWxld2F5O1xuICAgICAgQGluY2x1ZGUgaDI7XG4gICAgICBvdXRsaW5lOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT10ZXh0XTo6cGxhY2Vob2xkZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICRyYWxld2F5O1xuICAgICAgY29sb3I6ICRpZ24tYnJhbmQtbGlnaHRncmV5O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gICAgYnV0dG9uW3R5cGU9c3VibWl0XSB7XG4gICAgICB3aWR0aDogMTAlO1xuICAgICAgZm9udC1zaXplOiA1LjZyZW07XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmb250LXNpemU6IDEyLjRyZW07XG4gICAgICAgIGhlaWdodDogMTQ0cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VhcmNoLXN1Z2dlc3Rpb25zLFxuICAubWFpbi1zZWFyY2gtc3VnZ2VzdGlvbnMge1xuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkaWduLWJyYW5kLXJlZDtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDhweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICBwYWRkaW5nLWJsb2NrOiAxMnB4O1xuICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICAmOmVtcHR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiAxNnB4O1xuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1ibG9jazogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmlnbi1jYXJvdXNlbC1wcmV2LWFycm93LFxuLmlnbi1jYXJvdXNlbC1uZXh0LWFycm93IHtcbiBvdXRsaW5lOiBub25lO1xuIGJvcmRlcjogbm9uZTtcbiBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiBwb3NpdGlvbjogYWJzb2x1dGU7XG4gdG9wOiA1MCU7XG4gei1pbmRleDogOTk5O1xuIGN1cnNvcjogcG9pbnRlcjtcbiBwYWRkaW5nOiAwO1xuIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLmlnbi1jYXJvdXNlbC1wcmV2LWFycm93IHtcbiAgbGVmdDogLTI0cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5pZ24tY2Fyb3VzZWwtbmV4dC1hcnJvdyB7XG4gIHJpZ2h0OiAtMjRweDtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4uaWduLWNhcm91c2VsLWFycm93IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybCgnLi4vYXNzZXRzL2ltZy9pY29uLWNoZXZyb24tcmlnaHQuc3ZnJyk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICB9XG4gIH1cbiAgJi53aGl0ZS1hcnJvdyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKCcuLi9hc3NldHMvaW1nL2ljb24tY2hldnJvbi1yaWdodC13aGl0ZS5zdmcnKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHNsaWRlciBtb2RhbFxuLnNsaWRlci1tb2RhbCB7XG4gIC5pZ24tY2Fyb3VzZWwtbmV4dC1hcnJvdyB7XG4gICAgYm90dG9tOiBjYWxjKC01Mi41cHggLSAyNXB4KTtcbiAgICByaWdodDogMzIlO1xuICAgIHRvcDogdW5zZXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuOCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBhZGRpbmc6IDNweCAzcHggMXB4IDVweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogLTc1cHg7IFxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyBcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbiAgLmlnbi1jYXJvdXNlbC1wcmV2LWFycm93IHtcbiAgICBib3R0b206IGNhbGMoLTUyLjVweCAtIDI1cHgpO1xuICAgIGxlZnQ6IDMyJTtcbiAgICB0b3A6IHVuc2V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwYWRkaW5nOiAzcHggM3B4IDFweCA1cHg7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgbGVmdDogLTc1cHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTsgXG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufSIsIi5sb2FkZXIge1xuICBhbmltYXRpb246IHNwaW4gNHMgaW5maW5pdGUgbGluZWFyO1xufSIsImJvZHkucGFnZS10ZW1wbGF0ZS1ob21lIHtcbiAgaGVpZ2h0OiAxMDBkdmg7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uaG9tZS1wYWdlIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctc207XG4gIFxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICB9XG5cbiAgdWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cbiAgICBsaSB7XG4gICAgICAmICsgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiAyM3B4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEgPiAubG9uZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMXB4KSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhID4gLnNob3J0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lOyBcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIxcHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1ob21lIC5zaXRlLWZvb3RlciB7XG4gIC8vaGVpZ2h0OiA5MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiBjYWxjKDEwMHZ3IC0gdmFyKC0tYm9keS1wYWRkaW5nLXNtKSk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSB2YXIoLS1ib2R5LXBhZGRpbmctbGcpKTtcbiAgfVxuICAmX191cHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsImJvZHkucGFnZS10ZW1wbGF0ZS1sb3NfYW5nZWxlcyB7XG4gIHBhZGRpbmctdG9wOiAwO1xufSIsImJvZHkucGFnZS10ZW1wbGF0ZS1sb25kb24ge1xuICBwYWRkaW5nLXRvcDogMDtcbn0iLCIuY29udGFjdC1wYWdlIHtcbiAgcGFkZGluZy1ibG9jazogJGJvZHktdG9wLXBhZGRpbmctc207XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy1ibG9jazogJGJvZHktdG9wLXBhZGRpbmctbGc7XG4gIH1cbiAgLmNvbnRhY3QtaGVhZGVyIHtcbiAgICAuY29udGFjdC1oZWFkZXItY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICBoMSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5jb250YWN0LWluZm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDk2cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGdhcDogNTZweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0NHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA1NjBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBnYXA6IDU2cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3QtaW5mby13cmFwcGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgZ2FwOiAzMnB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDU2cHg7XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZ2FwOiA2MHB4O1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubG9zLWFuZ2VsZXMtY29udGFjdC1pbmZvLFxuICAgICAgICAgIC5sb25kb24tY29udGFjdC1pbmZvIHtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb250YWN0LWNhcmVlcnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG5cbiAgICAuY29udGFjdC1jYXJlZXJzLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHBhZGRpbmctdG9wOiA2NHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDk2cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5NnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTQ0cHg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cblxuICAgICAgLmNvbnRhY3QtY2FyZWVycy1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTZweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDYxMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgaGVhZGVyIHAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgY29sb3I6ICRpZ24tdGV4dC1hY2NlbnQtMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5leHRlcm5hbC1saW5rcyB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG5cbiAgICAgICAgICBhICsgYSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250YWN0LWNhcmVlcnMtY29udGFjdC1pbmZvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLXRlbXBsYXRlLWNvbnRhY3Qge1xuICAuc2l0ZS1mb290ZXIge1xuICAgIC5zaXRlLWZvb3Rlcl9fdXBwZXIge1xuICAgICAgLnNpdGUtbG9jYXRpb24sXG4gICAgICAub2ZmaWNlLWxvY2F0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQGtleWZyYW1lcyBzcGluIHtcbiAgZnJvbSB7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt9XG4gIHRvIHt0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7fVxufVxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgICBvcGFjaXR5OiAuMzU7XG4gIH1cbiAgNTAlIHtcbiAgICAgIG9wYWNpdHk6IC41O1xuICB9XG4gIDc1JSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gIH1cbiAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAuMjU7XG4gIH1cbn1cblxuLndvcmstcGFnZSB7XG4gIHBhZGRpbmctYmxvY2s6ICRib2R5LXRvcC1wYWRkaW5nLXNtO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctYmxvY2s6ICRib2R5LXRvcC1wYWRkaW5nLWxnO1xuICB9XG4gICYtY29udGFpbmVyIHtcbiAgICAuYnJlYWRjcnVtYi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIH1cbiAgfVxufSIsImJvZHkuc2luZ2xlLWlnbml0aW9uX2NhbXBhaWducyB7XG4gIHBhZGRpbmctdG9wOiAwO1xuXG4gIC53b3JrLWdyaWQge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIH1cblxuICAuYXJ0aWZhY3QtaW1hZ2UsXG4gIC52aWRlby10aHVtYiB7XG4gICAgbWF4LWhlaWdodDogNDlweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBtYXgtaGVpZ2h0OiA4NXB4O1xuICAgIH1cbiAgfVxufVxuXG4uY2FtcGFpZ24taGVhZGVyIHtcbiAgQGluY2x1ZGUgZnVsbC13aWR0aC1iYWNrZ3JvdW5kKCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC4wMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC43MCkgMTAwJSksIHZhcigtLWJhY2tncm91bmQpO1xuICBwYWRkaW5nLWJsb2NrOiAyMjRweCAyNHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gIFxuXG4gIC5pZ24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgXG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIGF1dG87XG4gICAgICBjb2x1bW4tZ2FwOiAxMGVtO1xuICAgIH1cblxuICAgIC5icmVhZGNydW1iLWJsb2NrIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAzO1xuICAgICAgICBncmlkLXJvdzogMSAvIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhbXBhaWduLW5hbWUge1xuICAgICAgbWF4LXdpZHRoOiA5MzFweDtcbiAgICAgIFxuICAgICAgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgICBmb250LXNpemU6IDVyZW07XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDExcmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNzUlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0NSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgZ3JpZC1yb3c6IDMgLyA0O1xuICAgICAgXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIDM7XG4gICAgICAgIGdyaWQtcm93OiAyIC8gLTE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNsaWVudC1sb2dvIHtcbiAgICAgIGdyaWQtcm93OiAyIC8gMztcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICBcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNzJweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIG1heC13aWR0aDogMTI0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDMgLyA0O1xuICAgICAgICBncmlkLXJvdzogMSAvIDM7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hd2FyZHMge1xuICAgICAgJjplbXB0eSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgKy5jbGllbnQtbG9nbyB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxIC8gLTE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm5vdCg6ZW1wdHkpIHtcbiAgICAgICAgZ3JpZC1yb3c6IDQgLyA1O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHg7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKSAxMDAlKSAxO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbWcgKyBpbWcge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAzIC8gNDtcbiAgICAgICAgICBncmlkLXJvdzogMyAvIC0xO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5oYXMtYXdhcmRzIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5jYW1wYWlnbi1uYW1lIHtcbiAgICAgICAgICBncmlkLXJvdzogMiAvIDQ7XG4gICAgICAgIH1cblxuICAgICAgICAuYXdhcmRzIHtcbiAgICAgICAgICBncmlkLXJvdzogMyAvIDQ7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xpZW50LWxvZ28ge1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWZhY3RzLXdyYXBwZXIge1xuICAuaWduLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDY4JSBhdXRvO1xuICAgICAgZ2FwOiA0OHB4O1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDExNnB4O1xuICAgIH1cblxuICAgID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7IFxuICAgICAgdG9wOiA3MXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnN0aWNreS1jb250YWluZXIge1xuICAmLnN0aWNreS1tb2JpbGUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHotaW5kZXg6IDEwMjA7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbiAgJi5zdGlja3ktZGVza3RvcCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDEzNnB4O1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWZhY3Qtc2xpZGVyIHtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIGRpc3BsYXk6IG5vbmU7XG4gICYuc2xpY2staW5pdGlhbGl6ZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgKyAubG9hZGVyICB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICB9XG4gIC5zbGlkZSB7XG4gICAgXG4gICAgLnZpZGVvLWNvbnRhaW5lcixcbiAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiA3NXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWRlby1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAmLnZpZGVvIHtcbiAgICAgICAgcGljdHVyZSBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDM2MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwaWN0dXJlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDY1MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ1dHRvbi1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICYudmlkZW8ge1xuICAgICAgICAgICAgaW5zZXQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hcnRpZmFjdC1pbmZvIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogMjBweDtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICB9XG4gIFxuICAuYXJ0aWZhY3QtdGl0bGUge1xuICAgIGdyaWQtY29sdW1uOiAxIC8gMjtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNC4ycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5leWVicm93IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFydGlmYWN0LWF3YXJkcyB7XG4gICAgYm9yZGVyLXRvcDogMXB4O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNTApIDAlLCByZ2JhKDAsIDAsIDAsIDAuMTApIDEwMCUpIDE7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAuYXJ0aWZhY3QtYXdhcmQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogNnB4O1xuICAgIH1cbiAgfVxuXG4gIC5jYW1wYWlnbi1kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBncmlkLWNvbHVtbjogMiAvIDM7XG4gICAgICBwYWRkaW5nOiAyOHB4IDhweDtcbiAgICB9XG4gIH1cbn1cblxuLmFydGlmYWN0LWNhdGVnb3JpZXMge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoKSB7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gIH1cblxuICAuY2F0ZWdvcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuXG4gICAgLmNhdGVnb3J5LWhlYWRlciB7XG4gICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgYm9yZGVyLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgwLDAsMCwuNSkgMCxyZ2JhKDAsMCwwLC4xKSAxMDAlKSAxO1xuICAgIH1cbiAgfVxuXG4gIC5zdWJjYXRlZ29yaWVzIHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICB9XG4gIH1cbn1cblxuLmFydGlmYWN0LXRodW1icyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxcHg7XG59XG5cbi5tb2JpbGUtY2FtcGFpZ24tZGVzY3JpcHRpb24ge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNhbXBhaWduLWN0YS10ZXh0IHtcbiAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctc207XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctaW5saW5lOiA0MHB4O1xuICB9XG59IiwiLnNlYXJjaC1wYWdle1xuICBwYWRkaW5nLWJsb2NrOiA2NHB4IDk2cHg7XG4gIFxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctYmxvY2s6IDk2cHg7XG4gIH1cblxuICAmLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctc207XG4gICAgXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICAgIH1cblxuICAgIC5zZWFyY2gtcGFnZS1oZWFkZXIge1xuICAgICAgXG4gICAgICBmb3JtIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIH1cblxuICAgIC5zZWFyY2gtcmVzdWx0cyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RFREVERTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICAgICYtY291bnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC53b3JrLWdyaWQge1xuICAgICAgJi55bWFsIHtcbiAgICAgICAgLndvcmstZ3JpZC1jb250YWluZXIge1xuICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5jYW1wYWlnbi1sb2dvIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTYwcHg7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSAgXG59IiwiLmlnbi00MDQtcGFnZSB7XG4gIHBhZGRpbmctYmxvY2s6IDY0cHggOTZweDtcbiAgXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy1ibG9jazogOTZweDtcbiAgfVxuXG4gIC5pZ24tNDA0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6ICRib2R5LXBhZGRpbmctc207XG4gICAgXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiAkYm9keS1wYWRkaW5nLWxnO1xuICAgIH1cbiAgfVxufSIsIi5hYm91dC1wYWdlIHtcbiAgcGFkZGluZy10b3A6ICRib2R5LXRvcC1wYWRkaW5nLXNtO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy10b3A6ICRib2R5LXRvcC1wYWRkaW5nLWxnO1xuICB9XG5cbiAgJi1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDY0cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gICYtaW5mbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLmluZm8tY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogOTZweDtcblxuICAgICAgLmZlYXR1cmVkLWltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZlYXR1cmVkLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiA1NnB4O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNDRweDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgbWF4LWhlaWdodDogNTYwcHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZmVhdHVyZWQtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1NnB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWF3YXJkcyxcbiAgJi1jbGllbnRzIHtcbiAgICBwYWRkaW5nLWJsb2NrOiA2NHB4IDk2cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgcGFkZGluZy1ibG9jazogOTZweCAxNDRweDtcbiAgICB9XG4gICAgaDIgIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDU2cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5hd2FyZHMsXG4gICAgLmNsaWVudHMge1xuICAgICAgbWF4LXdpZHRoOiAxNTAwcHg7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IDhweDtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgZ2FwOiAyNXB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogNjBweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICAgICAgY29sdW1uLWdhcDogMDtcbiAgICAgICAgcm93LWdhcDogNjRweDtcbiAgICAgIH1cblxuICAgICAgZmlndXJlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgICB3aWR0aDogNjRweDsgXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1hd2FyZHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gIH1cbn0iLCIvLyBQcml2YWN5IHBvbGljeVxuLnByaXZhY3ktcGFnZSB7XG4gIHBhZGRpbmctdG9wOiA2NHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOTZweDtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTQ0cHg7XG4gIH1cbiAgLmJyZWFkY3J1bWItYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIH1cbn0iXX0= */
