@charset "UTF-8";/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:0;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],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}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[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-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}[data-whatinput=mouse] *,[data-whatinput=mouse] :focus,[data-whatinput=touch] *,[data-whatinput=touch] :focus,[data-whatintent=mouse] *,[data-whatintent=mouse] :focus,[data-whatintent=touch] *,[data-whatintent=touch] :focus{outline:0}[draggable=false]{-webkit-touch-callout:none;-webkit-user-select:none}.foundation-mq{font-family:"xs=0em&sm=36em&md=48em&lg=62em&xl=75em&xxl=87.5em&small=0em&medium=48em&large=62em"}html{box-sizing:border-box;font-size:100%}*,::after,::before{box-sizing:inherit}body{margin:0;padding:0;background:#fefefe;font-family:Muli,"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#444;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:0}select{box-sizing:border-box;width:100%;border-radius:0}.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{padding:0;appearance:none;border:0;border-radius:0;background:0 0;line-height:1;cursor:auto}[data-whatinput=mouse] button{outline:0}pre{overflow:auto;-webkit-overflow-scrolling:touch}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block!important}.is-hidden{display:none!important}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;margin:0 0 1rem;padding:.5rem;border:1px solid #cacaca;border-radius:0;background-color:#fefefe;box-shadow:inset 0 1px 2px rgba(10,10,10,.1);font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5;color:#0a0a0a;transition:box-shadow .5s,border-color .25s ease-in-out;appearance:none}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus{outline:0;border:1px solid #8a8a8a;background-color:#fefefe;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:not-allowed}[type=button],[type=submit]{appearance:none;border-radius:0}input[type=search]{box-sizing:border-box}::placeholder{color:#cacaca}[type=checkbox],[type=file],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;vertical-align:baseline;margin-left:.5rem;margin-right:1rem;margin-bottom:0}[type=checkbox]+label[for],[type=radio]+label[for]{cursor:pointer}label>[type=checkbox],label>[type=radio]{margin-right:.5rem}[type=file]{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:400;line-height:1.8;color:#0a0a0a}label.middle{margin:0 0 1rem;line-height:1.5;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#0a0a0a}.input-group{display:flex;width:100%;margin-bottom:1rem;align-items:stretch}.input-group>:first-child,.input-group>:first-child.input-group-button>*{border-radius:0}.input-group>:last-child,.input-group>:last-child.input-group-button>*{border-radius:0}.input-group-button,.input-group-button a,.input-group-button button,.input-group-button input,.input-group-button label,.input-group-field,.input-group-label{margin:0;white-space:nowrap}.input-group-label{padding:0 1rem;border:1px solid #cacaca;background:#e6e6e6;color:#0a0a0a;text-align:center;white-space:nowrap;display:flex;flex:0 0 auto;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;flex:1 1 0px;min-width:0}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;display:flex;flex:0 0 auto}.input-group-button a,.input-group-button button,.input-group-button input,.input-group-button label{align-self:stretch;height:auto;padding-top:0;padding-bottom:0;font-size:1rem}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.5rem}.fieldset{margin:1.125rem 0;padding:1.25rem;border:1px solid #cacaca}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;appearance:none;border:1px solid #cacaca;border-radius:0;background-color:#fefefe;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5;color:#0a0a0a;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%28138, 138, 138%29"></polygon></svg>');background-origin:content-box;background-position:right -1rem center;background-repeat:no-repeat;background-size:9px 6px;padding-right:1.5rem;transition:box-shadow .5s,border-color .25s ease-in-out}@media screen and (min-width:0\0){select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==)}}select:focus{outline:0;border:1px solid #8a8a8a;background-color:#fefefe;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}select:disabled{background-color:#e6e6e6;cursor:not-allowed}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}select:not([multiple]){padding-top:0;padding-bottom:0}.is-invalid-input:not(:focus){border-color:#cc4b37;background-color:#f9ecea}.is-invalid-input:not(:focus)::placeholder{color:#cc4b37}.is-invalid-label{color:#cc4b37}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700;color:#cc4b37}.form-error.is-visible{display:block}.feedback__text,blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}p{margin-bottom:1.25rem;font-size:inherit;line-height:1.625rem;text-rendering:optimizeLegibility}em,i{font-style:italic;line-height:inherit}b,strong{font-weight:700;line-height:inherit}small{font-size:80%;line-height:inherit}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:Muli,"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-style:normal;font-weight:400;color:inherit;text-rendering:optimizeLegibility}.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{line-height:0;color:#cacaca}.h1,h1{font-size:1.5rem}.h2,h2{font-size:1.25rem}.h3,h3{font-size:1.1875rem}.h4,h4{font-size:1.125rem}.h5,h5{font-size:1.0625rem}.h6,h6{font-size:1rem}@media print,screen and (min-width:48em){.h1,h1{font-size:3rem}.h2,h2{font-size:2.5rem}.h3,h3{font-size:1.9375rem}.h4,h4{font-size:1.5625rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}}a{line-height:inherit;color:#1779ba;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#1468a0}a img{border:0}hr{clear:both;max-width:75rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid #cacaca;border-left:0}dl,ol,ul{margin-bottom:1.25rem;list-style-position:outside;line-height:1.625rem}li{font-size:inherit}ul{margin-left:1.25rem;list-style-type:disc}ol{margin-left:1.25rem}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:700}.feedback__text,blockquote{margin:0 0 1.25rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}.feedback__text,.feedback__text p,blockquote,blockquote p{line-height:1.625rem;color:#444}abbr,abbr[title]{border-bottom:1px dotted #0a0a0a;cursor:help;text-decoration:none}figure{margin:0}kbd{margin:0;padding:.125rem .25rem 0;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#0a0a0a}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ol.no-bullet,ul.no-bullet{margin-left:0;list-style:none}.cite-block,.feedback__cite,cite{display:block;color:#8a8a8a;font-size:.8125rem}.cite-block:before,.feedback__cite:before,cite:before{content:"— "}.code-inline,code{border:1px solid #cacaca;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:400;color:#0a0a0a;display:inline;max-width:100%;word-wrap:break-word;padding:.125rem .3125rem .0625rem}.code-block{border:1px solid #cacaca;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:400;color:#0a0a0a;display:block;overflow:auto;white-space:pre;padding:1rem;margin-bottom:1.5rem}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media print,screen and (min-width:36em){.sm-text-left{text-align:left}.sm-text-right{text-align:right}.sm-text-center{text-align:center}.sm-text-justify{text-align:justify}}@media print,screen and (min-width:48em){.md-text-left{text-align:left}.md-text-right{text-align:right}.md-text-center{text-align:center}.md-text-justify{text-align:justify}}@media print,screen and (min-width:62em){.lg-text-left{text-align:left}.lg-text-right{text-align:right}.lg-text-center{text-align:center}.lg-text-justify{text-align:justify}}@media print,screen and (min-width:75em){.xl-text-left{text-align:left}.xl-text-right{text-align:right}.xl-text-center{text-align:center}.xl-text-justify{text-align:justify}}@media print,screen and (min-width:87.5em){.xxl-text-left{text-align:left}.xxl-text-right{text-align:right}.xxl-text-center{text-align:center}.xxl-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:0 0!important;color:#000!important;print-color-adjust:economy;box-shadow:none!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print{display:table-cell!important}th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}abbr[title]:after{content:" (" attr(title) ")"}.feedback__text,blockquote,pre{border:1px solid #8a8a8a;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.row{max-width:75rem;margin-right:auto;margin-left:auto;display:flex;flex-flow:row wrap}.row .row{margin-right:-1.25rem;margin-left:-1.25rem}@media print,screen and (min-width:36em){.row .row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:48em){.row .row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em){.row .row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:75em){.row .row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:87.5em){.row .row{margin-right:-1.25rem;margin-left:-1.25rem}}.row .row.collapse{margin-right:0;margin-left:0}.row.expanded{max-width:none}.row.expanded .row{margin-right:auto;margin-left:auto}.row:not(.expanded) .row{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row.collapse>.column>.row,.row.collapse>.columns>.row,.row.is-collapse-child{margin-right:0;margin-left:0}.column,.columns{flex:1 1 0px;padding-right:1.25rem;padding-left:1.25rem;min-width:0}.column.row.row,.row.row.columns{float:none;display:block}.row .column.row.row,.row .row.row.columns{margin-right:0;margin-left:0;padding-right:0;padding-left:0}.xs-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.xs-offset-0{margin-left:0}.xs-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.xs-offset-1{margin-left:8.3333333333%}.xs-3{flex:0 0 25%;max-width:25%}.xs-offset-2{margin-left:16.6666666667%}.xs-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.xs-offset-3{margin-left:25%}.xs-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.xs-offset-4{margin-left:33.3333333333%}.xs-6{flex:0 0 50%;max-width:50%}.xs-offset-5{margin-left:41.6666666667%}.xs-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.xs-offset-6{margin-left:50%}.xs-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.xs-offset-7{margin-left:58.3333333333%}.xs-9{flex:0 0 75%;max-width:75%}.xs-offset-8{margin-left:66.6666666667%}.xs-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.xs-offset-9{margin-left:75%}.xs-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.xs-offset-10{margin-left:83.3333333333%}.xs-12{flex:0 0 100%;max-width:100%}.xs-offset-11{margin-left:91.6666666667%}.xs-up-1{flex-wrap:wrap}.xs-up-1>.column,.xs-up-1>.columns{flex:0 0 100%;max-width:100%}.xs-up-2{flex-wrap:wrap}.xs-up-2>.column,.xs-up-2>.columns{flex:0 0 50%;max-width:50%}.xs-up-3{flex-wrap:wrap}.xs-up-3>.column,.xs-up-3>.columns{flex:0 0 33.3333333333%;max-width:33.3333333333%}.xs-up-4{flex-wrap:wrap}.xs-up-4>.column,.xs-up-4>.columns{flex:0 0 25%;max-width:25%}.xs-up-5{flex-wrap:wrap}.xs-up-5>.column,.xs-up-5>.columns{flex:0 0 20%;max-width:20%}.xs-up-6{flex-wrap:wrap}.xs-up-6>.column,.xs-up-6>.columns{flex:0 0 16.6666666667%;max-width:16.6666666667%}.xs-up-7{flex-wrap:wrap}.xs-up-7>.column,.xs-up-7>.columns{flex:0 0 14.2857142857%;max-width:14.2857142857%}.xs-up-8{flex-wrap:wrap}.xs-up-8>.column,.xs-up-8>.columns{flex:0 0 12.5%;max-width:12.5%}.xs-collapse>.column,.xs-collapse>.columns{padding-right:0;padding-left:0}.xs-uncollapse>.column,.xs-uncollapse>.columns{padding-right:1.25rem;padding-left:1.25rem}@media print,screen and (min-width:36em){.sm-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.sm-offset-0{margin-left:0}.sm-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.sm-offset-1{margin-left:8.3333333333%}.sm-3{flex:0 0 25%;max-width:25%}.sm-offset-2{margin-left:16.6666666667%}.sm-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.sm-offset-3{margin-left:25%}.sm-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.sm-offset-4{margin-left:33.3333333333%}.sm-6{flex:0 0 50%;max-width:50%}.sm-offset-5{margin-left:41.6666666667%}.sm-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.sm-offset-6{margin-left:50%}.sm-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.sm-offset-7{margin-left:58.3333333333%}.sm-9{flex:0 0 75%;max-width:75%}.sm-offset-8{margin-left:66.6666666667%}.sm-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.sm-offset-9{margin-left:75%}.sm-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.sm-offset-10{margin-left:83.3333333333%}.sm-12{flex:0 0 100%;max-width:100%}.sm-offset-11{margin-left:91.6666666667%}.sm-up-1{flex-wrap:wrap}.sm-up-1>.column,.sm-up-1>.columns{flex:0 0 100%;max-width:100%}.sm-up-2{flex-wrap:wrap}.sm-up-2>.column,.sm-up-2>.columns{flex:0 0 50%;max-width:50%}.sm-up-3{flex-wrap:wrap}.sm-up-3>.column,.sm-up-3>.columns{flex:0 0 33.3333333333%;max-width:33.3333333333%}.sm-up-4{flex-wrap:wrap}.sm-up-4>.column,.sm-up-4>.columns{flex:0 0 25%;max-width:25%}.sm-up-5{flex-wrap:wrap}.sm-up-5>.column,.sm-up-5>.columns{flex:0 0 20%;max-width:20%}.sm-up-6{flex-wrap:wrap}.sm-up-6>.column,.sm-up-6>.columns{flex:0 0 16.6666666667%;max-width:16.6666666667%}.sm-up-7{flex-wrap:wrap}.sm-up-7>.column,.sm-up-7>.columns{flex:0 0 14.2857142857%;max-width:14.2857142857%}.sm-up-8{flex-wrap:wrap}.sm-up-8>.column,.sm-up-8>.columns{flex:0 0 12.5%;max-width:12.5%}}@media print,screen and (min-width:36em) and (min-width:36em){.sm-expand{flex:1 1 0px}}.row.sm-unstack>.column,.row.sm-unstack>.columns{flex:0 0 100%}@media print,screen and (min-width:36em){.row.sm-unstack>.column,.row.sm-unstack>.columns{flex:1 1 0px}.sm-collapse>.column,.sm-collapse>.columns{padding-right:0;padding-left:0}.sm-uncollapse>.column,.sm-uncollapse>.columns{padding-right:1.25rem;padding-left:1.25rem}}@media print,screen and (min-width:48em){.md-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.md-offset-0{margin-left:0}.md-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.md-offset-1{margin-left:8.3333333333%}.md-3{flex:0 0 25%;max-width:25%}.md-offset-2{margin-left:16.6666666667%}.md-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.md-offset-3{margin-left:25%}.md-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.md-offset-4{margin-left:33.3333333333%}.md-6{flex:0 0 50%;max-width:50%}.md-offset-5{margin-left:41.6666666667%}.md-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.md-offset-6{margin-left:50%}.md-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.md-offset-7{margin-left:58.3333333333%}.md-9{flex:0 0 75%;max-width:75%}.md-offset-8{margin-left:66.6666666667%}.md-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.md-offset-9{margin-left:75%}.md-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.md-offset-10{margin-left:83.3333333333%}.md-12{flex:0 0 100%;max-width:100%}.md-offset-11{margin-left:91.6666666667%}.md-up-1{flex-wrap:wrap}.md-up-1>.column,.md-up-1>.columns{flex:0 0 100%;max-width:100%}.md-up-2{flex-wrap:wrap}.md-up-2>.column,.md-up-2>.columns{flex:0 0 50%;max-width:50%}.md-up-3{flex-wrap:wrap}.md-up-3>.column,.md-up-3>.columns{flex:0 0 33.3333333333%;max-width:33.3333333333%}.md-up-4{flex-wrap:wrap}.md-up-4>.column,.md-up-4>.columns{flex:0 0 25%;max-width:25%}.md-up-5{flex-wrap:wrap}.md-up-5>.column,.md-up-5>.columns{flex:0 0 20%;max-width:20%}.md-up-6{flex-wrap:wrap}.md-up-6>.column,.md-up-6>.columns{flex:0 0 16.6666666667%;max-width:16.6666666667%}.md-up-7{flex-wrap:wrap}.md-up-7>.column,.md-up-7>.columns{flex:0 0 14.2857142857%;max-width:14.2857142857%}.md-up-8{flex-wrap:wrap}.md-up-8>.column,.md-up-8>.columns{flex:0 0 12.5%;max-width:12.5%}}@media print,screen and (min-width:48em) and (min-width:48em){.md-expand{flex:1 1 0px}}.row.md-unstack>.column,.row.md-unstack>.columns{flex:0 0 100%}@media print,screen and (min-width:48em){.row.md-unstack>.column,.row.md-unstack>.columns{flex:1 1 0px}.md-collapse>.column,.md-collapse>.columns{padding-right:0;padding-left:0}.md-uncollapse>.column,.md-uncollapse>.columns{padding-right:1.25rem;padding-left:1.25rem}}@media print,screen and (min-width:62em){.lg-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.lg-offset-0{margin-left:0}.lg-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.lg-offset-1{margin-left:8.3333333333%}.lg-3{flex:0 0 25%;max-width:25%}.lg-offset-2{margin-left:16.6666666667%}.lg-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.lg-offset-3{margin-left:25%}.lg-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.lg-offset-4{margin-left:33.3333333333%}.lg-6{flex:0 0 50%;max-width:50%}.lg-offset-5{margin-left:41.6666666667%}.lg-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.lg-offset-6{margin-left:50%}.lg-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.lg-offset-7{margin-left:58.3333333333%}.lg-9{flex:0 0 75%;max-width:75%}.lg-offset-8{margin-left:66.6666666667%}.lg-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.lg-offset-9{margin-left:75%}.lg-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.lg-offset-10{margin-left:83.3333333333%}.lg-12{flex:0 0 100%;max-width:100%}.lg-offset-11{margin-left:91.6666666667%}.lg-up-1{flex-wrap:wrap}.lg-up-1>.column,.lg-up-1>.columns{flex:0 0 100%;max-width:100%}.lg-up-2{flex-wrap:wrap}.lg-up-2>.column,.lg-up-2>.columns{flex:0 0 50%;max-width:50%}.lg-up-3{flex-wrap:wrap}.lg-up-3>.column,.lg-up-3>.columns{flex:0 0 33.3333333333%;max-width:33.3333333333%}.lg-up-4{flex-wrap:wrap}.lg-up-4>.column,.lg-up-4>.columns{flex:0 0 25%;max-width:25%}.lg-up-5{flex-wrap:wrap}.lg-up-5>.column,.lg-up-5>.columns{flex:0 0 20%;max-width:20%}.lg-up-6{flex-wrap:wrap}.lg-up-6>.column,.lg-up-6>.columns{flex:0 0 16.6666666667%;max-width:16.6666666667%}.lg-up-7{flex-wrap:wrap}.lg-up-7>.column,.lg-up-7>.columns{flex:0 0 14.2857142857%;max-width:14.2857142857%}.lg-up-8{flex-wrap:wrap}.lg-up-8>.column,.lg-up-8>.columns{flex:0 0 12.5%;max-width:12.5%}}@media print,screen and (min-width:62em) and (min-width:62em){.lg-expand{flex:1 1 0px}}.row.lg-unstack>.column,.row.lg-unstack>.columns{flex:0 0 100%}@media print,screen and (min-width:62em){.row.lg-unstack>.column,.row.lg-unstack>.columns{flex:1 1 0px}.lg-collapse>.column,.lg-collapse>.columns{padding-right:0;padding-left:0}.lg-uncollapse>.column,.lg-uncollapse>.columns{padding-right:1.25rem;padding-left:1.25rem}}@media print,screen and (min-width:75em){.xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.xl-offset-0{margin-left:0}.xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.xl-offset-1{margin-left:8.3333333333%}.xl-3{flex:0 0 25%;max-width:25%}.xl-offset-2{margin-left:16.6666666667%}.xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.xl-offset-3{margin-left:25%}.xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.xl-offset-4{margin-left:33.3333333333%}.xl-6{flex:0 0 50%;max-width:50%}.xl-offset-5{margin-left:41.6666666667%}.xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.xl-offset-6{margin-left:50%}.xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.xl-offset-7{margin-left:58.3333333333%}.xl-9{flex:0 0 75%;max-width:75%}.xl-offset-8{margin-left:66.6666666667%}.xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.xl-offset-9{margin-left:75%}.xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.xl-offset-10{margin-left:83.3333333333%}.xl-12{flex:0 0 100%;max-width:100%}.xl-offset-11{margin-left:91.6666666667%}.xl-up-1{flex-wrap:wrap}.xl-up-1>.column,.xl-up-1>.columns{flex:0 0 100%;max-width:100%}.xl-up-2{flex-wrap:wrap}.xl-up-2>.column,.xl-up-2>.columns{flex:0 0 50%;max-width:50%}.xl-up-3{flex-wrap:wrap}.xl-up-3>.column,.xl-up-3>.columns{flex:0 0 33.3333333333%;max-width:33.3333333333%}.xl-up-4{flex-wrap:wrap}.xl-up-4>.column,.xl-up-4>.columns{flex:0 0 25%;max-width:25%}.xl-up-5{flex-wrap:wrap}.xl-up-5>.column,.xl-up-5>.columns{flex:0 0 20%;max-width:20%}.xl-up-6{flex-wrap:wrap}.xl-up-6>.column,.xl-up-6>.columns{flex:0 0 16.6666666667%;max-width:16.6666666667%}.xl-up-7{flex-wrap:wrap}.xl-up-7>.column,.xl-up-7>.columns{flex:0 0 14.2857142857%;max-width:14.2857142857%}.xl-up-8{flex-wrap:wrap}.xl-up-8>.column,.xl-up-8>.columns{flex:0 0 12.5%;max-width:12.5%}}@media print,screen and (min-width:75em) and (min-width:75em){.xl-expand{flex:1 1 0px}}.row.xl-unstack>.column,.row.xl-unstack>.columns{flex:0 0 100%}@media print,screen and (min-width:75em){.row.xl-unstack>.column,.row.xl-unstack>.columns{flex:1 1 0px}.xl-collapse>.column,.xl-collapse>.columns{padding-right:0;padding-left:0}.xl-uncollapse>.column,.xl-uncollapse>.columns{padding-right:1.25rem;padding-left:1.25rem}}@media print,screen and (min-width:87.5em){.xxl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.xxl-offset-0{margin-left:0}.xxl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.xxl-offset-1{margin-left:8.3333333333%}.xxl-3{flex:0 0 25%;max-width:25%}.xxl-offset-2{margin-left:16.6666666667%}.xxl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.xxl-offset-3{margin-left:25%}.xxl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.xxl-offset-4{margin-left:33.3333333333%}.xxl-6{flex:0 0 50%;max-width:50%}.xxl-offset-5{margin-left:41.6666666667%}.xxl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.xxl-offset-6{margin-left:50%}.xxl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.xxl-offset-7{margin-left:58.3333333333%}.xxl-9{flex:0 0 75%;max-width:75%}.xxl-offset-8{margin-left:66.6666666667%}.xxl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.xxl-offset-9{margin-left:75%}.xxl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.xxl-offset-10{margin-left:83.3333333333%}.xxl-12{flex:0 0 100%;max-width:100%}.xxl-offset-11{margin-left:91.6666666667%}.xxl-up-1{flex-wrap:wrap}.xxl-up-1>.column,.xxl-up-1>.columns{flex:0 0 100%;max-width:100%}.xxl-up-2{flex-wrap:wrap}.xxl-up-2>.column,.xxl-up-2>.columns{flex:0 0 50%;max-width:50%}.xxl-up-3{flex-wrap:wrap}.xxl-up-3>.column,.xxl-up-3>.columns{flex:0 0 33.3333333333%;max-width:33.3333333333%}.xxl-up-4{flex-wrap:wrap}.xxl-up-4>.column,.xxl-up-4>.columns{flex:0 0 25%;max-width:25%}.xxl-up-5{flex-wrap:wrap}.xxl-up-5>.column,.xxl-up-5>.columns{flex:0 0 20%;max-width:20%}.xxl-up-6{flex-wrap:wrap}.xxl-up-6>.column,.xxl-up-6>.columns{flex:0 0 16.6666666667%;max-width:16.6666666667%}.xxl-up-7{flex-wrap:wrap}.xxl-up-7>.column,.xxl-up-7>.columns{flex:0 0 14.2857142857%;max-width:14.2857142857%}.xxl-up-8{flex-wrap:wrap}.xxl-up-8>.column,.xxl-up-8>.columns{flex:0 0 12.5%;max-width:12.5%}}@media print,screen and (min-width:87.5em) and (min-width:87.5em){.xxl-expand{flex:1 1 0px}}.row.xxl-unstack>.column,.row.xxl-unstack>.columns{flex:0 0 100%}@media print,screen and (min-width:87.5em){.row.xxl-unstack>.column,.row.xxl-unstack>.columns{flex:1 1 0px}.xxl-collapse>.column,.xxl-collapse>.columns{padding-right:0;padding-left:0}.xxl-uncollapse>.column,.xxl-uncollapse>.columns{padding-right:1.25rem;padding-left:1.25rem}}.shrink{flex:0 0 auto;max-width:100%}.column-block{margin-bottom:2.5rem}.column-block>:last-child{margin-bottom:0}.align-left{justify-content:flex-start}.align-right{justify-content:flex-end}.align-center{justify-content:center}.align-justify{justify-content:space-between}.align-spaced{justify-content:space-around}.align-left.vertical.menu>li>a{justify-content:flex-start}.align-right.vertical.menu>li>a{justify-content:flex-end}.align-center.vertical.menu>li>a{justify-content:center}.align-top{align-items:flex-start}.align-self-top{align-self:flex-start}.align-bottom{align-items:flex-end}.align-self-bottom{align-self:flex-end}.align-middle{align-items:center}.align-self-middle{align-self:center}.align-stretch{align-items:stretch}.align-self-stretch{align-self:stretch}.align-center-middle{justify-content:center;align-items:center;align-content:center}.xs-order-1{order:1}.xs-order-2{order:2}.xs-order-3{order:3}.xs-order-4{order:4}.xs-order-5{order:5}.xs-order-6{order:6}@media print,screen and (min-width:36em){.sm-order-1{order:1}.sm-order-2{order:2}.sm-order-3{order:3}.sm-order-4{order:4}.sm-order-5{order:5}.sm-order-6{order:6}}@media print,screen and (min-width:48em){.md-order-1{order:1}.md-order-2{order:2}.md-order-3{order:3}.md-order-4{order:4}.md-order-5{order:5}.md-order-6{order:6}}@media print,screen and (min-width:62em){.lg-order-1{order:1}.lg-order-2{order:2}.lg-order-3{order:3}.lg-order-4{order:4}.lg-order-5{order:5}.lg-order-6{order:6}}@media print,screen and (min-width:75em){.xl-order-1{order:1}.xl-order-2{order:2}.xl-order-3{order:3}.xl-order-4{order:4}.xl-order-5{order:5}.xl-order-6{order:6}}@media print,screen and (min-width:87.5em){.xxl-order-1{order:1}.xxl-order-2{order:2}.xxl-order-3{order:3}.xxl-order-4{order:4}.xxl-order-5{order:5}.xxl-order-6{order:6}}.flex-container{display:flex}.flex-child-auto{flex:1 1 auto}.flex-child-grow{flex:1 0 auto}.flex-child-shrink{flex:0 1 auto}.flex-dir-row{flex-direction:row}.flex-dir-row-reverse{flex-direction:row-reverse}.flex-dir-column{flex-direction:column}.flex-dir-column-reverse{flex-direction:column-reverse}@media print,screen and (min-width:36em){.sm-flex-container{display:flex}.sm-flex-child-auto{flex:1 1 auto}.sm-flex-child-grow{flex:1 0 auto}.sm-flex-child-shrink{flex:0 1 auto}.sm-flex-dir-row{flex-direction:row}.sm-flex-dir-row-reverse{flex-direction:row-reverse}.sm-flex-dir-column{flex-direction:column}.sm-flex-dir-column-reverse{flex-direction:column-reverse}}@media print,screen and (min-width:48em){.md-flex-container{display:flex}.md-flex-child-auto{flex:1 1 auto}.md-flex-child-grow{flex:1 0 auto}.md-flex-child-shrink{flex:0 1 auto}.md-flex-dir-row{flex-direction:row}.md-flex-dir-row-reverse{flex-direction:row-reverse}.md-flex-dir-column{flex-direction:column}.md-flex-dir-column-reverse{flex-direction:column-reverse}}@media print,screen and (min-width:62em){.lg-flex-container{display:flex}.lg-flex-child-auto{flex:1 1 auto}.lg-flex-child-grow{flex:1 0 auto}.lg-flex-child-shrink{flex:0 1 auto}.lg-flex-dir-row{flex-direction:row}.lg-flex-dir-row-reverse{flex-direction:row-reverse}.lg-flex-dir-column{flex-direction:column}.lg-flex-dir-column-reverse{flex-direction:column-reverse}}@media print,screen and (min-width:75em){.xl-flex-container{display:flex}.xl-flex-child-auto{flex:1 1 auto}.xl-flex-child-grow{flex:1 0 auto}.xl-flex-child-shrink{flex:0 1 auto}.xl-flex-dir-row{flex-direction:row}.xl-flex-dir-row-reverse{flex-direction:row-reverse}.xl-flex-dir-column{flex-direction:column}.xl-flex-dir-column-reverse{flex-direction:column-reverse}}@media print,screen and (min-width:87.5em){.xxl-flex-container{display:flex}.xxl-flex-child-auto{flex:1 1 auto}.xxl-flex-child-grow{flex:1 0 auto}.xxl-flex-child-shrink{flex:0 1 auto}.xxl-flex-dir-row{flex-direction:row}.xxl-flex-dir-row-reverse{flex-direction:row-reverse}.xxl-flex-dir-column{flex-direction:column}.xxl-flex-dir-column-reverse{flex-direction:column-reverse}}.hide{display:none!important}.invisible{visibility:hidden}.visible{visibility:visible}@media print,screen and (max-width:35.99875em){.hide-for-xs-only{display:none!important}}@media screen and (max-width:0em),screen and (min-width:36em){.show-for-xs-only{display:none!important}}@media print,screen and (min-width:36em){.hide-for-sm{display:none!important}}@media screen and (max-width:35.99875em){.show-for-sm{display:none!important}}@media print,screen and (min-width:36em) and (max-width:47.99875em){.hide-for-sm-only{display:none!important}}@media screen and (max-width:35.99875em),screen and (min-width:48em){.show-for-sm-only{display:none!important}}@media print,screen and (min-width:48em){.hide-for-md{display:none!important}}@media screen and (max-width:47.99875em){.show-for-md{display:none!important}}@media print,screen and (min-width:48em) and (max-width:61.99875em){.hide-for-md-only{display:none!important}}@media screen and (max-width:47.99875em),screen and (min-width:62em){.show-for-md-only{display:none!important}}@media print,screen and (min-width:62em){.hide-for-lg{display:none!important}}@media screen and (max-width:61.99875em){.show-for-lg{display:none!important}}@media print,screen and (min-width:62em) and (max-width:74.99875em){.hide-for-lg-only{display:none!important}}@media screen and (max-width:61.99875em),screen and (min-width:75em){.show-for-lg-only{display:none!important}}@media print,screen and (min-width:75em){.hide-for-xl{display:none!important}}@media screen and (max-width:74.99875em){.show-for-xl{display:none!important}}@media print,screen and (min-width:75em) and (max-width:87.49875em){.hide-for-xl-only{display:none!important}}@media screen and (max-width:74.99875em),screen and (min-width:87.5em){.show-for-xl-only{display:none!important}}@media print,screen and (min-width:87.5em){.hide-for-xxl{display:none!important}}@media screen and (max-width:87.49875em){.show-for-xxl{display:none!important}}@media print,screen and (min-width:87.5em){.hide-for-xxl-only{display:none!important}}@media screen and (max-width:87.49875em),screen and (min-width:0em){.show-for-xxl-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.show-on-focus:active,.show-on-focus:focus{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;white-space:normal!important}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:landscape){.hide-for-landscape,.show-for-portrait{display:none!important}}@media screen and (orientation:portrait){.hide-for-landscape,.show-for-portrait{display:block!important}}.show-for-dark-mode{display:none}.hide-for-dark-mode{display:block}@media screen and (prefers-color-scheme:dark){.show-for-dark-mode{display:block!important}.hide-for-dark-mode{display:none!important}}.show-for-ie{display:none}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.show-for-ie{display:block!important}.hide-for-ie{display:none!important}}.show-for-sticky{display:none}.is-stuck .show-for-sticky{display:block}.is-stuck .hide-for-sticky{display:none}@font-face{font-display:swap;font-family:FiraSans;font-style:normal;font-weight:400;src:local(""),url(../Fonts/fira-sans/FiraSans-Book.woff2) format("woff2"),url(../Fonts/fira-sans/FiraSans-Book.woff) format("woff")}@font-face{font-display:swap;font-family:Muli;font-style:normal;font-weight:300;src:local(""),url(../Fonts/muli/Muli-Light.woff2) format("woff2"),url(../Fonts/muli/Muli-Light.woff) format("woff")}@font-face{font-display:swap;font-family:Muli;font-style:normal;font-weight:400;src:local(""),url(../Fonts/muli/Muli.woff2) format("woff2"),url(../Fonts/muli/Muli.woff) format("woff")}@font-face{font-display:swap;font-family:Muli;font-style:italic;font-weight:400;src:local(""),url(../Fonts/muli/Muli-Italic.woff2) format("woff2"),url(../Fonts/muli/Muli-Italic.woff) format("woff")}@font-face{font-display:swap;font-family:Muli;font-style:normal;font-weight:700;src:local(""),url(../Fonts/muli/Muli-Bold.woff2) format("woff2"),url(../Fonts/muli/Muli-Bold.woff) format("woff")}.feedback__text,blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}p{margin-bottom:1.25rem;font-size:inherit;line-height:1.625rem;text-rendering:optimizeLegibility}em,i{font-style:italic;line-height:inherit}b,strong{font-weight:700;line-height:inherit}small{font-size:80%;line-height:inherit}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:Muli,"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-style:normal;font-weight:400;color:inherit;text-rendering:optimizeLegibility}.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{line-height:0;color:#cacaca}.h1,h1{font-size:1.625rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}.h2,h2{font-size:1.625rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}.h3,h3{font-size:1.5rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}.h4,h4{font-size:1.25rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}.h5,h5{font-size:1.125rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}.h6,h6{font-size:1.125rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}@media print,screen and (min-width:62em){.h1,h1{font-size:2.875rem;line-height:1}.h2,h2{font-size:2.5rem;line-height:1}.h3,h3{font-size:1.875rem;line-height:1}.h4,h4{font-size:1.25rem;line-height:1}}a{line-height:inherit;color:#1779ba;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#1468a0}a img{border:0}hr{clear:both;max-width:75rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid #cacaca;border-left:0}dl,ol,ul{margin-bottom:1.25rem;list-style-position:outside;line-height:1.625rem}li{font-size:inherit}ul{margin-left:1.25rem;list-style-type:disc}ol{margin-left:1.25rem}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:700}.feedback__text,blockquote{margin:0 0 1.25rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}.feedback__text,.feedback__text p,blockquote,blockquote p{line-height:1.625rem;color:#444}abbr,abbr[title]{border-bottom:1px dotted #0a0a0a;cursor:help;text-decoration:none}figure{margin:0}kbd{margin:0;padding:.125rem .25rem 0;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#0a0a0a}.text--lead{letter-spacing:.025em;font-size:1.125rem;font-weight:300;line-height:1.25}@media print,screen and (min-width:62em){.text--lead{font-size:1.5rem}}body{font-size:1rem}.h1,h1{color:#9fd18d;margin-bottom:1.25rem;font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400}.h2,h2{color:#9fd18d;font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;margin-bottom:1.25rem}.h3,h3{font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;margin-bottom:1.25rem}.h4,h4{font-weight:700;margin-bottom:1.25rem}.h5,.h6,h5,h6{font-weight:700;margin-bottom:1.25rem}a{color:#9fd18d;text-decoration:none}a:active,a:focus,a:hover{outline:0}a:active,a:hover{color:#444;text-decoration:underline}a:focus{color:#e5e3c0;text-decoration:underline}.feedback__text,blockquote{border:none;display:table;line-height:1.625;margin:0;padding:1.5625rem 0 2rem}.feedback__text::before,blockquote::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='63.145' height='54.127'%3E%3Cpath d='m62.9 50.978-6.939-12.546a25.224 25.224 0 0 0 2.708-11.368C58.669 12.117 45.536.001 29.336.001S0 12.117 0 27.063s13.133 27.063 29.333 27.063a30.972 30.972 0 0 0 16.118-4.45l15.189 4.169a1.98 1.98 0 0 0 2.257-2.868ZM25.83 33.552a8.084 8.084 0 0 1-6.636 2.986 2.019 2.019 0 1 1 0-4.037 4.044 4.044 0 0 0 3.46-1.441 7.5 7.5 0 0 0 1.288-3.786H18.9a1.514 1.514 0 0 1-1.514-1.514v-6.51a1.514 1.514 0 0 1 1.514-1.514h6.51a2.19 2.19 0 0 1 1.961 1.564 28.875 28.875 0 0 1 .68 5.115c.172 3.968-.578 7.041-2.223 9.137Zm13.963 0a8.083 8.083 0 0 1-6.636 2.986 2.019 2.019 0 0 1 0-4.037 4.043 4.043 0 0 0 3.46-1.441 7.494 7.494 0 0 0 1.288-3.786h-5.036a1.514 1.514 0 0 1-1.514-1.514v-6.51a1.514 1.514 0 0 1 1.514-1.514h6.51A2.19 2.19 0 0 1 41.34 19.3a28.906 28.906 0 0 1 .68 5.115c.166 3.968-.584 7.041-2.229 9.137Z' fill='%23cfe8c6'/%3E%3C/svg%3E");background-position:left top 5px;background-repeat:no-repeat;background-size:1em;content:"";display:table-cell;font-size:3.875rem;height:1em;line-height:inherit;vertical-align:top;width:1.5em}.feedback__text .feedback__cite,.feedback__text cite,blockquote .feedback__cite,blockquote cite{color:#777;display:block;font-size:1rem;font-style:italic;line-height:1;margin-top:2.75em;text-align:right}.feedback__text .feedback__cite::before,.feedback__text cite::before,blockquote .feedback__cite::before,blockquote cite::before{content:"- "}.feedback__text p:last-child,blockquote p:last-child{margin-bottom:0}.feedback__text p+.feedback__cite,.feedback__text p+cite,blockquote p+.feedback__cite,blockquote p+cite{margin-top:1.5em}img,picture{border-radius:.0625rem;display:inline-block;margin-bottom:1.25rem}picture img{margin:0}b,strong{font-weight:700}ul{list-style:none;margin:0 0 1.25rem;padding:0}ul li{display:table;padding-left:.9375rem;width:100%}ul li::before{color:inherit;color:#9fd18d;content:"•";display:table-cell;text-indent:-.9375rem;vertical-align:baseline}ul ul{font-style:italic;margin:0}ol{counter-reset:order;list-style:none;margin:0 0 1.25rem;padding:0}ol li{counter-increment:order;display:table;padding-left:1.25rem;width:100%}ol li::before{color:inherit;content:counters(order, ".") ". ";display:table-cell;text-indent:-1.25rem}ol ol{margin:0}ol ol li{font-style:italic;padding-left:1.875rem}ol ol li::before{content:counters(order, ".") " ";text-indent:-1.875rem}table{border:none;border-collapse:collapse;border-radius:0;font-size:.875rem;line-height:1.25rem;margin:1.25rem 0 2.5rem;max-width:100%;position:relative}table::before{border:1px solid #e5e3c0;content:"";display:block;pointer-events:none;position:absolute}tr{border-bottom:1px solid #e5e3c0}td,th{padding:.75rem .9375rem;text-align:left;vertical-align:top}td::before,th::before{content:"";display:block;height:0;width:8em}th{background-color:#e5e3c0}dl{border:1px solid #e5e3c0;display:table;font-size:.875rem;line-height:1.25rem;margin:0 0 1.25rem;max-width:100%;position:relative}dl dt{background-color:#e5e3c0;font-weight:700;margin:0;padding:.75rem .9375rem}dd{margin:0;padding:.75rem .9375rem}dd+dd{border-top:1px solid #e5e3c0}hr{background-image:url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Ebene_1' data-name='Ebene 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 54.01 54.01'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23a0cd8d; stroke-width: 0px; %7D %3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.01,0C12.1,0,.01,12.09.01,27s12.09,27,27,27,27-12.09,27-27S41.93,0,27.01,0ZM33.77,15.33c.95,0,1.72.91,1.72,2.03s-.77,2.03-1.72,2.03-1.72-.91-1.72-2.03.77-2.03,1.72-2.03ZM30.09,12.65c1.14,0,2.06,1.09,2.06,2.44s-.92,2.44-2.06,2.44-2.06-1.09-2.06-2.44.92-2.44,2.06-2.44ZM24.18,10.18c1.92.04,3.47,1.59,3.49,3.52.03,1.97-1.55,3.58-3.52,3.61-.04,0-.08,0-.11,0-1.91-.08-3.4-1.7-3.32-3.61,0-1.92,1.54-3.48,3.46-3.51ZM35.58,31.08c-1.1,4.35-3.4,8.31-6.64,11.41-2.1,2-5.02,2.87-7.87,2.35-2.5-.41-4.03-2.52-4.03-5.51-.09-1.92.87-3.75,2.51-4.76.38-.26.77-.52,1.14-.79,2.14-1.61,2.44-3.56,1.04-5.85-.68-1-1.19-2.1-1.52-3.26-1.1-4.9,1.87-7.34,6.12-7.14,5.13.24,8.17,3.42,9.49,7.91.46,1.87.38,3.83-.24,5.64ZM34.7,20.37c0-.95.66-1.73,1.46-1.73s1.46.77,1.46,1.73-.66,1.73-1.46,1.73-1.46-.77-1.46-1.73ZM37.52,25.17c-.72,0-1.3-.69-1.3-1.54s.58-1.54,1.3-1.54,1.3.69,1.3,1.54-.58,1.54-1.3,1.54Z'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:contain;border-color:transparent;border-style:solid;border-width:0;height:2.1875rem;margin:auto;width:100%;max-width:72.5rem}@media print,screen and (min-width:62em){hr{height:4.0625rem}}iframe{border:none;max-width:100%}:root{--tl-color-beryl:#e5e3c0;--tl-color-black:#000;--tl-color-grey-300:#ddd;--tl-color-grey-400:#777;--tl-color-grey-700:#444;--tl-color-moss:#9fd18d;--tl-color-pearl:#fcf9d6;--tl-color-white:#fff;--tl-color-zanah:#cfe8c6;--tl-color-primary:#9fd18d;--tl-color-secondary:#cfe8c6;--tl-color-alert:#ff7070;--tl-color-success:#8bb31d;--tl-font-size-h1:1.625rem;--tl-font-size-h2:1.625rem;--tl-font-size-h3:1.5rem;--tl-font-size-h4:1.25rem;--tl-font-size-h5:1.125rem;--tl-font-size-h6:1.125rem}@media print,screen and (min-width:62em){:root{--tl-font-size-h1:2.875rem;--tl-font-size-h2:2.5rem;--tl-font-size-h3:1.875rem;--tl-font-size-h4:1.25rem}}body,html{height:100%}.site{display:flex;flex-direction:column;min-height:100%;overflow:hidden}.site__content{flex:1 1 auto;max-width:100%;overflow:hidden}.header{left:0;position:fixed;right:0;top:0;transition:background-color .1s,box-shadow .1s;z-index:100}.header--fixed,.header--solid{background-color:#fff;color:#000}.header--fixed{box-shadow:0 0 30px rgba(0,0,0,.15)}.header__row{padding:.75rem 0}.header__col--shrink{padding-right:1.25rem;padding-left:1.25rem;flex:0 1 auto}.header__col--noshrink{flex:0 0 auto}.header__brand{display:block;line-height:.7826086957;margin-bottom:-.1304347826em;font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-size:1.65625rem}.header__brand span{display:block;font-size:.7826086957em;line-height:1;margin-top:.125rem}.navmain{align-content:center;display:flex;flex-wrap:wrap}@media print,screen and (max-width:61.99875em){.navmain{background-color:#fcf9d6;inset:0;opacity:0;padding:4.0625rem 0;position:fixed;transform:translateY(-20%) scaleY(0);transform-origin:top center;visibility:hidden;will-change:opacity,transform,visibility;z-index:-1}}@media print,screen and (min-width:62em){.navmain{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em) and (min-width:36em){.navmain{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em) and (min-width:48em){.navmain{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em) and (min-width:62em){.navmain{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em) and (min-width:75em){.navmain{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em) and (min-width:87.5em){.navmain{margin-right:-1.25rem;margin-left:-1.25rem}}.domready .navmain{transition:opacity 250ms ease-in,transform .3s ease-in,visibility 250ms ease-in}[data-menu] .navmain{opacity:1;transform:translateY(0) scaleY(1);visibility:visible}[data-delay] .navmain{transition:none}.navmain__list{letter-spacing:.2em;margin:0}@media print,screen and (max-width:47.99875em){.navmain__list{background-size:734px auto!important}}@media print,screen and (max-width:61.99875em){.navmain__list{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 734 179'%3E%3Cpath d='M732 0c-76.4 96.7-188 159.2-310.3 173.8-18.3 2.1-36.6 3.2-55 3.2s-36.7-1.1-55-3.2c-35.5-4.2-70.4-12.4-103.9-24.6C126.3 119.6 54.9 67.9 1.3 0H0c76.5 97.2 188.6 160.1 311.5 174.8 18.3 2.1 36.7 3.2 55.1 3.2s36.8-1.1 55.1-3.2c35.6-4.2 70.5-12.5 104.2-24.7C607.7 120.4 679.4 68.4 733.2 0H732z' fill='%23e5e3c0'/%3E%3C/svg%3E");background-position:bottom center;background-repeat:no-repeat;background-size:100% auto;flex-basis:100%;padding-bottom:2.5rem;padding-top:2.5rem;text-align:center}}@media print,screen and (min-width:62em){.navmain__list{display:flex;flex:1 0 auto}}.navmain__sub{padding:.625rem 0}@media print,screen and (min-width:62em){.navmain__sub{background-color:#fcf9d6;left:-1.25rem;opacity:0;padding:0 1.25rem 1.25rem;position:absolute;top:100%;visibility:hidden}.navmain__item--parent:focus .navmain__sub,.navmain__item--parent:hover .navmain__sub{opacity:1;visibility:visible}}.navmain__item{display:block;padding:0;width:auto}.navmain__item::before{content:none}@media print,screen and (max-width:61.99875em){.navmain__item:not(:last-child){margin-bottom:.3125rem}}@media print,screen and (min-width:62em){.navmain__item:not(:last-child){margin-right:2.5rem}}.navmain__item--parent{position:relative}.navmain__sub .navmain__item{margin:0}.navmain__link{color:#777;display:block;font-size:1rem;font-weight:700;padding:.625rem 0;position:relative;text-decoration:none;text-transform:uppercase}.navmain__link--active{color:#444}.navmain__item--parent>.navmain__link::after{content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z' fill='%23777'/%3E%3C/svg%3E");display:inline-block;height:.8em;margin-left:.75rem;margin-top:.125rem;vertical-align:top;width:.8em}.navmain__item--parent:focus .navmain__link,.navmain__item--parent:hover .navmain__link{background-color:#fcf9d6;margin:0 -1.25rem;padding-left:1.25rem;padding-right:1.25rem}.navmain__link--sub{font-weight:400;margin:0;padding:.3125rem 0;text-transform:none}.navmain__call{letter-spacing:.08em;color:#777;flex-basis:100%;font-size:1rem;margin-bottom:0;padding-bottom:2.5rem;padding-top:2.5rem;text-align:center;text-transform:uppercase}@media print,screen and (min-width:62em){.navmain__call{display:flex;flex:0 1 auto;font-weight:700;padding-bottom:0;padding-top:0}}.navmain__call li{padding:0}.navmain__call li::before{content:none}@media print,screen and (min-width:62em){.navmain__call li:not(:last-child){margin-right:1.875rem}}.footer{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 734 179'%3E%3Cpath d='M367.4 0a473.287 473.287 0 0 1 55.116 3.225A466.718 466.718 0 0 1 734.8 179.004H0a466.623 466.623 0 0 1 208.11-151.1A463.3 463.3 0 0 1 312.286 3.222 473.233 473.233 0 0 1 367.4.004V0' fill='%23e5e3c0'/%3E%3C/svg%3E");background-position:center bottom;background-repeat:no-repeat;background-size:734px auto!important;overflow:hidden}.footer__row{padding:2.8125rem 0 1.5625rem;position:relative;z-index:0}@media print,screen and (min-width:62em){.footer__row{padding:6.875rem 0 2.8125rem}}.footer__row:after,.footer__row:before{background-color:#9fd18d;content:"";height:7.8125rem;position:absolute;width:.125rem;z-index:-1}.footer__row:before{bottom:1.5625rem;left:1.25rem}@media print,screen and (min-width:62em){.footer__row:before{bottom:3.125rem;left:32.5%}}.footer__row:after{bottom:-2.5rem;right:32.5%}@media print,screen and (max-width:61.99875em){.footer__col{flex-basis:100%}}.footer__col--shrink{flex:0 1 auto}.footer__list{padding-left:1.25rem}@media print,screen and (min-width:62em){.footer__list{display:flex;padding-left:0;margin:0}}.footer__list--nav{letter-spacing:.2em;justify-content:flex-start;text-transform:uppercase}.footer__list--call{letter-spacing:.05em;margin-bottom:.3125rem}@media print,screen and (min-width:62em){.footer__list--call{justify-content:flex-end}}.footer__list li{color:#777;display:block;flex:0 1 auto;font-size:1.0625rem;font-weight:700;padding:0;position:relative;text-decoration:none;width:auto}.footer__list li:before{content:none}@media print,screen and (max-width:61.99875em){.footer__list li:not(:last-child){margin-bottom:.3125rem}}@media print,screen and (min-width:62em){.footer__list li:not(:last-child){margin-right:1.875rem}}.footer__list a{color:inherit;text-decoration:none}.footer__link--active{color:#444}.trigger{display:table;position:relative;text-align:right;vertical-align:middle;z-index:10}.trigger__button{color:inherit;cursor:pointer;display:flex;vertical-align:middle}.trigger__button:focus,.trigger__button:hover{outline:0}.trigger__icon{display:flex;font-size:1rem;height:.875rem;margin:.125rem 0;order:1;position:relative;text-align:left;width:1.5625rem}@media print,screen and (min-width:75em){.trigger__icon{margin-left:auto;margin-right:auto}}.trigger__icon i,.trigger__icon::after,.trigger__icon::before{background-color:#777;border-radius:1px;display:inline-block;height:.125rem;margin:.375rem 0;width:100%}.trigger__icon i{transition:width .2s,opacity .2s 250ms ease;width:1.25rem}.trigger__button:hover .trigger__icon i{width:100%}.trigger__icon::after,.trigger__icon::before{content:"";font-size:1em;left:0;margin:auto;position:absolute;width:100%}.trigger__button:hover .trigger__icon::after,.trigger__button:hover .trigger__icon::before{width:80%}.trigger__icon::before{top:0;transform:translate3d(0,-50%,0);transform-origin:center top;transition:width .2s,top .2s 250ms ease,transform .2s ease-in-out}.trigger__icon::after{bottom:0;transform:translate3d(0,50%,0);transform-origin:center bottom;transition:width .2s,bottom .2s 250ms ease,transform .2s ease-in-out}[data-menu] .trigger__icon i{opacity:0;transition:width .2s,opacity .2s ease;width:.9375rem!important}[data-menu] .trigger__icon::before{background-color:#777;top:50%;transform:rotate(45deg) translate3d(0,-50%,0);transition:width .2s,top .2s ease,transform .2s 250ms ease-in-out;width:100%!important}[data-menu] .trigger__icon::after{background-color:#777;bottom:50%;transform:rotate(-45deg) translate3d(0,50%,0);transition:width .2s,bottom .2s ease,transform .2s 250ms ease-in-out;width:100%!important}.trigger__label{display:block;font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;line-height:1;margin-right:.3125rem;padding-top:.125rem;transition:opacity .2s}@media print,screen and (min-width:62em){.trigger__label{display:none!important}}[data-menu] .trigger__label{opacity:0}.stage__top{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 734 179'%3E%3Cpath d='M732 0c-76.4 96.7-188 159.2-310.3 173.8-18.3 2.1-36.6 3.2-55 3.2s-36.7-1.1-55-3.2c-35.5-4.2-70.4-12.4-103.9-24.6C126.3 119.6 54.9 67.9 1.3 0H0c76.5 97.2 188.6 160.1 311.5 174.8 18.3 2.1 36.7 3.2 55.1 3.2s36.8-1.1 55.1-3.2c35.6-4.2 70.5-12.5 104.2-24.7C607.7 120.4 679.4 68.4 733.2 0H732z' fill='%23e5e3c0'/%3E%3C/svg%3E");background-position:top center;background-repeat:no-repeat;background-size:734px auto;padding-bottom:3rem;padding-top:4.6875rem}@media print,screen and (min-width:75em){.stage__top{background-image:url("data:image/svg+xml,%3Csvg data-name='Ebene 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1014.45 176.5'%3E%3Cpath d='M1012.41 0c-22.26 12.37-46.25 23.94-71.73 34.56a928.86 928.86 0 0 1-128.31 42.29c-23.01 5.84-46.91 11.07-71.03 15.54-24.42 4.53-49.62 8.38-74.89 11.44-25.66 3.11-51.98 5.49-78.22 7.06-26.7 1.6-53.96 2.42-81.01 2.42s-54.31-.82-81.01-2.42a1299.69 1299.69 0 0 1-78.22-7.06c-25.27-3.07-50.46-6.92-74.89-11.44-24.12-4.47-48.02-9.7-71.03-15.54A930.203 930.203 0 0 1 73.76 34.56C48.3 23.94 24.31 12.37 2.05 0H0c22.73 12.72 47.28 24.6 73.39 35.48 8.56 3.53 17.17 6.92 25.83 10.2v57.82h1V46.06a931.816 931.816 0 0 0 101.61 31.77c23.02 5.85 46.94 11.08 71.09 15.55 24.44 4.53 49.66 8.38 74.95 11.45 1.61.2 3.23.38 4.85.57v58.1h1v-57.99c23.81 2.77 48.14 4.93 72.43 6.38 18.78 1.13 37.83 1.86 56.91 2.2v62.41h1v-62.39c7.72.13 15.45.21 23.16.21 27.08 0 54.36-.82 81.07-2.42 13.66-.82 27.34-1.86 40.93-3.11v61.18h1V108.7c12.21-1.13 24.35-2.41 36.35-3.87 25.29-3.07 50.51-6.92 74.95-11.45 7.13-1.32 14.24-2.72 21.31-4.17v52.92h1V89c16.54-3.41 32.88-7.14 48.78-11.18 25.38-6.37 50.48-13.8 75.22-22.28V99.5h1V55.2a930.407 930.407 0 0 0 52.22-19.72C967.16 24.6 991.71 12.72 1014.44 0h-2.04Z' fill='%23e5e3c0'/%3E%3C/svg%3E");background-size:1014.45px auto;height:16.875rem}}.stage__top .row{position:relative}.stage__brand{display:table;margin:auto}@media print,screen and (min-width:75em){.stage__brand{left:2.5rem;position:absolute;top:1.5rem;transform:rotate(-9deg)}}.stage__brand svg{display:block;height:auto;width:20.5625rem}.stage__figure{background-position:0 0;background-repeat:no-repeat;left:50%;position:absolute}@media print,screen and (max-width:74.99875em){.stage__figure{display:none}}.stage__figure::before{content:"";display:block;width:100%}.stage__figure--teddy{background-image:url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 41.96 61.87'%3E%3Cpath fill='%23d0e5c9' d='M20.98,32.04c4.21.17,8.31-1.35,11.4-4.21,5.42-5.68,5.42-14.62,0-20.3-3.09-2.87-7.19-4.38-11.4-4.21-4.21-.17-8.31,1.35-11.4,4.21-5.42,5.68-5.42,14.62,0,20.3,3.09,2.87,7.19,4.38,11.4,4.21h0ZM27.61,14.37c.61,0,1.1.49,1.1,1.1,0,.61-.49,1.1-1.1,1.1-.61,0-1.1-.49-1.1-1.1h0c0-.61.49-1.1,1.1-1.1h0,0ZM14.35,14.37c.61,0,1.1.49,1.1,1.1,0,.61-.49,1.1-1.1,1.1-.61,0-1.1-.49-1.1-1.1h0c0-.61.49-1.1,1.1-1.1h0,0ZM13.25,20.44c.61,0,1.1.49,1.1,1.1,0,2.46,2.39,4.51,5.52,4.9v-3.5c-.12-.06-.23-.12-.33-.2l-1.88-1.34c-.7-.51-1.11-1.32-1.1-2.18-.03-1.43,1.11-2.61,2.54-2.65h3.75c1.43.03,2.57,1.21,2.55,2.64,0,.86-.4,1.67-1.1,2.18l-1.88,1.34c-.11.08-.22.14-.33.2v3.51c3.13-.4,5.52-2.44,5.52-4.9,0-.61.49-1.11,1.1-1.11s1.11.49,1.11,1.11c0,3.96-3.96,7.18-8.84,7.18s-8.84-3.22-8.84-7.18c0-.61.49-1.1,1.1-1.1h0Z'/%3E%3Cpath fill='%23d0e5c9' d='M28.93,32.73c2.62,3.29,4.09,7.34,4.19,11.54,2.13.32,4.07,1.44,5.41,3.13,1.88-.43,3.26-2.02,3.43-3.94l-.1-1.42c-.48-5.27-3.79-9.86-8.64-11.98-1.28,1.11-2.73,2.01-4.29,2.67Z'/%3E%3Cpath fill='%23d0e5c9' d='M37.02,10.29c2.63-1.54,3.52-4.93,1.98-7.56s-4.93-3.52-7.56-1.98c-.85.5-1.55,1.22-2.03,2.08,1.68.77,3.2,1.82,4.52,3.11,1.28,1.26,2.32,2.73,3.1,4.34Z'/%3E%3Cpath fill='%23d0e5c9' d='M12.55,2.84C11.06.17,7.7-.79,5.03.7c-2.67,1.48-3.63,4.85-2.14,7.51.48.87,1.19,1.58,2.04,2.08.77-1.62,1.82-3.09,3.09-4.34,1.32-1.29,2.85-2.34,4.52-3.11Z'/%3E%3Cellipse fill='%23d0e5c9' cx='32.04' cy='54.14' rx='6.63' ry='7.73'/%3E%3Cpath fill='%23d0e5c9' d='M30.91,44.28c-.07-3.98-1.58-7.81-4.25-10.76-3.72.97-7.62.98-11.34,0-2.66,2.96-4.17,6.78-4.25,10.76,4.34.63,7.71,4.81,7.71,9.86,0,1.63-.36,3.25-1.06,4.72,2.05,1.07,4.49,1.07,6.54,0-.7-1.47-1.07-3.09-1.06-4.72,0-5.05,3.37-9.23,7.71-9.86h0Z'/%3E%3Cellipse fill='%23d0e5c9' cx='9.94' cy='54.14' rx='6.63' ry='7.73'/%3E%3Cpath fill='%23d0e5c9' d='M8.86,44.27c.1-4.2,1.57-8.25,4.19-11.54-1.57-.66-3.02-1.56-4.31-2.68C3.89,32.18.58,36.77.1,42.04l-.1,1.42c.16,1.93,1.56,3.53,3.45,3.95,1.34-1.69,3.28-2.81,5.41-3.14Z'/%3E%3C/svg%3E%0A");margin-left:-11.25rem;top:5.25rem;transform:rotate(13deg);width:2.625rem}.stage__figure--teddy::before{padding-bottom:147.4499523356%}.stage__figure--wagon{background-image:url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 55.78 64.11'%3E%3Cpath fill='%23d0e5c9' d='M55.73,23.08c-.05-.14-.13-.27-.23-.38l-.08-.07.08-.08c.1-.11.18-.24.22-.38.04-.14.05-.29.03-.44-.04-.22-.16-.41-.33-.55-.17-.14-.38-.22-.6-.21h-.04c-.18,0-.36.06-.51.16-.21-2.67-.89-5.29-2-7.72.18.01.36-.03.52-.11l.03-.02c.19-.1.34-.27.42-.48.08-.2.09-.43.02-.64-.05-.14-.13-.27-.24-.37-.11-.1-.24-.18-.38-.22l-.1-.03.03-.11c.04-.14.05-.29.02-.44-.03-.15-.09-.28-.18-.4-.14-.17-.33-.29-.54-.34-.21-.05-.44-.02-.63.09l-.03.02c-.16.09-.29.22-.38.37-1.96-3.1-4.62-5.7-7.78-7.56.15-.09.28-.23.36-.39l.02-.04c.1-.2.13-.42.07-.63-.05-.21-.17-.4-.35-.53-.12-.09-.26-.14-.41-.17-.15-.02-.3-.01-.44.03l-.1.04-.03-.1c-.05-.14-.13-.27-.24-.37-.11-.1-.23-.18-.38-.23-.21-.06-.44-.05-.64.04-.2.08-.37.24-.47.44l-.02.03c-.08.16-.11.34-.1.52C37.5.62,34.45,0,31.38,0,30.63,0,29.9.04,29.17.11v23.67L40.44,2.24l.49,1.35c.05.13.19.2.33.16l1.32-.39-13.41,20.42,21.5-12.61-.36,1.37c-.04.14.04.28.17.32l1.44.48-22.75,10.44,24.7-2.25-.88.96c-.1.1-.1.26,0,.36l.89.92H6.44c-.03,13.28,10.71,24.06,23.99,24.09,13.13.03,23.85-10.48,24.08-23.6.1.03.2.05.31.05h.04c.22,0,.43-.08.6-.23.17-.14.28-.34.31-.56.02-.15,0-.3-.04-.44M12.12,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03ZM31.38,26.32c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03ZM27.01,26.32c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03ZM16.48,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03ZM20.85,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03ZM23.93,27.8c-.05,0-.1-.02-.14-.06l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03c0,.21-.09.41-.24.55l-.9.85s-.09.06-.14.06M36.89,36.02c0,1.04-.43,2.03-1.2,2.73l-4.5,4.23c-.39.37-1.01.37-1.4,0l-4.5-4.23c-.77-.7-1.2-1.69-1.2-2.73v-.15c0-.84.3-1.66.85-2.3.54-.65,1.3-1.08,2.13-1.23.56-.08,1.13-.04,1.68.12.55.17,1.05.47,1.45.88l.3.3.28-.3c.41-.4.91-.7,1.45-.88.55-.17,1.13-.21,1.7-.12.83.15,1.58.58,2.13,1.23.55.64.85,1.46.85,2.3v.15ZM38.32,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03ZM42.69,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03ZM47.05,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03ZM51.42,26.35c0,.21-.09.41-.24.55l-.9.85c-.08.07-.2.07-.28,0l-.9-.85c-.15-.14-.24-.34-.24-.55v-.03c0-.17.06-.33.17-.46.11-.13.26-.22.43-.25.11-.02.23,0,.34.02.11.03.21.09.29.18l.06.06.06-.06c.08-.08.18-.14.29-.18.11-.03.23-.04.34-.02.17.03.32.12.43.25.11.13.17.29.17.46v.03Z'/%3E%3Cpath fill='%23d0e5c9' d='M21.46,52.16c-3.3,0-5.97,2.67-5.97,5.97s2.67,5.97,5.97,5.97,5.97-2.67,5.97-5.97-2.67-5.97-5.97-5.97h0M23.55,59.79c0,.24-.2.43-.44.44l-2.72.09c-.46.02-.9-.15-1.22-.48l-.05-.05c-.26-.26-.42-.61-.45-.98-.03-.37.07-.74.28-1.04.15-.2.34-.36.56-.48.22-.12.47-.18.72-.18h.19v-.18c0-.25.06-.5.17-.72.12-.22.29-.42.49-.57.3-.21.67-.31,1.04-.28.37.03.72.19.98.45l.05.05c.32.32.5.77.47,1.22l-.09,2.71Z'/%3E%3Cpath fill='%23d0e5c9' d='M39.43,52.16c-3.3,0-5.97,2.67-5.97,5.97s2.67,5.97,5.97,5.97,5.97-2.67,5.97-5.97-2.67-5.97-5.97-5.97h0M41.76,59.79l-.05.05c-.32.32-.77.5-1.22.48l-2.71-.09c-.24,0-.43-.2-.44-.44l-.09-2.71c-.02-.46.15-.9.47-1.22l.05-.05c.26-.26.61-.42.98-.45.37-.03.74.07,1.04.28.2.15.37.34.48.56.12.22.18.47.18.72v.19h.18c.25,0,.5.06.72.17.22.12.42.29.57.49.21.3.31.67.28,1.04-.03.37-.19.72-.45.98'/%3E%3Cpath fill='%23d0e5c9' d='M38.45,48.11c-1.91.55-3.88.88-5.87.97l-1.89,1.33-1.89-1.33c-1.99-.09-3.96-.41-5.87-.97l5.51,3.88-2.11,1.48c.6.63,1.08,1.37,1.4,2.18l2.96-2.08,2.58,1.82c.36-.79.86-1.51,1.49-2.12l-1.82-1.28,5.51-3.88Z'/%3E%3Cpath fill='%23d0e5c9' d='M5.1,17.91c-.22-1.4-1.53-2.35-2.93-2.13S-.19,17.31.03,18.71s1.53,2.35,2.93,2.13c.53-.08,1.03-.33,1.41-.72,1.33.42,2.19,1.71,2.07,3.1h2.33c.11-2.4-1.39-4.58-3.67-5.32M3.5,19.06c0,.11-.09.2-.2.2l-1.24.04c-.21,0-.41-.07-.56-.22l-.02-.02c-.12-.12-.19-.28-.21-.45-.01-.17.03-.34.13-.47.07-.09.15-.17.25-.22.1-.05.21-.08.33-.08h.09v-.08c0-.11.03-.23.08-.33.05-.1.13-.19.22-.26.14-.1.31-.14.48-.13.17.01.33.09.45.21l.02.02c.15.15.23.35.22.56l-.04,1.24Z'/%3E%3C/svg%3E");margin-left:-3.25rem;top:6.375rem;transform:rotate(-16deg);width:3.4375rem}.stage__figure--wagon::before{padding-bottom:114.9336679814%}.stage__figure--bottle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56.97 67.37'%3E%3Cpath fill='%23d0e5c9' d='m15.72 30.5-2.14 4.28c-.12.23-.18.49-.18.75v1.68h8.38a1.675 1.675 0 0 1 .05 3.35H13.4v3.35h8.38c.93.01 1.67.77 1.65 1.7-.01.91-.75 1.64-1.65 1.65H13.4v3.35h8.38a1.675 1.675 0 0 1 .05 3.35H13.4v3.35h8.38a1.675 1.675 0 0 1 .05 3.35H13.4v1.68c0 2.78 2.25 5.02 5.03 5.03h20.11c2.77 0 5.02-2.25 5.03-5.03V35.53c0-.26-.06-.51-.18-.75l-2.14-4.28H15.72ZM40.21 20.45H16.75a3.35 3.35 0 0 0-3.35 3.35v1.68c0 .93.75 1.68 1.67 1.68h26.81c.93 0 1.68-.75 1.68-1.67v-1.68c0-1.85-1.5-3.35-3.35-3.35ZM0 45.58c.01 5.82 4.3 10.74 10.06 11.56v-3.35c-4.53-.92-7.46-5.35-6.54-9.88a8.39 8.39 0 0 1 6.54-6.54v-1.84c.01-.52.1-1.04.27-1.53C4.45 34.69.02 39.66 0 45.58ZM46.65 33.99c.17.49.26 1.01.27 1.53v1.84c4.53.93 7.46 5.35 6.53 9.89a8.367 8.367 0 0 1-6.53 6.53v3.35c6.38-.89 10.83-6.79 9.94-13.17-.74-5.26-4.93-9.36-10.21-9.98ZM28.49 0a3.35 3.35 0 0 0-3.35 3.35v6.97c-4.01 0-7.45 2.84-8.22 6.77h23.14a8.376 8.376 0 0 0-8.22-6.77V3.35c0-1.85-1.5-3.35-3.35-3.35Z'/%3E%3C/svg%3E%0A");margin-left:5.875rem;top:5.25rem;transform:rotate(22deg);width:3.625rem}.stage__figure--bottle::before{padding-bottom:118.2552220467%}.stage__figure--pacifier{background-image:url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.69 63.85'%3E%3Cpath fill='%23d0e5c9' d='M11.91,19.78c-1-6.04,3.07-11.74,9.11-12.75,6.04-1,11.74,3.07,12.75,9.11.1.6.15,1.21.15,1.82,0,.61-.05,1.21-.15,1.81,1.91.42,3.78.99,5.6,1.71.06.02.12.05.18.07,2.38-9.23-3.17-18.64-12.4-21.02C17.92-1.83,8.51,3.72,6.13,12.95c-.73,2.82-.73,5.79,0,8.61l.18-.07c1.82-.72,3.69-1.29,5.6-1.71h0Z'/%3E%3Cpath fill='%23d0e5c9' d='M11.79,41c1.58-1.97,2.45-4.42,2.47-6.95v-.1c0-1.21.47-2.37,1.33-3.22h0c.85-.86,2.01-1.33,3.22-1.33h8.27c2.51,0,4.54,2.04,4.55,4.55v.46c.02,2.39.83,4.71,2.29,6.6,2.31-.54,4.53-1.37,6.64-2.46,4.25-2.3,5.14-4.84,5.14-6.57,0-3-2.65-5.71-7.45-7.65-9.95-3.57-20.83-3.57-30.79,0-2.02.74-3.86,1.88-5.44,3.34C.78,28.76.06,30.31,0,31.96,0,33.69.9,36.24,5.16,38.54c2.1,1.09,4.33,1.91,6.63,2.45Z'/%3E%3Cpath fill='%23d0e5c9' d='M23.02,63.85c6.78-.12,12.18-5.71,12.07-12.49,0-.01,0-.02,0-.03-.07-2.85-1.12-5.59-2.99-7.74-2.24-2.54-3.49-5.8-3.51-9.18v-.46c0-.83-.67-1.5-1.5-1.5,0,0,0,0,0,0h-8.27c-.83,0-1.5.67-1.5,1.5,0,0,0,0,0,0v.1c-.02,3.5-1.32,6.86-3.65,9.47-4.47,5.08-3.98,12.82,1.1,17.28,2.28,2.01,5.22,3.09,8.26,3.05h0Z'/%3E%3C/svg%3E%0A");margin-left:15.3125rem;top:3.875rem;transform:rotate(-40deg);width:2.875rem}.stage__figure--pacifier::before{padding-bottom:139.7461151237%}.stage__figure--dices{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 69.2 72.68'%3E%3Cpath fill='%23d0e5c9' d='m31.17 21.26 4.17-1.58-4.31-4.88.14 6.46Z'/%3E%3Cpath fill='%23d0e5c9' d='M52.14 26 42.52 1.58a2.674 2.674 0 0 0-3.3-1.44L14.79 9.77a2.535 2.535 0 0 0-1.44 3.29v.01l9.77 24.42a2.535 2.535 0 0 0 3.29 1.44h.01l24.28-9.62a2.535 2.535 0 0 0 1.44-3.29v-.01Zm-10.63-2.73c-.16.31-.41.56-.72.72a.83.83 0 0 1-.57.14c-.29 0-.43 0-.57-.14s-.43-.29-.57-.43l-.57-.58-1.29-1.44-5.74 2.15v2.01c.02.58-.02 1.16-.14 1.72-.16.31-.41.56-.72.72-.37.14-.78.14-1.15 0-.31-.16-.56-.41-.72-.72-.14-.14-.14-.29-.14-.58-.14-.29-.14-.58-.29-.86V14.35c-.02-.39.03-.78.14-1.15l.43-.86c.58-.45 1.28-.7 2.01-.72a2 2 0 0 1 .86.29c.3.11.55.31.72.57l.86.86 7.18 7.61c.41.37.75.8 1.01 1.29.14.32.14.69 0 1.01ZM18.39 57.75c-.75-.41-1.59-.61-2.44-.58h-3.16v4.31h3.3c2.01 0 3.02-.72 3.02-2.15.11-.62-.17-1.25-.71-1.58ZM17.24 54.87c.45-.12.82-.44 1.01-.86.16-.31.26-.65.29-1.01.01-.6-.32-1.16-.86-1.44-.78-.29-1.61-.44-2.44-.43H12.8v4.02h2.73a7.2 7.2 0 0 0 1.72-.29Z'/%3E%3Cpath fill='%23d0e5c9' d='M28.73 41.37H2.59A2.565 2.565 0 0 0 0 43.93v26.16c0 1.42 1.14 2.58 2.56 2.59h26.16c1.42 0 2.58-1.14 2.59-2.56V43.95c0-1.42-1.14-2.58-2.56-2.59h-.03Zm-7.18 20.4c-.43.63-1.03 1.12-1.72 1.44-.48.28-1.03.42-1.58.43-.72 0-1.29.14-2.01.14h-4.6c-.58.14-1.01 0-1.44-.72-.29-.42-.44-.92-.43-1.44v-11.2c-.01-.52.14-1.02.43-1.44.42-.29.92-.44 1.44-.43h5.03c.63-.02 1.25.02 1.87.14.51.1 1 .3 1.44.57l.86.86c.25.35.44.74.58 1.15.12.42.17.86.14 1.29 0 1.47-.92 2.78-2.3 3.3 1.76.27 3.06 1.81 3.02 3.59-.02.82-.27 1.62-.72 2.3ZM67.37 41.23l-25.28-6.75c-1.39-.34-2.79.49-3.16 1.87l-6.75 25.28c-.36 1.38.45 2.79 1.83 3.15h.04l25.28 6.75c1.38.36 2.79-.45 3.15-1.83v-.04l6.61-25.28a2.53 2.53 0 0 0-1.72-3.15Zm-9.34 9.91c-.06.32-.27.59-.57.72-.3.19-.66.24-1.01.14-.3 0-.58-.16-.72-.43-.21-.36-.35-.74-.43-1.15-.14-.73-.43-1.41-.86-2.01-.46-.5-1.06-.85-1.72-1.01-1.12-.4-2.38-.18-3.3.57a6.617 6.617 0 0 0-2.15 3.74c-.32.92-.41 1.91-.29 2.87.07.74.37 1.45.86 2.01.55.43 1.19.72 1.87.86 1.55.52 3.26-.07 4.17-1.44.14-.43.43-.57.72-.86.3-.19.67-.24 1.01-.14.32.06.59.27.72.57.19.3.24.67.14 1.01-.15.52-.39 1-.72 1.44-.37.54-.86.98-1.44 1.29-.65.43-1.38.73-2.15.86-.92.05-1.84-.05-2.73-.29-.7-.15-1.37-.39-2.01-.72-.58-.3-1.12-.69-1.58-1.15-.51-.43-.9-.97-1.15-1.58-.21-.56-.36-1.13-.43-1.72a9.03 9.03 0 0 1-.14-2.01c.02-.73.12-1.45.29-2.15a9.61 9.61 0 0 1 1.29-3.02c.57-.81 1.31-1.5 2.15-2.01.81-.44 1.68-.73 2.59-.86.97-.05 1.93.05 2.87.29 1.05.27 2.03.76 2.87 1.44.8.66 1.35 1.57 1.58 2.59.37.65.47 1.43.28 2.15Z'/%3E%3C/svg%3E%0A");margin-left:21.75rem;top:1.25rem;transform:rotate(24deg);width:4.375rem}.stage__figure--dices::before{padding-bottom:105.0289017341%}.stage__wrap{background-color:#fcf9d6;margin:0 auto;max-width:90rem;padding-bottom:1.6956521739em;position:relative;z-index:1}.stage__wrap::before{background-color:#fff;content:"";display:block;left:0;padding-bottom:16.3888888889%;position:absolute;right:0;top:0;width:100%;z-index:-1}.stage--small .stage__wrap::before{padding-bottom:13.4722222222%}.stage__row{position:relative;z-index:0}.stage__row::after,.stage__row::before{background-color:#9fd18d;content:"";position:absolute;width:.125rem}.stage__row::before{height:21.875rem;left:8.3333333333%;top:0;z-index:-1}@media print,screen and (min-width:62em){.stage__row::before{bottom:2.5rem;top:auto}}.stage__row::after{height:14.0625rem;right:8.3333333333%;top:-6.5625rem;z-index:10}.stage__col--shrink{align-self:flex-end;flex:0 1 16.6666666667%}.stage__col--figure{flex:0 0 83.3333333333%;max-width:83.3333333333%}.stage--small .stage__col--figure{margin-bottom:calc(var(--tl-font-size-h1) * 1.5)}.stage__service{margin:1.875rem 0;position:relative;width:calc(300% + 5rem);z-index:10}.stage--small .stage__service{margin:3.75rem 0 0}@media print,screen and (max-width:35.99875em){.stage__service{width:calc(350% + 6.25rem)}}@media print,screen and (min-width:48em){.stage__service{width:calc(200% + 3.75rem)}}@media print,screen and (min-width:75em){.stage__service{width:calc(150% + 2.5rem)}}.stage__service li{letter-spacing:.2em;background-color:#fff;border-radius:2em;display:block;font-weight:700;padding:.5rem .75rem .5rem 1.375rem;text-transform:uppercase}.stage__service li:not(:last-child){margin-bottom:1rem}.stage__service li::before{content:none}.stage__image{height:100%;margin:0;object-fit:cover}.stage__quote{flex:0 0 66.6666666667%;max-width:66.6666666667%;color:#9fd18d;line-height:1.3913043478;margin-bottom:1.0434782609em;margin-top:.8347826087em;padding-bottom:.5em;position:relative;text-align:center}.stage__quote::before{content:none}.stage__quote .feedback__cite,.stage__quote cite{bottom:0;opacity:.8;position:absolute;right:0}.teaser__row{padding-right:.625rem;padding-left:.625rem}.teaser__col{padding-right:.625rem;padding-left:.625rem}.teaser__item{background-position:center;background-repeat:no-repeat;background-size:cover;color:inherit;display:block;margin-bottom:1.25rem;position:relative;text-decoration:none}@media print,screen and (max-width:61.99875em){.teaser__item{padding:6.25rem 0}}.teaser__item::before{content:"";display:block;width:100%}@media print,screen and (min-width:62em){.teaser__item::before{padding-bottom:122.311827957%}}.teaser__title{letter-spacing:.18em;background:#9fd18d;border-radius:2em;color:#fff;left:50%;line-height:1.33;max-width:25rem;padding:.5rem 1rem;position:absolute;text-align:center;text-transform:uppercase;top:50%;transform:translate3d(-50%,-50%,0);transition:margin .1s,box-shadow .1s;width:74%}.teaser__item:focus .teaser__title,.teaser__item:hover .teaser__title{box-shadow:4px 4px 0 #cfe8c6;margin:-.25rem 0 0 -.25rem}.banner__content{border:3px solid #fcf9d6;border-radius:12.5rem;padding:3.125rem 3.125rem 2.5rem;text-align:center}.banner__content p:last-child{margin-bottom:0}.banner__header{color:#444}.button{letter-spacing:.22em;display:inline-block;vertical-align:middle;margin:.5rem 0;padding:.625rem 1.25rem .75rem;border:1px solid transparent;border-radius:0;transition:border .1s,color .1s,background .1s ease-in-out,box-shadow .3s ease-in-out;font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-size:1rem;font-weight:bolder;-webkit-appearance:none;line-height:1;text-align:center;cursor:pointer;background-color:#9fd18d;border-radius:2em;color:#fff;cursor:pointer}[data-whatinput=mouse] .button{outline:0}.button:not(:last-child){margin-right:.625rem}.button--light{background-color:#e5e3c0;color:#777}.button:active,.button:focus,.button:hover{background-color:#777;color:#fff;outline:0;text-decoration:none}.button[href^=mailto]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.button[disabled],.button[readonly]{background-color:#fcf9d6;color:#e5e3c0;cursor:not-allowed}.button[disabled]:active,.button[disabled]:focus,.button[disabled]:hover,.button[readonly]:active,.button[readonly]:focus,.button[readonly]:hover{background-color:#fcf9d6;color:#e5e3c0}.feedback__text{background-image:linear-gradient(90deg,#ddd 33%,#fff 0);background-position:bottom;background-repeat:repeat-x;background-size:4px 2px;width:100%}.feedback__date{color:#777;display:block;font-size:.875rem;font-style:italic}.feedback__pages{display:flex;justify-content:flex-end;margin:1.875rem 0 0}.feedback__pages li{display:block;flex:0 0 atuo;margin-left:.3125rem;padding:0;width:auto}.feedback__pages li::before{content:none}.feedback__page{align-items:center;border:1px solid #9fd18d;border-radius:50%;color:#9fd18d;cursor:pointer;display:flex;font-size:.875rem;height:1.5625rem;justify-content:center;text-align:center;width:1.5625rem}.feedback__page--active,.feedback__page:focus,.feedback__page:hover{background-color:#9fd18d;color:#fff}.frame{position:relative}.frame-space--before-none{border-top:1px solid transparent;margin-top:-1px;padding-top:0}.frame-space--before-fourth{padding-top:1.875rem}.frame-space--before-half{padding-top:1.875rem}@media print,screen and (min-width:62em){.frame-space--before-half{padding-top:3.75rem}}.frame-space--before-full{padding-top:3.75rem}@media print,screen and (min-width:62em){.frame-space--before-full{padding-top:7.5rem}}.frame-space--after-full{padding-bottom:3.75rem}@media print,screen and (min-width:62em){.frame-space--after-full{padding-bottom:7.5rem}}.frame-space--after-half{padding-bottom:1.875rem}@media print,screen and (min-width:62em){.frame-space--after-half{padding-bottom:3.75rem}}.frame-space--after-fourth{padding-bottom:1.875rem}.frame-space--after-none{padding-bottom:0}.frame-pull-adjacent{padding-bottom:0!important}.frame-pull-adjacent+.frame{padding-top:3.75rem}@media print,screen and (min-width:62em){.frame-pull-adjacent+.frame{padding-top:7.5rem}}.frame-layout-horse{position:relative}.frame-layout-horse::before{background-image:url(../Img/horse.svg);background-position:right;background-repeat:no-repeat;background-size:contain;bottom:100%;display:block;height:10.9375rem;left:0;margin:auto;max-width:100%;position:absolute;right:0;width:75rem;z-index:2}@media print,screen and (min-width:62em){.frame-layout-horse::before{content:""}}.frame-layout-pacifier{position:relative}.frame-layout-pacifier::before{background-image:url(../Img/pacifier.svg);background-position:right;background-repeat:no-repeat;background-size:contain;bottom:100%;display:block;height:10.9375rem;left:0;margin:auto;max-width:100%;position:absolute;right:0;width:75rem;z-index:2}@media print,screen and (min-width:62em){.frame-layout-pacifier::before{content:""}}.frame-layout-dices{position:relative}.frame-layout-dices::before{background-image:url(../Img/dices.svg);background-position:right;background-repeat:no-repeat;background-size:contain;bottom:100%;display:block;height:10.9375rem;left:0;margin:auto;max-width:100%;position:absolute;right:0;width:75rem;z-index:2}@media print,screen and (min-width:62em){.frame-layout-dices::before{content:""}}.frame-layout-wagon{position:relative}.frame-layout-wagon::before{background-image:url(../Img/wagon.svg);background-position:right;background-repeat:no-repeat;background-size:contain;bottom:100%;display:block;height:10.9375rem;left:0;margin:auto;max-width:100%;position:absolute;right:0;width:75rem;z-index:2}@media print,screen and (min-width:62em){.frame-layout-wagon::before{content:""}}.frame-layout-teddy{position:relative}.frame-layout-teddy::before{background-image:url(../Img/teddy.svg);background-position:right;background-repeat:no-repeat;background-size:contain;bottom:100%;display:block;height:10.9375rem;left:0;margin:auto;max-width:100%;position:absolute;right:0;width:75rem;z-index:2}@media print,screen and (min-width:62em){.frame-layout-teddy::before{content:""}}.frame-layout-bottle{position:relative}.frame-layout-bottle::before{background-image:url(../Img/bottle.svg);background-position:right;background-repeat:no-repeat;background-size:contain;bottom:100%;display:block;height:10.9375rem;left:0;margin:auto;max-width:100%;position:absolute;right:0;width:75rem;z-index:2}@media print,screen and (min-width:62em){.frame-layout-bottle::before{content:""}}.frame-layout-teddy::before{background-position:left}.frame-layout-bottle::before{background-position:left}.frame__header{padding-right:1.25rem;padding-left:1.25rem;margin:auto;max-width:100%;width:75rem}@media print,screen and (min-width:48em){.frame__header{width:62.5rem}}@media print,screen and (min-width:62em){.frame__header{width:50rem}}.ce-above .frame__header,.ce-below .frame__header,.ce-intext .frame__header{padding-left:0;padding-right:0}.ce-text,.ce-textpic{max-width:75rem;margin-right:auto;margin-left:auto;display:flex;flex-flow:row wrap;justify-content:center;margin-bottom:-3.125rem}.ce-bodytext{flex:0 0 100%;max-width:100%;padding-right:1.25rem;padding-left:1.25rem;align-self:center;margin-bottom:1.875rem;position:relative}@media print,screen and (min-width:48em){.ce-intext .ce-gallery+.ce-bodytext{flex:0 0 58.3333333333%;max-width:58.3333333333%}}@media print,screen and (min-width:62em){.ce-intext .ce-gallery+.ce-bodytext{flex:0 0 33.3333333333%;max-width:33.3333333333%}}@media print,screen and (min-width:62em){.ce-center .ce-bodytext{flex:0 0 66.6666666667%;max-width:66.6666666667%}}.ce-right .ce-bodytext{order:-1}.ce-below .ce-bodytext{order:-1}.ce-row{margin-right:-1.25rem;margin-left:-1.25rem;display:flex;flex-flow:row wrap;padding-left:.9375rem;padding-right:.9375rem}@media print,screen and (min-width:36em){.ce-row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:48em){.ce-row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:62em){.ce-row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:75em){.ce-row{margin-right:-1.25rem;margin-left:-1.25rem}}@media print,screen and (min-width:87.5em){.ce-row{margin-right:-1.25rem;margin-left:-1.25rem}}.ce-row+.ce-row{margin-top:1.25rem}.ce-above [data-ce-columns] .ce-row,.ce-below [data-ce-columns] .ce-row{margin-bottom:-1.25rem}.ce-column{flex:0 0 100%;max-width:100%;padding-right:.3125rem;padding-left:.3125rem}[data-ce-columns] .ce-column{margin-bottom:1.25rem}[data-ce-columns] .ce-column:last-child:not(:first-child){margin-bottom:0}@media print,screen and (min-width:48em){[data-ce-columns] .ce-column{flex:1 1 0px;min-width:50%}}@media print,screen and (min-width:48em){[data-ce-columns] .ce-column{min-width:25%}}.ce-gallery{flex:0 0 100%;max-width:100%;padding-right:1.25rem;padding-left:1.25rem;margin-bottom:1.875rem}@media print,screen and (min-width:48em){.ce-intext .ce-gallery{flex:0 0 33.3333333333%;max-width:33.3333333333%}}@media print,screen and (min-width:62em){.ce-center .ce-gallery{flex:0 0 66.6666666667%;max-width:66.6666666667%}}.frame-pull-adjacent+.frame .ce-intext .ce-gallery{margin-top:-6.5625rem;position:relative;z-index:2}@media print,screen and (min-width:62em){.frame-pull-adjacent+.frame .ce-intext .ce-gallery{margin-top:-10.3125rem}}.ce-gallery img{margin:0}.ce-gallery.ce-border img{border:1px solid #ddd}.ce-subheader{letter-spacing:.14em;color:#444;display:block;font-family:FiraSans,Muli,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-size:1.0625rem;font-weight:400;line-height:1.375rem;margin-top:.25rem}.ce-subheader--above{margin:0 0 .125rem}.ce-table{overflow-x:auto}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsImFic3RyYWN0L192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZm9ybXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZmxleC1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsInBhcnRpYWxzL19mb250cy5zY3NzIiwicGFydGlhbHMvX3R5cG8uc2NzcyIsImFic3RyYWN0L19taXhpbnMuc2NzcyIsInBhcnRpYWxzL19sYXlvdXQuc2NzcyIsIi4uL2NvbXBvbmVudC9oZWFkZXIvaGVhZGVyLnNjc3MiLCIuLi9jb21wb25lbnQvbmF2bWFpbi9uYXZtYWluLnNjc3MiLCIuLi9jb21wb25lbnQvZm9vdGVyL2Zvb3Rlci5zY3NzIiwiLi4vY29tcG9uZW50L3RyaWdnZXIvdHJpZ2dlci5zY3NzIiwiLi4vY29tcG9uZW50L3N0YWdlL3N0YWdlLnNjc3MiLCIuLi9jb21wb25lbnQvdGVhc2VyL3RlYXNlci5zY3NzIiwiLi4vY29tcG9uZW50L2Jhbm5lci9iYW5uZXIuc2NzcyIsIi4uL2NvbXBvbmVudC9idXR0b24vYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vY29tcG9uZW50L2ZlZWRiYWNrL2ZlZWRiYWNrLnNjc3MiLCIuLi9jb21wb25lbnQvZnJhbWUvZnJhbWUuc2NzcyIsIi4uL2NvbXBvbmVudC9jZS9jZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJpQkFHRSw0RUFRQSxLQUNFLFlBQUEsS0FDQSx5QkFBQSxLQVFGLEtBQ0UsT0FBQSxFQU1GLEdBQ0UsVUFBQSxJQUNBLE9BQUEsTUFBQSxFQVNGLEdBQ0UsV0FBQSxZQUNBLE9BQUEsRUFDQSxTQUFBLFFBTUYsSUFDRSxZQUFBLFNBQUEsQ0FBQSxVQUNBLFVBQUEsSUFRRixFQUNFLGlCQUFBLFlBTUYsWUFDRSxjQUFBLEVBQ0EsZ0JBQUEsVUFBQSxPQUtGLEVBQUEsT0FFRSxZQUFBLE9BTUYsS0FBQSxJQUFBLEtBR0UsWUFBQSxTQUFBLENBQUEsVUFDQSxVQUFBLElBS0YsTUFDRSxVQUFBLElBTUYsSUFBQSxJQUVFLFVB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Q3hCRixXQVBRLE9EMkJOLGVDcENGLFlBUlEsUURnRE4sb0JDeEJGLFdBUFEsUURxQ1IscUJDL0NBLGdCQWhCUSxPQWlCUixZQVJRLE9Ed0ROLGNBQUEsT0FNRSxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRVRzRVQsYUFBQSw0QlNyRUYsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEdUc0VULGFBQUEsNEJTckVGLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxHVHNFVCxhQUFBLDRCU3JFRixZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsR1RzRVQsYUFBQSw0QlNyRUYsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEVBQ1gsWUNoQ0osTUQrQmUsRUFDWCxZQ2hDSixNRCtCZSxFQUNYLFlDaENKLE1EK0JlLEdUc0VULGFBQUEsOEJTckVGLGFDaENKLE1EK0JlLEVBQ1gsYUNoQ0osTUQrQmUsRUFDWCxhQ2hDSixNRCtCZSxFQUNYLGFDaENKLE1EK0JlLEVBQ1gsYUNoQ0osTUQrQmUsRUFDWCxhQ2hDSixNRCtCZSxHQTVGZixnQkNZQSxRQUFBLEtEUkEsaUJBQ0UsS0FBQSxFQUFBLEVBQUEsS0FHRixpQkFDRSxLQUFBLEVBQUEsRUFBQSxLQUdGLG1CQUNFLEtBQUEsRUFBQSxFQUFBLEtBSUEsY0NzREYsZUFwRW1CLElEY2pCLHNCQ3NERixlQXBFbUIsWURj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TixjQUFBLFMzQndGQSxhQUFBLDRCMkJ0RkEsdUJ0QnVCTixLQUFBLEVBQUEsRUFBQSxlQUlFLFVBQUEsZ0JMMkRJLGFBQUEsNEIyQmhGQSx1QnRCaUJOLEtBQUEsRUFBQSxFQUFBLGVBSUUsVUFBQSxnQnNCZkksbURBQ0ksV0FBQSxXQUNBLFNBQUEsU0FDQSxRQUFBLEUzQnVFSixhQUFBLDRCMkIxRUEsbURBTVEsV0FBQSxhQUlSLGdCQUNJLE9BQUEsRUFHSiwwQkFDSSxPQUFBLElBQUEsTUFBQSxLQUlSLGNibkhBLGVBQUEsTWFxSEksTUFBQSxLQUNBLFFBQUEsTUFDQSxZdkM3RFcsUUFBQSxDQUFBLElBQUEsQ0FBQSxVQUFBLElBQUEsQ0FBQSxTQUFBLENBQUEsTUFBQSxDQUFBLEtBQUEsQ0FBQSxXdUM4RFgsVUFBQSxVQUNBLFlBQUEsSUFDQSxZQUFBLFNBQ0EsV0FBQSxPQUVBLHFCQUNJLE9BQUEsRUFBQSxFQUFBLFFBSVIsVUFDSSxXQUFBIiwiZmlsZSI6InNjcmVlbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIFwicHJpbWFyeVwiOiAjMTc3OWJhLFxuICBcInNlY29uZGFyeVwiOiAjNzY3Njc2LFxuICBcInN1Y2Nlc3NcIjogIzNhZGI3NixcbiAgXCJ3YXJuaW5nXCI6ICNmZmFlMDAsXG4gIFwiYWxlcnRcIjogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHNhZmUgcGFkZGluZyBvbiB0aGUgYm9keSBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRldmljZXMgKGkuZS4gcGhvbmVzIHdpdGggbm90Y2hlcylcbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1zYWZlLXBhZGRpbmc6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiR1bml0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuIGRpdmlkZSgkbnVtLCAkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogZGl2aWRlKCRiYXNlLCAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEBpZiAkdW5pdC13YXJuaW5ncyB7XG4gICAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgfVxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogZGl2aWRlKHN0cmlwLXVuaXQoJHZhbHVlKSwgc3RyaXAtdW5pdCgkYmFzZSkpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiBkaXZpZGUoJGJhc2UsIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBkaXZpZGUoc3RyaXAtdW5pdCgkdmFsdWUpLCBzdHJpcC11bml0KCRiYXNlKSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuIGRpdmlkZSgkdmFsdWUsIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuLyoqXG4gKiB2YXJpYWJsZXMuc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjAuMVxuICovXG5AdXNlICdzYXNzOm1hcCc7XG5cbi8qKlxuICogQ29sb3JzXG4gKiBodHRwczovL2NoaXIuYWcvcHJvamVjdHMvbmFtZS10aGF0LWNvbG9yL1xuICovXG5cbi8qIEBjb2xvciAqL1xuJGNvbG9yczogKFxuICAgICdiZXJ5bCc6ICNlNWUzYzAsXG4gICAgJ2JsYWNrJzogIzAwMCxcbiAgICAnZ3JleS0zMDAnOiAjZGRkLFxuICAgICdncmV5LTQwMCc6ICM3NzcsXG4gICAgJ2dyZXktNzAwJzogIzQ0NCxcbiAgICAnbW9zcyc6ICM5ZmQxOGQsXG4gICAgJ3BlYXJsJzogI2ZjZjlkNixcbiAgICAnd2hpdGUnOiAjZmZmLFxuICAgICd6YW5haCc6ICNjZmU4YzZcbik7XG4vKiAvQGNvbG9yICovXG5cbi8qKlxuICogQnJlYWtwb2ludHNcbiAqL1xuJHBvaW50czogKFxuICAgIHhzOiAwLFxuICAgIHNtOiA1NzYsXG4gICAgbWQ6IDc2OCxcbiAgICBsZzogOTkyLFxuICAgIHhsOiAxMjAwLFxuICAgIHh4bDogMTQwMFxuKTtcblxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICAgIHhzOiA0MFxuKSAhZGVmYXVsdDtcblxuJGJyZWFrcG9pbnQtY2xhc3NlczogbWFwLmtleXMoJHBvaW50cykgIWRlZmF1bHQ7XG5cbi8qIE1lcmdlIGJyZWFrcG9pbnRzICovXG4kYnJlYWtwb2ludHM6IG1hcC5tZXJnZShcbiAgICAkcG9pbnRzLFxuICAgIChcbiAgICAgICAgc21hbGw6IG1hcC5nZXQoJHBvaW50cywgeHMpLFxuICAgICAgICBtZWRpdW06IG1hcC5nZXQoJHBvaW50cywgbWQpLFxuICAgICAgICBsYXJnZTogbWFwLmdldCgkcG9pbnRzLCBsZyksXG4gICAgKVxuKSAhZGVmYXVsdDtcblxuJGdyaWQtY29sdW1uLWFsaWFzOiBmYWxzZSAhZGVmYXVsdDtcbiQtemYtemVyby1icmVha3BvaW50OiB4cyAhZGVmYXVsdDtcblxuLyoqXG4gKiBTcGVjc1xuICovXG4kYm9keS1mb250LWNvbG9yOiBjb2xvcignZ3JleS03MDAnKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWNvbG9yOiBjb2xvcignZ3JleS03MDAnKSAhZGVmYXVsdDtcblxuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLWtleXdvcmQtY2FzZSAqL1xuJGJvZHktZm9udC1mYW1pbHk6IE11bGksICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRoZXJvLWZvbnQtZmFtaWx5OiBGaXJhU2FucywgI3skYm9keS1mb250LWZhbWlseX07XG5cbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA3MDAgIWRlZmF1bHQ7XG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiByZW0tY2FsYygyNikgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1icC12YWx1ZTogbnVsbDtcblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6IGRpdmlkZSgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycyksICRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogI3skcmdifVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRpKSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWUgb3IgKCRtZWRpYS1xdWVyaWVzID09ICdmb3ItbGlzdHMnIGFuZCAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdCkpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRicC12YWx1ZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgICAgQGlmICRicC12YWx1ZSAhPSBudWxsIHtcbiAgICAgICAgJG5hbWU6ICRicC12YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAqIDAuNSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEdsb2JhbCBzcGFjaW5nIGZvciBmb3JtIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG5AaW1wb3J0ICd0ZXh0JztcbkBpbXBvcnQgJ2NoZWNrYm94JztcbkBpbXBvcnQgJ2xhYmVsJztcbkBpbXBvcnQgJ2hlbHAtdGV4dCc7XG5AaW1wb3J0ICdpbnB1dC1ncm91cCc7XG5AaW1wb3J0ICdmaWVsZHNldCc7XG5AaW1wb3J0ICdzZWxlY3QnO1xuQGltcG9ydCAncmFuZ2UnO1xuQGltcG9ydCAncHJvZ3Jlc3MnO1xuQGltcG9ydCAnbWV0ZXInO1xuQGltcG9ydCAnZXJyb3InO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybS10ZXh0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybS1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tZXJyb3I7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nICogMC41ICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkLWZyb20taGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGQtZnJvbS1oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNvZGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNvZGUtaW5saW5lOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jaXRlLWJsb2NrOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJbmxpbmUgQ2l0YXRpb25zXG4gIEBpZiAoJGVuYWJsZS1jaXRlLWJsb2NrID09IHRydWUpIHtcbiAgICBjaXRlIHtcbiAgICAgIC8vIEV4dGVuZGluZyBhIGNsYXNzIGlzIG5vdCByZWNvbW1lbmRlZC5cbiAgICAgIC8vIFRPRE86IEJyZWFrIHRoZSB0eXBvZ3JhcGh5LWJhc2UvdHlwb2dyYXBoeS1oZWxwZXJzIHNlcGFyYXRpb25cbiAgICAgIEBleHRlbmQgJWNpdGUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBAaWYgKCRlbmFibGUtY29kZS1pbmxpbmUgPT0gdHJ1ZSkge1xuICAgIGNvZGUge1xuICAgICAgQGV4dGVuZCAlY29kZS1pbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiQtemYtc2l6ZTogbnVsbDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBcInNtYWxsXCI6IDAsXG4gIFwibWVkaXVtXCI6IDY0MHB4LFxuICBcImxhcmdlXCI6IDEwMjRweCxcbiAgXCJ4bGFyZ2VcIjogMTIwMHB4LFxuICBcInh4bGFyZ2VcIjogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgXCJoaWRwaS0xXCI6IDEsXG4gIFwiaGlkcGktMS01XCI6IDEuNSxcbiAgXCJoaWRwaS0yXCI6IDIsXG4gIFwicmV0aW5hXCI6IDIsXG4gIFwiaGlkcGktM1wiOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtIGRpdmlkZSgxLCAkc3RkLXdlYi1kcGkpLCAtemYtYnAtdG8tZW0oJGJwLW5leHQpIC0gMC4wMDEyNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIG1pbiBhbmQgbWF4IGxpbWl0cy5cbiAgQGlmICRoaWRwaSB7XG4gICAgLy8gR2VuZXJhdGUgdmFsdWVzIGluIERQSSBpbnN0ZWFkIG9mIERQUFggZm9yIGFuIElFOS0xMS9PcGVyYSBtaW5pIGNvbXBhdGliaWxpdHkuXG4gICAgLy8gU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgICAkYnAtbWluLWRwaTogaWYoJGJwLW1pbiwgJGJwLW1pbiAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1taW4pO1xuICAgICRicC1tYXgtZHBpOiBpZigkYnAtbWF4LCAkYnAtbWF4ICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1heCk7XG4gICAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgsICctd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8nLCAnLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvJyksXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLWRwaSwgJGJwLW1heC1kcGksICdtaW4tcmVzb2x1dGlvbicsICdtYXgtcmVzb2x1dGlvbicpLFxuICAgICAgJywgJyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCk7XG4gIH1cbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBhbmQgYCRicmVha3BvaW50cy1oaWRwaWAgbWFwcywgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIElmIG11bHRpcGxlIHZhbHVlcyBhcmUgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBnZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciBlYWNoIG9mIHRoZW0gYXMgZGVzY3JpYmVkIGFib3ZlLlxuLy8vIFNpbmNlIHRoZSBjb250ZW50IGlzIGR1cGxpY2F0ZWQgZm9yIGVhY2ggYnJlYWtwb2ludCwgdGhpcyBtaXhpbiBzaG91bGQgb25seSBiZSB1c2VkIHdpdGggcHJvcGVydGllcyB0aGF0XG4vLy8gY2hhbmdlIGFjcm9zcyBicmVha3BvaW50cy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZXMuLi4gLSBCcmVha3BvaW50IG5hbWUgb3IgcHgvcmVtL2VtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZXMuLi4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHZhbHVlcykge1xuICAgICR2YWx1ZTogbnRoKCR2YWx1ZXMsICRpKTtcbiAgICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsIG50aCgkdmFsdWUsIDEpKTtcbiAgICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcbiAgICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAgICRkaXI6IGlmKGxlbmd0aCgkdmFsdWUpID4gMSwgbnRoKCR2YWx1ZSwgMiksIHVwKTtcblxuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAgIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAgIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICAgIC8vIGdlbmVyYXRlIHByaW50IGlmIHRoZSBicmVha3BvaW50IGFmZmVjdHMgdGhlIHByaW50LWJyZWFrcG9pbnQgKG9yIHNtYWxsZXIpLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGUgY3VycmVudCBjb25kaXRpb24gb25seSBuZWVkcyB0byBiZSBleHRlbmRlZCBzbyAnZG93bicgYWx3YXlzIGdlbmVyYXRlcyBwcmludC5cbiAgICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgKCRicCA8PSAkcGJwIG9yICRkaXIgPT0gZG93bikge1xuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBudW1iZXIgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgbnVtYmVyIGZvbGxvd2luZyBgJG51bWJlcmAsIGlmIGAkbnVtYmVyYCB3YXMgZm91bmQuIElmIGAkbnVtYmVyYCB3YXMgbm90IGZvdW5kLCBvciBgJG51bWJlcmAgd2FzIHRoZSBiaWdnZXN0IG51bWJlciBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQtbnVtYmVyKCRtYXAsICRudW1iZXIpIHtcblxuICAkbmV4dC1udW1iZXI6IG51bGw7XG5cbiAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSAnbnVtYmVyJyBhbmQgJHYgPiAkbnVtYmVyIGFuZCAoJG5leHQtbnVtYmVyID09IG51bGwgb3IgJHYgPCAkbmV4dC1udW1iZXIpIHtcbiAgICAgICRuZXh0LW51bWJlcjogJHY7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV4dC1udW1iZXI7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmQta2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kLWtleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmQta2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8vIFJldHVybiB0aGUgYmVzdCBicmVha3BvaW50IHRvIHVzZSBhY2NvcmRpbmcgdG8gdGhlIGNhbGxpbmcgY29udGV4dC4gSXQgcmV0dXJucyBpbiBvcmRlcjpcbi8vLyAxLiB0aGUgZ2l2ZW4gYCR2YWx1ZWAgYXJndW1lbnQgaWYgaXQgaXMgbm90IG51bGwuXG4vLy8gMi4gdGhlIGdsb2JhbCBicmVha3BvaW50IGNvbnRleHQgYCQtemYtc2l6ZWAgaWYgaXQgaXMgbm90IG51bGwgKGxpa2UgaWYgY2FsbGVkIGluc2lkZSB0aGVuIGBicmVha3BvaW50KClgIG1peGluKVxuLy8vIDMuIHRoZSBnaXZlbiBgJGRlZmF1bHRgIGFyZ3VtZW50LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgaW4gcHJpb3JpdHkgaWYgbm9uLW51bGwuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGVmYXVsdCBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBieSBkZWZhdWx0IGlmIG5vIG90aGVyIHZhbHVlIGNhbiBiZSB1c2VkLlxuLy8vXG4vLy8gQHJldHVybiB7S2V5d29yZH0gVGhlIHJlc29sdmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkdmFsdWU6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gIEBpZiAoJHZhbHVlICE9IG51bGwpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICBAZWxzZSBpZiAodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgIEByZXR1cm4gJC16Zi1zaXplO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRkZWZhdWx0O1xuICB9XG59XG5cbi8vLyBSZXR1cm4gbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gdGhlIGdpdmVuIG1pbiBhbmQvb3IgbWF4IGxpbWl0cy5cbi8vLyBJZiBhIGxpbWl0IGlzIGVxdWFsIHRvIGBudWxsYCBvciBgMGAsIGl0IGlzIGlnbm9yZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1pbiBbMF0gLSBNaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggWzBdIC0gTWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWluLW5hbWUgWydtaW4td2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRlbGltaXRlciBbJ21heC13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gTWVkaWEgUXVlcnkgc3RyaW5nLlxuQGZ1bmN0aW9uIC16Zi1icC1qb2luKFxuICAkbWluOiAwLFxuICAkbWF4OiAwLFxuICAkbWluLW5hbWU6ICdtaW4td2lkdGgnLFxuICAkbWF4LW5hbWU6ICdtYXgtd2lkdGgnXG4pIHtcbiAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICBpZigkbWluIGFuZCAkbWluID4gMCwgJygjeyRtaW4tbmFtZX06ICN7JG1pbn0pJywgbnVsbCksXG4gICAgaWYoJG1heCBhbmQgJG1heCA+IDAsICcoI3skbWF4LW5hbWV9OiAjeyRtYXh9KScsIG51bGwpLFxuICAgICcgYW5kICcpO1xufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kcHJpbWFyeS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzdWNjZXNzLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6IGRpdmlkZSgkcmdiLCAyNTUpO1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsIGRpdmlkZSgkcmdiLCAxMi45MiksIHBvdyhkaXZpZGUoJHJnYiArIDAuMDU1LCAxLjA1NSksIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86IGRpdmlkZSgkbHVtaW5hbmNlMSwgJGx1bWluYW5jZTIpO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IGRpdmlkZSgxLCAkcmF0aW8pO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgKiAwLjE7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuICdDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fSc7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiB1bmRlciB0aGUgYC5jb2RlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY29kZS1ibG9jay1tYXJnaW4tYm90dG9tOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBjaXRlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkY2l0ZS1jb2xvcjtcbiAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICB9XG59XG5cbi8vLyBBZGQgYmFzaWMgc3R5bGVzIGZvciBhIGNvZGUgaGVscGVyLlxuLy8vIFNlZSBgY29kZS1pbmxpbmVgIGFuZCBgY29kZS1ibG9ja2AgbWl4aW5zLlxuQG1peGluIGNvZGUtc3R5bGUge1xuICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gaW5saW5lLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWlubGluZWBcbkBtaXhpbiBjb2RlLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGEgYmxvY2suXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtYmxvY2tgXG5AbWl4aW4gY29kZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcblxuICBwYWRkaW5nOiAkY29kZS1ibG9jay1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkY29kZS1ibG9jay1tYXJnaW4tYm90dG9tO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAlY2l0ZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY2l0ZS1ibG9jaztcbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAZXh0ZW5kICVjaXRlLWJsb2NrO1xuICB9XG5cbiAgJWNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAZXh0ZW5kICVjb2RlLWlubGluZTtcbiAgfVxuXG4gIC5jb2RlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtYmxvY2s7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIC8vIEVuc3VyZSBhIFwiYmxhY2stb24td2hpdGVcIiBwcmludCBieSByZW1vdmluZyBiYWNrZ3JvdW5kcyxcbiAgICAgIC8vIHVzaW5nIGJsYWNrIHRleHQgZXZlcnl3aGVyZSBhbmQgZm9yY2luZyB0aGUgYnJvd3NlciB0byBlY29ub21pemUgaW5rLlxuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICAgIHByaW50LWNvbG9yLWFkanVzdDogZWNvbm9teTtcbiAgICAgIH1cbiAgICAgIC8vIE90aGVyd2lzZSwgcHJldmVudCBhbnkgZWNvbm9teSBieSB0aGUgYnJvd3Nlci5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBoYXZlIHJvdyB3cmFwcGluZyBiZWhhdmlvciBzZXQgdG8gbm93cmFwXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycyB3aWR0aC4gU2VlIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyYCBtaXhpbi5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uKFxuICAkY29sdW1uczogZXhwYW5kLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIC8vIEJhc2UgcHJvcGVydGllc1xuICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBleHBhbmQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGJsb2NrIGdyaWQgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBjb2x1bW5zIHRvIGRpc3BsYXkgb24gZWFjaCByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciAtIFNlbGVjdG9yIHRvIHVzZSB0byB0YXJnZXQgY29sdW1ucyB3aXRoaW4gdGhlIHJvdy5cbkBtaXhpbiBmbGV4LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICRwY3Q6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRuKSk7XG5cbiAgICBmbGV4OiAwIDAgJHBjdDtcbiAgICBtYXgtd2lkdGg6ICRwY3Q7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHdpZHRoIGZsZXggZ3JpZCBjb2x1bW4uXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBmbGV4LWdyaWQtc2l6ZSgkY29sdW1uczogbnVsbCkge1xuICAkY29sdW1uczogJGNvbHVtbnMgb3IgZXhwYW5kO1xuXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1ncmlkIHtcbiAgLy8gUm93XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG5cbiAgICAvLyBOZXN0aW5nIGJlaGF2aW9yXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbmRvIG5lZ2F0aXZlIG1hcmdpbnNcbiAgICAvLyBGcm9tIGNvbGxhcHNlZCBjaGlsZFxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuY29sdW1uIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uO1xuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC5jb2x1bW4ucm93LnJvdyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1sYXlvdXQoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLy8gU2l6aW5nIChleHBhbmQpXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAuI3skLXpmLXNpemV9LWV4cGFuZCB7XG4gICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEF1dG8tc3RhY2tpbmcvdW5zdGFja2luZ1xuICAgICAgQGF0LXJvb3QgKHdpdGhvdXQ6IG1lZGlhKSB7XG4gICAgICAgIC5yb3cuI3skLXpmLXNpemV9LXVuc3RhY2sge1xuICAgICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKDEwMCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS1jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNpemluZyAoc2hyaW5rKVxuICAuc2hyaW5rIHtcbiAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKHNocmluayk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIC5jb2x1bW5zIHtcbiAgICBAZXh0ZW5kIC5jb2x1bW47IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAqIDAuNSAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpICogMC41O1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKGRpdmlkZSgkcG9zaXRpb24sICRncmlkLWNvbHVtbi1jb3VudCkpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuXG4gIC8vIENlbnRlciBwb3NpdGlvbmluZ1xuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBcImNlbnRlclwiIG9yIFwiYXV0b1wiLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oYXV0byk7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pIHtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gMC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIDAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRGFyayBNb2RlIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIElFMTArIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLnNob3ctZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1pZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gU3RpY2t5IFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaXMtc3R1Y2sgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcbi8qKlxuICogZm9udHMuc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjAuMVxuICovXG5cbi8qIEZpcmFTYW5zLUJvb2sgLSByZWd1bGFyICovXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1mYW1pbHk6IEZpcmFTYW5zO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHNyYzogbG9jYWwoJycpLFxuICAgICAgICAgdXJsKCcuLi9Gb250cy9maXJhLXNhbnMvRmlyYVNhbnMtQm9vay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogQ2hyb21lIDI2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KyAqL1xuICAgICAgICAgdXJsKCcuLi9Gb250cy9maXJhLXNhbnMvRmlyYVNhbnMtQm9vay53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cbn1cblxuLyogTXVsaSAtIGxpZ2h0ICovXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1mYW1pbHk6IE11bGk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgc3JjOiBsb2NhbCgnJyksXG4gICAgICAgICB1cmwoJy4uL0ZvbnRzL211bGkvTXVsaS1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogQ2hyb21lIDI2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KyAqL1xuICAgICAgICAgdXJsKCcuLi9Gb250cy9tdWxpL011bGktTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovXG59XG5cbi8qIE11bGkgLSByZWd1bGFyICovXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgZm9udC1mYW1pbHk6IE11bGk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgc3JjOiBsb2NhbCgnJyksXG4gICAgICAgICB1cmwoJy4uL0ZvbnRzL211bGkvTXVsaS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogQ2hyb21lIDI2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KyAqL1xuICAgICAgICAgdXJsKCcuLi9Gb250cy9tdWxpL011bGkud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovXG59XG5cbi8qIE11bGkgLSBpdGFsaWMgKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBmb250LWZhbWlseTogTXVsaTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBzcmM6IGxvY2FsKCcnKSxcbiAgICAgICAgIHVybCgnLi4vRm9udHMvbXVsaS9NdWxpLUl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogQ2hyb21lIDI2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KyAqL1xuICAgICAgICAgdXJsKCcuLi9Gb250cy9tdWxpL011bGktSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xufVxuXG4vKiBNdWxpIC0gYm9sZCAqL1xuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIGZvbnQtZmFtaWx5OiBNdWxpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHNyYzogbG9jYWwoJycpLFxuICAgICAgICAgdXJsKCcuLi9Gb250cy9tdWxpL011bGktQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogQ2hyb21lIDI2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KyAqL1xuICAgICAgICAgdXJsKCcuLi9Gb250cy9tdWxpL011bGktQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cbn1cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcbi8qKlxuICogdHlwby5zY3NzXG4gKlxuICogQHBhY2thZ2UgVElMREFcbiAqIEB2ZXJzaW9uIDAuMC4xXG4gKi9cbkB1c2UgJ3Nhc3M6bWFwJztcblxuJGNvbG9yczogbWFwLm1lcmdlKFxuICAgICRjb2xvcnMsXG4gICAgKFxuICAgICAgICBwcmltYXJ5OiBjb2xvcignbW9zcycpLFxuICAgICAgICBzZWNvbmRhcnk6IGNvbG9yKCd6YW5haCcpLFxuICAgICAgICBhbGVydDogI2ZmNzA3MCxcbiAgICAgICAgc3VjY2VzczogIzhiYjMxZCxcbiAgICApXG4pICFnbG9iYWw7XG5cbiRmb3VuZGF0aW9uLXBhbGV0dGU6IG1hcC5tZXJnZSgkZm91bmRhdGlvbi1wYWxldHRlLCAkY29sb3JzKTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiAkaGVyby1mb250LWZhbWlseSAhZ2xvYmFsO1xuJGJ1dHRvbi1mb250LXdlaWdodDogYm9sZGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1tYXJnaW46ICRnbG9iYWwtbWFyZ2luICogLjUgMCAhZ2xvYmFsO1xuJGJ1dHRvbi1wYWRkaW5nOiByZW0tY2FsYygxMCAyMCAxMikgIWdsb2JhbDtcbiRidXR0b24tcmFkaXVzOiAwICFnbG9iYWw7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJvcmRlciAxMDBtcywgY29sb3IgMTAwbXMsIGJhY2tncm91bmQgMTAwbXMgZWFzZS1pbi1vdXQsXG4gICAgYm94LXNoYWRvdyAzMDBtcyBlYXNlLWluLW91dCAhZ2xvYmFsO1xuXG4kYnV0dG9uLXNpemVzOiAoXG4gICAgZGVmYXVsdDogcmVtLWNhbGMoMTYpLFxuKSAhZ2xvYmFsO1xuXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG5cbiRoZWFkZXItc3R5bGVzOiAoXG4gICAgeHM6IChcbiAgICAgICAgJ2gxJzogKFxuICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDI2LFxuICAgICAgICAgICAgJ2xpbmUtaGVpZ2h0JzogMS4yLFxuICAgICAgICApLFxuICAgICAgICAnaDInOiAoXG4gICAgICAgICAgICAnZm9udC1zaXplJzogMjYsXG4gICAgICAgICAgICAnbGluZS1oZWlnaHQnOiAxLjIsXG4gICAgICAgICksXG4gICAgICAgICdoMyc6IChcbiAgICAgICAgICAgICdmb250LXNpemUnOiAyNCxcbiAgICAgICAgICAgICdsaW5lLWhlaWdodCc6IDEuMixcbiAgICAgICAgKSxcbiAgICAgICAgJ2g0JzogKFxuICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDIwLFxuICAgICAgICAgICAgJ2xpbmUtaGVpZ2h0JzogMS4yLFxuICAgICAgICApLFxuICAgICAgICAnaDUnOiAoXG4gICAgICAgICAgICAnZm9udC1zaXplJzogMTgsXG4gICAgICAgICAgICAnbGluZS1oZWlnaHQnOiAxLjIsXG4gICAgICAgICksXG4gICAgICAgICdoNic6IChcbiAgICAgICAgICAgICdmb250LXNpemUnOiAxOCxcbiAgICAgICAgICAgICdsaW5lLWhlaWdodCc6IDEuMixcbiAgICAgICAgKSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICAgICdoMSc6IChcbiAgICAgICAgICAgICdmb250LXNpemUnOiA0NixcbiAgICAgICAgICAgICdsaW5lLWhlaWdodCc6IDEsXG4gICAgICAgICksXG4gICAgICAgICdoMic6IChcbiAgICAgICAgICAgICdmb250LXNpemUnOiA0MCxcbiAgICAgICAgICAgICdsaW5lLWhlaWdodCc6IDEsXG4gICAgICAgICksXG4gICAgICAgICdoMyc6IChcbiAgICAgICAgICAgICdmb250LXNpemUnOiAzMCxcbiAgICAgICAgICAgICdsaW5lLWhlaWdodCc6IDEsXG4gICAgICAgICksXG4gICAgICAgICdoNCc6IChcbiAgICAgICAgICAgICdmb250LXNpemUnOiAyMCxcbiAgICAgICAgICAgICdsaW5lLWhlaWdodCc6IDEsXG4gICAgICAgICksXG4gICAgKSxcbikgIWdsb2JhbDtcblxuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2U7XG5cbi50ZXh0IHtcbiAgICAmLS1sZWFkIHtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoMjUpO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMzAgLyAyNCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xufVxuXG5oMSwgLmgxIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIGZvbnQ6IHtcbiAgICAgICAgZmFtaWx5OiAkaGVyby1mb250LWZhbWlseTtcbiAgICAgICAgd2VpZ2h0OiA0MDA7XG4gICAgfVxufVxuXG5oMiwgLmgyIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRoZXJvLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5oMywgLmgzIHtcbiAgICBmb250LWZhbWlseTogJGhlcm8tZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbmg0LCAuaDQge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuaDUsIC5oNSAsIGg2LCAuaDYge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6YWN0aXZlLCAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBjb2xvcignZ3JleS03MDAnKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBjb2xvcignYmVyeWwnKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG5ibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI1O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyNSkgMCByZW0tY2FsYygzMik7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICBpbWFnZTogdXJsKFxuICAgICAgICAgICAgICAgIFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc2My4xNDUnIGhlaWdodD0nNTQuMTI3JyUzRSUzQ3BhdGggZD0nbTYyLjkgNTAuOTc4LTYuOTM5LTEyLjU0NmEyNS4yMjQgMjUuMjI0IDAgMCAwIDIuNzA4LTExLjM2OEM1OC42NjkgMTIuMTE3IDQ1LjUzNi4wMDEgMjkuMzM2LjAwMVMwIDEyLjExNyAwIDI3LjA2M3MxMy4xMzMgMjcuMDYzIDI5LjMzMyAyNy4wNjNhMzAuOTcyIDMwLjk3MiAwIDAgMCAxNi4xMTgtNC40NWwxNS4xODkgNC4xNjlhMS45OCAxLjk4IDAgMCAwIDIuMjU3LTIuODY4Wk0yNS44MyAzMy41NTJhOC4wODQgOC4wODQgMCAwIDEtNi42MzYgMi45ODYgMi4wMTkgMi4wMTkgMCAxIDEgMC00LjAzNyA0LjA0NCA0LjA0NCAwIDAgMCAzLjQ2LTEuNDQxIDcuNSA3LjUgMCAwIDAgMS4yODgtMy43ODZIMTguOWExLjUxNCAxLjUxNCAwIDAgMS0xLjUxNC0xLjUxNHYtNi41MWExLjUxNCAxLjUxNCAwIDAgMSAxLjUxNC0xLjUxNGg2LjUxYTIuMTkgMi4xOSAwIDAgMSAxLjk2MSAxLjU2NCAyOC44NzUgMjguODc1IDAgMCAxIC42OCA1LjExNWMuMTcyIDMuOTY4LS41NzggNy4wNDEtMi4yMjMgOS4xMzdabTEzLjk2MyAwYTguMDgzIDguMDgzIDAgMCAxLTYuNjM2IDIuOTg2IDIuMDE5IDIuMDE5IDAgMCAxIDAtNC4wMzcgNC4wNDMgNC4wNDMgMCAwIDAgMy40Ni0xLjQ0MSA3LjQ5NCA3LjQ5NCAwIDAgMCAxLjI4OC0zLjc4NmgtNS4wMzZhMS41MTQgMS41MTQgMCAwIDEtMS41MTQtMS41MTR2LTYuNTFhMS41MTQgMS41MTQgMCAwIDEgMS41MTQtMS41MTRoNi41MUEyLjE5IDIuMTkgMCAwIDEgNDEuMzQgMTkuM2EyOC45MDYgMjguOTA2IDAgMCAxIC42OCA1LjExNWMuMTY2IDMuOTY4LS41ODQgNy4wNDEtMi4yMjkgOS4xMzdaJyBmaWxsPSdcIiArIGJhc2U2NCgnemFuYWgnKSArIFwiJy8lM0UlM0Mvc3ZnJTNFXCJcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBwb3NpdGlvbjogbGVmdCB0b3AgNXB4O1xuICAgICAgICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBzaXplOiAxZW07XG4gICAgICAgIH1cbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjIpO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHdpZHRoOiAxLjVlbTtcbiAgICB9XG5cbiAgICBjaXRlIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdncmV5LTQwMCcpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjc1ZW07XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnLSAnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyBjaXRlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5waWN0dXJlIHtcbiAgICBAYXQtcm9vdCBpbWcsXG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDEpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4vLyBvdmVyd3JpdGU6IGxpbmUgNzIsIGJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3ZlbmRvci9ub3JtYWxpemUuc2Nzc1xuYiwgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbn1cblxudWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKC0xNSk7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxub2wge1xuICAgIGNvdW50ZXItcmVzZXQ6IG9yZGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBsaSB7XG4gICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlcjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBjb250ZW50OiBjb3VudGVycyhvcmRlciwgJy4nKSAnLiAnO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiByZW0tY2FsYygtMjApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb2wge1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcnMob3JkZXIsICcuJykgJyAnO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiByZW0tY2FsYygtMzApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG50YWJsZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICBtYXJnaW46ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAqIDI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKCdiZXJ5bCcpO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxufVxuXG50ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKCdiZXJ5bCcpO1xufVxuXG50ZCwgdGgge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyIDE1KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAvKlxuICAgICAqIHN0cmV0Y2ggY2VsbHMgd2l0aG91dCB3aGl0ZXNwYWNlXG4gICAgICovXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiA4ZW07XG4gICAgfVxufVxuXG50aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJ2JlcnlsJyk7XG59XG5cbmRsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcignYmVyeWwnKTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignYmVyeWwnKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTIgMTUpO1xuICAgIH1cbn1cblxuZGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMiAxNSk7XG5cbiAgICAmICsgJiB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcignYmVyeWwnKTtcbiAgICB9XG59XG5cbmhyIHtcbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgIGltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDJTNGeG1sIHZlcnNpb249JzEuMCcgZW5jb2Rpbmc9J1VURi04JyUzRiUzRSUzQ3N2ZyBpZD0nRWJlbmVfMScgZGF0YS1uYW1lPSdFYmVuZSAxJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NC4wMSA1NC4wMSclM0UlM0NkZWZzJTNFJTNDc3R5bGUlM0UgLmNscy0xICU3QiBmaWxsOiAlMjNhMGNkOGQ7IHN0cm9rZS13aWR0aDogMHB4OyAlN0QgJTNDL3N0eWxlJTNFJTNDL2RlZnMlM0UlM0NwYXRoIGNsYXNzPSdjbHMtMScgZD0nTTI3LjAxLDBDMTIuMSwwLC4wMSwxMi4wOS4wMSwyN3MxMi4wOSwyNywyNywyNywyNy0xMi4wOSwyNy0yN1M0MS45MywwLDI3LjAxLDBaTTMzLjc3LDE1LjMzYy45NSwwLDEuNzIuOTEsMS43MiwyLjAzcy0uNzcsMi4wMy0xLjcyLDIuMDMtMS43Mi0uOTEtMS43Mi0yLjAzLjc3LTIuMDMsMS43Mi0yLjAzWk0zMC4wOSwxMi42NWMxLjE0LDAsMi4wNiwxLjA5LDIuMDYsMi40NHMtLjkyLDIuNDQtMi4wNiwyLjQ0LTIuMDYtMS4wOS0yLjA2LTIuNDQuOTItMi40NCwyLjA2LTIuNDRaTTI0LjE4LDEwLjE4YzEuOTIuMDQsMy40NywxLjU5LDMuNDksMy41Mi4wMywxLjk3LTEuNTUsMy41OC0zLjUyLDMuNjEtLjA0LDAtLjA4LDAtLjExLDAtMS45MS0uMDgtMy40LTEuNy0zLjMyLTMuNjEsMC0xLjkyLDEuNTQtMy40OCwzLjQ2LTMuNTFaTTM1LjU4LDMxLjA4Yy0xLjEsNC4zNS0zLjQsOC4zMS02LjY0LDExLjQxLTIuMSwyLTUuMDIsMi44Ny03Ljg3LDIuMzUtMi41LS40MS00LjAzLTIuNTItNC4wMy01LjUxLS4wOS0xLjkyLjg3LTMuNzUsMi41MS00Ljc2LjM4LS4yNi43Ny0uNTIsMS4xNC0uNzksMi4xNC0xLjYxLDIuNDQtMy41NiwxLjA0LTUuODUtLjY4LTEtMS4xOS0yLjEtMS41Mi0zLjI2LTEuMS00LjksMS44Ny03LjM0LDYuMTItNy4xNCw1LjEzLjI0LDguMTcsMy40Miw5LjQ5LDcuOTEuNDYsMS44Ny4zOCwzLjgzLS4yNCw1LjY0Wk0zNC43LDIwLjM3YzAtLjk1LjY2LTEuNzMsMS40Ni0xLjczczEuNDYuNzcsMS40NiwxLjczLS42NiwxLjczLTEuNDYsMS43My0xLjQ2LS43Ny0xLjQ2LTEuNzNaTTM3LjUyLDI1LjE3Yy0uNzIsMC0xLjMtLjY5LTEuMy0xLjU0cy41OC0xLjU0LDEuMy0xLjU0LDEuMy42OSwxLjMsMS41NC0uNTgsMS41NC0xLjMsMS41NFonLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgIHBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBzaXplOiBjb250YWluO1xuICAgIH1cbiAgICBib3JkZXI6IHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBzdHlsZTogc29saWQ7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDM1KTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoIC0gcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgfVxufVxuXG5pZnJhbWUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIG1peGlucy5zY3NzXG4gKlxuICogQHBhY2thZ2UgVElMREFcbiAqIEB2ZXJzaW9uIDAuMC4xXG4gKi9cblxuQG1peGluIGxldHRlci1zcGFjaW5nKCR2YWx1ZSkge1xuICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKCR2YWx1ZSAvIDEwMDApICogMWVtO1xufVxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuLyoqXG4gKiBsYXlvdXQuc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjAuMVxuICovXG5AdXNlICdzYXNzOm1hcCc7XG5cbjpyb290IHtcbiAgICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgICAgICAtLXRsLWNvbG9yLSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJG5hbWUsICRzdHlsZSBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkc3R5bGUge1xuICAgICAgICAgICAgICAgIC0tdGwtZm9udC1zaXplLSN7JGtleX06ICN7cmVtLWNhbGMobWFwLmdldCgkdmFsdWUsICdmb250LXNpemUnKSl9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LCBodG1sIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zaXRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuLyoqXG4gKiBoZWFkZXIuc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjAuMlxuICogRGF0ZTogMjAyMi0xMi0wOVxuICovXG4kc2VsZjogJy5oZWFkZXInO1xuXG4jeyRzZWxmfSB7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTAwbXMsIGJveC1zaGFkb3cgMTAwbXM7XG4gICAgei1pbmRleDogMTAwO1xuXG4gICAgJi0tZml4ZWQsXG4gICAgJi0tc29saWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignd2hpdGUnKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdibGFjaycpO1xuICAgIH1cblxuICAgICYtLWZpeGVkIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiKDAgMCAwIC8gMTUlKTtcbiAgICB9XG5cbiAgICAmX19yb3cge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMiAwKTtcbiAgICB9XG5cbiAgICAmX19jb2wge1xuICAgICAgICAmLS1zaHJpbmsge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyO1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ub3NocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JyYW5kIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDM2IC8gNDYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC02IC8gNDYpICogMWVtO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRoZXJvLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgc2l6ZTogcmVtLWNhbGMoMjYuNSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygzNiAvIDQ2KSAqIDFlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMik7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIG5hdm1haW4uc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjAuMlxuICogRGF0ZTogMjAyMi0xMi0wOVxuICovXG4kc2VsZjogJy5uYXZtYWluJztcblxuI3skc2VsZn0ge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQgZG93bikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcigncGVhcmwnKTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDY1IDApO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKSBzY2FsZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHRyYW5zZm9ybSwgdmlzaWJpbGl0eTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0O1xuICAgIH1cblxuICAgIC5kb21yZWFkeSAmIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLCB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbiwgdmlzaWJpbGl0eSAyNTBtcyBlYXNlLWluO1xuICAgIH1cblxuICAgIFtkYXRhLW1lbnVdICYge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGVZKDEpO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIFtkYXRhLWRlbGF5XSAmIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoMjAwKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20gZG93bikge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MzRweCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1kIGRvd24pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNzM0IDE3OSclM0UlM0NwYXRoIGQ9J003MzIgMGMtNzYuNCA5Ni43LTE4OCAxNTkuMi0zMTAuMyAxNzMuOC0xOC4zIDIuMS0zNi42IDMuMi01NSAzLjJzLTM2LjctMS4xLTU1LTMuMmMtMzUuNS00LjItNzAuNC0xMi40LTEwMy45LTI0LjZDMTI2LjMgMTE5LjYgNTQuOSA2Ny45IDEuMyAwSDBjNzYuNSA5Ny4yIDE4OC42IDE2MC4xIDMxMS41IDE3NC44IDE4LjMgMi4xIDM2LjcgMy4yIDU1LjEgMy4yczM2LjgtMS4xIDU1LjEtMy4yYzM1LjYtNC4yIDcwLjUtMTIuNSAxMDQuMi0yNC43QzYwNy43IDEyMC40IDY3OS40IDY4LjQgNzMzLjIgMEg3MzJ6JyBmaWxsPSdcIiArIGJhc2U2NCgnYmVyeWwnKSArIFwiJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1YiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGcpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCdwZWFybCcpO1xuICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMoLTIwKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDIwIDIwKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAgICAgI3skc2VsZn1fX2l0ZW0tLXBhcmVudDpob3ZlciAmLFxuICAgICAgICAgICAgI3skc2VsZn1fX2l0ZW0tLXBhcmVudDpmb2N1cyAmIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQgZG93bikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1wYXJlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgI3skc2VsZn1fX3N1YiAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBjb2xvcjogY29sb3IoJ2dyZXktNDAwJyk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKCdncmV5LTcwMCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgI3skc2VsZn1fX2l0ZW0tLXBhcmVudCA+ICYge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNDQ4IDUxMiclM0UlM0MhLS0hIEZvbnQgQXdlc29tZSBQcm8gNi4yLjEgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20gTGljZW5zZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL2xpY2Vuc2UgKENvbW1lcmNpYWwgTGljZW5zZSkgQ29weXJpZ2h0IDIwMjIgRm9udGljb25zLCBJbmMuIC0tJTNFJTNDcGF0aCBkPSdNMjAxLjQgMzc0LjZjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsMTYwLTE2MGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMEwyMjQgMzA2LjcgODYuNiAxNjkuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsMTYwIDE2MHonIGZpbGw9J1wiICsgYmFzZTY0KCdncmV5LTQwMCcpICsgXCInLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogLjhlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgd2lkdGg6IC44ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjeyRzZWxmfV9faXRlbS0tcGFyZW50OmhvdmVyICYsXG4gICAgICAgICN7JHNlbGZ9X19pdGVtLS1wYXJlbnQ6Zm9jdXMgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcigncGVhcmwnKTtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAtMjApO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zdWIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMCk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NhbGwge1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZyg4MCk7XG4gICAgICAgIGNvbG9yOiBjb2xvcignZ3JleS00MDAnKTtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIGZvb3Rlci5zY3NzXG4gKlxuICogQHBhY2thZ2UgVElMREFcbiAqIEB2ZXJzaW9uIDAuMC4yXG4gKiBEYXRlOiAyMDIyLTEyLTA5XG4gKi9cbiRzZWxmOiAnLmZvb3Rlcic7XG5cbiN7JHNlbGZ9IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDczNCAxNzknJTNFJTNDcGF0aCBkPSdNMzY3LjQgMGE0NzMuMjg3IDQ3My4yODcgMCAwIDEgNTUuMTE2IDMuMjI1QTQ2Ni43MTggNDY2LjcxOCAwIDAgMSA3MzQuOCAxNzkuMDA0SDBhNDY2LjYyMyA0NjYuNjIzIDAgMCAxIDIwOC4xMS0xNTEuMUE0NjMuMyA0NjMuMyAwIDAgMSAzMTIuMjg2IDMuMjIyIDQ3My4yMzMgNDczLjIzMyAwIDAgMSAzNjcuNC4wMDRWMCcgZmlsbD0nXCIgKyBiYXNlNjQoJ2JlcnlsJykgKyBcIicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA3MzRweCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICZfX3JvdyB7XG4gICAgICAgICRwb3NpdGlvbjogcGVyY2VudGFnZShjYWxjKDM5MC8xNi91bml0bGVzcy1jYWxjKCRnbG9iYWwtd2lkdGgpKSk7XG5cbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDUgMCAyNSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMTAgMCA0NSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignbW9zcycpO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEyNSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMik7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAneHMnKSAqIC41KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoNTApO1xuICAgICAgICAgICAgICAgIGxlZnQ6ICRwb3NpdGlvbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygtNDApO1xuICAgICAgICAgICAgcmlnaHQ6ICRwb3NpdGlvbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQgZG93bikge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgJ3hzJykgKiAuNSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW5hdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygyMDApO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNhbGwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoNTApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGcpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKCdncmV5LTQwMCcpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQgZG93bikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvcignZ3JleS03MDAnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcbi8qKlxuICogdHJpZ2dlci5zY3NzXG4gKlxuICogQHBhY2thZ2UgVElMREFcbiAqIEB2ZXJzaW9uIDAuMC4yXG4gKiBEYXRlOiAyMDIyLTEyLTA5XG4gKi9cbiRzZWxmOiAnLnRyaWdnZXInO1xuXG4jeyRzZWxmfSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgei1pbmRleDogMTA7XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTQpO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDIgMCk7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygyNSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bCkge1xuICAgICAgICAgICAgbWFyZ2luOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBpLCAmOjpiZWZvcmUsICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCdncmV5LTQwMCcpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyKTtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoNikgMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAyMDBtcywgb3BhY2l0eSAyMDBtcyAyNTBtcyBlYXNlO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwKTtcblxuICAgICAgICAgICAgI3skc2VsZn1fX2J1dHRvbjpob3ZlciAmIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgI3skc2VsZn1fX2J1dHRvbjpob3ZlciAmIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTUwJSwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjAwbXMsIHRvcCAyMDBtcyAyNTBtcyBlYXNlLCB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwJSwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjAwbXMsIGJvdHRvbSAyMDBtcyAyNTBtcyBlYXNlLCB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBbZGF0YS1tZW51XSAmIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjAwbXMsIG9wYWNpdHkgMjAwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJ2dyZXktNDAwJyk7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDIwMG1zLCB0b3AgMjAwbXMgZWFzZSwgdHJhbnNmb3JtIDIwMG1zIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignZ3JleS00MDAnKTtcbiAgICAgICAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKDAsIDUwJSwgMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjAwbXMsIGJvdHRvbSAyMDBtcyBlYXNlLCB0cmFuc2Zvcm0gMjAwbXMgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IobGcpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZXJvLWZvbnQtZmFtaWx5O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zO1xuXG4gICAgICAgIFtkYXRhLW1lbnVdICYge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcbi8qKlxuICogc3RhZ2Uuc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjAuMlxuICogRGF0ZTogMjAyMi0xMi0yM1xuICovXG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOm1hdGgnO1xuXG4kc2VsZjogJy5zdGFnZSc7XG5cbiN7JHNlbGZ9IHtcbiAgICAmX190b3Age1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDczNCAxNzknJTNFJTNDcGF0aCBkPSdNNzMyIDBjLTc2LjQgOTYuNy0xODggMTU5LjItMzEwLjMgMTczLjgtMTguMyAyLjEtMzYuNiAzLjItNTUgMy4ycy0zNi43LTEuMS01NS0zLjJjLTM1LjUtNC4yLTcwLjQtMTIuNC0xMDMuOS0yNC42QzEyNi4zIDExOS42IDU0LjkgNjcuOSAxLjMgMEgwYzc2LjUgOTcuMiAxODguNiAxNjAuMSAzMTEuNSAxNzQuOCAxOC4zIDIuMSAzNi43IDMuMiA1NS4xIDMuMnMzNi44LTEuMSA1NS4xLTMuMmMzNS42LTQuMiA3MC41LTEyLjUgMTA0LjItMjQuN0M2MDcuNyAxMjAuNCA2NzkuNCA2OC40IDczMy4yIDBINzMyeicgZmlsbD0nXCIgKyBiYXNlNjQoJ2JlcnlsJykgKyBcIicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MzRweCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiB7XG4gICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDQ4KTtcbiAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoNzUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGwpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgZGF0YS1uYW1lPSdFYmVuZSAxJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMDE0LjQ1IDE3Ni41JyUzRSUzQ3BhdGggZD0nTTEwMTIuNDEgMGMtMjIuMjYgMTIuMzctNDYuMjUgMjMuOTQtNzEuNzMgMzQuNTZhOTI4Ljg2IDkyOC44NiAwIDAgMS0xMjguMzEgNDIuMjljLTIzLjAxIDUuODQtNDYuOTEgMTEuMDctNzEuMDMgMTUuNTQtMjQuNDIgNC41My00OS42MiA4LjM4LTc0Ljg5IDExLjQ0LTI1LjY2IDMuMTEtNTEuOTggNS40OS03OC4yMiA3LjA2LTI2LjcgMS42LTUzLjk2IDIuNDItODEuMDEgMi40MnMtNTQuMzEtLjgyLTgxLjAxLTIuNDJhMTI5OS42OSAxMjk5LjY5IDAgMCAxLTc4LjIyLTcuMDZjLTI1LjI3LTMuMDctNTAuNDYtNi45Mi03NC44OS0xMS40NC0yNC4xMi00LjQ3LTQ4LjAyLTkuNy03MS4wMy0xNS41NEE5MzAuMjAzIDkzMC4yMDMgMCAwIDEgNzMuNzYgMzQuNTZDNDguMyAyMy45NCAyNC4zMSAxMi4zNyAyLjA1IDBIMGMyMi43MyAxMi43MiA0Ny4yOCAyNC42IDczLjM5IDM1LjQ4IDguNTYgMy41MyAxNy4xNyA2LjkyIDI1LjgzIDEwLjJ2NTcuODJoMVY0Ni4wNmE5MzEuODE2IDkzMS44MTYgMCAwIDAgMTAxLjYxIDMxLjc3YzIzLjAyIDUuODUgNDYuOTQgMTEuMDggNzEuMDkgMTUuNTUgMjQuNDQgNC41MyA0OS42NiA4LjM4IDc0Ljk1IDExLjQ1IDEuNjEuMiAzLjIzLjM4IDQuODUuNTd2NTguMWgxdi01Ny45OWMyMy44MSAyLjc3IDQ4LjE0IDQuOTMgNzIuNDMgNi4zOCAxOC43OCAxLjEzIDM3LjgzIDEuODYgNTYuOTEgMi4ydjYyLjQxaDF2LTYyLjM5YzcuNzIuMTMgMTUuNDUuMjEgMjMuMTYuMjEgMjcuMDggMCA1NC4zNi0uODIgODEuMDctMi40MiAxMy42Ni0uODIgMjcuMzQtMS44NiA0MC45My0zLjExdjYxLjE4aDFWMTA4LjdjMTIuMjEtMS4xMyAyNC4zNS0yLjQxIDM2LjM1LTMuODcgMjUuMjktMy4wNyA1MC41MS02LjkyIDc0Ljk1LTExLjQ1IDcuMTMtMS4zMiAxNC4yNC0yLjcyIDIxLjMxLTQuMTd2NTIuOTJoMVY4OWMxNi41NC0zLjQxIDMyLjg4LTcuMTQgNDguNzgtMTEuMTggMjUuMzgtNi4zNyA1MC40OC0xMy44IDc1LjIyLTIyLjI4Vjk5LjVoMVY1NS4yYTkzMC40MDcgOTMwLjQwNyAwIDAgMCA1Mi4yMi0xOS43MkM5NjcuMTYgMjQuNiA5OTEuNzEgMTIuNzIgMTAxNC40NCAwaC0yLjA0WicgZmlsbD0nXCIgKyBiYXNlNjQoJ2JlcnlsJykgKyBcIicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAxNC40NXB4IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI3MCk7XG4gICAgICAgIH1cblxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JyYW5kIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsKSB7XG4gICAgICAgICAgICBsZWZ0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05ZGVnKTtcblxuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMyOSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19maWd1cmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGcgZG93bikge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS10ZWRkeSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDJTNGeG1sIHZlcnNpb249JzEuMCcgZW5jb2Rpbmc9J1VURi04JyUzRiUzRSUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0MS45NiA2MS44NyclM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nTTIwLjk4LDMyLjA0YzQuMjEuMTcsOC4zMS0xLjM1LDExLjQtNC4yMSw1LjQyLTUuNjgsNS40Mi0xNC42MiwwLTIwLjMtMy4wOS0yLjg3LTcuMTktNC4zOC0xMS40LTQuMjEtNC4yMS0uMTctOC4zMSwxLjM1LTExLjQsNC4yMS01LjQyLDUuNjgtNS40MiwxNC42MiwwLDIwLjMsMy4wOSwyLjg3LDcuMTksNC4zOCwxMS40LDQuMjFoMFpNMjcuNjEsMTQuMzdjLjYxLDAsMS4xLjQ5LDEuMSwxLjEsMCwuNjEtLjQ5LDEuMS0xLjEsMS4xLS42MSwwLTEuMS0uNDktMS4xLTEuMWgwYzAtLjYxLjQ5LTEuMSwxLjEtMS4xaDAsMFpNMTQuMzUsMTQuMzdjLjYxLDAsMS4xLjQ5LDEuMSwxLjEsMCwuNjEtLjQ5LDEuMS0xLjEsMS4xLS42MSwwLTEuMS0uNDktMS4xLTEuMWgwYzAtLjYxLjQ5LTEuMSwxLjEtMS4xaDAsMFpNMTMuMjUsMjAuNDRjLjYxLDAsMS4xLjQ5LDEuMSwxLjEsMCwyLjQ2LDIuMzksNC41MSw1LjUyLDQuOXYtMy41Yy0uMTItLjA2LS4yMy0uMTItLjMzLS4ybC0xLjg4LTEuMzRjLS43LS41MS0xLjExLTEuMzItMS4xLTIuMTgtLjAzLTEuNDMsMS4xMS0yLjYxLDIuNTQtMi42NWgzLjc1YzEuNDMuMDMsMi41NywxLjIxLDIuNTUsMi42NCwwLC44Ni0uNCwxLjY3LTEuMSwyLjE4bC0xLjg4LDEuMzRjLS4xMS4wOC0uMjIuMTQtLjMzLjJ2My41MWMzLjEzLS40LDUuNTItMi40NCw1LjUyLTQuOSwwLS42MS40OS0xLjExLDEuMS0xLjExczEuMTEuNDksMS4xMSwxLjExYzAsMy45Ni0zLjk2LDcuMTgtOC44NCw3LjE4cy04Ljg0LTMuMjItOC44NC03LjE4YzAtLjYxLjQ5LTEuMSwxLjEtMS4xaDBaJy8lM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nTTI4LjkzLDMyLjczYzIuNjIsMy4yOSw0LjA5LDcuMzQsNC4xOSwxMS41NCwyLjEzLjMyLDQuMDcsMS40NCw1LjQxLDMuMTMsMS44OC0uNDMsMy4yNi0yLjAyLDMuNDMtMy45NGwtLjEtMS40MmMtLjQ4LTUuMjctMy43OS05Ljg2LTguNjQtMTEuOTgtMS4yOCwxLjExLTIuNzMsMi4wMS00LjI5LDIuNjdaJy8lM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nTTM3LjAyLDEwLjI5YzIuNjMtMS41NCwzLjUyLTQuOTMsMS45OC03LjU2cy00LjkzLTMuNTItNy41Ni0xLjk4Yy0uODUuNS0xLjU1LDEuMjItMi4wMywyLjA4LDEuNjguNzcsMy4yLDEuODIsNC41MiwzLjExLDEuMjgsMS4yNiwyLjMyLDIuNzMsMy4xLDQuMzRaJy8lM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nTTEyLjU1LDIuODRDMTEuMDYuMTcsNy43LS43OSw1LjAzLjdjLTIuNjcsMS40OC0zLjYzLDQuODUtMi4xNCw3LjUxLjQ4Ljg3LDEuMTksMS41OCwyLjA0LDIuMDguNzctMS42MiwxLjgyLTMuMDksMy4wOS00LjM0LDEuMzItMS4yOSwyLjg1LTIuMzQsNC41Mi0zLjExWicvJTNFJTNDZWxsaXBzZSBmaWxsPSclMjNkMGU1YzknIGN4PSczMi4wNCcgY3k9JzU0LjE0JyByeD0nNi42Mycgcnk9JzcuNzMnLyUzRSUzQ3BhdGggZmlsbD0nJTIzZDBlNWM5JyBkPSdNMzAuOTEsNDQuMjhjLS4wNy0zLjk4LTEuNTgtNy44MS00LjI1LTEwLjc2LTMuNzIuOTctNy42Mi45OC0xMS4zNCwwLTIuNjYsMi45Ni00LjE3LDYuNzgtNC4yNSwxMC43Niw0LjM0LjYzLDcuNzEsNC44MSw3LjcxLDkuODYsMCwxLjYzLS4zNiwzLjI1LTEuMDYsNC43MiwyLjA1LDEuMDcsNC40OSwxLjA3LDYuNTQsMC0uNy0xLjQ3LTEuMDctMy4wOS0xLjA2LTQuNzIsMC01LjA1LDMuMzctOS4yMyw3LjcxLTkuODZoMFonLyUzRSUzQ2VsbGlwc2UgZmlsbD0nJTIzZDBlNWM5JyBjeD0nOS45NCcgY3k9JzU0LjE0JyByeD0nNi42Mycgcnk9JzcuNzMnLyUzRSUzQ3BhdGggZmlsbD0nJTIzZDBlNWM5JyBkPSdNOC44Niw0NC4yN2MuMS00LjIsMS41Ny04LjI1LDQuMTktMTEuNTQtMS41Ny0uNjYtMy4wMi0xLjU2LTQuMzEtMi42OEMzLjg5LDMyLjE4LjU4LDM2Ljc3LjEsNDIuMDRsLS4xLDEuNDJjLjE2LDEuOTMsMS41NiwzLjUzLDMuNDUsMy45NSwxLjM0LTEuNjksMy4yOC0yLjgxLDUuNDEtMy4xNFonLyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTE4MCk7XG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDg0KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzZGVnKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0Mik7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IG1hdGguZGl2KDYxLjg3LCA0MS45NikgKiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0td2Fnb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQyUzRnhtbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCclM0YlM0UlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNTUuNzggNjQuMTEnJTNFJTNDcGF0aCBmaWxsPSclMjNkMGU1YzknIGQ9J001NS43MywyMy4wOGMtLjA1LS4xNC0uMTMtLjI3LS4yMy0uMzhsLS4wOC0uMDcuMDgtLjA4Yy4xLS4xMS4xOC0uMjQuMjItLjM4LjA0LS4xNC4wNS0uMjkuMDMtLjQ0LS4wNC0uMjItLjE2LS40MS0uMzMtLjU1LS4xNy0uMTQtLjM4LS4yMi0uNi0uMjFoLS4wNGMtLjE4LDAtLjM2LjA2LS41MS4xNi0uMjEtMi42Ny0uODktNS4yOS0yLTcuNzIuMTguMDEuMzYtLjAzLjUyLS4xMWwuMDMtLjAyYy4xOS0uMS4zNC0uMjcuNDItLjQ4LjA4LS4yLjA5LS40My4wMi0uNjQtLjA1LS4xNC0uMTMtLjI3LS4yNC0uMzctLjExLS4xLS4yNC0uMTgtLjM4LS4yMmwtLjEtLjAzLjAzLS4xMWMuMDQtLjE0LjA1LS4yOS4wMi0uNDQtLjAzLS4xNS0uMDktLjI4LS4xOC0uNC0uMTQtLjE3LS4zMy0uMjktLjU0LS4zNC0uMjEtLjA1LS40NC0uMDItLjYzLjA5bC0uMDMuMDJjLS4xNi4wOS0uMjkuMjItLjM4LjM3LTEuOTYtMy4xLTQuNjItNS43LTcuNzgtNy41Ni4xNS0uMDkuMjgtLjIzLjM2LS4zOWwuMDItLjA0Yy4xLS4yLjEzLS40Mi4wNy0uNjMtLjA1LS4yMS0uMTctLjQtLjM1LS41My0uMTItLjA5LS4yNi0uMTQtLjQxLS4xNy0uMTUtLjAyLS4zLS4wMS0uNDQuMDNsLS4xLjA0LS4wMy0uMWMtLjA1LS4xNC0uMTMtLjI3LS4yNC0uMzctLjExLS4xLS4yMy0uMTgtLjM4LS4yMy0uMjEtLjA2LS40NC0uMDUtLjY0LjA0LS4yLjA4LS4zNy4yNC0uNDcuNDRsLS4wMi4wM2MtLjA4LjE2LS4xMS4zNC0uMS41MkMzNy41LjYyLDM0LjQ1LDAsMzEuMzgsMCwzMC42MywwLDI5LjkuMDQsMjkuMTcuMTF2MjMuNjdMNDAuNDQsMi4yNGwuNDksMS4zNWMuMDUuMTMuMTkuMi4zMy4xNmwxLjMyLS4zOS0xMy40MSwyMC40MiwyMS41LTEyLjYxLS4zNiwxLjM3Yy0uMDQuMTQuMDQuMjguMTcuMzJsMS40NC40OC0yMi43NSwxMC40NCwyNC43LTIuMjUtLjg4Ljk2Yy0uMS4xLS4xLjI2LDAsLjM2bC44OS45Mkg2LjQ0Yy0uMDMsMTMuMjgsMTAuNzEsMjQuMDYsMjMuOTksMjQuMDksMTMuMTMuMDMsMjMuODUtMTAuNDgsMjQuMDgtMjMuNi4xLjAzLjIuMDUuMzEuMDVoLjA0Yy4yMiwwLC40My0uMDguNi0uMjMuMTctLjE0LjI4LS4zNC4zMS0uNTYuMDItLjE1LDAtLjMtLjA0LS40NE0xMi4xMiwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWk0zMS4zOCwyNi4zMmMwLS4xNy4wNi0uMzMuMTctLjQ2LjExLS4xMy4yNi0uMjIuNDMtLjI1LjExLS4wMi4yMywwLC4zNC4wMi4xMS4wMy4yMS4wOS4yOS4xOGwuMDYuMDYuMDYtLjA2Yy4wOC0uMDguMTgtLjE0LjI5LS4xOC4xMS0uMDMuMjMtLjA0LjM0LS4wMi4xNy4wMy4zMi4xMi40My4yNS4xMS4xMy4xNy4yOS4xNy40NnYuMDNjMCwuMjEtLjA5LjQxLS4yNC41NWwtLjkuODVjLS4wOC4wNy0uMi4wNy0uMjgsMGwtLjktLjg1Yy0uMTUtLjE0LS4yNC0uMzQtLjI0LS41NXYtLjAzWk0yNy4wMSwyNi4zMmMwLS4xNy4wNi0uMzMuMTctLjQ2LjExLS4xMy4yNi0uMjIuNDMtLjI1LjExLS4wMi4yMywwLC4zNC4wMi4xMS4wMy4yMS4wOS4yOS4xOGwuMDYuMDYuMDYtLjA2Yy4wOC0uMDguMTgtLjE0LjI5LS4xOC4xMS0uMDMuMjMtLjA0LjM0LS4wMi4xNy4wMy4zMi4xMi40My4yNS4xMS4xMy4xNy4yOS4xNy40NnYuMDNjMCwuMjEtLjA5LjQxLS4yNC41NWwtLjkuODVjLS4wOC4wNy0uMi4wNy0uMjgsMGwtLjktLjg1Yy0uMTUtLjE0LS4yNC0uMzQtLjI0LS41NXYtLjAzWk0xNi40OCwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWk0yMC44NSwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWk0yMy45MywyNy44Yy0uMDUsMC0uMS0uMDItLjE0LS4wNmwtLjktLjg1Yy0uMTUtLjE0LS4yNC0uMzQtLjI0LS41NXYtLjAzYzAtLjE3LjA2LS4zMy4xNy0uNDYuMTEtLjEzLjI2LS4yMi40My0uMjUuMTEtLjAyLjIzLDAsLjM0LjAyLjExLjAzLjIxLjA5LjI5LjE4bC4wNi4wNi4wNi0uMDZjLjA4LS4wOC4xOC0uMTQuMjktLjE4LjExLS4wMy4yMy0uMDQuMzQtLjAyLjE3LjAzLjMyLjEyLjQzLjI1LjExLjEzLjE3LjI5LjE3LjQ2di4wM2MwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NXMtLjA5LjA2LS4xNC4wNk0zNi44OSwzNi4wMmMwLDEuMDQtLjQzLDIuMDMtMS4yLDIuNzNsLTQuNSw0LjIzYy0uMzkuMzctMS4wMS4zNy0xLjQsMGwtNC41LTQuMjNjLS43Ny0uNy0xLjItMS42OS0xLjItMi43M3YtLjE1YzAtLjg0LjMtMS42Ni44NS0yLjMuNTQtLjY1LDEuMy0xLjA4LDIuMTMtMS4yMy41Ni0uMDgsMS4xMy0uMDQsMS42OC4xMi41NS4xNywxLjA1LjQ3LDEuNDUuODhsLjMuMy4yOC0uM2MuNDEtLjQuOTEtLjcsMS40NS0uODguNTUtLjE3LDEuMTMtLjIxLDEuNy0uMTIuODMuMTUsMS41OC41OCwyLjEzLDEuMjMuNTUuNjQuODUsMS40Ni44NSwyLjN2LjE1Wk0zOC4zMiwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWk00Mi42OSwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWk00Ny4wNSwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWk01MS40MiwyNi4zNWMwLC4yMS0uMDkuNDEtLjI0LjU1bC0uOS44NWMtLjA4LjA3LS4yLjA3LS4yOCwwbC0uOS0uODVjLS4xNS0uMTQtLjI0LS4zNC0uMjQtLjU1di0uMDNjMC0uMTcuMDYtLjMzLjE3LS40Ni4xMS0uMTMuMjYtLjIyLjQzLS4yNS4xMS0uMDIuMjMsMCwuMzQuMDIuMTEuMDMuMjEuMDkuMjkuMThsLjA2LjA2LjA2LS4wNmMuMDgtLjA4LjE4LS4xNC4yOS0uMTguMTEtLjAzLjIzLS4wNC4zNC0uMDIuMTcuMDMuMzIuMTIuNDMuMjUuMTEuMTMuMTcuMjkuMTcuNDZ2LjAzWicvJTNFJTNDcGF0aCBmaWxsPSclMjNkMGU1YzknIGQ9J00yMS40Niw1Mi4xNmMtMy4zLDAtNS45NywyLjY3LTUuOTcsNS45N3MyLjY3LDUuOTcsNS45Nyw1Ljk3LDUuOTctMi42Nyw1Ljk3LTUuOTctMi42Ny01Ljk3LTUuOTctNS45N2gwTTIzLjU1LDU5Ljc5YzAsLjI0LS4yLjQzLS40NC40NGwtMi43Mi4wOWMtLjQ2LjAyLS45LS4xNS0xLjIyLS40OGwtLjA1LS4wNWMtLjI2LS4yNi0uNDItLjYxLS40NS0uOTgtLjAzLS4zNy4wNy0uNzQuMjgtMS4wNC4xNS0uMi4zNC0uMzYuNTYtLjQ4LjIyLS4xMi40Ny0uMTguNzItLjE4aC4xOXYtLjE4YzAtLjI1LjA2LS41LjE3LS43Mi4xMi0uMjIuMjktLjQyLjQ5LS41Ny4zLS4yMS42Ny0uMzEsMS4wNC0uMjguMzcuMDMuNzIuMTkuOTguNDVsLjA1LjA1Yy4zMi4zMi41Ljc3LjQ3LDEuMjJsLS4wOSwyLjcxWicvJTNFJTNDcGF0aCBmaWxsPSclMjNkMGU1YzknIGQ9J00zOS40Myw1Mi4xNmMtMy4zLDAtNS45NywyLjY3LTUuOTcsNS45N3MyLjY3LDUuOTcsNS45Nyw1Ljk3LDUuOTctMi42Nyw1Ljk3LTUuOTctMi42Ny01Ljk3LTUuOTctNS45N2gwTTQxLjc2LDU5Ljc5bC0uMDUuMDVjLS4zMi4zMi0uNzcuNS0xLjIyLjQ4bC0yLjcxLS4wOWMtLjI0LDAtLjQzLS4yLS40NC0uNDRsLS4wOS0yLjcxYy0uMDItLjQ2LjE1LS45LjQ3LTEuMjJsLjA1LS4wNWMuMjYtLjI2LjYxLS40Mi45OC0uNDUuMzctLjAzLjc0LjA3LDEuMDQuMjguMi4xNS4zNy4zNC40OC41Ni4xMi4yMi4xOC40Ny4xOC43MnYuMTloLjE4Yy4yNSwwLC41LjA2LjcyLjE3LjIyLjEyLjQyLjI5LjU3LjQ5LjIxLjMuMzEuNjcuMjgsMS4wNC0uMDMuMzctLjE5LjcyLS40NS45OCcvJTNFJTNDcGF0aCBmaWxsPSclMjNkMGU1YzknIGQ9J00zOC40NSw0OC4xMWMtMS45MS41NS0zLjg4Ljg4LTUuODcuOTdsLTEuODksMS4zMy0xLjg5LTEuMzNjLTEuOTktLjA5LTMuOTYtLjQxLTUuODctLjk3bDUuNTEsMy44OC0yLjExLDEuNDhjLjYuNjMsMS4wOCwxLjM3LDEuNCwyLjE4bDIuOTYtMi4wOCwyLjU4LDEuODJjLjM2LS43OS44Ni0xLjUxLDEuNDktMi4xMmwtMS44Mi0xLjI4LDUuNTEtMy44OFonLyUzRSUzQ3BhdGggZmlsbD0nJTIzZDBlNWM5JyBkPSdNNS4xLDE3LjkxYy0uMjItMS40LTEuNTMtMi4zNS0yLjkzLTIuMTNTLS4xOSwxNy4zMS4wMywxOC43MXMxLjUzLDIuMzUsMi45MywyLjEzYy41My0uMDgsMS4wMy0uMzMsMS40MS0uNzIsMS4zMy40MiwyLjE5LDEuNzEsMi4wNywzLjFoMi4zM2MuMTEtMi40LTEuMzktNC41OC0zLjY3LTUuMzJNMy41LDE5LjA2YzAsLjExLS4wOS4yLS4yLjJsLTEuMjQuMDRjLS4yMSwwLS40MS0uMDctLjU2LS4yMmwtLjAyLS4wMmMtLjEyLS4xMi0uMTktLjI4LS4yMS0uNDUtLjAxLS4xNy4wMy0uMzQuMTMtLjQ3LjA3LS4wOS4xNS0uMTcuMjUtLjIyLjEtLjA1LjIxLS4wOC4zMy0uMDhoLjA5di0uMDhjMC0uMTEuMDMtLjIzLjA4LS4zMy4wNS0uMS4xMy0uMTkuMjItLjI2LjE0LS4xLjMxLS4xNC40OC0uMTMuMTcuMDEuMzMuMDkuNDUuMjFsLjAyLjAyYy4xNS4xNS4yMy4zNS4yMi41NmwtLjA0LDEuMjRaJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC01Mik7XG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDEwMik7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTZkZWcpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDU1KTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogbWF0aC5kaXYoNjQuMTEsIDU1Ljc4KSAqIDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ib3R0bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1Ni45NyA2Ny4zNyclM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nbTE1LjcyIDMwLjUtMi4xNCA0LjI4Yy0uMTIuMjMtLjE4LjQ5LS4xOC43NXYxLjY4aDguMzhhMS42NzUgMS42NzUgMCAwIDEgLjA1IDMuMzVIMTMuNHYzLjM1aDguMzhjLjkzLjAxIDEuNjcuNzcgMS42NSAxLjctLjAxLjkxLS43NSAxLjY0LTEuNjUgMS42NUgxMy40djMuMzVoOC4zOGExLjY3NSAxLjY3NSAwIDAgMSAuMDUgMy4zNUgxMy40djMuMzVoOC4zOGExLjY3NSAxLjY3NSAwIDAgMSAuMDUgMy4zNUgxMy40djEuNjhjMCAyLjc4IDIuMjUgNS4wMiA1LjAzIDUuMDNoMjAuMTFjMi43NyAwIDUuMDItMi4yNSA1LjAzLTUuMDNWMzUuNTNjMC0uMjYtLjA2LS41MS0uMTgtLjc1bC0yLjE0LTQuMjhIMTUuNzJaTTQwLjIxIDIwLjQ1SDE2Ljc1YTMuMzUgMy4zNSAwIDAgMC0zLjM1IDMuMzV2MS42OGMwIC45My43NSAxLjY4IDEuNjcgMS42OGgyNi44MWMuOTMgMCAxLjY4LS43NSAxLjY4LTEuNjd2LTEuNjhjMC0xLjg1LTEuNS0zLjM1LTMuMzUtMy4zNVpNMCA0NS41OGMuMDEgNS44MiA0LjMgMTAuNzQgMTAuMDYgMTEuNTZ2LTMuMzVjLTQuNTMtLjkyLTcuNDYtNS4zNS02LjU0LTkuODhhOC4zOSA4LjM5IDAgMCAxIDYuNTQtNi41NHYtMS44NGMuMDEtLjUyLjEtMS4wNC4yNy0xLjUzQzQuNDUgMzQuNjkuMDIgMzkuNjYgMCA0NS41OFpNNDYuNjUgMzMuOTljLjE3LjQ5LjI2IDEuMDEuMjcgMS41M3YxLjg0YzQuNTMuOTMgNy40NiA1LjM1IDYuNTMgOS44OWE4LjM2NyA4LjM2NyAwIDAgMS02LjUzIDYuNTN2My4zNWM2LjM4LS44OSAxMC44My02Ljc5IDkuOTQtMTMuMTctLjc0LTUuMjYtNC45My05LjM2LTEwLjIxLTkuOThaTTI4LjQ5IDBhMy4zNSAzLjM1IDAgMCAwLTMuMzUgMy4zNXY2Ljk3Yy00LjAxIDAtNy40NSAyLjg0LTguMjIgNi43N2gyMy4xNGE4LjM3NiA4LjM3NiAwIDAgMC04LjIyLTYuNzdWMy4zNWMwLTEuODUtMS41LTMuMzUtMy4zNS0zLjM1WicvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg5NCk7XG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDg0KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIyZGVnKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg1OCk7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IG1hdGguZGl2KDY3LjM3LCA1Ni45NykgKiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tcGFjaWZpZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQyUzRnhtbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCclM0YlM0UlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNDUuNjkgNjMuODUnJTNFJTNDcGF0aCBmaWxsPSclMjNkMGU1YzknIGQ9J00xMS45MSwxOS43OGMtMS02LjA0LDMuMDctMTEuNzQsOS4xMS0xMi43NSw2LjA0LTEsMTEuNzQsMy4wNywxMi43NSw5LjExLjEuNi4xNSwxLjIxLjE1LDEuODIsMCwuNjEtLjA1LDEuMjEtLjE1LDEuODEsMS45MS40MiwzLjc4Ljk5LDUuNiwxLjcxLjA2LjAyLjEyLjA1LjE4LjA3LDIuMzgtOS4yMy0zLjE3LTE4LjY0LTEyLjQtMjEuMDJDMTcuOTItMS44Myw4LjUxLDMuNzIsNi4xMywxMi45NWMtLjczLDIuODItLjczLDUuNzksMCw4LjYxbC4xOC0uMDdjMS44Mi0uNzIsMy42OS0xLjI5LDUuNi0xLjcxaDBaJy8lM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nTTExLjc5LDQxYzEuNTgtMS45NywyLjQ1LTQuNDIsMi40Ny02Ljk1di0uMWMwLTEuMjEuNDctMi4zNywxLjMzLTMuMjJoMGMuODUtLjg2LDIuMDEtMS4zMywzLjIyLTEuMzNoOC4yN2MyLjUxLDAsNC41NCwyLjA0LDQuNTUsNC41NXYuNDZjLjAyLDIuMzkuODMsNC43MSwyLjI5LDYuNiwyLjMxLS41NCw0LjUzLTEuMzcsNi42NC0yLjQ2LDQuMjUtMi4zLDUuMTQtNC44NCw1LjE0LTYuNTcsMC0zLTIuNjUtNS43MS03LjQ1LTcuNjUtOS45NS0zLjU3LTIwLjgzLTMuNTctMzAuNzksMC0yLjAyLjc0LTMuODYsMS44OC01LjQ0LDMuMzRDLjc4LDI4Ljc2LjA2LDMwLjMxLDAsMzEuOTYsMCwzMy42OS45LDM2LjI0LDUuMTYsMzguNTRjMi4xLDEuMDksNC4zMywxLjkxLDYuNjMsMi40NVonLyUzRSUzQ3BhdGggZmlsbD0nJTIzZDBlNWM5JyBkPSdNMjMuMDIsNjMuODVjNi43OC0uMTIsMTIuMTgtNS43MSwxMi4wNy0xMi40OSwwLS4wMSwwLS4wMiwwLS4wMy0uMDctMi44NS0xLjEyLTUuNTktMi45OS03Ljc0LTIuMjQtMi41NC0zLjQ5LTUuOC0zLjUxLTkuMTh2LS40NmMwLS44My0uNjctMS41LTEuNS0xLjUsMCwwLDAsMCwwLDBoLTguMjdjLS44MywwLTEuNS42Ny0xLjUsMS41LDAsMCwwLDAsMCwwdi4xYy0uMDIsMy41LTEuMzIsNi44Ni0zLjY1LDkuNDctNC40Nyw1LjA4LTMuOTgsMTIuODIsMS4xLDE3LjI4LDIuMjgsMi4wMSw1LjIyLDMuMDksOC4yNiwzLjA1aDBaJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDI0NSk7XG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDYyKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MGRlZyk7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDYpO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBtYXRoLmRpdig2My44NSwgNDUuNjkpICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWRpY2VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNjkuMiA3Mi42OCclM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nbTMxLjE3IDIxLjI2IDQuMTctMS41OC00LjMxLTQuODguMTQgNi40NlonLyUzRSUzQ3BhdGggZmlsbD0nJTIzZDBlNWM5JyBkPSdNNTIuMTQgMjYgNDIuNTIgMS41OGEyLjY3NCAyLjY3NCAwIDAgMC0zLjMtMS40NEwxNC43OSA5Ljc3YTIuNTM1IDIuNTM1IDAgMCAwLTEuNDQgMy4yOXYuMDFsOS43NyAyNC40MmEyLjUzNSAyLjUzNSAwIDAgMCAzLjI5IDEuNDRoLjAxbDI0LjI4LTkuNjJhMi41MzUgMi41MzUgMCAwIDAgMS40NC0zLjI5di0uMDFabS0xMC42My0yLjczYy0uMTYuMzEtLjQxLjU2LS43Mi43MmEuODMuODMgMCAwIDEtLjU3LjE0Yy0uMjkgMC0uNDMgMC0uNTctLjE0cy0uNDMtLjI5LS41Ny0uNDNsLS41Ny0uNTgtMS4yOS0xLjQ0LTUuNzQgMi4xNXYyLjAxYy4wMi41OC0uMDIgMS4xNi0uMTQgMS43Mi0uMTYuMzEtLjQxLjU2LS43Mi43Mi0uMzcuMTQtLjc4LjE0LTEuMTUgMC0uMzEtLjE2LS41Ni0uNDEtLjcyLS43Mi0uMTQtLjE0LS4xNC0uMjktLjE0LS41OC0uMTQtLjI5LS4xNC0uNTgtLjI5LS44NlYxNC4zNWMtLjAyLS4zOS4wMy0uNzguMTQtMS4xNWwuNDMtLjg2Yy41OC0uNDUgMS4yOC0uNyAyLjAxLS43MmEyIDIgMCAwIDEgLjg2LjI5Yy4zLjExLjU1LjMxLjcyLjU3bC44Ni44NiA3LjE4IDcuNjFjLjQxLjM3Ljc1LjggMS4wMSAxLjI5LjE0LjMyLjE0LjY5IDAgMS4wMVpNMTguMzkgNTcuNzVjLS43NS0uNDEtMS41OS0uNjEtMi40NC0uNThoLTMuMTZ2NC4zMWgzLjNjMi4wMSAwIDMuMDItLjcyIDMuMDItMi4xNS4xMS0uNjItLjE3LTEuMjUtLjcxLTEuNThaTTE3LjI0IDU0Ljg3Yy40NS0uMTIuODItLjQ0IDEuMDEtLjg2LjE2LS4zMS4yNi0uNjUuMjktMS4wMS4wMS0uNi0uMzItMS4xNi0uODYtMS40NC0uNzgtLjI5LTEuNjEtLjQ0LTIuNDQtLjQzSDEyLjh2NC4wMmgyLjczYTcuMiA3LjIgMCAwIDAgMS43Mi0uMjlaJy8lM0UlM0NwYXRoIGZpbGw9JyUyM2QwZTVjOScgZD0nTTI4LjczIDQxLjM3SDIuNTlBMi41NjUgMi41NjUgMCAwIDAgMCA0My45M3YyNi4xNmMwIDEuNDIgMS4xNCAyLjU4IDIuNTYgMi41OWgyNi4xNmMxLjQyIDAgMi41OC0xLjE0IDIuNTktMi41NlY0My45NWMwLTEuNDItMS4xNC0yLjU4LTIuNTYtMi41OWgtLjAzWm0tNy4xOCAyMC40Yy0uNDMuNjMtMS4wMyAxLjEyLTEuNzIgMS40NC0uNDguMjgtMS4wMy40Mi0xLjU4LjQzLS43MiAwLTEuMjkuMTQtMi4wMS4xNGgtNC42Yy0uNTguMTQtMS4wMSAwLTEuNDQtLjcyLS4yOS0uNDItLjQ0LS45Mi0uNDMtMS40NHYtMTEuMmMtLjAxLS41Mi4xNC0xLjAyLjQzLTEuNDQuNDItLjI5LjkyLS40NCAxLjQ0LS40M2g1LjAzYy42My0uMDIgMS4yNS4wMiAxLjg3LjE0LjUxLjEgMSAuMyAxLjQ0LjU3bC44Ni44NmMuMjUuMzUuNDQuNzQuNTggMS4xNS4xMi40Mi4xNy44Ni4xNCAxLjI5IDAgMS40Ny0uOTIgMi43OC0yLjMgMy4zIDEuNzYuMjcgMy4wNiAxLjgxIDMuMDIgMy41OS0uMDIuODItLjI3IDEuNjItLjcyIDIuM1pNNjcuMzcgNDEuMjNsLTI1LjI4LTYuNzVjLTEuMzktLjM0LTIuNzkuNDktMy4xNiAxLjg3bC02Ljc1IDI1LjI4Yy0uMzYgMS4zOC40NSAyLjc5IDEuODMgMy4xNWguMDRsMjUuMjggNi43NWMxLjM4LjM2IDIuNzktLjQ1IDMuMTUtMS44M3YtLjA0bDYuNjEtMjUuMjhhMi41MyAyLjUzIDAgMCAwLTEuNzItMy4xNVptLTkuMzQgOS45MWMtLjA2LjMyLS4yNy41OS0uNTcuNzItLjMuMTktLjY2LjI0LTEuMDEuMTQtLjMgMC0uNTgtLjE2LS43Mi0uNDMtLjIxLS4zNi0uMzUtLjc0LS40My0xLjE1LS4xNC0uNzMtLjQzLTEuNDEtLjg2LTIuMDEtLjQ2LS41LTEuMDYtLjg1LTEuNzItMS4wMS0xLjEyLS40LTIuMzgtLjE4LTMuMy41N2E2LjYxNyA2LjYxNyAwIDAgMC0yLjE1IDMuNzRjLS4zMi45Mi0uNDEgMS45MS0uMjkgMi44Ny4wNy43NC4zNyAxLjQ1Ljg2IDIuMDEuNTUuNDMgMS4xOS43MiAxLjg3Ljg2IDEuNTUuNTIgMy4yNi0uMDcgNC4xNy0xLjQ0LjE0LS40My40My0uNTcuNzItLjg2LjMtLjE5LjY3LS4yNCAxLjAxLS4xNC4zMi4wNi41OS4yNy43Mi41Ny4xOS4zLjI0LjY3LjE0IDEuMDEtLjE1LjUyLS4zOSAxLS43MiAxLjQ0LS4zNy41NC0uODYuOTgtMS40NCAxLjI5LS42NS40My0xLjM4LjczLTIuMTUuODYtLjkyLjA1LTEuODQtLjA1LTIuNzMtLjI5LS43LS4xNS0xLjM3LS4zOS0yLjAxLS43Mi0uNTgtLjMtMS4xMi0uNjktMS41OC0xLjE1LS41MS0uNDMtLjktLjk3LTEuMTUtMS41OC0uMjEtLjU2LS4zNi0xLjEzLS40My0xLjcyYTkuMDMgOS4wMyAwIDAgMS0uMTQtMi4wMWMuMDItLjczLjEyLTEuNDUuMjktMi4xNWE5LjYxIDkuNjEgMCAwIDEgMS4yOS0zLjAyYy41Ny0uODEgMS4zMS0xLjUgMi4xNS0yLjAxLjgxLS40NCAxLjY4LS43MyAyLjU5LS44Ni45Ny0uMDUgMS45My4wNSAyLjg3LjI5IDEuMDUuMjcgMi4wMy43NiAyLjg3IDEuNDQuOC42NiAxLjM1IDEuNTcgMS41OCAyLjU5LjM3LjY1LjQ3IDEuNDMuMjggMi4xNVonLyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzQ4KTtcbiAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjRkZWcpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDcwKTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogbWF0aC5kaXYoNzIuNjgsIDY5LjIpICogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3dyYXAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcigncGVhcmwnKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTQ0MCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDc4IC8gNDYpICogMWVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogbWF0aC5kaXYoMjM2LCAxNDQwKSAqIDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgICAgICN7JHNlbGZ9LS1zbWFsbCAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogbWF0aC5kaXYoMTk0LCAxNDQwKSAqIDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yb3cge1xuICAgICAgICAkcG9zaXRpb246IG1hdGguZGl2KG1hdGguZGl2KDEwMCwgMTYpLCB1bml0bGVzcy1jYWxjKCRnbG9iYWwtd2lkdGgpKSAqIDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCdtb3NzJyk7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM1MCk7XG4gICAgICAgICAgICBsZWZ0OiAkcG9zaXRpb247XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjI1KTtcbiAgICAgICAgICAgIHJpZ2h0OiAkcG9zaXRpb247XG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0xMDUpO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb2wge1xuICAgICAgICAmLS1zaHJpbmsge1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgICBmbGV4OiAwIDEgZ3JpZC1jb2x1bW4oMilcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWZpZ3VyZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgxMCk7XG5cbiAgICAgICAgICAgICN7JHNlbGZ9LS1zbWFsbCAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXRsLWZvbnQtc2l6ZS1oMSkgKiAxLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2VydmljZSB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzAgMCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzAwJSArICN7cmVtLWNhbGMobWFwLmdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAneHMnKSkgKiAyfSk7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgICN7JHNlbGZ9LS1zbWFsbCAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoNjAgMCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHMgZG93bikge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzUwJSArICN7cmVtLWNhbGMobWFwLmdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAneHMnKSkgKiAyLjV9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDIwMCUgKyAje3JlbS1jYWxjKG1hcC5nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgJ3hzJykpICogMS41fSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxNTAlICsgI3tyZW0tY2FsYyhtYXAuZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsICd4cycpKX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoMjAwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCd3aGl0ZScpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMTIgOCAyMik7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgJl9fcXVvdGUge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSg4KTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdtb3NzJyk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDY0IC8gNDYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDY0IC8gNDYpICogLjc1ZW07XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoNjQgLyA0NikgKiAuNmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBjaXRlIHtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IC44O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIHRlYXNlci5zY3NzXG4gKlxuICogQHBhY2thZ2UgVElMREFcbiAqIEB2ZXJzaW9uIDAuMS4wXG4gKiBEYXRlOiAyMDIyLTEyLTI2XG4gKi9cbkB1c2UgJ3Nhc3M6bWF0aCc7XG5cbiRzZWxmOiAnLnRlYXNlcic7XG5cbiN7JHNlbGZ9IHtcbiAgICAmX19yb3cge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMjApO1xuICAgIH1cblxuICAgICZfX2NvbCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigyMCk7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQgZG93bikge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAwIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBtYXRoLmRpdig0NTUsIDM3MikgKiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygxODApO1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcignbW9zcycpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgICAgIGNvbG9yOiBjb2xvcignd2hpdGUnKTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zMztcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0MDApO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDE2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAgICAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMTAwbXMsIGJveC1zaGFkb3cgMTAwbXM7XG4gICAgICAgIHdpZHRoOiA3NCU7XG5cbiAgICAgICAgI3skc2VsZn1fX2l0ZW06aG92ZXIgJixcbiAgICAgICAgI3skc2VsZn1fX2l0ZW06Zm9jdXMgJiB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiA0cHggNHB4IDAgY29sb3IoJ3phbmFoJyk7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKC00IDAgMCAtNCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIGJhbm5lci5zY3NzXG4gKlxuICogQHBhY2thZ2UgVElMREFcbiAqIEB2ZXJzaW9uIDAuMS4wXG4gKiBEYXRlOiAyMDIzLTAxLTA4XG4gKi9cbiRzZWxmOiAnLmJhbm5lcic7XG5cbiN7JHNlbGZ9IHtcbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgY29sb3IoJ3BlYXJsJyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDIwMCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUwIDUwIDQwKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgfVxufVxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuLyoqXG4gKiBidXR0b24uc2Nzc1xuICpcbiAqIEBwYWNrYWdlIFRJTERBXG4gKiBAdmVyc2lvbiAwLjEuMFxuICogRGF0ZTogMjAyMy0wMS0wOVxuICovXG4kc2VsZjogJy5idXR0b24nO1xuXG4jeyRzZWxmfSB7XG4gICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoMjIwKTtcbiAgICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignbW9zcycpO1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBjb2xvcjogY29sb3IoJ3doaXRlJyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgfVxuXG4gICAgJi0tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcignYmVyeWwnKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdncmV5LTQwMCcpO1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCdncmV5LTQwMCcpO1xuICAgICAgICBjb2xvcjogY29sb3IoJ3doaXRlJyk7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmW2hyZWZePVwibWFpbHRvXCJdIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmW2Rpc2FibGVkXSxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCdwZWFybCcpO1xuICAgICAgICBjb2xvcjogY29sb3IoJ2JlcnlsJyk7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoJ3BlYXJsJyk7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoJ2JlcnlsJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIElnbm9yZWQgaWYgbnVsbCAoZGVmYXVsdClcbi8vLyBAdHlwZSBGb250LVdlaWdodFxuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBidXR0b25zLCB0cmFuc3BhcmVudCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBvciBjbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1maWxsLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC4gYHNvbGlkYCBoYXMgbm8gZWZmZWN0cy5cbkBtaXhpbiBidXR0b24tZmlsbChcbiAgJGZpbGw6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlcyBvZiBhIHNvbGlkL2hvbGxvdy9jbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW5zIGBidXR0b24tc3R5bGVgLCBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgYW5kIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciBlZmZlY3RzIG9mIHZpc3VhbCBzdHlsaW5nIHBhcmFtZXRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSAtXG5AbWl4aW4gYnV0dG9uLWZpbGwtc3R5bGUoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGwsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkZmlsbCA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24taG9sbG93LXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBhbmQgYm9yZGVyIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYm9yZGVyLXdpZHRoIFskYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhdIC0gQm9yZGVyIHdpZHRoIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24tY2xlYXIge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG5AbWl4aW4gYnV0dG9uLWNsZWFyLXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50IGFuZCByZXNldGluZyB0aGUgY3Vyc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3BhY2l0eSBbJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXSAtIE9wYWNpdHkgb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRcbikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJHN0eWxlKTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJHN0eWxlLCAkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRzdHlsZTogbm9uZSk7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJHNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIGZlZWRiYWNrLnNjc3NcbiAqXG4gKiBAcGFja2FnZSBUSUxEQVxuICogQHZlcnNpb24gMC4xLjBcbiAqIERhdGU6IDIwMjMtMDItMDNcbiAqL1xuJHNlbGY6ICcuZmVlZGJhY2snO1xuXG4jeyRzZWxmfSB7XG4gICAgJl9fdGV4dCB7XG4gICAgICAgIEBleHRlbmQgYmxvY2txdW90ZTtcbiAgICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAgICAgaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgY29sb3IoJ2dyZXktMzAwJykgMzMlLCByZ2IoMjU1IDI1NSAyNTUpIDAlKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBib3R0b207XG4gICAgICAgICAgICByZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICAgICAgc2l6ZTogNHB4IDJweDtcbiAgICAgICAgfTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fZGF0ZSB7XG4gICAgICAgIGNvbG9yOiBjb2xvcignZ3JleS00MDAnKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgJl9fY2l0ZSB7XG4gICAgICAgIEBleHRlbmQgY2l0ZTtcbiAgICB9XG5cbiAgICAmX19wYWdlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzAgMCAwKTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdHVvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wYWdlIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoJ21vc3MnKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBjb2xvcjogY29sb3IoJ21vc3MnKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygyNSk7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKCdtb3NzJyk7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoJ3doaXRlJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIGZyYW1lLnNjc3NcbiAqXG4gKiBAcGFja2FnZSBUSUxEQVxuICogQHZlcnNpb24gMC4xLjBcbiAqIERhdGU6IDIwMjMtMDItMDVcbiAqL1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczpsaXN0JztcblxuJHNlbGY6ICcuZnJhbWUnO1xuXG4jeyRzZWxmfSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi1zcGFjZSB7XG4gICAgICAgICYtLWJlZm9yZSB7XG4gICAgICAgICAgICAmLW5vbmUge1xuICAgICAgICAgICAgICAgIC8qIHByZXZlbnQgY29sbGFwc2luZyB0b3AgbWFyZ2luICovXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtZm91cnRoIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWhhbGYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWZ1bGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg2MCk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMjApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFmdGVyIHtcbiAgICAgICAgICAgICYtZnVsbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDYwKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWhhbGYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWZvdXJ0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1ub25lIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcHVsbC1hZGphY2VudCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgKyAjeyRzZWxmfSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkbW90aXZlIGluICgnaG9yc2UnLCAncGFjaWZpZXInLCAnZGljZXMnLCAnd2Fnb24nLCAndGVkZHknLCAnYm90dGxlJykge1xuICAgICAgICAmLWxheW91dC0jeyRtb3RpdmV9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL0ltZy8jeyRtb3RpdmV9LnN2ZycpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE3NSk7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkbW90aXZlIGluICgndGVkZHknLCAnYm90dGxlJykge1xuICAgICAgICAmLWxheW91dC0jeyRtb3RpdmV9OjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcjtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAkZ3JpZC1yb3ctd2lkdGg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xuICAgICAgICAgICAgd2lkdGg6ICRncmlkLXJvdy13aWR0aCAqIHVuaXRsZXNzLWNhbGMoZ3JpZC1jb2x1bW4oMTApKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiAkZ3JpZC1yb3ctd2lkdGggKiB1bml0bGVzcy1jYWxjKGdyaWQtY29sdW1uKDgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jZS1hYm92ZSAmLFxuICAgICAgICAuY2UtYmVsb3cgJixcbiAgICAgICAgLmNlLWludGV4dCAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XG4vKipcbiAqIGNlLnNjc3NcbiAqXG4gKiBAcGFja2FnZSBUSUxEQVxuICogQHZlcnNpb24gMC4xLjBcbiAqIERhdGU6IDIwMjMtMDItMDVcbiAqL1xuJHNlbGY6ICcuY2UnO1xuXG4jeyRzZWxmfSB7XG4gICAgJi10ZXh0LFxuICAgICYtdGV4dHBpYyB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oY2VudGVyKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTMwKSAtICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICB9XG5cbiAgICAmLWJvZHl0ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigxMik7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgI3skc2VsZn0taW50ZXh0ICN7JHNlbGZ9LWdhbGxlcnkgKyAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSg3KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1zaXplKDQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3skc2VsZn0tY2VudGVyICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsZykge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1zaXplKDgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3skc2VsZn0tcmlnaHQgJiB7XG4gICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgIH1cblxuICAgICAgICAjeyRzZWxmfS1iZWxvdyAmIHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcm93IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdyhuZXN0KTtcblxuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gICAgICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoY2FsYygkLXpmLWJwLXZhbHVlIC8gMikpIC0gcmVtLWNhbGMoNSk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgICAgIH1cblxuICAgICAgICAjeyRzZWxmfS1hYm92ZSBbZGF0YS1jZS1jb2x1bW5zXSAmLFxuICAgICAgICAjeyRzZWxmfS1iZWxvdyBbZGF0YS1jZS1jb2x1bW5zXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAqIC0xO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDEyLCAxMCk7XG5cbiAgICAgICAgW2RhdGEtY2UtY29sdW1uc10gJiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1zaXplKG51bGwpO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogZ3JpZC1jb2x1bW4oNik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQpIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGdyaWQtY29sdW1uKDMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1nYWxsZXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcblxuICAgICAgICAjeyRzZWxmfS1pbnRleHQgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1kKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXNpemUoNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjeyRzZWxmfS1jZW50ZXIgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXNpemUoOCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZnJhbWUtcHVsbC1hZGphY2VudCArIC5mcmFtZSAjeyRzZWxmfS1pbnRleHQgJiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtNjAgLSA0NSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxnKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEyMCAtIDQ1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmI3skc2VsZn0tYm9yZGVyIGltZyB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvcignZ3JleS0zMDAnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtc3ViaGVhZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoMTQwKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKCdncmV5LTcwMCcpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZXJvLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNCk7XG5cbiAgICAgICAgJi0tYWJvdmUge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgcmVtLWNhbGMoMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXRhYmxlIHtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICB9XG59XG4iXX0= */
