@charset "UTF-8";.mortgages{margin:0 -15px}.mortgages.layout-form .mortgages-form{display:block}.mortgages.layout-form .mortgages-form button.update{display:none}.mortgages.layout-form .mortgages-form button.submit{display:inline-block}.mortgages.layout-form .header{display:none}.mortgages.layout-form #mortgage-products{display:none}.mortgages.layout-form .mortgages-caption{display:none}.mortgages.layout-results .mortgages-form{display:none}.mortgages.layout-results .header{display:block}.mortgages.layout-results .header .column1{display:none}.mortgages.layout-results #mortgage-products{display:block}.mortgages.layout-results .mortgages-caption{display:block}.mortgages.layout-results #mortgages-intro{display:none}.mortgages.layout-edit.edit-toggle .mortgages-form{display:block}.mortgages.layout-edit .header .column1{display:none}.mortgages.layout-edit .header .column1 h3{margin:0;color:#00445d}.mortgages.layout-edit .mortgages-form{display:none}.mortgages.layout-edit .mortgages-form button.update{display:inline-block}.mortgages.layout-edit .mortgages-form button.submit{display:none}.mortgages.layout-edit #mortgage-products{display:block}.mortgages.layout-edit .mortgages-caption{display:block}.mortgages.layout-edit #mortgages-intro{display:none}.mortgages .button{width:100%;padding:14px 16px}.mortgages .select2-container .select2-selection--single{height:auto;border-radius:5px}.mortgages .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1}@media all and (min-width:768px){.mortgages{margin:0}.mortgages.layout-edit .column-wrap{display:flex}.mortgages.layout-edit .column1{display:block;flex:0 0 245px;margin:0;max-width:245px}.mortgages.layout-edit .column2{padding-left:30px;width:100%}.mortgages.layout-edit .header .column1{display:block}.mortgages.layout-edit .mortgages-form{display:block}}#koodoo-terms-link{cursor:pointer}#koodoo-terms{margin-top:80px}#koodoo-terms p{margin:1em 0}body.mortgages-shortcode #primary{margin-top:0}body.mortgages-shortcode #primary .elementor-element-populated{padding-top:0}body.mortgages-shortcode .elementor-element[data-widget_type="text-editor.default"] .elementor-widget-container p{margin:0}.mortgages-form{display:none;max-width:535px;margin:0 auto}.mortgages-form.ready{display:block}.mortgages-form .form-group{margin-bottom:15px}.mortgages-form label{text-transform:none;display:block;font-size:16px;font-weight:600;margin-bottom:10px;color:#00445d}.mortgages-form input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.mortgages-form .input-wrap{border-radius:5px;position:relative}.mortgages-form .input-wrap.money:before,.mortgages-form .input-wrap.percent:before,.mortgages-form .input-wrap.years:before{color:#fff;background:#43aa8b;padding:0 11px;font-size:18px;line-height:43px;position:absolute;top:0}.mortgages-form .input-wrap.money input,.mortgages-form .input-wrap.percent input,.mortgages-form .input-wrap.years input{line-height:21px}.mortgages-form .input-wrap.money.money:before,.mortgages-form .input-wrap.percent.money:before,.mortgages-form .input-wrap.years.money:before{content:"£";left:0;border-radius:8px 0 0 8px}.mortgages-form .input-wrap.money.money input,.mortgages-form .input-wrap.percent.money input,.mortgages-form .input-wrap.years.money input{padding-left:40px}.mortgages-form .input-wrap.money.percent:before,.mortgages-form .input-wrap.percent.percent:before,.mortgages-form .input-wrap.years.percent:before{content:"%";right:0;border-radius:0 8px 8px 0}.mortgages-form .input-wrap.money.percent input,.mortgages-form .input-wrap.percent.percent input,.mortgages-form .input-wrap.years.percent input{padding-right:40px}.mortgages-form .input-wrap.money.years:before,.mortgages-form .input-wrap.percent.years:before,.mortgages-form .input-wrap.years.years:before{content:"Years";right:0;border-radius:0 8px 8px 0}.mortgages-form .input-wrap.money.years input,.mortgages-form .input-wrap.percent.years input,.mortgages-form .input-wrap.years.years input{padding-right:70px}.mortgages-form .input-wrap.money.ltv input,.mortgages-form .input-wrap.percent.ltv input,.mortgages-form .input-wrap.years.ltv input{padding-right:70px}.mortgages-form .radio{position:relative}.mortgages-form .radio label{margin-bottom:5px}.mortgages-form .radio .input-wrap{margin-left:-5px;margin-right:-5px}.mortgages-form .radio input[type=radio]{left:-9999px;position:absolute}.mortgages-form .radio label.btn-label{display:inline-block;padding:5px;line-height:41px;cursor:pointer;text-align:center;transition:all .3s ease;width:100%}.mortgages-form .radio label.btn-label span{display:block;border-radius:5px;border:solid #00445d 2px;color:#00445d}.mortgages-form .radio input[type=radio]:checked+label.btn-label span{background:#43aa8b;border-color:#43aa8b;color:#fff}.mortgages-form .checkbox{position:relative}.mortgages-form .checkbox input[type=checkbox]{left:-9999px;position:absolute}.mortgages-form .checkbox label{position:relative;display:block;line-height:21px;cursor:pointer;width:100%;padding-left:40px;margin:15px 0}.mortgages-form .checkbox label:after,.mortgages-form .checkbox label:before{content:"";display:block;position:absolute;top:0;left:0;height:21px;width:21px}.mortgages-form .checkbox label:before{border:solid 1px #ccc}.mortgages-form .checkbox label:after{content:"";font:normal normal normal 14px/1 "Font Awesome 5 Pro",FontAwesome;color:#fff;line-height:21px;text-align:center;opacity:0;transform:scale(.6);transition:opacity .3s ease,transform .3s cubic-bezier(.47,1.64,.41,.8)}.mortgages-form .checkbox input[type=checkbox]:checked+label:before{background:#43aa8b}.mortgages-form .checkbox input[type=checkbox]:checked+label:after{opacity:1;transform:scale(1)}.mortgages-form .checkbox-group{position:relative}.mortgages-form .checkbox-group .input-wrap{margin-left:-5px;margin-right:-5px}.mortgages-form .checkbox-group input[type=checkbox]{left:-9999px;position:absolute}.mortgages-form .checkbox-group label.btn-label{position:relative;display:inline-block;line-height:43px;cursor:pointer;font-size:18px;margin:20px 0;padding-left:60px}.mortgages-form .checkbox-group label.btn-label:after,.mortgages-form .checkbox-group label.btn-label:before{content:"";display:block;position:absolute;top:0;left:0;height:43px;width:43px}.mortgages-form .checkbox-group label.btn-label:before{border-radius:8px;border:solid 1px #ccc}.mortgages-form .checkbox-group label.btn-label:after{content:"";font:normal normal normal 24px/1 "Font Awesome 5 Pro",FontAwesome;color:#fff;line-height:43px;text-align:center;opacity:0;transform:scale(.6);transition:opacity .3s ease,transform .3s cubic-bezier(.47,1.64,.41,.8)}.mortgages-form .checkbox-group input[type=checkbox]:checked+label.btn-label:before{background:#43aa8b}.mortgages-form .checkbox-group input[type=checkbox]:checked+label.btn-label:after{opacity:1;transform:scale(1)}.mortgages-form #ltv-caption{position:absolute;transform:translateY(-50%);top:50%;right:20px}.mortgages-form #ltv-caption em{font-size:18px;font-style:normal;font-weight:700}.mortgages-form .initial-rate-type,.mortgages-form .repayment-method{display:flex}.mortgages-form .initial-rate-type label.btn-label,.mortgages-form .repayment-method label.btn-label{width:50%}.mortgages-form .initial-rate-duration{display:flex;flex-wrap:wrap}.mortgages-form .initial-rate-duration label.btn-label{width:33.3%}.mortgages-form .additional-borrowing-amount,.mortgages-form .additional-borrowing-wrapper,.mortgages-form .current-lender,.mortgages-form .deposit,.mortgages-form .mortgage-term,.mortgages-form .outstanding-balance,.mortgages-form .remaining-term{display:none}.mortgages-form .additional-borrowing-amount.active,.mortgages-form .additional-borrowing-wrapper.active,.mortgages-form .current-lender.active,.mortgages-form .deposit.active,.mortgages-form .mortgage-term.active,.mortgages-form .outstanding-balance.active,.mortgages-form .remaining-term.active{display:block}.mortgages-form .error{color:#dc3232;display:block}@media all and (min-width:768px){.mortgages-form .radio .input-wrap{margin-left:-10px;margin-right:-10px}.mortgages-form .radio label.btn-label{padding:10px;line-height:51px}.mortgages-form .additional-borrowing,.mortgages-form .mortgage-reason,.mortgages-form .mortgage-type{display:flex}.mortgages-form .additional-borrowing label.btn-label,.mortgages-form .mortgage-reason label.btn-label,.mortgages-form .mortgage-type label.btn-label{width:50%}}.layout-edit .mortgages-form .radio label.btn-label{line-height:41px}@media all and (min-width:768px){.layout-edit .mortgages-form .radio .input-wrap{margin-left:-5px;margin-right:-5px}.layout-edit .mortgages-form .radio label.btn-label{padding:5px;line-height:41px}.layout-edit .mortgages-form .initial-rate-duration label.btn-label{width:50%}.layout-edit .mortgages-form .additional-borrowing,.layout-edit .mortgages-form .initial-rate-type,.layout-edit .mortgages-form .mortgage-reason,.layout-edit .mortgages-form .mortgage-type,.layout-edit .mortgages-form .repayment-method{flex-wrap:wrap}.layout-edit .mortgages-form .additional-borrowing label.btn-label,.layout-edit .mortgages-form .initial-rate-type label.btn-label,.layout-edit .mortgages-form .mortgage-reason label.btn-label,.layout-edit .mortgages-form .mortgage-type label.btn-label,.layout-edit .mortgages-form .repayment-method label.btn-label{width:100%}.layout-edit .mortgages-form .has-info{padding-right:20px}.layout-edit .mortgages-form .has-info .info{margin:0;position:absolute;top:0;right:0}}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}@keyframes product-details{0%{opacity:0;transform:scaleY(0)}100%{opacity:1;transform:scaleY(1)}}#mortgage-products ul{margin:0;padding:0;list-style-type:none}#mortgage-products li{display:block;margin:0;padding:0;border-radius:5px;margin-top:20px;-webkit-box-shadow:0 0 .8rem 0 rgba(0,0,0,.1);-moz-box-shadow:0 0 .8rem 0 rgba(0,0,0,.1);box-shadow:0 0 .8rem 0 rgba(0,0,0,.1);transition:box-shadow .4s!important;overflow:hidden;animation:fade-in .3s both}#mortgage-products li:active,#mortgage-products li:focus,#mortgage-products li:hover{-webkit-box-shadow:0 0 .8rem 0 rgba(0,0,0,.2)!important;-moz-box-shadow:0 0 .8rem 0 rgba(0,0,0,.2)!important;box-shadow:0 0 .8rem 0 rgba(0,0,0,.2)!important}#mortgage-products li:nth-child(1){animation-delay:150ms}#mortgage-products li:nth-child(2){animation-delay:.3s}#mortgage-products li:nth-child(3){animation-delay:450ms}#mortgage-products li:nth-child(4){animation-delay:.6s}#mortgage-products li:nth-child(5){animation-delay:750ms}#mortgage-products li:nth-child(6){animation-delay:.9s}#mortgage-products li:nth-child(7){animation-delay:1.05s}#mortgage-products li:nth-child(8){animation-delay:1.2s}#mortgage-products li:nth-child(9){animation-delay:1.35s}#mortgage-products li:nth-child(10){animation-delay:1.5s}#mortgage-products li:nth-child(11){animation-delay:1.65s}#mortgage-products li:nth-child(12){animation-delay:1.8s}#mortgage-products li:nth-child(13){animation-delay:1.95s}#mortgage-products li:nth-child(14){animation-delay:2.1s}#mortgage-products li:nth-child(15){animation-delay:2.25s}#mortgage-products li:nth-child(16){animation-delay:2.4s}#mortgage-products li:nth-child(17){animation-delay:2.55s}#mortgage-products li:nth-child(18){animation-delay:2.7s}#mortgage-products li:nth-child(19){animation-delay:2.85s}#mortgage-products li:nth-child(20){animation-delay:3s}#mortgage-products li:nth-child(21){animation-delay:3.15s}#mortgage-products li:nth-child(22){animation-delay:3.3s}#mortgage-products li:nth-child(23){animation-delay:3.45s}#mortgage-products li:nth-child(24){animation-delay:3.6s}#mortgage-products li:nth-child(25){animation-delay:3.75s}#mortgage-products li:nth-child(26){animation-delay:3.9s}#mortgage-products li:nth-child(27){animation-delay:4.05s}#mortgage-products li:nth-child(28){animation-delay:4.2s}#mortgage-products li:nth-child(29){animation-delay:4.35s}#mortgage-products li:nth-child(30){animation-delay:4.5s}#mortgage-products .footer,#mortgage-products .main{display:block;padding:10px}#mortgage-products .main{color:#00445d;background:#fdfdfd}#mortgage-products .footer{background:#ececec;color:#666;font-size:10px;line-height:1.5}#mortgage-products .footer strong{display:block;font-weight:600}#mortgage-products .footer p{margin:0}#mortgage-products .title{display:block;font-weight:600}#mortgage-products .features{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:0 -5px}#mortgage-products .features img{max-width:100px;height:80px}#mortgage-products .features>span{font-weight:600;font-size:16px;padding:0 5px;flex:0 0 50%;margin:10px 0}#mortgage-products .features>span.apply{flex:0 0 100%}#mortgage-products .features>span.logo{margin-top:0;margin-bottom:0}#mortgage-products .features>span.logo span{display:block;font-weight:400;font-size:10px;text-transform:uppercase;max-width:120px;word-wrap:break-word}#mortgage-products .features>span:last-child{margin-bottom:0}#mortgage-products .features strong{display:block}#mortgage-products .features .caption{display:inline-block;font-weight:400;font-size:12px}#mortgage-products .features .button{min-width:140px}#mortgage-products .features .show-details{text-align:center;font-size:12px;padding:10px 0;display:block;color:#666;cursor:pointer}#mortgage-products .details{display:none;background:#fdfdfd;position:relative;color:#00445d}#mortgage-products .details.active{display:block;padding:10px;border-top:solid #00445d 2px;transform-origin:50% 0;animation:product-details .4s both}#mortgage-products .details .close{color:#000;position:absolute;top:15px;right:20px;cursor:pointer;font-size:20px}#mortgage-products .details h6{margin:10px 0 0 0;color:#43aa8b;font-size:12px;text-transform:uppercase;font-weight:400}#mortgage-products .details .features>span:last-child{margin-bottom:10px}#mortgage-products .error{padding:20px}@media all and (min-width:768px){#mortgage-products .footer,#mortgage-products .main{padding:20px}#mortgage-products .details.active{padding:20px}#mortgage-products .features{flex-wrap:nowrap}#mortgage-products .features>span{flex:auto}#mortgage-products .features>span.apply{flex:auto}#mortgage-products .has-info{padding-right:20px}#mortgage-products .has-info .info{position:absolute;top:0;right:0}}.mortgages .mortgages-caption{background:0 0;padding:10px 0;font-weight:600;color:#00445d}.mortgages .mortgages-caption .button{min-width:80px;width:auto;position:absolute;top:0;right:0}.mortgages .mortgages-caption .button:hover{background:#43aa8b;color:#fff}.mortgages .mortgages-caption h4{margin:0}.mortgages .mortgages-caption p{margin:0;position:relative;padding-right:100px;min-height:45px}.mortgages .mortgages-caption .edit-toggle{display:none;position:relative}.mortgages .mortgages-caption .edit-toggle a.close{position:absolute;top:0;right:0;display:block;cursor:pointer}.mortgages .mortgages-caption .edit-toggle a.close:before{content:"";font:normal normal normal 14px/1 FontAwesome;display:block;font-size:20px;color:#000}@media all and (min-width:768px){.mortgages .mortgages-caption .edit-toggle{display:none}.mortgages .mortgages-caption p{padding:0;min-height:initial}}.mortgages.layout-edit.edit-toggle .mortgages-caption .edit-toggle{display:block}.mortgages.layout-edit.edit-toggle .mortgages-caption p{display:none}.mortgages.layout-edit.edit-toggle .mortgages-caption a.button{display:none}.mortgages.layout-edit.edit-toggle #mortgage-filters,.mortgages.layout-edit.edit-toggle #mortgage-products{display:none}@media all and (min-width:768px){.mortgages.layout-results .mortgages-caption a.button{display:inline-block;min-width:140px;margin-left:40px}.mortgages.layout-edit .mortgages-caption p{display:block}.mortgages.layout-edit .mortgages-caption a.button{display:none}.mortgages.layout-edit .mortgages-caption.edit-toggle .edit-toggle{display:none}.mortgages.layout-edit .mortgages-caption.edit-toggle #mortgage-filters,.mortgages.layout-edit .mortgages-caption.edit-toggle #mortgage-products{display:block}}#mortgage-filters{position:relative;margin:15px auto;height:26px}#mortgage-filters form{display:flex;-moz-column-gap:15px;column-gap:15px;justify-content:flex-end}#mortgage-filters .form-input-select{position:relative;flex:0 1 230px;margin:0}#mortgage-filters .form-input-select select{padding-left:30px}#mortgage-filters .form-input-select.inactive{display:none}#mortgage-filters .form-input-select svg{position:absolute;top:8px;left:8px;width:20px}#mortgage-filters .form-input-select svg g{stroke:#00445d}#mortgage-filters .form-input-select svg g circle{fill:#fff}#mortgage-filters .form-input-select svg g path{stroke:#00445d}#mortgage-filters .form-input-select svg line{stroke:#00445d}@media all and (min-width:768px){#mortgage-filters{margin:0;height:48px}}#icon-filter,#icon-sort{display:none}#mortgages-intro{margin:0 auto;max-width:535px}#mortgages-intro p{margin:1em auto}@keyframes spin{0%{transform:rotate(0);opacity:.3}50%{transform:rotate(360deg);opacity:1}100%{transform:rotate(720deg);opacity:.3}}.mortgages .loading-icon{display:none}.mortgages.busy{opacity:.5}.mortgages.busy .loading-icon{display:block;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);animation:spin 1.8s infinite;font-size:28px;color:#43aa8b}img.mortgages-logo-koodoo,img.mortgages-logo-restless{max-width:100%}img.mortgages-logo-koodoo.mortgages-logo-restless,img.mortgages-logo-restless.mortgages-logo-restless{float:left;height:25px;margin-top:15px}img.mortgages-logo-koodoo.mortgages-logo-koodoo,img.mortgages-logo-restless.mortgages-logo-koodoo{height:45px;float:right;cursor:pointer}#equity-release .results{margin:30px 0;position:relative}#equity-release .results.require-refresh.has-results:after{content:'Click "Calculate" to update';display:block;position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,.8);font-weight:700;text-align:center;padding-top:50px}#equity-release table{width:auto}#equity-release table tr td{-webkit-hyphens:manual;hyphens:manual;padding:5px}#equity-release table tr.highlight td{background:#43aa8b;color:#fff}#equity-release-quote{background:#f7f7f7;padding:20px;margin:1em 0}#equity-release-quote h3{color:#43aa8b;margin-top:0}#equity-release-quote .results{display:none}#equity-release-quote .results h6{color:#00445d;font-weight:400;font-size:20px;margin:0}#equity-release-quote .results span{color:#43aa8b;display:block;font-weight:700;font-size:24px;margin:10px 0}#equity-release-quote .request-callback h4{color:#00445d;margin:20px 0;font-size:28px;line-height:1.2}#equity-release-quote .request-callback .hbspt-form{background:0 0;padding:0}#equity-release-quote .button{padding:0 1em}#equity-release-quote.submitted .results{display:block}@media all and (min-width:768px){#equity-release-quote .form-input-select{max-width:240px}#equity-release-quote .form-row{display:flex;flex-wrap:nowrap;-moz-column-gap:40px;column-gap:40px}#equity-release-quote .form-row .form-input-range{flex:0 1 100%}#equity-release-quote .form-row .form-input-text{flex:0 0 200px}#equity-release-quote .button.calculate{width:auto}#equity-release-quote .result-options{display:flex;flex-wrap:nowrap;-moz-column-gap:20px;column-gap:20px}#equity-release-quote .result-options .result{flex:0 1 33%}}#equity-release-lead-gen{display:none;max-width:720px;margin:auto;padding-bottom:30px}#equity-release-lead-gen h3{color:#43aa8b}#equity-release-lead-gen .intro{font-size:16px;margin-bottom:30px}#equity-release-lead-gen .radio .title{display:flex}#equity-release-lead-gen .radio .title label.btn-label{width:25%;display:block}#equity-release-lead-gen .address .input-wrap{margin-bottom:15px}#equity-release-lead-gen .disclaimer{font-size:14px}#equity-release-lead-gen .response{display:none}.buy-to-let-calculator{margin:0}.buy-to-let-calculator.submitted .results .intro{display:none}.buy-to-let-calculator.submitted .results .result{display:block}.buy-to-let-calculator .title{color:#43aa8b;font-size:28px;line-height:1.2;font-weight:700;margin:0}.buy-to-let-calculator p{margin-bottom:20px}.buy-to-let-calculator .form-input .info-message{display:none;color:#7a7a7a;margin-top:5px}.buy-to-let-calculator .form-input.max{position:relative}.buy-to-let-calculator .form-input.max .info-message{display:block}.buy-to-let-calculator .results .intro{color:#7a7a7a}.buy-to-let-calculator .results .result-intro{position:relative;padding-right:20px;max-width:250px}.buy-to-let-calculator .results .result-intro .info-bubble{position:absolute;top:0;right:0}.buy-to-let-calculator .results .result-intro .info-bubble p{margin-bottom:10px}.buy-to-let-calculator .results .result-intro .info-bubble ul{margin:10px 0}.buy-to-let-calculator .results .result{display:none}.buy-to-let-calculator .results .result span{color:#43aa8b;font-weight:700;font-size:28px;line-height:1.2;display:inline-block}.buy-to-let-calculator .results .result em{font-style:normal;display:inline-block;margin:0 5px}.buy-to-let-calculator .cta-title{color:#00445d;font-weight:700;font-size:24px;line-height:1.2}.buy-to-let-calculator .button{margin-top:20px}@media all and (min-width:768px){.buy-to-let-calculator .form-row{display:flex;flex-wrap:nowrap;-moz-column-gap:15px;column-gap:15px}.buy-to-let-calculator .form-row .form-input-range{flex:0 1 100%}.buy-to-let-calculator .form-row .form-input-text{flex:0 1 235px}.buy-to-let-calculator .form-input.max .info-message{position:absolute;left:0;top:100%}.buy-to-let-calculator .button{display:inline-block;margin:0 0 0 20px;width:auto}}.pension-calculator[data-state=loading]{visibility:hidden}.pension-calculator[data-state=awaiting-detail] .cta,.pension-calculator[data-state=awaiting-detail] .results{display:block}.pension-calculator[data-state=awaiting-detail] .results .chart-caption,.pension-calculator[data-state=awaiting-detail] .results .intro,.pension-calculator[data-state=awaiting-detail] .results .result-set{display:none}.pension-calculator[data-state=awaiting-detail] canvas{filter:blur(5px)}.pension-calculator[data-state=submitted] .cta,.pension-calculator[data-state=submitted] .results{display:block}.pension-calculator[data-state=submitted] .results .chart-cta{display:none}.pension-calculator.hide-data .chart-wrapper,.pension-calculator.hide-data .result{filter:blur(10px)}.pension-calculator .title{margin:0 0 20px 0}.pension-calculator form.restless-form .form-row .form-input{margin-top:0}.pension-calculator form.restless-form .button{line-height:18px;padding:14px 20px;font-weight:400;font-size:15px}.pension-calculator form.restless-form .button:disabled{display:none}.pension-calculator .tab-group{-moz-column-gap:10px;column-gap:10px}.pension-calculator .tab-group .tab{font-size:16px}.pension-calculator .tab-group .col-left,.pension-calculator .tab-group .col-right{width:100%}.pension-calculator .tab-contributions .info-bubble,.pension-calculator .tab-retirement .info-bubble{position:absolute;right:10px;bottom:15px}.pension-calculator .tab-options .has-info-bubble{padding-right:30px}.pension-calculator .tab-options .info-bubble{position:absolute;top:0;right:0}.pension-calculator .chart-wrapper{height:300px;margin:20px 0;position:relative}.pension-calculator #results-chart{width:100%;height:100%}.pension-calculator .chart-caption,.pension-calculator .chart-cta{border-radius:5px;box-shadow:0 0 .8rem 0 rgba(0,0,0,.1);background:#fff;color:#404040;padding:8px 16px;position:absolute;font-size:14px;max-width:100%}.pension-calculator .chart-caption p,.pension-calculator .chart-cta p{margin:0}.pension-calculator .chart-caption{top:20px;right:20px;width:240px}.pension-calculator .chart-caption p{margin:0 0 5px 0}.pension-calculator .chart-caption #chart-caption-income{font-weight:700}.pension-calculator .chart-caption #chart-caption-pot{color:#43aa8b;font-weight:700}.pension-calculator .chart-caption a{color:#43aa8b;font-weight:700;cursor:pointer}.pension-calculator .chart-caption a i{margin-left:5px;font-size:14px;vertical-align:middle}.pension-calculator .chart-cta{top:50%;left:50%;transform:translate3d(-50%,-50%,0);width:340px}.pension-calculator .results{display:none}.pension-calculator .results .intro{padding-top:20px;margin-top:20px;border-top:solid #d5d5d5 1px;color:#43aa8b;font-size:20px;line-height:1.2;font-weight:700}.pension-calculator .result-set{margin:20px 0;display:flex;flex-wrap:wrap;-moz-column-gap:20px;column-gap:20px;row-gap:20px}.pension-calculator .result{flex:0 0 100%;background:#f7f7f7;padding:12px}.pension-calculator .result p{font-size:14px;font-weight:700;margin:0 0 5px 0}.pension-calculator .result p:last-child{margin-bottom:0}.pension-calculator .result p.value{color:#7a7a7a;font-weight:400}.pension-calculator .result p.value span{color:#43aa8b;font-size:20px;font-weight:700}.pension-calculator .cta{display:none;margin-top:20px}.pension-calculator .cta p{color:#00445d}.pension-calculator .cta p.cta-title{font-weight:700;font-size:20px}@media all and (min-width:768px){.pension-calculator .title{text-align:center}.pension-calculator form.restless-form .form-input.form-input-toggle input[type=checkbox]+label{display:inline-block}.pension-calculator .form-row{display:flex;flex-wrap:nowrap;-moz-column-gap:20px;column-gap:20px}.pension-calculator .form-row .input-age,.pension-calculator .form-row .input-pot{flex:0 1 50%}.pension-calculator .tab-group{display:flex;flex-wrap:nowrap;-moz-column-gap:20px;column-gap:20px}.pension-calculator .tab-group .tab{display:none}.pension-calculator .tab-group .tab-content{display:block}.pension-calculator .tab-group .col-left,.pension-calculator .tab-group .col-right{flex:0 1 50%}.pension-calculator .result-set{flex-wrap:nowrap}.pension-calculator .result-set .result{flex:0 1 33%}.pension-calculator .cta{text-align:center}.pension-calculator .cta .button{width:auto}}.mortgage-payment-calculator{margin:0}.mortgage-payment-calculator.submitted .results .intro{display:none}.mortgage-payment-calculator.submitted .results .result{display:block}.mortgage-payment-calculator .title{color:#43aa8b;font-size:28px;line-height:1.2;font-weight:700;margin:0}.mortgage-payment-calculator p{margin-bottom:20px}.mortgage-payment-calculator .results .intro{color:#7a7a7a}.mortgage-payment-calculator .results .result{display:none}.mortgage-payment-calculator .results .result span{color:#43aa8b;font-weight:700;font-size:28px;line-height:1.2;display:inline-block;margin-left:20px}.mortgage-payment-calculator .cta-title{color:#00445d;font-weight:700}.mortgage-payment-calculator .cta-caption a{font-weight:700}.mortgage-payment-calculator .button{margin-top:20px}@media all and (min-width:768px){.mortgage-payment-calculator .form-row{display:flex;-moz-column-gap:15px;column-gap:15px}.mortgage-payment-calculator .form-row .form-input-range{flex:1 1 33%}}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9tb3JnYWdlcy5zY3NzIiwiX2Zvcm0uc2NzcyIsIl9tb3J0Z2FnZS1wcm9kdWN0cy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vc2hhcmVkL2NsaWVudC9zdHlsZXMvbWl4aW5zL2luZGV4LnNjc3MiLCJfbW9ydGdhZ2VzLWNhcHRpb24uc2NzcyIsIl9tb3J0Z2FnZS1maWx0ZXJzLnNjc3MiLCJfbW9ydGdhZ2VzLWludHJvLnNjc3MiLCJfbG9hZGluZy5zY3NzIiwiX2hlYWRlci5zY3NzIiwiX2VxdWl0eS1yZWxlYXNlLnNjc3MiLCJfZXF1aXR5LXJlbGVhc2UtcXVvdGUuc2NzcyIsIl9lcXVpdHktcmVsZWFzZS1sZWFkLWdlbi5zY3NzIiwiX2J1eS10by1sZXQtY2FsY3VsYXRvci5zY3NzIiwiX3BlbnNpb24tY2FsY3VsYXRvci5zY3NzIiwiX21vcnRnYWdlLXBheW1lbnQtY2FsY3VsYXRvci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJpQkFBQSxXQUNJLE9BQUEsRUFBQSxNQUdJLHVDQUNJLFFBQUEsTUFDQSxxREFDSSxRQUFBLEtBRUoscURBQ0ksUUFBQSxhQUdSLCtCQUNJLFFBQUEsS0FFSiwwQ0FDSSxRQUFBLEtBRUosMENBQ0ksUUFBQSxLQUtKLDBDQUNJLFFBQUEsS0FFSixrQ0FDSSxRQUFBLE1BQ0EsMkNBQ0ksUUFBQSxLQUdSLDZDQUNJLFFBQUEsTUFFSiw2Q0FDSSxRQUFBLE1BRUosMkNBQ0ksUUFBQSxLQU1BLG1EQUNJLFFBQUEsTUFJSix3Q0FDSSxRQUFBLEtBQ0EsMkNBQ0ksT0FBQSxFQUNBLE1BQUEsUUFJWix1Q0FDSSxRQUFBLEtBQ0EscURBQ0ksUUFBQSxhQUVKLHFEQUNJLFFBQUEsS0FHUiwwQ0FDSSxRQUFBLE1BRUosMENBQ0ksUUFBQSxNQUVKLHdDQUNJLFFBQUEsS0FJUixtQkFDSSxNQUFBLEtBQ0EsUUFBQSxLQUFBLEtBR0oseURBQ0ksT0FBQSxLQUNBLGNBQUEsSUFFSiwrRkFDSSxZQUFBLEVBR0osaUNBN0ZKLFdBOEZR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QkFBQSxLQUFBLFdBQUEsS0FDQSxvQ0FDRSxRQUFBLEtBRUYsNENBQ0UsUUFBQSxNQUVGLHlDQUFBLDBDQUVFLEtBQUEsRUFBQSxFQUFBLElBSUosZ0NBQ0UsVUFBQSxPQUNBLHdDQUNFLEtBQUEsRUFBQSxFQUFBLElBR0oseUJBQ0UsV0FBQSxPQUNBLGlDQUNFLE1BQUEsTUMzUFIsNkJBQ0UsT0FBQSxFQUlJLHVEQUNFLFFBQUEsS0FFRix3REFDRSxRQUFBLE1BS04sb0NBQ0UsTUFBQSxRQUNBLFVBQUEsS0FDQSxZQUFBLElBQ0EsWUFBQSxJQUNBLE9BQUEsRUFHRiwrQkFDRSxjQUFBLEtBSUEsNkNBQ0UsTUFBQSxRQUVGLDhDQUNFLFFBQUEsS0FDQSxtREFDRSxNQUFBLFFBQ0EsWUFBQSxJQUNBLFVBQUEsS0FDQSxZQUFBLElBQ0EsUUFBQSxhQUNBLFlBQUEsS0FLTix3Q0FDRSxNQUFBLFFBQ0EsWUFBQSxJQUdBLDRDQUNFLFlBQUEsSUFHSixxQ0FDRSxXQUFBLEtBR0YsaUNBQ0UsdUNBQ0UsUUFBQSxLQUNBLGdCQUFBLEtBQUEsV0FBQSxLQUNBLHlEQUNFLEtBQUEsRUFBQSxFQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubW9ydGdhZ2Vze1xuICAgIG1hcmdpbjowIC0xNXB4O1xuXG4gICAgJi5sYXlvdXQtZm9ybXtcbiAgICAgICAgLm1vcnRnYWdlcy1mb3Jte1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIGJ1dHRvbi51cGRhdGV7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uLnN1Ym1pdHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVye1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAjbW9ydGdhZ2UtcHJvZHVjdHN7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm1vcnRnYWdlcy1jYXB0aW9ue1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtcmVzdWx0c3tcbiAgICAgICAgLm1vcnRnYWdlcy1mb3Jte1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXJ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIC5jb2x1bW4xe1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgI21vcnRnYWdlLXByb2R1Y3Rze1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLm1vcnRnYWdlcy1jYXB0aW9ue1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgI21vcnRnYWdlcy1pbnRyb3tcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxheW91dC1lZGl0e1xuICAgICAgICAmLmVkaXQtdG9nZ2xle1xuICAgICAgICAgICAgLm1vcnRnYWdlcy1mb3JtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVye1xuICAgICAgICAgICAgLmNvbHVtbjEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgaDN7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjokbmF2eTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1vcnRnYWdlcy1mb3Jte1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgYnV0dG9uLnVwZGF0ZXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbi5zdWJtaXR7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICNtb3J0Z2FnZS1wcm9kdWN0c3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5tb3J0Z2FnZXMtY2FwdGlvbntcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICNtb3J0Z2FnZXMtaW50cm97XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbntcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgcGFkZGluZzoxNHB4IDE2cHg7XG4gICAgfVxuXG4gICAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czokYm9yZGVyUmFkaXVzO1xuICAgIH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrVGFibGV0UG9ydHJhaXQpIHtcbiAgICAgICAgbWFyZ2luOjA7XG5cbiAgICAgICAgJi5sYXlvdXQtZWRpdCB7XG4gICAgICAgICAgICAuY29sdW1uLXdyYXAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29sdW1uMSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDI0NXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6MjQ1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29sdW1uMiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgLmNvbHVtbjEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubW9ydGdhZ2VzLWZvcm0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ja29vZG9vLXRlcm1zLWxpbmt7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuI2tvb2Rvby10ZXJtc3tcbiAgICBtYXJnaW4tdG9wOjgwcHg7XG4gICAgcHtcbiAgICAgICAgbWFyZ2luOjFlbSAwO1xuICAgIH1cbn1cblxuYm9keS5tb3J0Z2FnZXMtc2hvcnRjb2Rle1xuICAgICNwcmltYXJ5e1xuICAgICAgICBtYXJnaW4tdG9wOjA7XG5cbiAgICAgICAgLmVsZW1lbnRvci1lbGVtZW50LXBvcHVsYXRlZHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmVsZW1lbnRvci1lbGVtZW50W2RhdGEtd2lkZ2V0X3R5cGU9XCJ0ZXh0LWVkaXRvci5kZWZhdWx0XCJdIHtcbiAgICAgIC5lbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lcntcbiAgICAgICAgcHtcbiAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxufVxuIiwiLm1vcnRnYWdlcy1mb3Jte1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiRmb3JtV2lkdGg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICAmLnJlYWR5e1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cblxuICAgIC5mb3JtLWdyb3Vwe1xuICAgICAgICBtYXJnaW4tYm90dG9tOjE1cHg7XG4gICAgfVxuXG4gICAgbGFiZWx7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxMHB4O1xuICAgICAgICBjb2xvcjokbmF2eTtcbiAgICB9XG5cbiAgICBpbnB1dHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIH1cblxuICAgIC5pbnB1dC13cmFwe1xuICAgICAgICBib3JkZXItcmFkaXVzOiRib3JkZXJSYWRpdXM7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJi5tb25leSwgJi55ZWFycywgJi5wZXJjZW50e1xuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZzowIDExcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjQzcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLm1vbmV5e1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OifCoyc7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4IDAgMCA4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0e1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6NDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnBlcmNlbnR7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6JyUnO1xuICAgICAgICAgICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDhweCA4cHggMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6NDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnllYXJze1xuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OidZZWFycyc7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgOHB4IDhweCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDo3MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubHR2e1xuICAgICAgICAgICAgICAgIGlucHV0e1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjcwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJhZGlve1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxhYmVse1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTo1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtd3JhcHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgICAgICBsYWJlbC5idG4tbGFiZWx7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOjVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjQxcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czokYm9yZGVyUmFkaXVzO1xuICAgICAgICAgICAgICAgIGJvcmRlcjpzb2xpZCAkbmF2eSAycHg7XG4gICAgICAgICAgICAgICAgY29sb3I6JG5hdnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsLmJ0bi1sYWJlbCB7XG4gICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGdyZWVuO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjokZ3JlZW47XG4gICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jaGVja2JveHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICAgICAgICBsZWZ0OiAtOTk5OXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG4gICAgICAgIGxhYmVse1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoyMXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDo0MHB4O1xuICAgICAgICAgICAgbWFyZ2luOjE1cHggMDtcblxuICAgICAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjIxcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6MjFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgIGJvcmRlcjpzb2xpZCAxcHggI2NjYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIlxcZjAwY1wiO1xuICAgICAgICAgICAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSAkZm9udEF3ZXNvbWU7XG4gICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoyMXB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgwLjYpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgZWFzZSwgdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllciguNDcsMS42NCwuNDEsLjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiRncmVlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hlY2tib3gtZ3JvdXB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmlucHV0LXdyYXB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICAgICAgICBsZWZ0OiAtOTk5OXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsLmJ0bi1sYWJlbHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6NDNweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIG1hcmdpbjoyMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6NjBweDtcblxuICAgICAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjQzcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6NDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6c29saWQgMXB4ICNjY2M7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcXGYwMGNcIjtcbiAgICAgICAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAyNHB4LzEgJGZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6NDNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMC42KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIGVhc2UsIHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoLjQ3LDEuNjQsLjQxLC44KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWwuYnRuLWxhYmVsIHtcbiAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGdyZWVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNsdHYtY2FwdGlvbntcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgcmlnaHQ6MjBweDtcbiAgICAgICAgZW17XG4gICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlcGF5bWVudC1tZXRob2QsXG4gICAgLmluaXRpYWwtcmF0ZS10eXBle1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBsYWJlbC5idG4tbGFiZWx7XG4gICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmluaXRpYWwtcmF0ZS1kdXJhdGlvbntcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBsYWJlbC5idG4tbGFiZWx7XG4gICAgICAgICAgICB3aWR0aDozMy4zJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hZGRpdGlvbmFsLWJvcnJvd2luZy1hbW91bnQsXG4gICAgLmFkZGl0aW9uYWwtYm9ycm93aW5nLXdyYXBwZXIsXG4gICAgLnJlbWFpbmluZy10ZXJtLFxuICAgIC5vdXRzdGFuZGluZy1iYWxhbmNlLFxuICAgIC5jdXJyZW50LWxlbmRlcixcbiAgICAuZGVwb3NpdCxcbiAgICAubW9ydGdhZ2UtdGVybSB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZXJyb3J7XG4gICAgICAgIGNvbG9yOiRjb2xvdXJFcnJvcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgVGFibGV0IGFuZCBsYXJnZXJcbiAgICAgKi9cbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtUYWJsZXRQb3J0cmFpdCkge1xuICAgICAgICAucmFkaW8ge1xuICAgICAgICAgICAgLmlucHV0LXdyYXB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbC5idG4tbGFiZWx7XG4gICAgICAgICAgICAgICAgcGFkZGluZzoxMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZGl0aW9uYWwtYm9ycm93aW5nLFxuICAgICAgICAubW9ydGdhZ2UtdHlwZSxcbiAgICAgICAgLm1vcnRnYWdlLXJlYXNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbGFiZWwuYnRuLWxhYmVse1xuICAgICAgICAgICAgICAgIHdpZHRoOjUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxheW91dC1lZGl0e1xuICAgIC5tb3J0Z2FnZXMtZm9ybXtcbiAgICAgICAgLnJhZGlvIHtcbiAgICAgICAgICAgIGxhYmVsLmJ0bi1sYWJlbHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha1RhYmxldFBvcnRyYWl0KSB7XG4gICAgICAgICAgICAucmFkaW8ge1xuICAgICAgICAgICAgICAgIC5pbnB1dC13cmFwe1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbC5idG4tbGFiZWx7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6NXB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbml0aWFsLXJhdGUtZHVyYXRpb257XG4gICAgICAgICAgICAgICAgbGFiZWwuYnRuLWxhYmVse1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmVwYXltZW50LW1ldGhvZCxcbiAgICAgICAgICAgIC5pbml0aWFsLXJhdGUtdHlwZSxcbiAgICAgICAgICAgIC5hZGRpdGlvbmFsLWJvcnJvd2luZyxcbiAgICAgICAgICAgIC5tb3J0Z2FnZS10eXBlLFxuICAgICAgICAgICAgLm1vcnRnYWdlLXJlYXNvbntcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6d3JhcDtcbiAgICAgICAgICAgICAgICBsYWJlbC5idG4tbGFiZWx7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGFzLWluZm97XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDoyMHB4O1xuICAgICAgICAgICAgICAgIC5pbmZve1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBwcm9kdWN0LWRldGFpbHMge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICB0cmFuc2Zvcm06c2NhbGVZKDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgICAgICB0cmFuc2Zvcm06c2NhbGVZKDEpO1xuICAgIH1cbn1cblxuI21vcnRnYWdlLXByb2R1Y3Rze1xuICAgIHVse1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuXG4gICAgbGl7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3dIb3ZlcigpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBhbmltYXRpb246IGZhZGUtaW4gMzAwbXMgYm90aDtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzMCB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXMqJGk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFpbiwgLmZvb3RlcntcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6MTBweDtcbiAgICB9XG4gICAgLm1haW57XG4gICAgICAgIGNvbG9yOiAkbmF2eTtcbiAgICAgICAgYmFja2dyb3VuZDojZmRmZGZkO1xuICAgIH1cbiAgICAuZm9vdGVye1xuICAgICAgICBiYWNrZ3JvdW5kOiNFQ0VDRUM7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICBmb250LXNpemU6MTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS41O1xuICAgICAgICBzdHJvbmd7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgfVxuICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGV7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuXG4gICAgLmZlYXR1cmVze1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOjAgLTVweDtcbiAgICAgICAgaW1ne1xuICAgICAgICAgICAgbWF4LXdpZHRoOjEwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OjgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA+c3BhbntcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgcGFkZGluZzowIDVweDtcbiAgICAgICAgICAgIGZsZXg6MCAwIDUwJTtcbiAgICAgICAgICAgIG1hcmdpbjoxMHB4IDA7XG4gICAgICAgICAgICAmLmFwcGx5e1xuICAgICAgICAgICAgICAgIGZsZXg6MCAwIDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmxvZ297XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6MTIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdHJvbmd7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbntcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbntcbiAgICAgICAgICAgIG1pbi13aWR0aDoxNDBweDtcbiAgICAgICAgfVxuICAgICAgICAuc2hvdy1kZXRhaWxze1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOjEycHg7XG4gICAgICAgICAgICBwYWRkaW5nOjEwcHggMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29sb3I6IzY2NjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kZXRhaWxze1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiNmZGZkZmQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6JG5hdnk7XG4gICAgICAgICYuYWN0aXZle1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOjEwcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOnNvbGlkICRuYXZ5IDJweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBwcm9kdWN0LWRldGFpbHMgNDAwbXMgYm90aDtcbiAgICAgICAgfVxuICAgICAgICAuY2xvc2V7XG4gICAgICAgICAgICBjb2xvcjojMDAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOjE1cHg7XG4gICAgICAgICAgICByaWdodDoyMHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDZ7XG4gICAgICAgICAgICBtYXJnaW46MTBweCAwIDAgMDtcbiAgICAgICAgICAgIGNvbG9yOiRncmVlbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxMnB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlc3tcbiAgICAgICAgICAgID5zcGFue1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lcnJvcntcbiAgICAgICAgcGFkZGluZzoyMHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha1RhYmxldFBvcnRyYWl0KSB7XG4gICAgICAgIC5tYWluLCAuZm9vdGVye1xuICAgICAgICAgICAgcGFkZGluZzoyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5kZXRhaWxze1xuICAgICAgICAgICAgJi5hY3RpdmV7XG4gICAgICAgICAgICAgICAgcGFkZGluZzoyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mZWF0dXJlc3tcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgPnNwYW57XG4gICAgICAgICAgICAgICAgZmxleDphdXRvO1xuICAgICAgICAgICAgICAgICYuYXBwbHl7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6YXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWluZm97XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjIwcHg7XG4gICAgICAgICAgICAuaW5mb3tcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwic2Nyb2xsYmFyXCI7XG5cbi8qIFRyYW5zaXRpb25zICovXG5AbWl4aW4gdHJhbnNpdGlvbigpIHtcbiAgdHJhbnNpdGlvbjogYWxsICN7JHRyYW5zaXRpb25CYXNlfTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uTG9uZygpIHtcbiAgdHJhbnNpdGlvbjogYWxsICN7JHRyYW5zaXRpb25CYXNlICogMS41fTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9ucmVhbGx5TG9uZygpIHtcbiAgdHJhbnNpdGlvbjogYWxsICN7JHRyYW5zaXRpb25CYXNlICogMn07XG59XG5cbi8qKiBGb290ZXIgbGF5b3V0ICovXG5AbWl4aW4gZm9vdGVyTmF2KCkge1xuICBmb250OiAjeyRmb250Rm9vdGVyfTtcbiAgZm9udC1mYW1pbHk6ICN7JGZvbnRGYW1pbHl9O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qKiBJbmxpbmUgbGlzdHMgb3IgbWVudXMgKiovXG5AbWl4aW4gaW5saW5lTGlzdCgpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiogQm94IGxheW91dCBhbmQgZGVjb3JhdGlvbiBoZWxwZXJzICovXG5AbWl4aW4gYm9yZGVyUmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAjeyRyYWRpdXN9O1xuICAtbW96LWJvcmRlci1yYWRpdXM6ICN7JHJhZGl1c307XG4gIC1vLWJvcmRlci1yYWRpdXM6ICN7JHJhZGl1c307XG4gIGJvcmRlci1yYWRpdXM6ICN7JHJhZGl1c307XG59XG5cbkBtaXhpbiBib3hTaGFkb3coJHNoYWRvdykge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICN7JHNoYWRvd307XG4gIC1tb3otYm94LXNoYWRvdzogI3skc2hhZG93fTtcbiAgYm94LXNoYWRvdzogI3skc2hhZG93fTtcbn1cblxuQG1peGluIGJveFNoYWRvd0hvdmVyKCkge1xuICAkbGlCb3hTaGFkb3dPZmY6IDBweCAwcHggMC44cmVtIDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICRsaUJveFNoYWRvd0hvdmVyOiAwcHggMHB4IDAuOHJlbSAwcHggcmdiYSgwLCAwLCAwLCAwLjIpICFpbXBvcnRhbnQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgbWFyZ2luLXRvcDogJGJveFBhZGRpbmc7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogI3skbGlCb3hTaGFkb3dPZmZ9O1xuICAtbW96LWJveC1zaGFkb3c6ICN7JGxpQm94U2hhZG93T2ZmfTtcbiAgYm94LXNoYWRvdzogI3skbGlCb3hTaGFkb3dPZmZ9O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNHMgIWltcG9ydGFudDtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAjeyRsaUJveFNoYWRvd0hvdmVyfTtcbiAgICAtbW96LWJveC1zaGFkb3c6ICN7JGxpQm94U2hhZG93SG92ZXJ9O1xuICAgIGJveC1zaGFkb3c6ICN7JGxpQm94U2hhZG93SG92ZXJ9O1xuICB9XG59XG5cbkBtaXhpbiBncmFkaWVudEJhY2tncm91bmQoKSB7XG4gIGJhY2tncm91bmQ6IHJnYigwLCA0OSwgNjUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgNDksIDY1LCAxKSAwJSwgcmdiYSgwLCA2OCwgOTMsIDEpIDEwMCUpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnRCYWNrZ3JvdW5kR3JlZW4oKSB7XG4gIGJhY2tncm91bmQ6IHJnYigwLCA0OSwgNjUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoNjcsIDE3MCwgMTM5LCAxKSAwJSwgcmdiYSgwLCA2OCwgOTMsIDEpIDEwMCUpO1xufVxuXG5AbWl4aW4gc2xpZGluZ1NlY3Rpb25zKCRjb3VudCkge1xuICAuc2VjdGlvbnMge1xuICAgIHdpZHRoOiAxMDAlICogJGNvdW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICAgICYuc2VjdGlvbjEsXG4gICAgJltkYXRhLXNlY3Rpb249XCIxXCJdIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAgICZbZGF0YS1zZWN0aW9uPVwiI3skaSArIDF9XCJdLFxuICAgICAgJi5zZWN0aW9uI3skaSArIDF9IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZChtYXRoLmRpdigtMTAwJSAqICRpLCAkc2VjdGlvbkNvdW50KSwgMCwgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiByZXN0bGVzc0ljb25Gb250KCRjaGFyYWN0ZXJDb2RlKSB7XG4gIGZvbnQtZmFtaWx5OiBcInJlc3RsZXNzLWljb25zXCIgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5ldmVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IHN1YjtcblxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgY29udGVudDogJGNoYXJhY3RlckNvZGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1peGluIHJsLWljb24oJGNoYXJhY3Rlcikge1xuICBmb250OiAkcmVzdGxlc3NJY29ucztcbiAgQGlmICgkY2hhcmFjdGVyID09IFwiY2hldnJvbi1sZWZ0XCIpIHtcbiAgICBjb250ZW50OiBcIlxcZTkxZVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG4gIEBpZiAoJGNoYXJhY3RlciA9PSBcImNoZXZyb24tcmlnaHRcIikge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG4gIH1cbiAgQGlmICgkY2hhcmFjdGVyID09IFwiY2hldnJvbi1kb3duXCIpIHtcbiAgICBjb250ZW50OiBcIlxcZTkxZVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cbiAgQGlmICgkY2hhcmFjdGVyID09IFwiY2hldnJvbi11cFwiKSB7XG4gICAgY29udGVudDogXCJcXGU5MWVcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgfVxuICBAaWYgKCRjaGFyYWN0ZXIgPT0gXCJjaGV2cm9uXCIpIHtcbiAgICBjb250ZW50OiBcIlxcZTkxZVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBAaWYgKCRjaGFyYWN0ZXIgPT0gXCJsb2FkZXJcIikge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG4gIH1cblxuICBAaWYgKCRjaGFyYWN0ZXIgPT0gXCJzZWFyY2hcIikge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gIH1cblxuICBAaWYgKCRjaGFyYWN0ZXIgPT0gXCJwaW5cIikge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG4gIH1cblxuICBAaWYgKCRjaGFyYWN0ZXIgPT0gXCJ0aWNrXCIpIHtcbiAgICBjb250ZW50OiBcIlxcZTkwMFwiO1xuICB9XG5cbiAgQGlmICgkY2hhcmFjdGVyID09IFwibG9jYXRpb25cIikge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XG4gIH1cblxuICBAaWYgKCRjaGFyYWN0ZXIgPT0gXCJjcm9zcy14XCIpIHtcbiAgICBjb250ZW50OiBcIlxcZTkwMlwiO1xuICB9XG5cbiAgQGlmICgkY2hhcmFjdGVyID09IFwicGxhbmUtdGFrZW9mZlwiKSB7XG4gICAgY29udGVudDogXCJcXGU5MjdcIjtcbiAgfVxuXG4gIEBpZiAoJGNoYXJhY3RlciA9PSBcInBsYW5lXCIpIHtcbiAgICBjb250ZW50OiBcIlxcZTkyOFwiO1xuICB9XG59XG5cbkBtaXhpbiBmYS1pY29uKCRjaGFyYWN0ZXIpIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIiwgXCJGb250IEF3ZXNvbWUgNSBQcm9cIjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgQGlmICgkY2hhcmFjdGVyID09IFwiY2hldnJvbi1sZWZ0XCIpIHtcbiAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICB9XG4gIEBpZiAoJGNoYXJhY3RlciA9PSBcImNoZXZyb24tcmlnaHRcIikge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gIH1cbiAgQGlmICgkY2hhcmFjdGVyID09IFwiY2hldnJvbi1kb3duXCIpIHtcbiAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICB9XG4gIEBpZiAoJGNoYXJhY3RlciA9PSBcImNoZXZyb24tdXBcIikge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG4gIH1cbiAgQGlmICgkY2hhcmFjdGVyID09IFwiaGFtYnVyZ2VyXCIpIHtcbiAgICBjb250ZW50OiBcIlxcZjBjOVwiO1xuICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wLW9ubHkoKSB7XG4gIC5kZXNrdG9wLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrVGFibGV0UG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IHVuc2V0O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLW9ubHkoKSB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha1RhYmxldFBvcnRyYWl0KSB7XG4gICAgLm1vYmlsZS1vbmx5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBicmFuZEJveFdpdGhTaGFkb3coKSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwLjhyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXJSYWRpdXM7XG59XG5cbkBtaXhpbiBsb2FkaW5nU3Bpbm5lcigpIHtcbiAgYW5pbWF0aW9uOiB2ZXJ0aWNhbFNwaW4gMTgwMG1zIGluZmluaXRlO1xuICBAaW5jbHVkZSBybC1pY29uKFwibG9hZGVyXCIpO1xuICBjb2xvcjogJG5hdnk7XG4gIEBrZXlmcmFtZXMgdmVydGljYWxTcGluIHtcbiAgICBmcm9tIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcGVhcmFuY2Utbm9uZSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5AbWl4aW4gZGlzYWJsZVRleHRTZWxlY3Rpb24oKSB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgXG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IFxuICB1c2VyLXNlbGVjdDogbm9uZTsgXG59IiwiLm1vcnRnYWdlc3tcbiAgICAubW9ydGdhZ2VzLWNhcHRpb257XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmc6MTBweCAwO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIGNvbG9yOiRuYXZ5O1xuICAgICAgICAuYnV0dG9ue1xuICAgICAgICAgICAgbWluLXdpZHRoOjgwcHg7XG4gICAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmVlbjtcbiAgICAgICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDR7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgfVxuXG4gICAgICAgIHB7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MTAwcHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OjQ1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZWRpdC10b2dnbGV7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYS5jbG9zZXtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6J1xcZjAwZCc7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjojMDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha1RhYmxldFBvcnRyYWl0KSB7XG4gICAgICAgICAgICAuZWRpdC10b2dnbGV7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGF5b3V0LWVkaXR7XG4gICAgICAgICYuZWRpdC10b2dnbGV7XG4gICAgICAgICAgICAubW9ydGdhZ2VzLWNhcHRpb257XG4gICAgICAgICAgICAgICAgLmVkaXQtdG9nZ2xle1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYS5idXR0b257XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI21vcnRnYWdlLWZpbHRlcnMsXG4gICAgICAgICAgICAjbW9ydGdhZ2UtcHJvZHVjdHN7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrVGFibGV0UG9ydHJhaXQpIHtcbiAgICAgICAgJi5sYXlvdXQtcmVzdWx0c3tcbiAgICAgICAgICAgIC5tb3J0Z2FnZXMtY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgYS5idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmxheW91dC1lZGl0e1xuICAgICAgICAgICAgLm1vcnRnYWdlcy1jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5lZGl0LXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgIC5lZGl0LXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICNtb3J0Z2FnZS1maWx0ZXJzLFxuICAgICAgICAgICAgICAgICAgICAjbW9ydGdhZ2UtcHJvZHVjdHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIjbW9ydGdhZ2UtZmlsdGVyc3tcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOjE1cHggYXV0bztcbiAgICBoZWlnaHQ6MjZweDtcbiAgICBmb3Jte1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGNvbHVtbi1nYXA6MTVweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAuZm9ybS1pbnB1dC1zZWxlY3R7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleDowIDEgMjMwcHg7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBzZWxlY3R7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5pbmFjdGl2ZXtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHN2Z3tcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOjhweDtcbiAgICAgICAgICBsZWZ0OjhweDtcbiAgICAgICAgICB3aWR0aDoyMHB4O1xuICAgICAgICAgIGd7XG4gICAgICAgICAgICBzdHJva2U6ICRuYXZ5O1xuICAgICAgICAgICAgY2lyY2xle1xuICAgICAgICAgICAgICBmaWxsOiNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXRoe1xuICAgICAgICAgICAgICBzdHJva2U6ICRuYXZ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBsaW5le1xuICAgICAgICAgICAgc3Ryb2tlOiRuYXZ5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha1RhYmxldFBvcnRyYWl0KSB7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBoZWlnaHQ6NDhweDtcbiAgICB9XG59XG5cbiNpY29uLWZpbHRlcixcbiNpY29uLXNvcnR7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIiNtb3J0Z2FnZXMtaW50cm97XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBtYXgtd2lkdGg6JGZvcm1XaWR0aDtcbiAgICBwe1xuICAgICAgICBtYXJnaW46MWVtIGF1dG87XG4gICAgfVxufSIsIkBrZXlmcmFtZXMgc3BpbiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDBkZWcpO1xuICAgICAgICBvcGFjaXR5OjAuMztcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDcyMGRlZyk7XG4gICAgICAgIG9wYWNpdHk6MC4zO1xuICAgIH1cbn1cblxuLm1vcnRnYWdlcyB7XG4gICAgLmxvYWRpbmctaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5idXN5IHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAubG9hZGluZy1pY29ue1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDE4MDBtcyBpbmZpbml0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyOHB4O1xuICAgICAgICAgICAgY29sb3I6JGdyZWVuO1xuICAgICAgICB9XG4gICAgfVxufSIsImltZy5tb3J0Z2FnZXMtbG9nby1yZXN0bGVzcyxcbmltZy5tb3J0Z2FnZXMtbG9nby1rb29kb28ge1xuICAgIG1heC13aWR0aDoxMDAlO1xuICAgICYubW9ydGdhZ2VzLWxvZ28tcmVzdGxlc3N7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIGhlaWdodDoyNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOjE1cHg7XG4gICAgfVxuICAgICYubW9ydGdhZ2VzLWxvZ28ta29vZG9ve1xuICAgICAgICBoZWlnaHQ6NDVweDtcbiAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59IiwiI2VxdWl0eS1yZWxlYXNle1xuXG4gICAgLnJlc3VsdHN7XG4gICAgICAgIG1hcmdpbjozMHB4IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJi5yZXF1aXJlLXJlZnJlc2h7XG4gICAgICAgICAgICAmLmhhcy1yZXN1bHRze1xuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6J0NsaWNrIFwiQ2FsY3VsYXRlXCIgdG8gdXBkYXRlJztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjgpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6NTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGFibGV7XG4gICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgIHRye1xuICAgICAgICAgICAgdGR7XG4gICAgICAgICAgICAgICAgaHlwaGVuczogbWFudWFsO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5oaWdobGlnaHR7XG4gICAgICAgICAgICAgICAgdGR7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGdyZWVuO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIjZXF1aXR5LXJlbGVhc2UtcXVvdGV7XG4gIGJhY2tncm91bmQ6JGdyZXlMaWdodDtcbiAgcGFkZGluZzokYm94UGFkZGluZztcbiAgbWFyZ2luOjFlbSAwO1xuXG4gIGgze1xuICAgIGNvbG9yOiRncmVlbjtcbiAgICBtYXJnaW4tdG9wOjA7XG4gIH1cblxuICAucmVzdWx0c3tcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgaDZ7XG4gICAgICBjb2xvcjokbmF2eTtcbiAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgbWFyZ2luOjA7XG4gICAgfVxuICAgIHNwYW57XG4gICAgICBjb2xvcjokZ3JlZW47XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbWFyZ2luOjEwcHggMDtcbiAgICB9XG4gIH1cblxuICAucmVxdWVzdC1jYWxsYmFja3tcbiAgICBoNHtcbiAgICAgIGNvbG9yOiRuYXZ5O1xuICAgICAgbWFyZ2luOiRib3hQYWRkaW5nIDA7XG4gICAgICBmb250LXNpemU6MjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMjtcbiAgICB9XG4gICAgLmhic3B0LWZvcm17XG4gICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbntcbiAgICBwYWRkaW5nOjAgMWVtO1xuICB9XG4gICYuc3VibWl0dGVke1xuICAgIC5yZXN1bHRze1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtUYWJsZXRQb3J0cmFpdCkge1xuICAgIC5mb3JtLWlucHV0LXNlbGVjdHtcbiAgICAgIG1heC13aWR0aDoyNDBweDtcbiAgICB9XG4gICAgLmZvcm0tcm93e1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgY29sdW1uLWdhcDogMiokYm94UGFkZGluZztcbiAgICAgIC5mb3JtLWlucHV0LXJhbmdle1xuICAgICAgICBmbGV4OjAgMSAxMDAlO1xuICAgICAgfVxuICAgICAgLmZvcm0taW5wdXQtdGV4dHtcbiAgICAgICAgZmxleDogMCAwIDIwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uLmNhbGN1bGF0ZXtcbiAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gICAgLnJlc3VsdC1vcHRpb25ze1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgY29sdW1uLWdhcDogJGJveFBhZGRpbmc7XG4gICAgICAucmVzdWx0e1xuICAgICAgICBmbGV4OjAgMSAzMyU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi8uLi8uLi8uLi8uLi9zaGFyZWQvY2xpZW50L3N0eWxlcy9taXhpbnNcIjtcblxuI2VxdWl0eS1yZWxlYXNlLWxlYWQtZ2VuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiA3MjBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcblxuICBoMyB7XG4gICAgY29sb3I6ICRncmVlbjtcbiAgfVxuXG4gIC5pbnRybyB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAucmFkaW8ge1xuICAgIC50aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbGFiZWwuYnRuLWxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFkZHJlc3Mge1xuICAgIC5pbnB1dC13cmFwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgLmRpc2NsYWltZXIge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIC5yZXNwb25zZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLmJ1eS10by1sZXQtY2FsY3VsYXRvcntcbiAgbWFyZ2luOjA7XG5cbiAgJi5zdWJtaXR0ZWR7XG4gICAgLnJlc3VsdHN7XG4gICAgICAuaW50cm97XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICAgIC5yZXN1bHR7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRpdGxle1xuICAgIGNvbG9yOiRncmVlbjtcbiAgICBmb250LXNpemU6MjhweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgbWFyZ2luOjA7XG4gIH1cblxuICBwe1xuICAgIG1hcmdpbi1ib3R0b206JGJveFBhZGRpbmc7XG4gIH1cblxuICAuZm9ybS1pbnB1dHtcbiAgICAuaW5mby1tZXNzYWdle1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgY29sb3I6JGdyZXlNZWRpdW07XG4gICAgICBtYXJnaW4tdG9wOjVweDtcbiAgICB9XG4gICAgJi5tYXh7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAuaW5mby1tZXNzYWdle1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucmVzdWx0c3tcbiAgICAuaW50cm97XG4gICAgICBjb2xvcjokZ3JleU1lZGl1bTtcbiAgICB9XG4gICAgLnJlc3VsdC1pbnRyb3tcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1yaWdodDoyMHB4O1xuICAgICAgbWF4LXdpZHRoOjI1MHB4O1xuICAgICAgLmluZm8tYnViYmxle1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIHB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxMHB4O1xuICAgICAgICB9XG4gICAgICAgIHVse1xuICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yZXN1bHR7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICBzcGFue1xuICAgICAgICBjb2xvcjokZ3JlZW47XG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZToyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIGVte1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46MCA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN0YS10aXRsZXtcbiAgICBjb2xvcjokbmF2eTtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIGZvbnQtc2l6ZToyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbiAgLmJ1dHRvbntcbiAgICBtYXJnaW4tdG9wOjIwcHg7XG4gIH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtUYWJsZXRQb3J0cmFpdCkge1xuICAgIC5mb3JtLXJvd3tcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgY29sdW1uLWdhcDoxNXB4O1xuXG4gICAgICAuZm9ybS1pbnB1dC1yYW5nZXtcbiAgICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICB9XG4gICAgICAuZm9ybS1pbnB1dC10ZXh0e1xuICAgICAgICBmbGV4OiAwIDEgMjM1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0taW5wdXR7XG4gICAgICAmLm1heHtcbiAgICAgICAgLmluZm8tbWVzc2FnZXtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIHRvcDoxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbntcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOjAgMCAwIDIwcHg7XG4gICAgICB3aWR0aDphdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLnBlbnNpb24tY2FsY3VsYXRvcntcblxuICAmW2RhdGEtc3RhdGU9XCJsb2FkaW5nXCJde1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gICZbZGF0YS1zdGF0ZT1cImF3YWl0aW5nLWRldGFpbFwiXSB7XG4gICAgLnJlc3VsdHMsXG4gICAgLmN0YSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAucmVzdWx0cyB7XG4gICAgICAuY2hhcnQtY2FwdGlvbixcbiAgICAgIC5pbnRybyxcbiAgICAgIC5yZXN1bHQtc2V0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjYW52YXN7XG4gICAgICBmaWx0ZXI6Ymx1cig1cHgpO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1zdGF0ZT1cInN1Ym1pdHRlZFwiXXtcbiAgICAucmVzdWx0cyxcbiAgICAuY3Rhe1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gICAgLnJlc3VsdHN7XG4gICAgICAuY2hhcnQtY3Rhe1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5oaWRlLWRhdGF7XG4gICAgLnJlc3VsdCxcbiAgICAuY2hhcnQtd3JhcHBlcntcbiAgICAgIGZpbHRlcjpibHVyKDEwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZXtcbiAgICBtYXJnaW46MCAwICRib3hQYWRkaW5nIDA7XG4gIH1cblxuICBmb3JtLnJlc3RsZXNzLWZvcm17XG4gICAgLmZvcm0tcm93IC5mb3JtLWlucHV0e1xuICAgICAgbWFyZ2luLXRvcDowO1xuICAgIH1cbiAgICAuYnV0dG9ue1xuICAgICAgbGluZS1oZWlnaHQ6MThweDtcbiAgICAgIHBhZGRpbmc6MTRweCAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgICAmOmRpc2FibGVke1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYi1ncm91cHtcbiAgICBjb2x1bW4tZ2FwOiAxMHB4O1xuICAgIC50YWJ7XG4gICAgICBmb250LXNpemU6MTZweDtcbiAgICB9XG4gICAgLmNvbC1sZWZ0LFxuICAgIC5jb2wtcmlnaHR7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgfVxuICAudGFiLXJldGlyZW1lbnQsXG4gIC50YWItY29udHJpYnV0aW9uc3tcbiAgICAuaW5mby1idWJibGV7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDoxMHB4O1xuICAgICAgYm90dG9tOjE1cHg7XG4gICAgfVxuICB9XG4gIC50YWItb3B0aW9uc3tcbiAgICAuaGFzLWluZm8tYnViYmxle1xuICAgICAgcGFkZGluZy1yaWdodDozMHB4O1xuICAgIH1cbiAgICAuaW5mby1idWJibGV7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgfVxuICB9XG5cbiAgLmNoYXJ0LXdyYXBwZXJ7XG4gICAgaGVpZ2h0OjMwMHB4O1xuICAgIG1hcmdpbjokYm94UGFkZGluZyAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAjcmVzdWx0cy1jaGFydHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICB9XG5cbiAgLmNoYXJ0LWNhcHRpb24sXG4gIC5jaGFydC1jdGF7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgICBib3gtc2hhZG93OiRib3hTaGFkb3c7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGNvbG9yOiRncmV5Qm9keTtcbiAgICBwYWRkaW5nOjhweCAxNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LXNpemU6MTRweDtcbiAgICBtYXgtd2lkdGg6MTAwJTtcbiAgICBwe1xuICAgICAgbWFyZ2luOjA7XG4gICAgfVxuICB9XG5cbiAgLmNoYXJ0LWNhcHRpb257XG4gICAgdG9wOjIwcHg7XG4gICAgcmlnaHQ6MjBweDtcbiAgICB3aWR0aDoyNDBweDtcbiAgICBwe1xuICAgICAgbWFyZ2luOjAgMCA1cHggMDtcbiAgICB9XG4gICAgI2NoYXJ0LWNhcHRpb24taW5jb21le1xuICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB9XG4gICAgI2NoYXJ0LWNhcHRpb24tcG90e1xuICAgICAgY29sb3I6JGdyZWVuO1xuICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB9XG4gICAgYXtcbiAgICAgIGNvbG9yOiRncmVlbjtcbiAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBpe1xuICAgICAgICBtYXJnaW4tbGVmdDo1cHg7XG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2hhcnQtY3Rhe1xuICAgIHRvcDo1MCU7XG4gICAgbGVmdDo1MCU7XG4gICAgdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAgIHdpZHRoOjM0MHB4O1xuICB9XG5cbiAgLnJlc3VsdHN7XG4gICAgZGlzcGxheTpub25lO1xuICAgIC5pbnRyb3tcbiAgICAgIHBhZGRpbmctdG9wOiRib3hQYWRkaW5nO1xuICAgICAgbWFyZ2luLXRvcDokYm94UGFkZGluZztcbiAgICAgIGJvcmRlci10b3A6c29saWQgJGxpZ2h0Qm9yZGVyIDFweDtcbiAgICAgIGNvbG9yOiRncmVlbjtcbiAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6MS4yO1xuICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB9XG4gIH1cblxuICAucmVzdWx0LXNldHtcbiAgICBtYXJnaW46JGJveFBhZGRpbmcgMDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGNvbHVtbi1nYXA6JGJveFBhZGRpbmc7XG4gICAgcm93LWdhcDokYm94UGFkZGluZztcbiAgfVxuICAucmVzdWx0e1xuICAgIGZsZXg6MCAwIDEwMCU7XG4gICAgYmFja2dyb3VuZDokZ3JleUxpZ2h0O1xuICAgIHBhZGRpbmc6MTJweDtcbiAgICBwe1xuICAgICAgZm9udC1zaXplOjE0cHg7XG4gICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgbWFyZ2luOjAgMCA1cHggMDtcbiAgICAgICY6bGFzdC1jaGlsZHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgJi52YWx1ZXtcbiAgICAgICAgY29sb3I6JGdyZXlNZWRpdW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHNwYW57XG4gICAgICAgICAgY29sb3I6JGdyZWVuO1xuICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3Rhe1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBtYXJnaW4tdG9wOiRib3hQYWRkaW5nO1xuICAgIHB7XG4gICAgICBjb2xvcjokbmF2eTtcbiAgICAgICYuY3RhLXRpdGxle1xuICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtUYWJsZXRQb3J0cmFpdCkge1xuICAgIC50aXRsZXtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cblxuICAgIGZvcm0ucmVzdGxlc3MtZm9ybXtcbiAgICAgIC5mb3JtLWlucHV0LmZvcm0taW5wdXQtdG9nZ2xle1xuICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbHtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1yb3d7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGNvbHVtbi1nYXA6ICRib3hQYWRkaW5nO1xuICAgICAgLmlucHV0LXBvdCxcbiAgICAgIC5pbnB1dC1hZ2V7XG4gICAgICAgIGZsZXg6MCAxIDUwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFiLWdyb3Vwe1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgY29sdW1uLWdhcDogJGJveFBhZGRpbmc7XG4gICAgICAudGFie1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgICAudGFiLWNvbnRlbnR7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG4gICAgICAuY29sLWxlZnQsXG4gICAgICAuY29sLXJpZ2h0e1xuICAgICAgICBmbGV4OjAgMSA1MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlc3VsdC1zZXR7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIC5yZXN1bHR7XG4gICAgICAgIGZsZXg6MCAxIDMzJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmN0YXtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIC5idXR0b257XG4gICAgICAgIHdpZHRoOmF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubW9ydGdhZ2UtcGF5bWVudC1jYWxjdWxhdG9ye1xuICBtYXJnaW46MDtcblxuICAmLnN1Ym1pdHRlZHtcbiAgICAucmVzdWx0c3tcbiAgICAgIC5pbnRyb3tcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgfVxuICAgICAgLnJlc3VsdHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGl0bGV7XG4gICAgY29sb3I6JGdyZWVuO1xuICAgIGZvbnQtc2l6ZToyOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICBtYXJnaW46MDtcbiAgfVxuXG4gIHB7XG4gICAgbWFyZ2luLWJvdHRvbTokYm94UGFkZGluZztcbiAgfVxuXG4gIC5yZXN1bHRze1xuICAgIC5pbnRyb3tcbiAgICAgIGNvbG9yOiRncmV5TWVkaXVtO1xuICAgIH1cbiAgICAucmVzdWx0e1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgc3BhbntcbiAgICAgICAgY29sb3I6JGdyZWVuO1xuICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgICBmb250LXNpemU6MjhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN0YS10aXRsZXtcbiAgICBjb2xvcjokbmF2eTtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICB9XG4gIC5jdGEtY2FwdGlvbntcbiAgICBhe1xuICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbntcbiAgICBtYXJnaW4tdG9wOjIwcHg7XG4gIH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtUYWJsZXRQb3J0cmFpdCkge1xuICAgIC5mb3JtLXJvd3tcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGNvbHVtbi1nYXA6IDE1cHg7XG4gICAgICAuZm9ybS1pbnB1dC1yYW5nZXtcbiAgICAgICAgZmxleDoxIDEgMzMlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19 */
