@charset "UTF-8";@media print,screen and (min-width:40em){.reveal,.reveal.large,.reveal.small,.reveal.tiny{right:auto;left:auto;margin:0 auto}}

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;overflow:visible}main{display:block}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}input{overflow:visible}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;display:table;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}[hidden],template{display:none}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{box-sizing:border-box;font-size:100%}*,:after,:before{box-sizing:inherit}body{margin:0;padding:0;background:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#000;-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%}.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;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:transparent;line-height:1;cursor:auto}[data-whatinput=mouse] button{outline:0}pre{overflow:auto}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block!important}.is-hidden{display:none!important}.row{max-width:75rem;margin-right:auto;margin-left:auto}.row:after,.row:before{display:table;content:" "}.row:after{clear:both}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row .row{margin-right:-.9375rem;margin-left:-.9375rem}@media print,screen and (min-width:40em){.row .row{margin-right:-1.875rem;margin-left:-1.875rem}}@media print,screen and (min-width:64em){.row .row{margin-right:-1.875rem;margin-left:-1.875rem}}.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.gutter-small>.column,.row.gutter-small>.columns{padding-right:.9375rem;padding-left:.9375rem}.row.gutter-medium>.column,.row.gutter-medium>.columns{padding-right:1.875rem;padding-left:1.875rem}.column,.columns{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.column,.columns{padding-right:1.875rem;padding-left:1.875rem}}.column:last-child:not(:first-child),.columns:last-child:not(:first-child){float:right}.column.end:last-child:last-child,.end.columns:last-child:last-child{float:left}.column.row.row,.row.row.columns{float:none}.row .column.row.row,.row .row.row.columns{margin-right:0;margin-left:0;padding-right:0;padding-left:0}.small-1{width:8.33333%}.small-push-1{position:relative;left:8.33333%}.small-pull-1{position:relative;left:-8.33333%}.small-offset-0{margin-left:0}.small-2{width:16.66667%}.small-push-2{position:relative;left:16.66667%}.small-pull-2{position:relative;left:-16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{width:25%}.small-push-3{position:relative;left:25%}.small-pull-3{position:relative;left:-25%}.small-offset-2{margin-left:16.66667%}.small-4{width:33.33333%}.small-push-4{position:relative;left:33.33333%}.small-pull-4{position:relative;left:-33.33333%}.small-offset-3{margin-left:25%}.small-5{width:41.66667%}.small-push-5{position:relative;left:41.66667%}.small-pull-5{position:relative;left:-41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{width:50%}.small-push-6{position:relative;left:50%}.small-pull-6{position:relative;left:-50%}.small-offset-5{margin-left:41.66667%}.small-7{width:58.33333%}.small-push-7{position:relative;left:58.33333%}.small-pull-7{position:relative;left:-58.33333%}.small-offset-6{margin-left:50%}.small-8{width:66.66667%}.small-push-8{position:relative;left:66.66667%}.small-pull-8{position:relative;left:-66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{width:75%}.small-push-9{position:relative;left:75%}.small-pull-9{position:relative;left:-75%}.small-offset-8{margin-left:66.66667%}.small-10{width:83.33333%}.small-push-10{position:relative;left:83.33333%}.small-pull-10{position:relative;left:-83.33333%}.small-offset-9{margin-left:75%}.small-11{width:91.66667%}.small-push-11{position:relative;left:91.66667%}.small-pull-11{position:relative;left:-91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1>.column,.small-up-1>.columns{float:left;width:100%}.small-up-1>.column:nth-of-type(1n),.small-up-1>.columns:nth-of-type(1n){clear:none}.small-up-1>.column:nth-of-type(1n+1),.small-up-1>.columns:nth-of-type(1n+1){clear:both}.small-up-1>.column:last-child,.small-up-1>.columns:last-child{float:left}.small-up-2>.column,.small-up-2>.columns{float:left;width:50%}.small-up-2>.column:nth-of-type(1n),.small-up-2>.columns:nth-of-type(1n){clear:none}.small-up-2>.column:nth-of-type(odd),.small-up-2>.columns:nth-of-type(odd){clear:both}.small-up-2>.column:last-child,.small-up-2>.columns:last-child{float:left}.small-up-3>.column,.small-up-3>.columns{float:left;width:33.33333%}.small-up-3>.column:nth-of-type(1n),.small-up-3>.columns:nth-of-type(1n){clear:none}.small-up-3>.column:nth-of-type(3n+1),.small-up-3>.columns:nth-of-type(3n+1){clear:both}.small-up-3>.column:last-child,.small-up-3>.columns:last-child{float:left}.small-up-4>.column,.small-up-4>.columns{float:left;width:25%}.small-up-4>.column:nth-of-type(1n),.small-up-4>.columns:nth-of-type(1n){clear:none}.small-up-4>.column:nth-of-type(4n+1),.small-up-4>.columns:nth-of-type(4n+1){clear:both}.small-up-4>.column:last-child,.small-up-4>.columns:last-child{float:left}.small-up-5>.column,.small-up-5>.columns{float:left;width:20%}.small-up-5>.column:nth-of-type(1n),.small-up-5>.columns:nth-of-type(1n){clear:none}.small-up-5>.column:nth-of-type(5n+1),.small-up-5>.columns:nth-of-type(5n+1){clear:both}.small-up-5>.column:last-child,.small-up-5>.columns:last-child{float:left}.small-up-6>.column,.small-up-6>.columns{float:left;width:16.66667%}.small-up-6>.column:nth-of-type(1n),.small-up-6>.columns:nth-of-type(1n){clear:none}.small-up-6>.column:nth-of-type(6n+1),.small-up-6>.columns:nth-of-type(6n+1){clear:both}.small-up-6>.column:last-child,.small-up-6>.columns:last-child{float:left}.small-up-7>.column,.small-up-7>.columns{float:left;width:14.28571%}.small-up-7>.column:nth-of-type(1n),.small-up-7>.columns:nth-of-type(1n){clear:none}.small-up-7>.column:nth-of-type(7n+1),.small-up-7>.columns:nth-of-type(7n+1){clear:both}.small-up-7>.column:last-child,.small-up-7>.columns:last-child{float:left}.small-up-8>.column,.small-up-8>.columns{float:left;width:12.5%}.small-up-8>.column:nth-of-type(1n),.small-up-8>.columns:nth-of-type(1n){clear:none}.small-up-8>.column:nth-of-type(8n+1),.small-up-8>.columns:nth-of-type(8n+1){clear:both}.small-up-8>.column:last-child,.small-up-8>.columns:last-child{float:left}.small-collapse>.column,.small-collapse>.columns{padding-right:0;padding-left:0}.expanded.row .small-collapse.row,.small-collapse .row{margin-right:0;margin-left:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}.small-centered{margin-right:auto;margin-left:auto}.small-centered,.small-centered:last-child:not(:first-child){float:none;clear:both}.small-pull-0,.small-push-0,.small-uncentered{position:static;float:left;margin-right:0;margin-left:0}@media print,screen and (min-width:40em){.medium-1{width:8.33333%}.medium-push-1{position:relative;left:8.33333%}.medium-pull-1{position:relative;left:-8.33333%}.medium-offset-0{margin-left:0}.medium-2{width:16.66667%}.medium-push-2{position:relative;left:16.66667%}.medium-pull-2{position:relative;left:-16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{width:25%}.medium-push-3{position:relative;left:25%}.medium-pull-3{position:relative;left:-25%}.medium-offset-2{margin-left:16.66667%}.medium-4{width:33.33333%}.medium-push-4{position:relative;left:33.33333%}.medium-pull-4{position:relative;left:-33.33333%}.medium-offset-3{margin-left:25%}.medium-5{width:41.66667%}.medium-push-5{position:relative;left:41.66667%}.medium-pull-5{position:relative;left:-41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{width:50%}.medium-push-6{position:relative;left:50%}.medium-pull-6{position:relative;left:-50%}.medium-offset-5{margin-left:41.66667%}.medium-7{width:58.33333%}.medium-push-7{position:relative;left:58.33333%}.medium-pull-7{position:relative;left:-58.33333%}.medium-offset-6{margin-left:50%}.medium-8{width:66.66667%}.medium-push-8{position:relative;left:66.66667%}.medium-pull-8{position:relative;left:-66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{width:75%}.medium-push-9{position:relative;left:75%}.medium-pull-9{position:relative;left:-75%}.medium-offset-8{margin-left:66.66667%}.medium-10{width:83.33333%}.medium-push-10{position:relative;left:83.33333%}.medium-pull-10{position:relative;left:-83.33333%}.medium-offset-9{margin-left:75%}.medium-11{width:91.66667%}.medium-push-11{position:relative;left:91.66667%}.medium-pull-11{position:relative;left:-91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{width:100%}.medium-offset-11{margin-left:91.66667%}.medium-up-1>.column,.medium-up-1>.columns{float:left;width:100%}.medium-up-1>.column:nth-of-type(1n),.medium-up-1>.columns:nth-of-type(1n){clear:none}.medium-up-1>.column:nth-of-type(1n+1),.medium-up-1>.columns:nth-of-type(1n+1){clear:both}.medium-up-1>.column:last-child,.medium-up-1>.columns:last-child{float:left}.medium-up-2>.column,.medium-up-2>.columns{float:left;width:50%}.medium-up-2>.column:nth-of-type(1n),.medium-up-2>.columns:nth-of-type(1n){clear:none}.medium-up-2>.column:nth-of-type(odd),.medium-up-2>.columns:nth-of-type(odd){clear:both}.medium-up-2>.column:last-child,.medium-up-2>.columns:last-child{float:left}.medium-up-3>.column,.medium-up-3>.columns{float:left;width:33.33333%}.medium-up-3>.column:nth-of-type(1n),.medium-up-3>.columns:nth-of-type(1n){clear:none}.medium-up-3>.column:nth-of-type(3n+1),.medium-up-3>.columns:nth-of-type(3n+1){clear:both}.medium-up-3>.column:last-child,.medium-up-3>.columns:last-child{float:left}.medium-up-4>.column,.medium-up-4>.columns{float:left;width:25%}.medium-up-4>.column:nth-of-type(1n),.medium-up-4>.columns:nth-of-type(1n){clear:none}.medium-up-4>.column:nth-of-type(4n+1),.medium-up-4>.columns:nth-of-type(4n+1){clear:both}.medium-up-4>.column:last-child,.medium-up-4>.columns:last-child{float:left}.medium-up-5>.column,.medium-up-5>.columns{float:left;width:20%}.medium-up-5>.column:nth-of-type(1n),.medium-up-5>.columns:nth-of-type(1n){clear:none}.medium-up-5>.column:nth-of-type(5n+1),.medium-up-5>.columns:nth-of-type(5n+1){clear:both}.medium-up-5>.column:last-child,.medium-up-5>.columns:last-child{float:left}.medium-up-6>.column,.medium-up-6>.columns{float:left;width:16.66667%}.medium-up-6>.column:nth-of-type(1n),.medium-up-6>.columns:nth-of-type(1n){clear:none}.medium-up-6>.column:nth-of-type(6n+1),.medium-up-6>.columns:nth-of-type(6n+1){clear:both}.medium-up-6>.column:last-child,.medium-up-6>.columns:last-child{float:left}.medium-up-7>.column,.medium-up-7>.columns{float:left;width:14.28571%}.medium-up-7>.column:nth-of-type(1n),.medium-up-7>.columns:nth-of-type(1n){clear:none}.medium-up-7>.column:nth-of-type(7n+1),.medium-up-7>.columns:nth-of-type(7n+1){clear:both}.medium-up-7>.column:last-child,.medium-up-7>.columns:last-child{float:left}.medium-up-8>.column,.medium-up-8>.columns{float:left;width:12.5%}.medium-up-8>.column:nth-of-type(1n),.medium-up-8>.columns:nth-of-type(1n){clear:none}.medium-up-8>.column:nth-of-type(8n+1),.medium-up-8>.columns:nth-of-type(8n+1){clear:both}.medium-up-8>.column:last-child,.medium-up-8>.columns:last-child{float:left}.medium-collapse>.column,.medium-collapse>.columns{padding-right:0;padding-left:0}.expanded.row .medium-collapse.row,.medium-collapse .row{margin-right:0;margin-left:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-right:1.875rem;padding-left:1.875rem}.medium-centered{margin-right:auto;margin-left:auto}.medium-centered,.medium-centered:last-child:not(:first-child){float:none;clear:both}.medium-pull-0,.medium-push-0,.medium-uncentered{position:static;float:left;margin-right:0;margin-left:0}}@media print,screen and (min-width:64em){.large-1{width:8.33333%}.large-push-1{position:relative;left:8.33333%}.large-pull-1{position:relative;left:-8.33333%}.large-offset-0{margin-left:0}.large-2{width:16.66667%}.large-push-2{position:relative;left:16.66667%}.large-pull-2{position:relative;left:-16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{width:25%}.large-push-3{position:relative;left:25%}.large-pull-3{position:relative;left:-25%}.large-offset-2{margin-left:16.66667%}.large-4{width:33.33333%}.large-push-4{position:relative;left:33.33333%}.large-pull-4{position:relative;left:-33.33333%}.large-offset-3{margin-left:25%}.large-5{width:41.66667%}.large-push-5{position:relative;left:41.66667%}.large-pull-5{position:relative;left:-41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{width:50%}.large-push-6{position:relative;left:50%}.large-pull-6{position:relative;left:-50%}.large-offset-5{margin-left:41.66667%}.large-7{width:58.33333%}.large-push-7{position:relative;left:58.33333%}.large-pull-7{position:relative;left:-58.33333%}.large-offset-6{margin-left:50%}.large-8{width:66.66667%}.large-push-8{position:relative;left:66.66667%}.large-pull-8{position:relative;left:-66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{width:75%}.large-push-9{position:relative;left:75%}.large-pull-9{position:relative;left:-75%}.large-offset-8{margin-left:66.66667%}.large-10{width:83.33333%}.large-push-10{position:relative;left:83.33333%}.large-pull-10{position:relative;left:-83.33333%}.large-offset-9{margin-left:75%}.large-11{width:91.66667%}.large-push-11{position:relative;left:91.66667%}.large-pull-11{position:relative;left:-91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{width:100%}.large-offset-11{margin-left:91.66667%}.large-up-1>.column,.large-up-1>.columns{float:left;width:100%}.large-up-1>.column:nth-of-type(1n),.large-up-1>.columns:nth-of-type(1n){clear:none}.large-up-1>.column:nth-of-type(1n+1),.large-up-1>.columns:nth-of-type(1n+1){clear:both}.large-up-1>.column:last-child,.large-up-1>.columns:last-child{float:left}.large-up-2>.column,.large-up-2>.columns{float:left;width:50%}.large-up-2>.column:nth-of-type(1n),.large-up-2>.columns:nth-of-type(1n){clear:none}.large-up-2>.column:nth-of-type(odd),.large-up-2>.columns:nth-of-type(odd){clear:both}.large-up-2>.column:last-child,.large-up-2>.columns:last-child{float:left}.large-up-3>.column,.large-up-3>.columns{float:left;width:33.33333%}.large-up-3>.column:nth-of-type(1n),.large-up-3>.columns:nth-of-type(1n){clear:none}.large-up-3>.column:nth-of-type(3n+1),.large-up-3>.columns:nth-of-type(3n+1){clear:both}.large-up-3>.column:last-child,.large-up-3>.columns:last-child{float:left}.large-up-4>.column,.large-up-4>.columns{float:left;width:25%}.large-up-4>.column:nth-of-type(1n),.large-up-4>.columns:nth-of-type(1n){clear:none}.large-up-4>.column:nth-of-type(4n+1),.large-up-4>.columns:nth-of-type(4n+1){clear:both}.large-up-4>.column:last-child,.large-up-4>.columns:last-child{float:left}.large-up-5>.column,.large-up-5>.columns{float:left;width:20%}.large-up-5>.column:nth-of-type(1n),.large-up-5>.columns:nth-of-type(1n){clear:none}.large-up-5>.column:nth-of-type(5n+1),.large-up-5>.columns:nth-of-type(5n+1){clear:both}.large-up-5>.column:last-child,.large-up-5>.columns:last-child{float:left}.large-up-6>.column,.large-up-6>.columns{float:left;width:16.66667%}.large-up-6>.column:nth-of-type(1n),.large-up-6>.columns:nth-of-type(1n){clear:none}.large-up-6>.column:nth-of-type(6n+1),.large-up-6>.columns:nth-of-type(6n+1){clear:both}.large-up-6>.column:last-child,.large-up-6>.columns:last-child{float:left}.large-up-7>.column,.large-up-7>.columns{float:left;width:14.28571%}.large-up-7>.column:nth-of-type(1n),.large-up-7>.columns:nth-of-type(1n){clear:none}.large-up-7>.column:nth-of-type(7n+1),.large-up-7>.columns:nth-of-type(7n+1){clear:both}.large-up-7>.column:last-child,.large-up-7>.columns:last-child{float:left}.large-up-8>.column,.large-up-8>.columns{float:left;width:12.5%}.large-up-8>.column:nth-of-type(1n),.large-up-8>.columns:nth-of-type(1n){clear:none}.large-up-8>.column:nth-of-type(8n+1),.large-up-8>.columns:nth-of-type(8n+1){clear:both}.large-up-8>.column:last-child,.large-up-8>.columns:last-child{float:left}.large-collapse>.column,.large-collapse>.columns{padding-right:0;padding-left:0}.expanded.row .large-collapse.row,.large-collapse .row{margin-right:0;margin-left:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-right:1.875rem;padding-left:1.875rem}.large-centered{margin-right:auto;margin-left:auto}.large-centered,.large-centered:last-child:not(:first-child){float:none;clear:both}.large-pull-0,.large-push-0,.large-uncentered{position:static;float:left;margin-right:0;margin-left:0}}.column-block{margin-bottom:1.875rem}.column-block>:last-child{margin-bottom:0}@media print,screen and (min-width:40em){.column-block{margin-bottom:3.75rem}.column-block>:last-child{margin-bottom:0}}.h2,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:1rem;font-size:inherit;line-height:1.6;text-rendering:optimizeLegibility}em,i{font-style:italic}b,em,i,strong{line-height:inherit}b,strong{font-weight:700}small{font-size:80%;line-height:inherit}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:Source Sans Pro,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:#868686}.h1,h1{font-size:1.5rem}.h1,.h2,h1,h2{line-height:1.4;margin-top:0;margin-bottom:.5rem}.h2,h2{font-size:1.25rem}.h3,h3{font-size:1.1875rem}.h3,.h4,h3,h4{line-height:1.4;margin-top:0;margin-bottom:.5rem}.h4,h4{font-size:1.125rem}.h5,h5{font-size:1.0625rem}.h5,.h6,h5,h6{line-height:1.4;margin-top:0;margin-bottom:.5rem}.h6,h6{font-size:1rem}@media print,screen and (min-width:40em){.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:#ffd545;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#ffcb18}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 #868686;border-left:0}dl,ol,ul{margin-bottom:1rem;list-style-position:outside;line-height:1.6}li{font-size:inherit}ul{list-style-type:disc}ol,ul{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}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #868686}blockquote,blockquote p{line-height:1.6;color:#171717}cite{display:block;font-size:.8125rem;color:#171717}cite:before{content:"— "}abbr,abbr[title]{border-bottom:1px dotted #000;cursor:help;text-decoration:none}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid #868686;font-weight:400}code,kbd{background-color:#f6f6f6;font-family:Consolas,Liberation Mono,Courier,monospace;color:#000}kbd{margin:0;padding:.125rem .25rem 0}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#171717}.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}.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:40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media print,screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:transparent!important;box-shadow:none!important;color:#000!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,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) ")"}blockquote,pre{border:1px solid #171717;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}.h2,h2,h3,p{orphans:3;widows:3}.h2,h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.button{display:inline-block;vertical-align:middle;margin:0 0 1rem;font-family:inherit;padding:.85em 1em;-webkit-appearance:none;border:1px solid transparent;border-radius:0;transition:background-color .25s ease-out,color .25s ease-out;font-size:.9rem;line-height:1;text-align:center;cursor:pointer;background-color:#ffd545;color:#fff}[data-whatinput=mouse] .button{outline:0}.button:focus,.button:hover{background-color:#ffca14;color:#fff}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-right:0;margin-left:0}.button.primary{background-color:#ffd545;color:#000}.button.primary:focus,.button.primary:hover{background-color:#ffc604;color:#000}.button.secondary{background-color:#22222a;color:#fff}.button.secondary:focus,.button.secondary:hover{background-color:#1b1b22;color:#fff}.button.success{background-color:#33a457;color:#000}.button.success:focus,.button.success:hover{background-color:#298346;color:#000}.button.warning{background-color:#e02424;color:#fff}.button.warning:focus,.button.warning:hover{background-color:#b61a1a;color:#fff}.button.alert{background-color:#860000;color:#fff}.button.alert:focus,.button.alert:hover{background-color:#6b0000;color:#fff}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed}.button.disabled,.button.disabled:focus,.button.disabled:hover,.button[disabled],.button[disabled]:focus,.button[disabled]:hover{background-color:#ffd545;color:#fff}.button.disabled.primary,.button[disabled].primary{opacity:.25;cursor:not-allowed}.button.disabled.primary,.button.disabled.primary:focus,.button.disabled.primary:hover,.button[disabled].primary,.button[disabled].primary:focus,.button[disabled].primary:hover{background-color:#ffd545;color:#000}.button.disabled.secondary,.button[disabled].secondary{opacity:.25;cursor:not-allowed}.button.disabled.secondary,.button.disabled.secondary:focus,.button.disabled.secondary:hover,.button[disabled].secondary,.button[disabled].secondary:focus,.button[disabled].secondary:hover{background-color:#22222a;color:#fff}.button.disabled.success,.button[disabled].success{opacity:.25;cursor:not-allowed}.button.disabled.success,.button.disabled.success:focus,.button.disabled.success:hover,.button[disabled].success,.button[disabled].success:focus,.button[disabled].success:hover{background-color:#33a457;color:#000}.button.disabled.warning,.button[disabled].warning{opacity:.25;cursor:not-allowed}.button.disabled.warning,.button.disabled.warning:focus,.button.disabled.warning:hover,.button[disabled].warning,.button[disabled].warning:focus,.button[disabled].warning:hover{background-color:#e02424;color:#fff}.button.disabled.alert,.button[disabled].alert{opacity:.25;cursor:not-allowed}.button.disabled.alert,.button.disabled.alert:focus,.button.disabled.alert:hover,.button[disabled].alert,.button[disabled].alert:focus,.button[disabled].alert:hover{background-color:#860000;color:#fff}.button.hollow{border:1px solid #ffd545;color:#ffd545}.button.hollow,.button.hollow.disabled,.button.hollow.disabled:focus,.button.hollow.disabled:hover,.button.hollow:focus,.button.hollow:hover,.button.hollow[disabled],.button.hollow[disabled]:focus,.button.hollow[disabled]:hover{background-color:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#a27d00;color:#a27d00}.button.hollow.primary,.button.hollow:focus.disabled,.button.hollow:focus[disabled],.button.hollow:hover.disabled,.button.hollow:hover[disabled]{border:1px solid #ffd545;color:#ffd545}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#a27d00;color:#a27d00}.button.hollow.primary:focus.disabled,.button.hollow.primary:focus[disabled],.button.hollow.primary:hover.disabled,.button.hollow.primary:hover[disabled]{border:1px solid #ffd545;color:#ffd545}.button.hollow.secondary{border:1px solid #22222a;color:#22222a}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#111115;color:#111115}.button.hollow.secondary:focus.disabled,.button.hollow.secondary:focus[disabled],.button.hollow.secondary:hover.disabled,.button.hollow.secondary:hover[disabled]{border:1px solid #22222a;color:#22222a}.button.hollow.success{border:1px solid #33a457;color:#33a457}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#1a522c;color:#1a522c}.button.hollow.success:focus.disabled,.button.hollow.success:focus[disabled],.button.hollow.success:hover.disabled,.button.hollow.success:hover[disabled]{border:1px solid #33a457;color:#33a457}.button.hollow.warning{border:1px solid #e02424;color:#e02424}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#721010;color:#721010}.button.hollow.warning:focus.disabled,.button.hollow.warning:focus[disabled],.button.hollow.warning:hover.disabled,.button.hollow.warning:hover[disabled]{border:1px solid #e02424;color:#e02424}.button.hollow.alert{border:1px solid #860000;color:#860000}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#430000;color:#430000}.button.hollow.alert:focus.disabled,.button.hollow.alert:focus[disabled],.button.hollow.alert:hover.disabled,.button.hollow.alert:hover[disabled]{border:1px solid #860000;color:#860000}.button.clear{border:1px solid #ffd545;color:#ffd545}.button.clear,.button.clear.disabled,.button.clear.disabled:focus,.button.clear.disabled:hover,.button.clear:focus,.button.clear:hover,.button.clear[disabled],.button.clear[disabled]:focus,.button.clear[disabled]:hover{background-color:transparent}.button.clear:focus,.button.clear:hover{border-color:#a27d00;color:#a27d00}.button.clear:focus.disabled,.button.clear:focus[disabled],.button.clear:hover.disabled,.button.clear:hover[disabled]{border:1px solid #ffd545;color:#ffd545}.button.clear,.button.clear.disabled,.button.clear:focus,.button.clear:focus.disabled,.button.clear:focus[disabled],.button.clear:hover,.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear[disabled]{border-color:transparent}.button.clear.primary{border:1px solid #ffd545;color:#ffd545}.button.clear.primary:focus,.button.clear.primary:hover{border-color:#a27d00;color:#a27d00}.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled],.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled]{border:1px solid #ffd545;color:#ffd545}.button.clear.primary,.button.clear.primary.disabled,.button.clear.primary:focus,.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled],.button.clear.primary:hover,.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary[disabled]{border-color:transparent}.button.clear.secondary{border:1px solid #22222a;color:#22222a}.button.clear.secondary:focus,.button.clear.secondary:hover{border-color:#111115;color:#111115}.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled],.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled]{border:1px solid #22222a;color:#22222a}.button.clear.secondary,.button.clear.secondary.disabled,.button.clear.secondary:focus,.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled],.button.clear.secondary:hover,.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary[disabled]{border-color:transparent}.button.clear.success{border:1px solid #33a457;color:#33a457}.button.clear.success:focus,.button.clear.success:hover{border-color:#1a522c;color:#1a522c}.button.clear.success:focus.disabled,.button.clear.success:focus[disabled],.button.clear.success:hover.disabled,.button.clear.success:hover[disabled]{border:1px solid #33a457;color:#33a457}.button.clear.success,.button.clear.success.disabled,.button.clear.success:focus,.button.clear.success:focus.disabled,.button.clear.success:focus[disabled],.button.clear.success:hover,.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success[disabled]{border-color:transparent}.button.clear.warning{border:1px solid #e02424;color:#e02424}.button.clear.warning:focus,.button.clear.warning:hover{border-color:#721010;color:#721010}.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled],.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled]{border:1px solid #e02424;color:#e02424}.button.clear.warning,.button.clear.warning.disabled,.button.clear.warning:focus,.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled],.button.clear.warning:hover,.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning[disabled]{border-color:transparent}.button.clear.alert{border:1px solid #860000;color:#860000}.button.clear.alert:focus,.button.clear.alert:hover{border-color:#430000;color:#430000}.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled],.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled]{border:1px solid #860000;color:#860000}.button.clear.alert,.button.clear.alert.disabled,.button.clear.alert:focus,.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled],.button.clear.alert:hover,.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert[disabled]{border-color:transparent}.button.dropdown:after{display:block;width:0;height:0;border:.4em inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#fff transparent transparent;position:relative;top:.4em;display:inline-block;float:right;margin-left:1em}.button.dropdown.hollow.primary:after,.button.dropdown.hollow:after{border-top-color:#ffd545}.button.dropdown.hollow.secondary:after{border-top-color:#22222a}.button.dropdown.hollow.success:after{border-top-color:#33a457}.button.dropdown.hollow.warning:after{border-top-color:#e02424}.button.dropdown.hollow.alert:after{border-top-color:#860000}.button.arrow-only:after{top:-.1em;float:none;margin-left:0}a.button:focus,a.button:hover{text-decoration:none}[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 #868686;border-radius:0;background-color:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,.1);font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5;color:#000;transition:box-shadow .5s,border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none;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:none;border:1px solid #171717;background-color:#fff;box-shadow:0 0 5px #868686;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#868686}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#868686}input::placeholder,textarea::placeholder{color:#868686}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#f6f6f6;cursor:not-allowed}[type=button],[type=submit]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}input[type=search]{box-sizing:border-box}[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:#000}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#000}.input-group{display:table;width:100%;margin-bottom:1rem}.input-group>:first-child,.input-group>:last-child>*{border-radius:0 0 0 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;display:table-cell;vertical-align:middle}.input-group-label{padding:0 1rem;border:1px solid #868686;background:#f6f6f6;color:#000;text-align:center;white-space:nowrap;width:1%;height:100%}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;height:2.5rem}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;width:1%;height:100%}.input-group-button a,.input-group-button button,.input-group-button input,.input-group-button label{height:2.5rem;padding-top:0;padding-bottom:0;font-size:1rem}.input-group .input-group-button{display:table-cell}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 #868686}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #868686;border-radius:0;background-color:#fff;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5;color:#000;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%2823, 23, 23%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:none;border:1px solid #171717;background-color:#fff;box-shadow:0 0 5px #868686;transition:box-shadow .5s,border-color .25s ease-in-out}select:disabled{background-color:#f6f6f6;cursor:not-allowed}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}.is-invalid-input:not(:focus){border-color:#860000;background-color:#f3e6e6}.is-invalid-input:not(:focus)::-webkit-input-placeholder{color:#860000}.is-invalid-input:not(:focus)::-ms-input-placeholder{color:#860000}.is-invalid-input:not(:focus)::placeholder{color:#860000}.form-error,.is-invalid-label{color:#860000}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700}.form-error.is-visible{display:block}.accordion{margin-left:0;background:#fff;list-style-type:none}.accordion[disabled] .accordion-title{cursor:not-allowed}.accordion-item:first-child>:first-child,.accordion-item:last-child>:last-child{border-radius:0 0 0 0}.accordion-title{position:relative;display:block;padding:1.25rem 1rem;border:1px solid #f6f6f6;border-bottom:0;font-size:.75rem;line-height:1;color:#ffd545}:last-child:not(.is-active)>.accordion-title{border-bottom:1px solid #f6f6f6;border-radius:0 0 0 0}.accordion-title:focus,.accordion-title:hover{background-color:#f6f6f6}.accordion-title:before{position:absolute;top:50%;right:1rem;margin-top:-.5rem;content:"+"}.is-active>.accordion-title:before{content:"\2013"}.accordion-content{display:none;padding:1rem;border:1px solid #f6f6f6;border-bottom:0;background-color:#fff;color:#000}:last-child>.accordion-content:last-child{border-bottom:1px solid #f6f6f6}.accordion-menu li{width:100%}.accordion-menu .is-accordion-submenu a,.accordion-menu a{padding:.7rem 1rem}.accordion-menu .nested.is-accordion-submenu{margin-right:0;margin-left:1rem}.accordion-menu.align-right .nested.is-accordion-submenu{margin-right:1rem;margin-left:0}.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a{position:relative}.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#ffd545 transparent transparent;position:absolute;top:50%;margin-top:-3px;right:1rem}.accordion-menu.align-left .is-accordion-submenu-parent>a:after{left:auto;right:1rem}.accordion-menu.align-right .is-accordion-submenu-parent>a:after{right:auto;left:1rem}.accordion-menu .is-accordion-submenu-parent[aria-expanded=true]>a:after{transform:rotate(180deg);transform-origin:50% 50%}.is-accordion-submenu-parent{position:relative}.has-submenu-toggle>a{margin-right:40px}.submenu-toggle{position:absolute;top:0;right:0;cursor:pointer;width:40px;height:40px}.submenu-toggle:after{display:block;width:0;height:0;border:6px inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#ffd545 transparent transparent;top:0;bottom:0;margin:auto}.submenu-toggle[aria-expanded=true]:after{transform:scaleY(-1);transform-origin:50% 50%}.submenu-toggle-text{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%);border:0}.badge{display:inline-block;min-width:2.1em;padding:.3em;border-radius:50%;font-size:.6rem;text-align:center;background:#ffd545;color:#fff}.badge.primary{background:#ffd545;color:#000}.badge.secondary{background:#22222a;color:#fff}.badge.success{background:#33a457;color:#000}.badge.warning{background:#e02424;color:#fff}.badge.alert{background:#860000;color:#fff}.breadcrumbs{margin:0 0 1rem;list-style:none}.breadcrumbs:after,.breadcrumbs:before{display:table;content:" "}.breadcrumbs:after{clear:both}.breadcrumbs li{float:left;font-size:.6875rem;color:#000;cursor:default;text-transform:uppercase}.breadcrumbs li:not(:last-child):after{position:relative;margin:0 .75rem;opacity:1;content:"/";color:#868686}.breadcrumbs a{color:#ffd545}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .disabled{color:#868686;cursor:not-allowed}.button-group{margin-bottom:1rem;font-size:0}.button-group:after,.button-group:before{display:table;content:" "}.button-group:after{clear:both}.button-group .button{margin:0;margin-right:1px;margin-bottom:1px;font-size:.9rem}.button-group .button:last-child{margin-right:0}.button-group.tiny .button{font-size:.6rem}.button-group.small .button{font-size:.75rem}.button-group.large .button{font-size:1.25rem}.button-group.expanded{margin-right:-1px}.button-group.expanded:after,.button-group.expanded:before{display:none}.button-group.expanded .button:first-child:last-child{width:100%}.button-group.expanded .button:first-child:nth-last-child(2),.button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2)~.button{display:inline-block;width:calc(50% - 1px);margin-right:1px}.button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2)~.button:last-child,.button-group.expanded .button:first-child:nth-last-child(2):last-child{margin-right:-6px}.button-group.expanded .button:first-child:nth-last-child(3),.button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3)~.button{display:inline-block;width:calc(33.33333% - 1px);margin-right:1px}.button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3)~.button:last-child,.button-group.expanded .button:first-child:nth-last-child(3):last-child{margin-right:-6px}.button-group.expanded .button:first-child:nth-last-child(4),.button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4)~.button{display:inline-block;width:calc(25% - 1px);margin-right:1px}.button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4)~.button:last-child,.button-group.expanded .button:first-child:nth-last-child(4):last-child{margin-right:-6px}.button-group.expanded .button:first-child:nth-last-child(5),.button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5)~.button{display:inline-block;width:calc(20% - 1px);margin-right:1px}.button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5)~.button:last-child,.button-group.expanded .button:first-child:nth-last-child(5):last-child{margin-right:-6px}.button-group.expanded .button:first-child:nth-last-child(6),.button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6)~.button{display:inline-block;width:calc(16.66667% - 1px);margin-right:1px}.button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6)~.button:last-child,.button-group.expanded .button:first-child:nth-last-child(6):last-child{margin-right:-6px}.button-group.primary .button{background-color:#ffd545;color:#000}.button-group.primary .button:focus,.button-group.primary .button:hover{background-color:#ffc604;color:#000}.button-group.secondary .button{background-color:#22222a;color:#fff}.button-group.secondary .button:focus,.button-group.secondary .button:hover{background-color:#1b1b22;color:#fff}.button-group.success .button{background-color:#33a457;color:#000}.button-group.success .button:focus,.button-group.success .button:hover{background-color:#298346;color:#000}.button-group.warning .button{background-color:#e02424;color:#fff}.button-group.warning .button:focus,.button-group.warning .button:hover{background-color:#b61a1a;color:#fff}.button-group.alert .button{background-color:#860000;color:#fff}.button-group.alert .button:focus,.button-group.alert .button:hover{background-color:#6b0000;color:#fff}.button-group.stacked-for-medium .button,.button-group.stacked-for-small .button,.button-group.stacked .button{width:100%}.button-group.stacked-for-medium .button:last-child,.button-group.stacked-for-small .button:last-child,.button-group.stacked .button:last-child{margin-bottom:0}@media print,screen and (min-width:40em){.button-group.stacked-for-small .button{width:auto;margin-bottom:0}}@media print,screen and (min-width:64em){.button-group.stacked-for-medium .button{width:auto;margin-bottom:0}}@media screen and (max-width:39.9375em){.button-group.stacked-for-small.expanded{display:block}.button-group.stacked-for-small.expanded .button{display:block;margin-right:0}}.callout{position:relative;margin:0 0 1rem;padding:1rem;border:none;border-radius:0;background-color:#fff;color:#000}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout.primary{background-color:#fff9e3;color:#000}.callout.secondary{background-color:#dbdbe2;color:#000}.callout.success{background-color:#ddf5e5;color:#000}.callout.warning{background-color:#fadede;color:#000}.callout.alert{background-color:#ffc7c7;color:#000}.callout.small{padding:.5rem}.callout.large{padding:3rem}.card{margin-bottom:1rem;border:1px solid #f6f6f6;border-radius:0;background:#fff;box-shadow:none;overflow:hidden;color:#000}.card>:last-child{margin-bottom:0}.card-divider{padding:1rem;background:#f6f6f6}.card-divider>:last-child{margin-bottom:0}.card-section{padding:1rem}.card-section>:last-child{margin-bottom:0}.card-image{min-height:1px}.close-button{position:absolute;color:#171717;cursor:pointer}[data-whatinput=mouse] .close-button{outline:0}.close-button:focus,.close-button:hover{color:#000}.close-button.small{right:.66rem;top:.33em;font-size:1.5em;line-height:1}.close-button,.close-button.medium{right:1rem;top:.5rem;font-size:2em;line-height:1}.addresses .address .action-list,.menu,.my-account-has-nav .my-account-nav ul,.my-account-links,.page-my-account .link-list{padding:0;margin:0;list-style:none;position:relative}.addresses .address [data-whatinput=mouse] .action-list li,.my-account-has-nav .my-account-nav [data-whatinput=mouse] ul li,.page-my-account [data-whatinput=mouse] .link-list li,[data-whatinput=mouse] .addresses .address .action-list li,[data-whatinput=mouse] .menu li,[data-whatinput=mouse] .my-account-has-nav .my-account-nav ul li,[data-whatinput=mouse] .my-account-links li,[data-whatinput=mouse] .page-my-account .link-list li{outline:0}.addresses .address .action-list .button,.addresses .address .action-list a,.menu .button,.menu a,.my-account-has-nav .my-account-nav ul .button,.my-account-has-nav .my-account-nav ul a,.my-account-links .button,.my-account-links a,.page-my-account .link-list .button,.page-my-account .link-list a{line-height:1;text-decoration:none;display:block;padding:.7rem 1rem}.addresses .address .action-list a,.addresses .address .action-list button,.addresses .address .action-list input,.addresses .address .action-list select,.menu a,.menu button,.menu input,.menu select,.my-account-has-nav .my-account-nav ul a,.my-account-has-nav .my-account-nav ul button,.my-account-has-nav .my-account-nav ul input,.my-account-has-nav .my-account-nav ul select,.my-account-links a,.my-account-links button,.my-account-links input,.my-account-links select,.page-my-account .link-list a,.page-my-account .link-list button,.page-my-account .link-list input,.page-my-account .link-list select{margin-bottom:0}.addresses .address .action-list input,.addresses .address .action-list li,.horizontal.my-account-links li,.menu.horizontal li,.menu input,.menu li,.my-account-has-nav .my-account-nav ul.horizontal li,.my-account-has-nav .my-account-nav ul input,.my-account-has-nav .my-account-nav ul li,.my-account-links input,.my-account-links li,.page-my-account .horizontal.link-list li,.page-my-account .link-list input,.page-my-account .link-list li{display:inline-block}.addresses .address .vertical.action-list li,.menu.vertical li,.my-account-has-nav .my-account-nav ul li,.page-my-account .link-list li,.vertical.my-account-links li{display:block}.addresses .address .expanded.action-list,.expanded.my-account-links,.menu.expanded,.my-account-has-nav .my-account-nav ul.expanded,.page-my-account .expanded.link-list{display:table;width:100%}.addresses .address .expanded.action-list>li,.expanded.my-account-links>li,.menu.expanded>li,.my-account-has-nav .my-account-nav ul.expanded>li,.page-my-account .expanded.link-list>li{display:table-cell;vertical-align:middle}.addresses .address .simple.action-list li+li,.menu.simple li+li,.my-account-has-nav .my-account-nav ul.simple li+li,.page-my-account .simple.link-list li+li,.simple.my-account-links li+li{margin-left:1rem}.addresses .address .simple.action-list a,.menu.simple a,.my-account-has-nav .my-account-nav ul.simple a,.page-my-account .simple.link-list a,.simple.my-account-links a{padding:0}@media print,screen and (min-width:40em){.addresses .address .medium-horizontal.action-list li,.medium-horizontal.my-account-links li,.menu.medium-horizontal li,.my-account-has-nav .my-account-nav ul.medium-horizontal li,.page-my-account .medium-horizontal.link-list li{display:inline-block}.addresses .address .medium-vertical.action-list li,.medium-vertical.my-account-links li,.menu.medium-vertical li,.my-account-has-nav .my-account-nav ul.medium-vertical li,.page-my-account .medium-vertical.link-list li{display:block}.addresses .address .medium-expanded.action-list,.medium-expanded.my-account-links,.menu.medium-expanded,.my-account-has-nav .my-account-nav ul.medium-expanded,.page-my-account .medium-expanded.link-list{display:table;width:100%}.addresses .address .medium-expanded.action-list>li,.medium-expanded.my-account-links>li,.menu.medium-expanded>li,.my-account-has-nav .my-account-nav ul.medium-expanded>li,.page-my-account .medium-expanded.link-list>li{display:table-cell;vertical-align:middle}.addresses .address .medium-simple.action-list,.medium-simple.my-account-links,.menu.medium-simple,.my-account-has-nav .my-account-nav ul.medium-simple,.page-my-account .medium-simple.link-list{display:table;width:100%}.addresses .address .medium-simple.action-list>li,.medium-simple.my-account-links>li,.menu.medium-simple>li,.my-account-has-nav .my-account-nav ul.medium-simple>li,.page-my-account .medium-simple.link-list>li{display:table-cell;vertical-align:middle}}@media print,screen and (min-width:64em){.addresses .address .large-horizontal.action-list li,.large-horizontal.my-account-links li,.menu.large-horizontal li,.my-account-has-nav .my-account-nav ul.large-horizontal li,.page-my-account .large-horizontal.link-list li{display:inline-block}.addresses .address .large-vertical.action-list li,.large-vertical.my-account-links li,.menu.large-vertical li,.my-account-has-nav .my-account-nav ul.large-vertical li,.page-my-account .large-vertical.link-list li{display:block}.addresses .address .large-expanded.action-list,.large-expanded.my-account-links,.menu.large-expanded,.my-account-has-nav .my-account-nav ul.large-expanded,.page-my-account .large-expanded.link-list{display:table;width:100%}.addresses .address .large-expanded.action-list>li,.large-expanded.my-account-links>li,.menu.large-expanded>li,.my-account-has-nav .my-account-nav ul.large-expanded>li,.page-my-account .large-expanded.link-list>li{display:table-cell;vertical-align:middle}.addresses .address .large-simple.action-list,.large-simple.my-account-links,.menu.large-simple,.my-account-has-nav .my-account-nav ul.large-simple,.page-my-account .large-simple.link-list{display:table;width:100%}.addresses .address .large-simple.action-list>li,.large-simple.my-account-links>li,.menu.large-simple>li,.my-account-has-nav .my-account-nav ul.large-simple>li,.page-my-account .large-simple.link-list>li{display:table-cell;vertical-align:middle}}.addresses .address .nested.action-list,.menu.nested,.my-account-has-nav .my-account-nav ul.nested,.nested.my-account-links,.page-my-account .nested.link-list{margin-right:0;margin-left:1rem}.addresses .address .icon-bottom.action-list i,.addresses .address .icon-bottom.action-list i+span,.addresses .address .icon-bottom.action-list img,.addresses .address .icon-bottom.action-list img+span,.addresses .address .icon-bottom.action-list svg,.addresses .address .icon-bottom.action-list svg+span,.addresses .address .icon-left.action-list i,.addresses .address .icon-left.action-list i+span,.addresses .address .icon-left.action-list img,.addresses .address .icon-left.action-list img+span,.addresses .address .icon-left.action-list svg,.addresses .address .icon-left.action-list svg+span,.addresses .address .icon-right.action-list i,.addresses .address .icon-right.action-list i+span,.addresses .address .icon-right.action-list img,.addresses .address .icon-right.action-list img+span,.addresses .address .icon-right.action-list svg,.addresses .address .icon-right.action-list svg+span,.addresses .address .icon-top.action-list i,.addresses .address .icon-top.action-list i+span,.addresses .address .icon-top.action-list img,.addresses .address .icon-top.action-list img+span,.addresses .address .icon-top.action-list svg,.addresses .address .icon-top.action-list svg+span,.addresses .address .icons.action-list i,.addresses .address .icons.action-list i+span,.addresses .address .icons.action-list img,.addresses .address .icons.action-list img+span,.addresses .address .icons.action-list svg,.addresses .address .icons.action-list svg+span,.icon-bottom.my-account-links i,.icon-bottom.my-account-links i+span,.icon-bottom.my-account-links img,.icon-bottom.my-account-links img+span,.icon-bottom.my-account-links svg,.icon-bottom.my-account-links svg+span,.icon-left.my-account-links i,.icon-left.my-account-links i+span,.icon-left.my-account-links img,.icon-left.my-account-links img+span,.icon-left.my-account-links svg,.icon-left.my-account-links svg+span,.icon-right.my-account-links i,.icon-right.my-account-links i+span,.icon-right.my-account-links img,.icon-right.my-account-links img+span,.icon-right.my-account-links svg,.icon-right.my-account-links svg+span,.icon-top.my-account-links i,.icon-top.my-account-links i+span,.icon-top.my-account-links img,.icon-top.my-account-links img+span,.icon-top.my-account-links svg,.icon-top.my-account-links svg+span,.icons.my-account-links i,.icons.my-account-links i+span,.icons.my-account-links img,.icons.my-account-links img+span,.icons.my-account-links svg,.icons.my-account-links svg+span,.menu.icon-bottom i,.menu.icon-bottom i+span,.menu.icon-bottom img,.menu.icon-bottom img+span,.menu.icon-bottom svg,.menu.icon-bottom svg+span,.menu.icon-left i,.menu.icon-left i+span,.menu.icon-left img,.menu.icon-left img+span,.menu.icon-left svg,.menu.icon-left svg+span,.menu.icon-right i,.menu.icon-right i+span,.menu.icon-right img,.menu.icon-right img+span,.menu.icon-right svg,.menu.icon-right svg+span,.menu.icon-top i,.menu.icon-top i+span,.menu.icon-top img,.menu.icon-top img+span,.menu.icon-top svg,.menu.icon-top svg+span,.menu.icons i,.menu.icons i+span,.menu.icons img,.menu.icons img+span,.menu.icons svg,.menu.icons svg+span,.my-account-has-nav .my-account-nav ul.icon-bottom i,.my-account-has-nav .my-account-nav ul.icon-bottom i+span,.my-account-has-nav .my-account-nav ul.icon-bottom img,.my-account-has-nav .my-account-nav ul.icon-bottom img+span,.my-account-has-nav .my-account-nav ul.icon-bottom svg,.my-account-has-nav .my-account-nav ul.icon-bottom svg+span,.my-account-has-nav .my-account-nav ul.icon-left i,.my-account-has-nav .my-account-nav ul.icon-left i+span,.my-account-has-nav .my-account-nav ul.icon-left img,.my-account-has-nav .my-account-nav ul.icon-left img+span,.my-account-has-nav .my-account-nav ul.icon-left svg,.my-account-has-nav .my-account-nav ul.icon-left svg+span,.my-account-has-nav .my-account-nav ul.icon-right i,.my-account-has-nav .my-account-nav ul.icon-right i+span,.my-account-has-nav .my-account-nav ul.icon-right img,.my-account-has-nav .my-account-nav ul.icon-right img+span,.my-account-has-nav .my-account-nav ul.icon-right svg,.my-account-has-nav .my-account-nav ul.icon-right svg+span,.my-account-has-nav .my-account-nav ul.icon-top i,.my-account-has-nav .my-account-nav ul.icon-top i+span,.my-account-has-nav .my-account-nav ul.icon-top img,.my-account-has-nav .my-account-nav ul.icon-top img+span,.my-account-has-nav .my-account-nav ul.icon-top svg,.my-account-has-nav .my-account-nav ul.icon-top svg+span,.my-account-has-nav .my-account-nav ul.icons i,.my-account-has-nav .my-account-nav ul.icons i+span,.my-account-has-nav .my-account-nav ul.icons img,.my-account-has-nav .my-account-nav ul.icons img+span,.my-account-has-nav .my-account-nav ul.icons svg,.my-account-has-nav .my-account-nav ul.icons svg+span,.page-my-account .icon-bottom.link-list i,.page-my-account .icon-bottom.link-list i+span,.page-my-account .icon-bottom.link-list img,.page-my-account .icon-bottom.link-list img+span,.page-my-account .icon-bottom.link-list svg,.page-my-account .icon-bottom.link-list svg+span,.page-my-account .icon-left.link-list i,.page-my-account .icon-left.link-list i+span,.page-my-account .icon-left.link-list img,.page-my-account .icon-left.link-list img+span,.page-my-account .icon-left.link-list svg,.page-my-account .icon-left.link-list svg+span,.page-my-account .icon-right.link-list i,.page-my-account .icon-right.link-list i+span,.page-my-account .icon-right.link-list img,.page-my-account .icon-right.link-list img+span,.page-my-account .icon-right.link-list svg,.page-my-account .icon-right.link-list svg+span,.page-my-account .icon-top.link-list i,.page-my-account .icon-top.link-list i+span,.page-my-account .icon-top.link-list img,.page-my-account .icon-top.link-list img+span,.page-my-account .icon-top.link-list svg,.page-my-account .icon-top.link-list svg+span,.page-my-account .icons.link-list i,.page-my-account .icons.link-list i+span,.page-my-account .icons.link-list img,.page-my-account .icons.link-list img+span,.page-my-account .icons.link-list svg,.page-my-account .icons.link-list svg+span{vertical-align:middle}.addresses .address .icon-left.action-list li a i,.addresses .address .icon-left.action-list li a img,.addresses .address .icon-left.action-list li a svg,.icon-left.my-account-links li a i,.icon-left.my-account-links li a img,.icon-left.my-account-links li a svg,.menu.icon-left li a i,.menu.icon-left li a img,.menu.icon-left li a svg,.my-account-has-nav .my-account-nav ul.icon-left li a i,.my-account-has-nav .my-account-nav ul.icon-left li a img,.my-account-has-nav .my-account-nav ul.icon-left li a svg,.page-my-account .icon-left.link-list li a i,.page-my-account .icon-left.link-list li a img,.page-my-account .icon-left.link-list li a svg{margin-right:.25rem;display:inline-block}.addresses .address .icon-right.action-list li a i,.addresses .address .icon-right.action-list li a img,.addresses .address .icon-right.action-list li a svg,.icon-right.my-account-links li a i,.icon-right.my-account-links li a img,.icon-right.my-account-links li a svg,.menu.icon-right li a i,.menu.icon-right li a img,.menu.icon-right li a svg,.my-account-has-nav .my-account-nav ul.icon-right li a i,.my-account-has-nav .my-account-nav ul.icon-right li a img,.my-account-has-nav .my-account-nav ul.icon-right li a svg,.page-my-account .icon-right.link-list li a i,.page-my-account .icon-right.link-list li a img,.page-my-account .icon-right.link-list li a svg{margin-left:.25rem;display:inline-block}.addresses .address .icon-top.action-list li a,.icon-top.my-account-links li a,.menu.icon-top li a,.my-account-has-nav .my-account-nav ul.icon-top li a,.page-my-account .icon-top.link-list li a{text-align:center}.addresses .address .icon-top.action-list li a i,.addresses .address .icon-top.action-list li a img,.addresses .address .icon-top.action-list li a svg,.icon-top.my-account-links li a i,.icon-top.my-account-links li a img,.icon-top.my-account-links li a svg,.menu.icon-top li a i,.menu.icon-top li a img,.menu.icon-top li a svg,.my-account-has-nav .my-account-nav ul.icon-top li a i,.my-account-has-nav .my-account-nav ul.icon-top li a img,.my-account-has-nav .my-account-nav ul.icon-top li a svg,.page-my-account .icon-top.link-list li a i,.page-my-account .icon-top.link-list li a img,.page-my-account .icon-top.link-list li a svg{display:block;margin:0 auto .25rem}.addresses .address .icon-bottom.action-list li a,.icon-bottom.my-account-links li a,.menu.icon-bottom li a,.my-account-has-nav .my-account-nav ul.icon-bottom li a,.page-my-account .icon-bottom.link-list li a{text-align:center}.addresses .address .icon-bottom.action-list li a i,.addresses .address .icon-bottom.action-list li a img,.addresses .address .icon-bottom.action-list li a svg,.icon-bottom.my-account-links li a i,.icon-bottom.my-account-links li a img,.icon-bottom.my-account-links li a svg,.menu.icon-bottom li a i,.menu.icon-bottom li a img,.menu.icon-bottom li a svg,.my-account-has-nav .my-account-nav ul.icon-bottom li a i,.my-account-has-nav .my-account-nav ul.icon-bottom li a img,.my-account-has-nav .my-account-nav ul.icon-bottom li a svg,.page-my-account .icon-bottom.link-list li a i,.page-my-account .icon-bottom.link-list li a img,.page-my-account .icon-bottom.link-list li a svg{display:block;margin:.25rem auto 0}.addresses .address .action-list .active>a,.addresses .address .action-list .is-active>a,.menu .active>a,.menu .is-active>a,.my-account-has-nav .my-account-nav ul .active>a,.my-account-has-nav .my-account-nav ul .is-active>a,.my-account-links .active>a,.my-account-links .is-active>a,.page-my-account .link-list .active>a,.page-my-account .link-list .is-active>a{background:#ffd545;color:#fff}.addresses .address .align-left.action-list,.align-left.my-account-links,.menu.align-left,.my-account-has-nav .my-account-nav ul.align-left,.page-my-account .align-left.link-list{text-align:left}.addresses .address .align-right.action-list,.align-right.my-account-links,.menu.align-right,.my-account-has-nav .my-account-nav ul.align-right,.page-my-account .align-right.link-list{text-align:right}.addresses .address .align-right.action-list .submenu li,.align-right.my-account-links .submenu li,.menu.align-right .submenu li,.my-account-has-nav .my-account-nav ul.align-right .submenu li,.page-my-account .align-right.link-list .submenu li{text-align:left}.addresses .address .align-right.vertical.action-list .submenu li,.align-right.vertical.my-account-links .submenu li,.menu.align-right.vertical .submenu li,.my-account-has-nav .my-account-nav ul.align-right .submenu li,.page-my-account .align-right.link-list .submenu li{text-align:right}.addresses .address .align-right.action-list .nested,.align-right.my-account-links .nested,.menu.align-right .nested,.my-account-has-nav .my-account-nav ul.align-right .nested,.page-my-account .align-right.link-list .nested{margin-right:1rem;margin-left:0}.addresses .address .align-center.action-list,.align-center.my-account-links,.menu.align-center,.my-account-has-nav .my-account-nav ul.align-center,.page-my-account .align-center.link-list{text-align:center}.addresses .address .align-center.action-list .submenu li,.align-center.my-account-links .submenu li,.menu.align-center .submenu li,.my-account-has-nav .my-account-nav ul.align-center .submenu li,.page-my-account .align-center.link-list .submenu li{text-align:left}.addresses .address .action-list .menu-text,.menu .menu-text,.my-account-has-nav .my-account-nav ul .menu-text,.my-account-links .menu-text,.page-my-account .link-list .menu-text{padding:.7rem 1rem;font-weight:700;line-height:1;color:inherit}.addresses .address .menu-centered>.action-list,.menu-centered>.menu,.menu-centered>.my-account-links,.my-account-has-nav .my-account-nav .menu-centered>ul,.page-my-account .menu-centered>.link-list{text-align:center}.addresses .address .menu-centered>.action-list .submenu li,.menu-centered>.menu .submenu li,.menu-centered>.my-account-links .submenu li,.my-account-has-nav .my-account-nav .menu-centered>ul .submenu li,.page-my-account .menu-centered>.link-list .submenu li{text-align:left}.no-js [data-responsive-menu] ul{display:none}.menu-icon{position:relative;display:inline-block;vertical-align:middle;width:20px;height:16px;cursor:pointer}.menu-icon:after{position:absolute;top:0;left:0;display:block;width:100%;height:2px;background:#fff;box-shadow:0 7px 0 #fff,0 14px 0 #fff;content:""}.menu-icon:hover:after{background:#868686;box-shadow:0 7px 0 #868686,0 14px 0 #868686}.menu-icon.dark{position:relative;display:inline-block;vertical-align:middle;width:20px;height:16px;cursor:pointer}.menu-icon.dark:after{position:absolute;top:0;left:0;display:block;width:100%;height:2px;background:#000;box-shadow:0 7px 0 #000,0 14px 0 #000;content:""}.menu-icon.dark:hover:after{background:#171717;box-shadow:0 7px 0 #171717,0 14px 0 #171717}.is-drilldown{position:relative;overflow:hidden}.is-drilldown li{display:block}.is-drilldown.animate-height{transition:height .5s}.drilldown a{padding:.7rem 1rem;background:#fff}.drilldown .is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;width:100%;background:#fff;transition:transform .15s linear}.drilldown .is-drilldown-submenu.is-active{z-index:1;display:block;transform:translateX(-100%)}.drilldown .is-drilldown-submenu.is-closing{transform:translateX(100%)}.drilldown .is-drilldown-submenu a{padding:.7rem 1rem}.drilldown .nested.is-drilldown-submenu{margin-right:0;margin-left:0}.drilldown .drilldown-submenu-cover-previous{min-height:100%}.drilldown .is-drilldown-submenu-parent>a{position:relative}.drilldown .is-drilldown-submenu-parent>a:after{position:absolute;top:50%;margin-top:-6px}.drilldown.align-left .is-drilldown-submenu-parent>a:after,.drilldown .is-drilldown-submenu-parent>a:after{right:1rem;display:block;width:0;height:0;border:6px inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #ffd545}.drilldown.align-left .is-drilldown-submenu-parent>a:after{left:auto}.drilldown.align-right .is-drilldown-submenu-parent>a:after{right:auto;left:1rem;display:block}.drilldown.align-right .is-drilldown-submenu-parent>a:after,.drilldown .js-drilldown-back>a:before{width:0;height:0;border:6px inset;content:"";border-left-width:0;border-right-style:solid;border-color:transparent #ffd545 transparent transparent}.drilldown .js-drilldown-back>a:before{display:block;display:inline-block;vertical-align:middle;margin-right:.75rem}.dropdown-pane{position:absolute;z-index:10;width:300px;padding:1rem;visibility:hidden;display:none;border:1px solid #868686;border-radius:0;background-color:#fff;font-size:1rem}.dropdown-pane.is-opening{display:block}.dropdown-pane.is-open{visibility:visible;display:block}.dropdown-pane.tiny{width:100px}.dropdown-pane.small{width:200px}.dropdown-pane.large{width:400px}.addresses .address .dropdown.action-list>li.opens-left>.is-dropdown-submenu,.dropdown.menu>li.opens-left>.is-dropdown-submenu,.dropdown.my-account-links>li.opens-left>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown>li.opens-left>.is-dropdown-submenu,.page-my-account .dropdown.link-list>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.addresses .address .dropdown.action-list>li.opens-right>.is-dropdown-submenu,.dropdown.menu>li.opens-right>.is-dropdown-submenu,.dropdown.my-account-links>li.opens-right>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown>li.opens-right>.is-dropdown-submenu,.page-my-account .dropdown.link-list>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.addresses .address .dropdown.action-list>li.is-dropdown-submenu-parent>a,.dropdown.menu>li.is-dropdown-submenu-parent>a,.dropdown.my-account-links>li.is-dropdown-submenu-parent>a,.my-account-has-nav .my-account-nav ul.dropdown>li.is-dropdown-submenu-parent>a,.page-my-account .dropdown.link-list>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.addresses .address .dropdown.action-list>li.is-dropdown-submenu-parent>a:after,.dropdown.menu>li.is-dropdown-submenu-parent>a:after,.dropdown.my-account-links>li.is-dropdown-submenu-parent>a:after,.my-account-has-nav .my-account-nav ul.dropdown>li.is-dropdown-submenu-parent>a:after,.page-my-account .dropdown.link-list>li.is-dropdown-submenu-parent>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#ffd545 transparent transparent;right:5px;left:auto;margin-top:-3px}.addresses .address .dropdown.action-list a,.dropdown.menu a,.dropdown.my-account-links a,.my-account-has-nav .my-account-nav ul.dropdown a,.page-my-account .dropdown.link-list a{padding:.7rem 1rem}.addresses .address [data-whatinput=mouse] .dropdown.action-list a,.my-account-has-nav .my-account-nav [data-whatinput=mouse] ul.dropdown a,.page-my-account [data-whatinput=mouse] .dropdown.link-list a,[data-whatinput=mouse] .addresses .address .dropdown.action-list a,[data-whatinput=mouse] .dropdown.menu a,[data-whatinput=mouse] .dropdown.my-account-links a,[data-whatinput=mouse] .my-account-has-nav .my-account-nav ul.dropdown a,[data-whatinput=mouse] .page-my-account .dropdown.link-list a{outline:0}.addresses .address .dropdown.action-list .is-active>a,.dropdown.menu .is-active>a,.dropdown.my-account-links .is-active>a,.my-account-has-nav .my-account-nav ul.dropdown .is-active>a,.page-my-account .dropdown.link-list .is-active>a{background:transparent;color:#ffd545}.addresses .address .no-js .dropdown.action-list ul,.my-account-has-nav .my-account-nav .no-js ul.dropdown ul,.no-js .addresses .address .dropdown.action-list ul,.no-js .dropdown.menu ul,.no-js .dropdown.my-account-links ul,.no-js .my-account-has-nav .my-account-nav ul.dropdown ul,.no-js .page-my-account .dropdown.link-list ul,.page-my-account .no-js .dropdown.link-list ul{display:none}.addresses .address .dropdown.action-list .nested.is-dropdown-submenu,.dropdown.menu .nested.is-dropdown-submenu,.dropdown.my-account-links .nested.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown .nested.is-dropdown-submenu,.page-my-account .dropdown.link-list .nested.is-dropdown-submenu{margin-right:0;margin-left:0}.addresses .address .dropdown.vertical.action-list>li .is-dropdown-submenu,.dropdown.menu.vertical>li .is-dropdown-submenu,.dropdown.vertical.my-account-links>li .is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown>li .is-dropdown-submenu,.page-my-account .dropdown.link-list>li .is-dropdown-submenu{top:0}.addresses .address .dropdown.vertical.action-list>li.opens-left>.is-dropdown-submenu,.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu,.dropdown.vertical.my-account-links>li.opens-left>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown>li.opens-left>.is-dropdown-submenu,.page-my-account .dropdown.link-list>li.opens-left>.is-dropdown-submenu{right:100%;left:auto;top:0}.addresses .address .dropdown.vertical.action-list>li.opens-right>.is-dropdown-submenu,.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu,.dropdown.vertical.my-account-links>li.opens-right>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown>li.opens-right>.is-dropdown-submenu,.page-my-account .dropdown.link-list>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.addresses .address .dropdown.vertical.action-list>li>a:after,.dropdown.menu.vertical>li>a:after,.dropdown.vertical.my-account-links>li>a:after,.my-account-has-nav .my-account-nav ul.dropdown>li>a:after,.page-my-account .dropdown.link-list>li>a:after{right:14px}.addresses .address .dropdown.vertical.action-list>li.opens-left>a:after,.dropdown.menu.vertical>li.opens-left>a:after,.dropdown.vertical.my-account-links>li.opens-left>a:after,.my-account-has-nav .my-account-nav ul.dropdown>li.opens-left>a:after,.page-my-account .dropdown.link-list>li.opens-left>a:after{right:auto;left:5px;display:block;width:0;height:0;border:6px inset;content:"";border-left-width:0;border-right-style:solid;border-color:transparent #ffd545 transparent transparent}.addresses .address .dropdown.vertical.action-list>li.opens-right>a:after,.dropdown.menu.vertical>li.opens-right>a:after,.dropdown.vertical.my-account-links>li.opens-right>a:after,.my-account-has-nav .my-account-nav ul.dropdown>li.opens-right>a:after,.page-my-account .dropdown.link-list>li.opens-right>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #ffd545}@media print,screen and (min-width:40em){.addresses .address .dropdown.medium-horizontal.action-list>li.opens-left>.is-dropdown-submenu,.dropdown.medium-horizontal.my-account-links>li.opens-left>.is-dropdown-submenu,.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.medium-horizontal>li.opens-left>.is-dropdown-submenu,.page-my-account .dropdown.medium-horizontal.link-list>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.addresses .address .dropdown.medium-horizontal.action-list>li.opens-right>.is-dropdown-submenu,.dropdown.medium-horizontal.my-account-links>li.opens-right>.is-dropdown-submenu,.dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.medium-horizontal>li.opens-right>.is-dropdown-submenu,.page-my-account .dropdown.medium-horizontal.link-list>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.addresses .address .dropdown.medium-horizontal.action-list>li.is-dropdown-submenu-parent>a,.dropdown.medium-horizontal.my-account-links>li.is-dropdown-submenu-parent>a,.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a,.my-account-has-nav .my-account-nav ul.dropdown.medium-horizontal>li.is-dropdown-submenu-parent>a,.page-my-account .dropdown.medium-horizontal.link-list>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.addresses .address .dropdown.medium-horizontal.action-list>li.is-dropdown-submenu-parent>a:after,.dropdown.medium-horizontal.my-account-links>li.is-dropdown-submenu-parent>a:after,.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a:after,.my-account-has-nav .my-account-nav ul.dropdown.medium-horizontal>li.is-dropdown-submenu-parent>a:after,.page-my-account .dropdown.medium-horizontal.link-list>li.is-dropdown-submenu-parent>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#ffd545 transparent transparent;right:5px;left:auto;margin-top:-3px}.addresses .address .dropdown.medium-vertical.action-list>li .is-dropdown-submenu,.dropdown.medium-vertical.my-account-links>li .is-dropdown-submenu,.dropdown.menu.medium-vertical>li .is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.medium-vertical>li .is-dropdown-submenu,.page-my-account .dropdown.medium-vertical.link-list>li .is-dropdown-submenu{top:0}.addresses .address .dropdown.medium-vertical.action-list>li.opens-left>.is-dropdown-submenu,.dropdown.medium-vertical.my-account-links>li.opens-left>.is-dropdown-submenu,.dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.medium-vertical>li.opens-left>.is-dropdown-submenu,.page-my-account .dropdown.medium-vertical.link-list>li.opens-left>.is-dropdown-submenu{right:100%;left:auto;top:0}.addresses .address .dropdown.medium-vertical.action-list>li.opens-right>.is-dropdown-submenu,.dropdown.medium-vertical.my-account-links>li.opens-right>.is-dropdown-submenu,.dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.medium-vertical>li.opens-right>.is-dropdown-submenu,.page-my-account .dropdown.medium-vertical.link-list>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.addresses .address .dropdown.medium-vertical.action-list>li>a:after,.dropdown.medium-vertical.my-account-links>li>a:after,.dropdown.menu.medium-vertical>li>a:after,.my-account-has-nav .my-account-nav ul.dropdown.medium-vertical>li>a:after,.page-my-account .dropdown.medium-vertical.link-list>li>a:after{right:14px}.addresses .address .dropdown.medium-vertical.action-list>li.opens-left>a:after,.dropdown.medium-vertical.my-account-links>li.opens-left>a:after,.dropdown.menu.medium-vertical>li.opens-left>a:after,.my-account-has-nav .my-account-nav ul.dropdown.medium-vertical>li.opens-left>a:after,.page-my-account .dropdown.medium-vertical.link-list>li.opens-left>a:after{right:auto;left:5px;display:block;width:0;height:0;border:6px inset;content:"";border-left-width:0;border-right-style:solid;border-color:transparent #ffd545 transparent transparent}.addresses .address .dropdown.medium-vertical.action-list>li.opens-right>a:after,.dropdown.medium-vertical.my-account-links>li.opens-right>a:after,.dropdown.menu.medium-vertical>li.opens-right>a:after,.my-account-has-nav .my-account-nav ul.dropdown.medium-vertical>li.opens-right>a:after,.page-my-account .dropdown.medium-vertical.link-list>li.opens-right>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #ffd545}}@media print,screen and (min-width:64em){.addresses .address .dropdown.large-horizontal.action-list>li.opens-left>.is-dropdown-submenu,.dropdown.large-horizontal.my-account-links>li.opens-left>.is-dropdown-submenu,.dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.large-horizontal>li.opens-left>.is-dropdown-submenu,.page-my-account .dropdown.large-horizontal.link-list>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.addresses .address .dropdown.large-horizontal.action-list>li.opens-right>.is-dropdown-submenu,.dropdown.large-horizontal.my-account-links>li.opens-right>.is-dropdown-submenu,.dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.large-horizontal>li.opens-right>.is-dropdown-submenu,.page-my-account .dropdown.large-horizontal.link-list>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.addresses .address .dropdown.large-horizontal.action-list>li.is-dropdown-submenu-parent>a,.dropdown.large-horizontal.my-account-links>li.is-dropdown-submenu-parent>a,.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a,.my-account-has-nav .my-account-nav ul.dropdown.large-horizontal>li.is-dropdown-submenu-parent>a,.page-my-account .dropdown.large-horizontal.link-list>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.addresses .address .dropdown.large-horizontal.action-list>li.is-dropdown-submenu-parent>a:after,.dropdown.large-horizontal.my-account-links>li.is-dropdown-submenu-parent>a:after,.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a:after,.my-account-has-nav .my-account-nav ul.dropdown.large-horizontal>li.is-dropdown-submenu-parent>a:after,.page-my-account .dropdown.large-horizontal.link-list>li.is-dropdown-submenu-parent>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#ffd545 transparent transparent;right:5px;left:auto;margin-top:-3px}.addresses .address .dropdown.large-vertical.action-list>li .is-dropdown-submenu,.dropdown.large-vertical.my-account-links>li .is-dropdown-submenu,.dropdown.menu.large-vertical>li .is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.large-vertical>li .is-dropdown-submenu,.page-my-account .dropdown.large-vertical.link-list>li .is-dropdown-submenu{top:0}.addresses .address .dropdown.large-vertical.action-list>li.opens-left>.is-dropdown-submenu,.dropdown.large-vertical.my-account-links>li.opens-left>.is-dropdown-submenu,.dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.large-vertical>li.opens-left>.is-dropdown-submenu,.page-my-account .dropdown.large-vertical.link-list>li.opens-left>.is-dropdown-submenu{right:100%;left:auto;top:0}.addresses .address .dropdown.large-vertical.action-list>li.opens-right>.is-dropdown-submenu,.dropdown.large-vertical.my-account-links>li.opens-right>.is-dropdown-submenu,.dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu,.my-account-has-nav .my-account-nav ul.dropdown.large-vertical>li.opens-right>.is-dropdown-submenu,.page-my-account .dropdown.large-vertical.link-list>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.addresses .address .dropdown.large-vertical.action-list>li>a:after,.dropdown.large-vertical.my-account-links>li>a:after,.dropdown.menu.large-vertical>li>a:after,.my-account-has-nav .my-account-nav ul.dropdown.large-vertical>li>a:after,.page-my-account .dropdown.large-vertical.link-list>li>a:after{right:14px}.addresses .address .dropdown.large-vertical.action-list>li.opens-left>a:after,.dropdown.large-vertical.my-account-links>li.opens-left>a:after,.dropdown.menu.large-vertical>li.opens-left>a:after,.my-account-has-nav .my-account-nav ul.dropdown.large-vertical>li.opens-left>a:after,.page-my-account .dropdown.large-vertical.link-list>li.opens-left>a:after{right:auto;left:5px;display:block;width:0;height:0;border:6px inset;content:"";border-left-width:0;border-right-style:solid;border-color:transparent #ffd545 transparent transparent}.addresses .address .dropdown.large-vertical.action-list>li.opens-right>a:after,.dropdown.large-vertical.my-account-links>li.opens-right>a:after,.dropdown.menu.large-vertical>li.opens-right>a:after,.my-account-has-nav .my-account-nav ul.dropdown.large-vertical>li.opens-right>a:after,.page-my-account .dropdown.large-vertical.link-list>li.opens-right>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #ffd545}}.addresses .address .dropdown.align-right.action-list .is-dropdown-submenu.first-sub,.dropdown.align-right.my-account-links .is-dropdown-submenu.first-sub,.dropdown.menu.align-right .is-dropdown-submenu.first-sub,.my-account-has-nav .my-account-nav ul.dropdown.align-right .is-dropdown-submenu.first-sub,.page-my-account .dropdown.align-right.link-list .is-dropdown-submenu.first-sub{top:100%;right:0;left:auto}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a:after{position:absolute;top:50%;right:5px;left:auto;margin-top:-6px}.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu{top:100%;left:auto}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{right:100%;left:auto}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{right:auto;left:100%}.is-dropdown-submenu{position:absolute;top:0;left:100%;z-index:1;display:none;min-width:200px;border:1px solid #868686;background:#fff}.dropdown .is-dropdown-submenu a{padding:.7rem 1rem}.is-dropdown-submenu .is-dropdown-submenu-parent>a:after{right:14px}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a:after{right:auto;left:5px;display:block;width:0;height:0;border:6px inset;content:"";border-left-width:0;border-right-style:solid;border-color:transparent #ffd545 transparent transparent}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a:after{display:block;width:0;height:0;border:6px inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #ffd545}.is-dropdown-submenu .is-dropdown-submenu{margin-top:-1px}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active{display:block}.flex-video,.responsive-embed{position:relative;height:0;margin-bottom:1rem;padding-bottom:75%;overflow:hidden}.flex-video embed,.flex-video iframe,.flex-video object,.flex-video video,.responsive-embed embed,.responsive-embed iframe,.responsive-embed object,.responsive-embed video{position:absolute;top:0;left:0;width:100%;height:100%}.flex-video.widescreen,.responsive-embed.widescreen{padding-bottom:56.25%}.label{display:inline-block;padding:.33333rem .5rem;border-radius:0;font-size:.8rem;line-height:1;white-space:nowrap;cursor:default;background:#ffd545;color:#fff}.label.primary{background:#ffd545;color:#000}.label.secondary{background:#22222a;color:#fff}.label.success{background:#33a457;color:#000}.label.warning{background:#e02424;color:#fff}.label.alert{background:#860000;color:#fff}.media-object{display:block;margin-bottom:1rem}.media-object img{max-width:none}@media screen and (max-width:39.9375em){.media-object.stack-for-small .media-object-section{padding:0;padding-bottom:1rem;display:block}.media-object.stack-for-small .media-object-section img{width:100%}}.media-object-section{display:table-cell;vertical-align:top}.media-object-section:first-child{padding-right:1rem}.media-object-section:last-child:not(:nth-child(2)){padding-left:1rem}.media-object-section>:last-child{margin-bottom:0}.media-object-section.middle{vertical-align:middle}.media-object-section.bottom{vertical-align:bottom}.is-off-canvas-open{overflow:hidden}.js-off-canvas-overlay{position:absolute;top:0;left:0;z-index:11;width:100%;height:100%;transition:opacity .5s ease,visibility .5s ease;background:hsla(0,0%,100%,.25);opacity:0;visibility:hidden;overflow:hidden}.js-off-canvas-overlay.is-visible{opacity:1;visibility:visible}.js-off-canvas-overlay.is-closable{cursor:pointer}.js-off-canvas-overlay.is-overlay-absolute{position:absolute}.js-off-canvas-overlay.is-overlay-fixed{position:fixed}.off-canvas-wrapper{position:relative;overflow:hidden}.off-canvas{position:fixed;z-index:12;transition:transform .5s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden;background:#f6f6f6}[data-whatinput=mouse] .off-canvas{outline:0}.off-canvas.is-transition-push{z-index:12}.off-canvas.is-closed{visibility:hidden}.off-canvas.is-transition-overlap{z-index:13}.off-canvas.is-transition-overlap.is-open{box-shadow:0 0 10px rgba(0,0,0,.7)}.off-canvas.is-open{transform:translate(0)}.off-canvas-absolute{position:absolute;z-index:12;transition:transform .5s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden;background:#f6f6f6}[data-whatinput=mouse] .off-canvas-absolute{outline:0}.off-canvas-absolute.is-transition-push{z-index:12}.off-canvas-absolute.is-closed{visibility:hidden}.off-canvas-absolute.is-transition-overlap{z-index:13}.off-canvas-absolute.is-transition-overlap.is-open{box-shadow:0 0 10px rgba(0,0,0,.7)}.off-canvas-absolute.is-open{transform:translate(0)}.position-left{top:0;left:0;height:100%;overflow-y:auto;width:250px;transform:translateX(-250px)}@media print,screen and (min-width:40em){.position-left{width:250px;transform:translateX(-250px)}}.off-canvas-content .off-canvas.position-left{transform:translateX(-250px)}@media print,screen and (min-width:40em){.off-canvas-content .off-canvas.position-left{transform:translateX(-250px)}}.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open{transform:translate(0)}.off-canvas-content.is-open-left.has-transition-push{transform:translateX(250px)}@media print,screen and (min-width:40em){.off-canvas-content.is-open-left.has-transition-push{transform:translateX(250px)}}.position-left.is-transition-push{box-shadow:inset -13px 0 20px -13px rgba(0,0,0,.25)}.position-right{top:0;right:0;height:100%;overflow-y:auto;width:250px;transform:translateX(250px)}@media print,screen and (min-width:40em){.position-right{width:250px;transform:translateX(250px)}}.off-canvas-content .off-canvas.position-right{transform:translateX(250px)}@media print,screen and (min-width:40em){.off-canvas-content .off-canvas.position-right{transform:translateX(250px)}}.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open{transform:translate(0)}.off-canvas-content.is-open-right.has-transition-push{transform:translateX(-250px)}@media print,screen and (min-width:40em){.off-canvas-content.is-open-right.has-transition-push{transform:translateX(-250px)}}.position-right.is-transition-push{box-shadow:inset 13px 0 20px -13px rgba(0,0,0,.25)}.position-top{top:0;left:0;width:100%;overflow-x:auto;height:250px;transform:translateY(-250px)}@media print,screen and (min-width:40em){.position-top{height:250px;transform:translateY(-250px)}}.off-canvas-content .off-canvas.position-top{transform:translateY(-250px)}@media print,screen and (min-width:40em){.off-canvas-content .off-canvas.position-top{transform:translateY(-250px)}}.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open{transform:translate(0)}.off-canvas-content.is-open-top.has-transition-push{transform:translateY(250px)}@media print,screen and (min-width:40em){.off-canvas-content.is-open-top.has-transition-push{transform:translateY(250px)}}.position-top.is-transition-push{box-shadow:inset 0 -13px 20px -13px rgba(0,0,0,.25)}.position-bottom{bottom:0;left:0;width:100%;overflow-x:auto;height:250px;transform:translateY(250px)}@media print,screen and (min-width:40em){.position-bottom{height:250px;transform:translateY(250px)}}.off-canvas-content .off-canvas.position-bottom{transform:translateY(250px)}@media print,screen and (min-width:40em){.off-canvas-content .off-canvas.position-bottom{transform:translateY(250px)}}.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open{transform:translate(0)}.off-canvas-content.is-open-bottom.has-transition-push{transform:translateY(-250px)}@media print,screen and (min-width:40em){.off-canvas-content.is-open-bottom.has-transition-push{transform:translateY(-250px)}}.position-bottom.is-transition-push{box-shadow:inset 0 13px 20px -13px rgba(0,0,0,.25)}.off-canvas-content{transform:none;transition:transform .5s ease;-webkit-backface-visibility:hidden;backface-visibility:hidden}.off-canvas-content.has-transition-push,.off-canvas-content .off-canvas.is-open{transform:translate(0)}@media print,screen and (min-width:40em){.position-left.reveal-for-medium{transform:none;z-index:12;transition:none;visibility:visible}.position-left.reveal-for-medium .close-button{display:none}.off-canvas-content .position-left.reveal-for-medium{transform:none}.off-canvas-content.has-reveal-left,.position-left.reveal-for-medium~.off-canvas-content{margin-left:250px}.position-right.reveal-for-medium{transform:none;z-index:12;transition:none;visibility:visible}.position-right.reveal-for-medium .close-button{display:none}.off-canvas-content .position-right.reveal-for-medium{transform:none}.off-canvas-content.has-reveal-right,.position-right.reveal-for-medium~.off-canvas-content{margin-right:250px}.position-top.reveal-for-medium{transform:none;z-index:12;transition:none;visibility:visible}.position-top.reveal-for-medium .close-button{display:none}.off-canvas-content .position-top.reveal-for-medium{transform:none}.off-canvas-content.has-reveal-top,.position-top.reveal-for-medium~.off-canvas-content{margin-top:250px}.position-bottom.reveal-for-medium{transform:none;z-index:12;transition:none;visibility:visible}.position-bottom.reveal-for-medium .close-button{display:none}.off-canvas-content .position-bottom.reveal-for-medium{transform:none}.off-canvas-content.has-reveal-bottom,.position-bottom.reveal-for-medium~.off-canvas-content{margin-bottom:250px}}@media print,screen and (min-width:64em){.position-left.reveal-for-large{transform:none;z-index:12;transition:none;visibility:visible}.position-left.reveal-for-large .close-button{display:none}.off-canvas-content .position-left.reveal-for-large{transform:none}.off-canvas-content.has-reveal-left,.position-left.reveal-for-large~.off-canvas-content{margin-left:250px}.position-right.reveal-for-large{transform:none;z-index:12;transition:none;visibility:visible}.position-right.reveal-for-large .close-button{display:none}.off-canvas-content .position-right.reveal-for-large{transform:none}.off-canvas-content.has-reveal-right,.position-right.reveal-for-large~.off-canvas-content{margin-right:250px}.position-top.reveal-for-large{transform:none;z-index:12;transition:none;visibility:visible}.position-top.reveal-for-large .close-button{display:none}.off-canvas-content .position-top.reveal-for-large{transform:none}.off-canvas-content.has-reveal-top,.position-top.reveal-for-large~.off-canvas-content{margin-top:250px}.position-bottom.reveal-for-large{transform:none;z-index:12;transition:none;visibility:visible}.position-bottom.reveal-for-large .close-button{display:none}.off-canvas-content .position-bottom.reveal-for-large{transform:none}.off-canvas-content.has-reveal-bottom,.position-bottom.reveal-for-large~.off-canvas-content{margin-bottom:250px}}@media print,screen and (min-width:40em){.off-canvas.in-canvas-for-medium{visibility:visible;height:auto;position:static;background:inherit;width:inherit;overflow:inherit;transition:inherit}.off-canvas.in-canvas-for-medium.position-bottom,.off-canvas.in-canvas-for-medium.position-left,.off-canvas.in-canvas-for-medium.position-right,.off-canvas.in-canvas-for-medium.position-top{box-shadow:none;transform:none}.off-canvas.in-canvas-for-medium .close-button{display:none}}@media print,screen and (min-width:64em){.off-canvas.in-canvas-for-large{visibility:visible;height:auto;position:static;background:inherit;width:inherit;overflow:inherit;transition:inherit}.off-canvas.in-canvas-for-large.position-bottom,.off-canvas.in-canvas-for-large.position-left,.off-canvas.in-canvas-for-large.position-right,.off-canvas.in-canvas-for-large.position-top{box-shadow:none;transform:none}.off-canvas.in-canvas-for-large .close-button{display:none}}.orbit,.orbit-container{position:relative}.orbit-container{height:0;margin:0;list-style:none;overflow:hidden}.orbit-slide{width:100%}.orbit-slide.no-motionui.is-active{top:0;left:0}.orbit-figure{margin:0}.orbit-image{width:100%;max-width:100%;margin:0}.orbit-caption{position:absolute;bottom:0;width:100%;margin-bottom:0;padding:1rem;background-color:rgba(0,0,0,.5);color:#fff}.orbit-next,.orbit-previous{position:absolute;top:50%;transform:translateY(-50%);z-index:10;padding:1rem;color:#fff}[data-whatinput=mouse] .orbit-next,[data-whatinput=mouse] .orbit-previous{outline:0}.orbit-next:active,.orbit-next:focus,.orbit-next:hover,.orbit-previous:active,.orbit-previous:focus,.orbit-previous:hover{background-color:rgba(0,0,0,.5)}.orbit-previous{left:0}.orbit-next{left:auto;right:0}.orbit-bullets{position:relative;margin-top:.8rem;margin-bottom:.8rem;text-align:center}[data-whatinput=mouse] .orbit-bullets{outline:0}.orbit-bullets button{width:1.2rem;height:1.2rem;margin:.1rem;border-radius:50%;background-color:#868686}.orbit-bullets button.is-active,.orbit-bullets button:hover{background-color:#171717}.pagination{margin-left:0;margin-bottom:1rem}.pagination:after,.pagination:before{display:table;content:" "}.pagination:after{clear:both}.pagination li{margin-right:.0625rem;border-radius:0;font-size:.875rem;display:none}.pagination li:first-child,.pagination li:last-child{display:inline-block}@media print,screen and (min-width:40em){.pagination li{display:inline-block}}.pagination a,.pagination button{display:block;padding:.1875rem .625rem;border-radius:0;color:#000}.pagination a:hover,.pagination button:hover{background:#f6f6f6}.pagination .current{padding:.1875rem .625rem;background:#ffd545;color:#fff;cursor:default}.pagination .disabled{padding:.1875rem .625rem;color:#868686;cursor:not-allowed}.pagination .disabled:hover{background:transparent}.pagination .ellipsis:after{padding:.1875rem .625rem;content:"\2026";color:#000}.pagination-previous.disabled:before,.pagination-previous a:before{display:inline-block;margin-right:.5rem;content:"\00ab"}.pagination-next.disabled:after,.pagination-next a:after{display:inline-block;margin-left:.5rem;content:"\00bb"}.progress{height:1rem;margin-bottom:1rem;border-radius:0;background-color:#868686}.progress.primary .progress-meter{background-color:#ffd545}.progress.secondary .progress-meter{background-color:#22222a}.progress.success .progress-meter{background-color:#33a457}.progress.warning .progress-meter{background-color:#e02424}.progress.alert .progress-meter{background-color:#860000}.progress-meter{position:relative;display:block;width:0;height:100%;background-color:#ffd545}.progress-meter-text{top:50%;left:50%;transform:translate(-50%,-50%);position:absolute;margin:0;font-size:.75rem;font-weight:700;color:#fff;white-space:nowrap}.slider{position:relative;height:.5rem;margin-top:1.25rem;margin-bottom:2.25rem;background-color:#f6f6f6;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:none;touch-action:none}.slider-fill{position:absolute;top:0;left:0;display:inline-block;max-width:100%;height:.5rem;background-color:#868686;transition:all .2s ease-in-out}.slider-fill.is-dragging{transition:all 0s linear}.slider-handle{position:absolute;top:50%;transform:translateY(-50%);left:0;z-index:1;display:inline-block;width:1.4rem;height:1.4rem;border-radius:0;background-color:#ffd545;transition:all .2s ease-in-out;-ms-touch-action:manipulation;touch-action:manipulation}[data-whatinput=mouse] .slider-handle{outline:0}.slider-handle:hover{background-color:#ffca14}.slider-handle.is-dragging{transition:all 0s linear}.slider.disabled,.slider[disabled]{opacity:.25;cursor:not-allowed}.slider.vertical{display:inline-block;width:.5rem;height:12.5rem;margin:0 1.25rem;transform:scaleY(-1)}.slider.vertical .slider-fill{top:0;width:.5rem;max-height:100%}.slider.vertical .slider-handle{position:absolute;top:0;left:50%;width:1.4rem;height:1.4rem;transform:translateX(-50%)}.sticky,.sticky-container{position:relative}.sticky{z-index:0;transform:translateZ(0)}.sticky.is-stuck{position:fixed;z-index:5;width:100%}.sticky.is-stuck.is-at-top{top:0}.sticky.is-stuck.is-at-bottom{bottom:0}.sticky.is-anchored{position:relative;right:auto;left:auto}.sticky.is-anchored.is-at-bottom{bottom:0}body.is-reveal-open{overflow:hidden}html.is-reveal-open,html.is-reveal-open body{min-height:100%;overflow:hidden;position:fixed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.reveal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1005;display:none;background-color:rgba(0,0,0,.45);overflow-y:scroll}.reveal{z-index:1006;-webkit-backface-visibility:hidden;backface-visibility:hidden;display:none;padding:1rem;border:1px solid #868686;border-radius:0;background-color:#fff;position:relative;top:100px;margin-right:auto;margin-left:auto;overflow-y:auto}[data-whatinput=mouse] .reveal{outline:0}@media print,screen and (min-width:40em){.reveal{min-height:0}}.reveal .column,.reveal .columns{min-width:0}.reveal>:last-child{margin-bottom:0}@media print,screen and (min-width:40em){.reveal{width:600px;max-width:75rem}}.reveal.collapse{padding:0}@media print,screen and (min-width:40em){.reveal.tiny{width:30%;max-width:75rem}}@media print,screen and (min-width:40em){.reveal.small{width:50%;max-width:75rem}}@media print,screen and (min-width:40em){.reveal.large{width:90%;max-width:75rem}}.reveal.full{top:0;left:0;width:100%;max-width:none;height:100%;height:100vh;min-height:100vh;margin-left:0;border:0;border-radius:0}@media screen and (max-width:39.9375em){.reveal{top:0;left:0;width:100%;max-width:none;height:100%;height:100vh;min-height:100vh;margin-left:0;border:0;border-radius:0}}.reveal.without-overlay{position:fixed}.switch{height:2rem;position:relative;margin-bottom:1rem;outline:0;font-size:.875rem;font-weight:700;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.switch-input{position:absolute;margin-bottom:0;opacity:0}.switch-paddle{position:relative;display:block;width:4rem;height:2rem;border-radius:0;background:#868686;transition:all .25s ease-out;font-weight:inherit;color:inherit;cursor:pointer}input+.switch-paddle{margin:0}.switch-paddle:after{position:absolute;top:.25rem;left:.25rem;display:block;width:1.5rem;height:1.5rem;transform:translateZ(0);border-radius:0;background:#fff;transition:all .25s ease-out;content:""}input:checked~.switch-paddle{background:#ffd545}input:checked~.switch-paddle:after{left:2.25rem}[data-whatinput=mouse] input:focus~.switch-paddle{outline:0}.switch-active,.switch-inactive{position:absolute;top:50%;transform:translateY(-50%)}.switch-active{left:8%;display:none}input:checked+label>.switch-active{display:block}.switch-inactive{right:15%}input:checked+label>.switch-inactive{display:none}.switch.tiny{height:1.5rem}.switch.tiny .switch-paddle{width:3rem;height:1.5rem;font-size:.625rem}.switch.tiny .switch-paddle:after{top:.25rem;left:.25rem;width:1rem;height:1rem}.switch.tiny input:checked~.switch-paddle:after{left:1.75rem}.switch.small{height:1.75rem}.switch.small .switch-paddle{width:3.5rem;height:1.75rem;font-size:.75rem}.switch.small .switch-paddle:after{top:.25rem;left:.25rem;width:1.25rem;height:1.25rem}.switch.small input:checked~.switch-paddle:after{left:2rem}.switch.large{height:2.5rem}.switch.large .switch-paddle{width:5rem;height:2.5rem;font-size:1rem}.switch.large .switch-paddle:after{top:.25rem;left:.25rem;width:2rem;height:2rem}.switch.large input:checked~.switch-paddle:after{left:2.75rem}table{border-collapse:collapse;width:100%;margin-bottom:1rem;border-radius:0}tbody,tfoot,thead{border:1px solid #f2f2f2;background-color:#fff}caption{padding:.5rem .625rem .625rem;font-weight:700}thead{background:#f9f9f9;color:#000}tfoot{background:#f2f2f2;color:#000}tfoot tr,thead tr{background:transparent}tfoot td,tfoot th,thead td,thead th{padding:.5rem .625rem .625rem;font-weight:700;text-align:left}tbody td,tbody th{padding:.5rem .625rem .625rem}tbody tr:nth-child(2n){border-bottom:0;background-color:#f2f2f2}table.unstriped tbody{background-color:#fff}table.unstriped tbody tr{border-bottom:0;border-bottom:1px solid #f2f2f2;background-color:#fff}@media screen and (max-width:63.9375em){table.stack tfoot,table.stack thead{display:none}table.stack td,table.stack th,table.stack tr{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}table.hover thead tr:hover{background-color:#f4f4f4}table.hover tfoot tr:hover{background-color:#ededed}table.hover tbody tr:hover{background-color:#fafafa}table.hover:not(.unstriped) tr:nth-of-type(2n):hover{background-color:#ededed}.table-scroll{overflow-x:auto}.table-scroll table{width:auto}.tabs{margin:0;border:1px solid #f6f6f6;background:#fff;list-style-type:none}.tabs:after,.tabs:before{display:table;content:" "}.tabs:after{clear:both}.tabs.vertical>li{display:block;float:none;width:auto}.tabs.simple>li>a{padding:0}.tabs.simple>li>a:hover{background:transparent}.tabs.primary{background:#ffd545}.tabs.primary>li>a{color:#000}.tabs.primary>li>a:focus,.tabs.primary>li>a:hover{background:#ffd135}.tabs-title{float:left}.tabs-title>a{display:block;padding:1.25rem 1.5rem;font-size:.75rem;line-height:1;color:#ffd545}.tabs-title>a:hover{background:#fff;color:#ffcb18}.tabs-title>a:focus,.tabs-title>a[aria-selected=true]{background:#f6f6f6;color:#ffd545}.tabs-content{border:1px solid #f6f6f6;border-top:0;background:#fff;color:#000;transition:all .5s ease}.tabs-content.vertical{border:1px solid #f6f6f6;border-left:0}.tabs-panel{display:none;padding:1rem}.tabs-panel.is-active{display:block}.thumbnail{display:inline-block;max-width:100%;margin-bottom:1rem;border:4px solid #fff;border-radius:0;box-shadow:0 0 0 1px rgba(0,0,0,.2);line-height:0}a.thumbnail{transition:box-shadow .2s ease-out}a.thumbnail:focus,a.thumbnail:hover{box-shadow:0 0 6px 1px rgba(255,213,69,.5)}a.thumbnail image{box-shadow:none}.title-bar{padding:.5rem;background:#000;color:#fff}.title-bar:after,.title-bar:before{display:table;content:" "}.title-bar:after{clear:both}.title-bar .menu-icon{margin-left:.25rem;margin-right:.25rem}.title-bar-left{float:left}.title-bar-right{float:right;text-align:right}.title-bar-title{vertical-align:middle}.has-tip,.title-bar-title{display:inline-block;font-weight:700}.has-tip{position:relative;border-bottom:1px dotted #171717;cursor:help}.tooltip{top:calc(100% + .6495rem);z-index:1200;max-width:10rem;padding:.75rem;border-radius:0;background-color:#000;font-size:80%;color:#fff}.tooltip,.tooltip:before{position:absolute}.tooltip.bottom:before{display:block;width:0;height:0;border:.75rem inset;content:"";border-top-width:0;border-bottom-style:solid;border-color:transparent transparent #000;bottom:100%}.tooltip.bottom.align-center:before{left:50%;transform:translateX(-50%)}.tooltip.top:before{display:block;width:0;height:0;border:.75rem inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#000 transparent transparent;top:100%;bottom:auto}.tooltip.top.align-center:before{left:50%;transform:translateX(-50%)}.tooltip.left:before{display:block;width:0;height:0;border:.75rem inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #000;left:100%}.tooltip.left.align-center:before{bottom:auto;top:50%;transform:translateY(-50%)}.tooltip.right:before{display:block;width:0;height:0;border:.75rem inset;content:"";border-left-width:0;border-right-style:solid;border-color:transparent #000 transparent transparent;right:100%;left:auto}.tooltip.right.align-center:before{bottom:auto;top:50%;transform:translateY(-50%)}.tooltip.align-top:before{bottom:auto;top:10%}.tooltip.align-bottom:before{bottom:10%;top:auto}.tooltip.align-left:before{left:10%;right:auto}.tooltip.align-right:before{left:auto;right:10%}.top-bar{padding:.5rem}.top-bar:after,.top-bar:before{display:table;content:" "}.top-bar:after{clear:both}.top-bar,.top-bar ul{background-color:#f6f6f6}.top-bar input{max-width:200px;margin-right:1rem}.top-bar .input-group-field{width:100%;margin-right:0}.top-bar input.button{width:auto}.top-bar .top-bar-left,.top-bar .top-bar-right{width:100%}@media print,screen and (min-width:40em){.top-bar .top-bar-left,.top-bar .top-bar-right{width:auto}}@media screen and (max-width:63.9375em){.top-bar.stacked-for-medium .top-bar-left,.top-bar.stacked-for-medium .top-bar-right{width:100%}}@media screen and (max-width:74.9375em){.top-bar.stacked-for-large .top-bar-left,.top-bar.stacked-for-large .top-bar-right{width:100%}}.top-bar-title{display:inline-block;float:left;padding:.5rem 1rem .5rem 0}.top-bar-title .menu-icon{bottom:2px}.top-bar-left{float:left}.top-bar-right{float:right}.hide{display:none!important}.invisible{visibility:hidden}@media screen and (max-width:39.9375em){.hide-for-small-only{display:none!important}}@media screen and (max-width:0em),screen and (min-width:40em){.show-for-small-only{display:none!important}}@media print,screen and (min-width:40em){.hide-for-medium{display:none!important}}@media screen and (max-width:39.9375em){.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:64em){.show-for-medium-only{display:none!important}}@media print,screen and (min-width:64em){.hide-for-large{display:none!important}}@media screen and (max-width:63.9375em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.9375em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.9375em),screen and (min-width:75em){.show-for-large-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;-webkit-clip-path:inset(50%);clip-path:inset(50%);border:0}.show-on-focus:active,.show-on-focus:focus{position:static!important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;-webkit-clip-path:none;clip-path:none}.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}}.float-left{float:left!important}.float-right{float:right!important}.float-center{display:block;margin-right:auto;margin-left:auto}.clearfix:after,.clearfix:before,.product-list-section #products .products-selection:after,.product-list-section #products .products-selection:before{display:table;content:" "}.clearfix:after,.product-list-section #products .products-selection:after{clear:both}.slide-in-down.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:translateY(-100%);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-down.mui-enter.mui-enter-active{transform:translateY(0)}.slide-in-left.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:translateX(-100%);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-left.mui-enter.mui-enter-active{transform:translateX(0)}.slide-in-up.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:translateY(100%);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-up.mui-enter.mui-enter-active{transform:translateY(0)}.slide-in-right.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:translateX(100%);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-right.mui-enter.mui-enter-active{transform:translateX(0)}.slide-out-down.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:translateY(0);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-down.mui-leave.mui-leave-active{transform:translateY(100%)}.slide-out-right.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:translateX(0);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-right.mui-leave.mui-leave-active{transform:translateX(100%)}.slide-out-up.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:translateY(0);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-up.mui-leave.mui-leave-active{transform:translateY(-100%)}.slide-out-left.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:translateX(0);transition-property:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-left.mui-leave.mui-leave-active{transform:translateX(-100%)}.fade-in.mui-enter{transition-duration:.5s;transition-timing-function:linear;opacity:0;transition-property:opacity}.fade-in.mui-enter.mui-enter-active{opacity:1}.fade-out.mui-leave{transition-duration:.5s;transition-timing-function:linear;opacity:1;transition-property:opacity}.fade-out.mui-leave.mui-leave-active{opacity:0}.hinge-in-from-top.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotateX(-90deg);transform-origin:top;transition-property:transform,opacity;opacity:0}.hinge-in-from-top.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-right.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotateY(-90deg);transform-origin:right;transition-property:transform,opacity;opacity:0}.hinge-in-from-right.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-bottom.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotateX(90deg);transform-origin:bottom;transition-property:transform,opacity;opacity:0}.hinge-in-from-bottom.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-left.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotateY(90deg);transform-origin:left;transition-property:transform,opacity;opacity:0}.hinge-in-from-left.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-middle-x.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotateX(-90deg);transform-origin:center;transition-property:transform,opacity;opacity:0}.hinge-in-from-middle-x.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-middle-y.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotateY(-90deg);transform-origin:center;transition-property:transform,opacity;opacity:0}.hinge-in-from-middle-y.mui-enter.mui-enter-active,.hinge-out-from-top.mui-leave{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-out-from-top.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform-origin:top;transition-property:transform,opacity}.hinge-out-from-top.mui-leave.mui-leave-active{transform:perspective(2000px) rotateX(-90deg);opacity:0}.hinge-out-from-right.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);transform-origin:right;transition-property:transform,opacity;opacity:1}.hinge-out-from-right.mui-leave.mui-leave-active{transform:perspective(2000px) rotateY(-90deg);opacity:0}.hinge-out-from-bottom.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);transform-origin:bottom;transition-property:transform,opacity;opacity:1}.hinge-out-from-bottom.mui-leave.mui-leave-active{transform:perspective(2000px) rotateX(90deg);opacity:0}.hinge-out-from-left.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);transform-origin:left;transition-property:transform,opacity;opacity:1}.hinge-out-from-left.mui-leave.mui-leave-active{transform:perspective(2000px) rotateY(90deg);opacity:0}.hinge-out-from-middle-x.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);transform-origin:center;transition-property:transform,opacity;opacity:1}.hinge-out-from-middle-x.mui-leave.mui-leave-active{transform:perspective(2000px) rotateX(-90deg);opacity:0}.hinge-out-from-middle-y.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);transform-origin:center;transition-property:transform,opacity;opacity:1}.hinge-out-from-middle-y.mui-leave.mui-leave-active{transform:perspective(2000px) rotateY(-90deg);opacity:0}.scale-in-up.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:scale(.5);transition-property:transform,opacity;opacity:0}.scale-in-up.mui-enter.mui-enter-active{transform:scale(1);opacity:1}.scale-in-down.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:scale(1.5);transition-property:transform,opacity;opacity:0}.scale-in-down.mui-enter.mui-enter-active,.scale-out-up.mui-leave{transform:scale(1);opacity:1}.scale-out-up.mui-leave{transition-duration:.5s;transition-timing-function:linear;transition-property:transform,opacity}.scale-out-up.mui-leave.mui-leave-active{transform:scale(1.5);opacity:0}.scale-out-down.mui-leave{transition-duration:.5s;transition-timing-function:linear;transform:scale(1);transition-property:transform,opacity;opacity:1}.scale-out-down.mui-leave.mui-leave-active{transform:scale(.5);opacity:0}.spin-in.mui-enter{transition-duration:.5s;transition-timing-function:linear;transform:rotate(-270deg);transition-property:transform,opacity;opacity:0}.spin-in.mui-enter.mui-enter-active,.spin-out.mui-leave{transform:rotate(0);opacity:1}.spin-out.mui-leave{transition-duration:.5s;transition-timing-function:linear;transition-property:transform,opacity}.spin-in-ccw.mui-enter,.spin-out.mui-leave.mui-leave-active{transform:rotate(270deg);opacity:0}.spin-in-ccw.mui-enter{transition-duration:.5s;transition-timing-function:linear;transition-property:transform,opacity}.spin-in-ccw.mui-enter.mui-enter-active,.spin-out-ccw.mui-leave{transform:rotate(0);opacity:1}.spin-out-ccw.mui-leave{transition-duration:.5s;transition-timing-function:linear;transition-property:transform,opacity}.spin-out-ccw.mui-leave.mui-leave-active{transform:rotate(-270deg);opacity:0}.slow{transition-duration:.75s!important}.fast{transition-duration:.25s!important}.linear{transition-timing-function:linear!important}.ease{transition-timing-function:ease!important}.ease-in{transition-timing-function:ease-in!important}.ease-out{transition-timing-function:ease-out!important}.ease-in-out{transition-timing-function:ease-in-out!important}.bounce-in{transition-timing-function:cubic-bezier(.485,.155,.24,1.245)!important}.bounce-out{transition-timing-function:cubic-bezier(.485,.155,.515,.845)!important}.bounce-in-out{transition-timing-function:cubic-bezier(.76,-.245,.24,1.245)!important}.short-delay{transition-delay:.3s!important}.long-delay{transition-delay:.7s!important}.shake{animation-name:a}@keyframes a{0%,10%,20%,30%,40%,50%,60%,70%,80%,90%{transform:translateX(7%)}5%,15%,25%,35%,45%,55%,65%,75%,85%,95%{transform:translateX(-7%)}}.spin-ccw,.spin-cw{animation-name:b}@keyframes b{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.wiggle{animation-name:c}@keyframes c{40%,50%,60%{transform:rotate(7deg)}35%,45%,55%,65%{transform:rotate(-7deg)}0%,30%,70%,to{transform:rotate(0)}}.shake,.spin-ccw,.spin-cw,.wiggle{animation-duration:.5s}.infinite{animation-iteration-count:infinite}.slow{animation-duration:.75s!important}.fast{animation-duration:.25s!important}.linear{animation-timing-function:linear!important}.ease{animation-timing-function:ease!important}.ease-in{animation-timing-function:ease-in!important}.ease-out{animation-timing-function:ease-out!important}.ease-in-out{animation-timing-function:ease-in-out!important}.bounce-in{animation-timing-function:cubic-bezier(.485,.155,.24,1.245)!important}.bounce-out{animation-timing-function:cubic-bezier(.485,.155,.515,.845)!important}.bounce-in-out{animation-timing-function:cubic-bezier(.76,-.245,.24,1.245)!important}.short-delay{animation-delay:.3s!important}.long-delay{animation-delay:.7s!important}a{color:#f36d0b}a:active,a:focus,a:hover{color:#c25709}.addresses .address .dropdown.action-list>li.is-dropdown-submenu-parent>a,.dropdown.menu>li.is-dropdown-submenu-parent>a,.dropdown.my-account-links>li.is-dropdown-submenu-parent>a,.my-account-has-nav .my-account-nav ul.dropdown>li.is-dropdown-submenu-parent>a,.page-my-account .dropdown.link-list>li.is-dropdown-submenu-parent>a{padding-right:18px!important;background:url(../img/chevron-sous-menu.png) no-repeat 100%}.addresses .address .dropdown.action-list>li.is-dropdown-submenu-parent>a:after,.dropdown.menu>li.is-dropdown-submenu-parent>a:after,.dropdown.my-account-links>li.is-dropdown-submenu-parent>a:after,.my-account-has-nav .my-account-nav ul.dropdown>li.is-dropdown-submenu-parent>a:after,.page-my-account .dropdown.link-list>li.is-dropdown-submenu-parent>a:after{content:normal!important}.is-dropdown-submenu{border:1px solid #000;background-color:transparent;box-shadow:0 0 15px #000;margin-top:15px}.is-dropdown-submenu li{border-bottom:1px solid #404040}.is-dropdown-submenu li a{background-color:#22222a;padding:15px;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;text-transform:uppercase;white-space:nowrap;transition:.15s}.is-dropdown-submenu li a:hover{background-color:#17171c}.is-dropdown-submenu li:last-child{border-bottom:none}.is-dropdown-submenu li.current a{background-color:#17171c}.is-dropdown-submenu.js-dropdown-active{display:block!important}.breadcrumb-holder{height:0;position:relative;top:32px}.breadcrumb-holder .breadcrumbs li{font-size:14px;text-transform:none}.breadcrumb-holder .breadcrumbs li:not(:last-child):after{content:url(../img/chevron.png)}.breadcrumb-holder .breadcrumbs li a{font-weight:600;text-decoration:underline;color:#000}.breadcrumb-holder .breadcrumbs li:last-child a{text-decoration:none;cursor:default}.hide-for-portal{display:none!important}#cart-summary,#cart-summary-product-list,#content-hook_payment_return,#customer-form,#main .brands-list .brand .brand-container,#order-details,#order-items,.address-selector .address-item,.addresses .address,.cart-cms-block,.cart-overview,.cart-summary-totals,.cart-voucher,.checkout-step,.glass-pickup-callout,.my-account-has-nav .my-account-nav,.page-my-account .link-list,.panel,.panel-block,.payment-options .js-additional-information,.sidebar .secondaryContent{background-color:#f6f6f6;padding-top:20px;padding-bottom:20px;margin-bottom:30px;overflow:hidden}#main .brands-list .brand .white.brand-container,.address-selector .address-item,.addresses .white.address,.my-account-has-nav .white.my-account-nav,.page-my-account .white.link-list,.panel-block.white,.payment-options .js-additional-information,.sidebar .white.secondaryContent,.white#cart-summary,.white#cart-summary-product-list,.white#content-hook_payment_return,.white#customer-form,.white#order-details,.white#order-items,.white.cart-cms-block,.white.cart-overview,.white.cart-summary-totals,.white.cart-voucher,.white.checkout-step,.white.glass-pickup-callout,.white.panel{background-color:#fff}#main .brands-list .brand .dark.brand-container,.address-selector .dark.address-item,.addresses .dark.address,.dark#cart-summary,.dark#cart-summary-product-list,.dark#content-hook_payment_return,.dark#customer-form,.dark#order-details,.dark#order-items,.dark.cart-cms-block,.dark.cart-overview,.dark.cart-summary-totals,.dark.cart-voucher,.dark.checkout-step,.dark.panel,.glass-pickup-callout,.my-account-has-nav .dark.my-account-nav,.page-my-account .dark.link-list,.panel-block.dark,.payment-options .dark.js-additional-information,.sidebar .dark.secondaryContent{background-color:#ddd}#main .brands-list .brand .red.brand-container,.address-selector .red.address-item,.addresses .red.address,.my-account-has-nav .red.my-account-nav,.page-my-account .red.link-list,.panel-block.red,.payment-options .red.js-additional-information,.red#cart-summary,.red#cart-summary-product-list,.red#content-hook_payment_return,.red#customer-form,.red#order-details,.red#order-items,.red.cart-cms-block,.red.cart-overview,.red.cart-summary-totals,.red.cart-voucher,.red.checkout-step,.red.glass-pickup-callout,.red.panel,.sidebar .red.secondaryContent{background-color:rgba(134,0,0,.8);color:#fff}#main .brands-list .brand .red.brand-container .h2,#main .brands-list .brand .red.brand-container h1,#main .brands-list .brand .red.brand-container h2,#main .brands-list .brand .red.brand-container h3,#main .brands-list .brand .red.brand-container li,#main .brands-list .brand .red.brand-container p,.address-selector .red.address-item .h2,.address-selector .red.address-item h1,.address-selector .red.address-item h2,.address-selector .red.address-item h3,.address-selector .red.address-item li,.address-selector .red.address-item p,.addresses .red.address .h2,.addresses .red.address h1,.addresses .red.address h2,.addresses .red.address h3,.addresses .red.address li,.addresses .red.address p,.my-account-has-nav .red.my-account-nav .h2,.my-account-has-nav .red.my-account-nav h1,.my-account-has-nav .red.my-account-nav h2,.my-account-has-nav .red.my-account-nav h3,.my-account-has-nav .red.my-account-nav li,.my-account-has-nav .red.my-account-nav p,.page-my-account .red.link-list .h2,.page-my-account .red.link-list h1,.page-my-account .red.link-list h2,.page-my-account .red.link-list h3,.page-my-account .red.link-list li,.page-my-account .red.link-list p,.panel-block.red .h2,.panel-block.red h1,.panel-block.red h2,.panel-block.red h3,.panel-block.red li,.panel-block.red p,.payment-options .red.js-additional-information .h2,.payment-options .red.js-additional-information h1,.payment-options .red.js-additional-information h2,.payment-options .red.js-additional-information h3,.payment-options .red.js-additional-information li,.payment-options .red.js-additional-information p,.red#cart-summary-product-list .h2,.red#cart-summary-product-list h1,.red#cart-summary-product-list h2,.red#cart-summary-product-list h3,.red#cart-summary-product-list li,.red#cart-summary-product-list p,.red#cart-summary .h2,.red#cart-summary h1,.red#cart-summary h2,.red#cart-summary h3,.red#cart-summary li,.red#cart-summary p,.red#content-hook_payment_return .h2,.red#content-hook_payment_return h1,.red#content-hook_payment_return h2,.red#content-hook_payment_return h3,.red#content-hook_payment_return li,.red#content-hook_payment_return p,.red#customer-form .h2,.red#customer-form h1,.red#customer-form h2,.red#customer-form h3,.red#customer-form li,.red#customer-form p,.red#order-details .h2,.red#order-details h1,.red#order-details h2,.red#order-details h3,.red#order-details li,.red#order-details p,.red#order-items .h2,.red#order-items h1,.red#order-items h2,.red#order-items h3,.red#order-items li,.red#order-items p,.red.cart-cms-block .h2,.red.cart-cms-block h1,.red.cart-cms-block h2,.red.cart-cms-block h3,.red.cart-cms-block li,.red.cart-cms-block p,.red.cart-overview .h2,.red.cart-overview h1,.red.cart-overview h2,.red.cart-overview h3,.red.cart-overview li,.red.cart-overview p,.red.cart-summary-totals .h2,.red.cart-summary-totals h1,.red.cart-summary-totals h2,.red.cart-summary-totals h3,.red.cart-summary-totals li,.red.cart-summary-totals p,.red.cart-voucher .h2,.red.cart-voucher h1,.red.cart-voucher h2,.red.cart-voucher h3,.red.cart-voucher li,.red.cart-voucher p,.red.checkout-step .h2,.red.checkout-step h1,.red.checkout-step h2,.red.checkout-step h3,.red.checkout-step li,.red.checkout-step p,.red.glass-pickup-callout .h2,.red.glass-pickup-callout h1,.red.glass-pickup-callout h2,.red.glass-pickup-callout h3,.red.glass-pickup-callout li,.red.glass-pickup-callout p,.red.panel .h2,.red.panel h1,.red.panel h2,.red.panel h3,.red.panel li,.red.panel p,.sidebar .red.secondaryContent .h2,.sidebar .red.secondaryContent h1,.sidebar .red.secondaryContent h2,.sidebar .red.secondaryContent h3,.sidebar .red.secondaryContent li,.sidebar .red.secondaryContent p{color:#fff!important}#content-hook_payment_return,#customer-form,#main .brands-list .brand .brand-container,#order-details,#order-items,.address-selector .padding-sides.address-item,.addresses .padding-sides.address,.cart-cms-block,.my-account-has-nav .my-account-nav,.padding-sides#cart-summary,.padding-sides#cart-summary-product-list,.padding-sides.cart-overview,.padding-sides.cart-summary-totals,.padding-sides.cart-voucher,.padding-sides.checkout-step,.padding-sides.glass-pickup-callout,.page-my-account .link-list,.panel,.panel-block.padding-sides,.payment-options .padding-sides.js-additional-information,.sidebar .padding-sides.secondaryContent{padding-left:30px;padding-right:30px}#main .brands-list .brand .yellow.brand-container,.address-selector .yellow.address-item,.addresses .yellow.address,.my-account-has-nav .yellow.my-account-nav,.page-my-account .yellow.link-list,.panel,.panel-block.yellow,.payment-options .yellow.js-additional-information,.sidebar .yellow.secondaryContent,.yellow#cart-summary,.yellow#cart-summary-product-list,.yellow#content-hook_payment_return,.yellow#customer-form,.yellow#order-details,.yellow#order-items,.yellow.cart-cms-block,.yellow.cart-overview,.yellow.cart-summary-totals,.yellow.cart-voucher,.yellow.checkout-step,.yellow.glass-pickup-callout{background-color:#ffe178}#wrapper{overflow:hidden;max-width:75rem;margin-right:auto;margin-left:auto;margin-bottom:50px}#wrapper:after,#wrapper:before{display:table;content:" "}#wrapper:after{clear:both}#wrapper #main{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;padding-top:30px}@media print,screen and (min-width:40em){#wrapper #main{padding-right:1.875rem;padding-left:1.875rem}}#wrapper #main:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){#wrapper #main{padding-top:70px}}#content{max-width:75rem;margin-right:auto;margin-left:auto;width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}#content:after,#content:before{display:table;content:" "}#content:after{clear:both}@media print,screen and (min-width:40em){#content{padding-right:1.875rem;padding-left:1.875rem}}#content:last-child:not(:first-child){float:right}#content,#content:last-child{float:none}#main .h2,#main h1,#main h2,#main h3{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:28px;font-weight:900;text-transform:uppercase;line-height:1.2;text-align:center;margin-bottom:20px}@media print,screen and (min-width:40em){#main .h2,#main h1,#main h2,#main h3{font-size:25px}}#main h3{font-size:22px}#main .page-header h1{margin-bottom:70px}p{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400;line-height:24px}#content-hook_order_confirmation h3:after,#content.page-cms .h2:after,#content.page-cms h2:after,#content.page-cms h3:after,#main .brands-list .brand .brand-desc .h2:after,#main .brands-list .brand .brand-desc h2:after,#main .ps_crossselling .h2:after,#main .ps_crossselling h2:after,.cart-voucher .h2:after,.cart-voucher h2:after,.my-account-has-nav .my-account-nav .nav-title:after,.no-diagonal:after,body .prestablog_slide .accompagnement-column .column h3:after,body .prestablog_slide .accompagnement-column .columns h3:after{display:none!important}#footer ul,#index ul{margin:0;padding:0;list-style-type:none}.thumbnail{border:none!important;box-shadow:none!important}#back-to-top{display:block;z-index:2;width:30px;height:30px;border:2px solid #868686;border-radius:50%;background:url(../img/arrow-top-orange.png) no-repeat 50%;position:fixed;bottom:12%;right:5%;transition:.15s}#back-to-top:hover{border:3px solid #868686}.text-yellow{color:#ffd545}#main .dataTables_wrapper .dataTables_paginate .paginate_button,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input[type=submit],.add-to-cart-button,.aeuc_scart a,.btn,.page-not-found button,.product-miniature .product-container .add-to-cart,.product-miniature .product-container .see-product{display:inline-block;position:relative;text-decoration:none;color:#000;background-color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:900;border:3px solid #f36d0b;line-height:1.3;padding:14px 30px;margin-top:10px;cursor:pointer;z-index:1;transition:color .2s,opacity .2s}@media print,screen and (min-width:40em){#main .dataTables_wrapper .dataTables_paginate .paginate_button,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input[type=submit],.add-to-cart-button,.aeuc_scart a,.btn,.page-not-found button,.product-miniature .product-container .add-to-cart,.product-miniature .product-container .see-product{font-size:16px}}#main .dataTables_wrapper .dataTables_paginate .disabled.paginate_button,#main .dataTables_wrapper .dataTables_paginate .disabled.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.disabled[type=submit],.aeuc_scart a.disabled,.btn.disabled,.disabled.add-to-cart-button,.page-not-found button.disabled,.product-miniature .product-container .disabled.add-to-cart,.product-miniature .product-container .disabled.see-product{opacity:.3;cursor:default;pointer-events:none}#main .dataTables_wrapper .dataTables_paginate .expanded.paginate_button,#main .dataTables_wrapper .dataTables_paginate .expanded.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.expanded[type=submit],.aeuc_scart a.expanded,.btn.expanded,.expanded.add-to-cart-button,.page-not-found button.expanded,.product-miniature .product-container .expanded.add-to-cart,.product-miniature .product-container .expanded.see-product{display:block;text-align:center}#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:before,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover:before,#main .dataTables_wrapper .dataTables_paginate .paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:before,.add-to-cart-button:before,.aeuc_scart a:before,.btn:before,.page-not-found button:before,.product-miniature .product-container .add-to-cart:before,.product-miniature .product-container .see-product:before{content:"";position:absolute;background-color:#f36d0b;top:0;bottom:0;left:0;right:100%;transition:all .2s;z-index:-1}#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:focus:hover,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,#main .dataTables_wrapper .dataTables_paginate .paginate_button:focus,#main .dataTables_wrapper .dataTables_paginate .paginate_button:hover,#module-prestablog-blog .sidebar .email_subscription input:focus[type=submit],#module-prestablog-blog .sidebar .email_subscription input:hover[type=submit],.add-to-cart-button:focus,.add-to-cart-button:hover,.aeuc_scart a:focus,.aeuc_scart a:hover,.btn:focus,.btn:hover,.page-not-found button:focus,.page-not-found button:hover,.product-miniature .product-container .add-to-cart:focus,.product-miniature .product-container .add-to-cart:hover,.product-miniature .product-container .see-product:focus,.product-miniature .product-container .see-product:hover{color:#fff}#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover:focus:before,#main .dataTables_wrapper .dataTables_paginate .paginate_button:focus:before,#main .dataTables_wrapper .dataTables_paginate .paginate_button:hover:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:focus:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:hover:before,.add-to-cart-button:focus:before,.add-to-cart-button:hover:before,.aeuc_scart a:focus:before,.aeuc_scart a:hover:before,.btn:focus:before,.btn:hover:before,.page-not-found button:focus:before,.page-not-found button:hover:before,.product-miniature .product-container .add-to-cart:focus:before,.product-miniature .product-container .add-to-cart:hover:before,.product-miniature .product-container .see-product:focus:before,.product-miniature .product-container .see-product:hover:before{right:0}#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:disabled:hover,#main .dataTables_wrapper .dataTables_paginate .paginate_button:disabled,#module-prestablog-blog .sidebar .email_subscription input:disabled[type=submit],.add-to-cart-button:disabled,.aeuc_scart a:disabled,.btn:disabled,.page-not-found button:disabled,.product-miniature .product-container .add-to-cart:disabled,.product-miniature .product-container .see-product:disabled{opacity:.3}#main .dataTables_wrapper .dataTables_paginate .paginate_button:disabled:focus:before,#main .dataTables_wrapper .dataTables_paginate .paginate_button:disabled:hover:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:disabled:focus:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:disabled:hover:before,.add-to-cart-button:disabled:focus:before,.add-to-cart-button:disabled:hover:before,.aeuc_scart a:disabled:focus:before,.aeuc_scart a:disabled:hover:before,.btn:disabled:focus:before,.btn:disabled:hover:before,.page-not-found button:disabled:focus:before,.page-not-found button:disabled:hover:before,.product-miniature .product-container .add-to-cart:disabled:focus:before,.product-miniature .product-container .add-to-cart:disabled:hover:before,.product-miniature .product-container .see-product:disabled:focus:before,.product-miniature .product-container .see-product:disabled:hover:before{right:100%}#main .dataTables_wrapper .dataTables_paginate .fill.paginate_button,#main .dataTables_wrapper .dataTables_paginate .fill.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input[type=submit],.aeuc_scart a.fill,.btn.fill,.fill.add-to-cart-button,.page-not-found button.fill,.product-miniature .product-container .fill.add-to-cart,.product-miniature .product-container .fill.see-product{background-color:#f36d0b;border:none;padding-top:17px;padding-bottom:17px}#main .dataTables_wrapper .dataTables_paginate .fill.paginate_button.current:hover:before,#main .dataTables_wrapper .dataTables_paginate .fill.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:before,.aeuc_scart a.fill:before,.btn.fill:before,.fill.add-to-cart-button:before,.page-not-found button.fill:before,.product-miniature .product-container .fill.add-to-cart:before,.product-miniature .product-container .fill.see-product:before{background-color:#c25709}#main .dataTables_wrapper .dataTables_paginate .fill.icon.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon[type=submit]:after,.aeuc_scart a.fill:after,.btn.fill.icon:after,.fill.add-to-cart-button:after,.page-not-found button.fill.icon:after,.product-miniature .product-container .fill.add-to-cart:after,.product-miniature .product-container .fill.see-product:after{top:18px}#main .dataTables_wrapper .dataTables_paginate .transparent.paginate_button,#main .dataTables_wrapper .dataTables_paginate .transparent.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.transparent[type=submit],.aeuc_scart a.transparent,.btn.transparent,.featured-products .products .product-miniature .product-container .see-product,.page-not-found button.transparent,.product-miniature .product-container .transparent.add-to-cart,.product-miniature .product-container .transparent.see-product,.transparent.add-to-cart-button{background-color:transparent}#main .dataTables_wrapper .dataTables_paginate .text-uppercase.paginate_button,#main .dataTables_wrapper .dataTables_paginate .text-uppercase.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.text-uppercase[type=submit],.aeuc_scart a.text-uppercase,.btn.text-uppercase,.page-not-found button.text-uppercase,.product-miniature .product-container .text-uppercase.add-to-cart,.product-miniature .product-container .text-uppercase.see-product,.text-uppercase.add-to-cart-button{text-transform:uppercase}#main .dataTables_wrapper .dataTables_paginate .large.paginate_button,#main .dataTables_wrapper .dataTables_paginate .large.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.large[type=submit],.aeuc_scart a.large,.btn.large,.large.add-to-cart-button,.page-not-found button.large,.product-miniature .product-container .large.add-to-cart,.product-miniature .product-container .large.see-product{font-size:18px}@media print,screen and (min-width:40em){#main .dataTables_wrapper .dataTables_paginate .large.paginate_button,#main .dataTables_wrapper .dataTables_paginate .large.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.large[type=submit],.aeuc_scart a.large,.btn.large,.large.add-to-cart-button,.page-not-found button.large,.product-miniature .product-container .large.add-to-cart,.product-miniature .product-container .large.see-product{font-size:20px}}#main .dataTables_wrapper .dataTables_paginate .large.icon.paginate_button,#module-prestablog-blog .sidebar .email_subscription input.large.icon[type=submit],.aeuc_scart a.large,.btn.large.icon,.large.add-to-cart-button,.page-not-found button.large.icon,.product-miniature .product-container .large.add-to-cart,.product-miniature .product-container .large.see-product{padding-left:70px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .add-to-cart,#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .see-product,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .add-to-cart,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .see-product,#main .dataTables_wrapper .dataTables_paginate .small.paginate_button,#main .dataTables_wrapper .dataTables_paginate .small.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input[type=submit],.aeuc_scart a.small,.btn.small,.page-not-found button,.product-miniature .product-container .small.add-to-cart,.product-miniature .product-container .small.see-product,.small.add-to-cart-button{font-size:14px;padding:10px 20px;padding:5px 13px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .icon.add-to-cart,#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .icon.see-product,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .icon.add-to-cart,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .icon.see-product,#main .dataTables_wrapper .dataTables_paginate .small.icon.paginate_button,#module-prestablog-blog .sidebar .email_subscription input.icon[type=submit],.aeuc_scart a.small,.btn.small.icon,.page-not-found button.icon,.product-miniature .product-container .small.add-to-cart,.product-miniature .product-container .small.see-product,.small.add-to-cart-button{padding-left:40px}#main .dataTables_wrapper .dataTables_paginate .yellow.paginate_button,#main .dataTables_wrapper .dataTables_paginate .yellow.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input[type=submit],.aeuc_scart a.yellow,.btn.yellow,.page-not-found button.yellow,.product-miniature .product-container .yellow.add-to-cart,.product-miniature .product-container .yellow.see-product,.yellow.add-to-cart-button{border-color:#ffd545}#main .dataTables_wrapper .dataTables_paginate .yellow.paginate_button.current:hover:before,#main .dataTables_wrapper .dataTables_paginate .yellow.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:before,.aeuc_scart a.yellow:before,.btn.yellow:before,.page-not-found button.yellow:before,.product-miniature .product-container .yellow.add-to-cart:before,.product-miniature .product-container .yellow.see-product:before,.yellow.add-to-cart-button:before{background-color:#ffd545}#main .dataTables_wrapper .dataTables_paginate .yellow.fill.paginate_button,#module-prestablog-blog .sidebar .email_subscription input[type=submit],.aeuc_scart a.yellow.fill,.btn.yellow.fill,.page-not-found button.yellow.fill,.product-miniature .product-container .yellow.fill.add-to-cart,.product-miniature .product-container .yellow.fill.see-product,.yellow.fill.add-to-cart-button{background-color:#ffd545;border:none}#main .dataTables_wrapper .dataTables_paginate .yellow.fill.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input[type=submit]:before,.aeuc_scart a.yellow.fill:before,.btn.yellow.fill:before,.page-not-found button.yellow.fill:before,.product-miniature .product-container .yellow.fill.add-to-cart:before,.product-miniature .product-container .yellow.fill.see-product:before,.yellow.fill.add-to-cart-button:before{background-color:#ffc912}#main .dataTables_wrapper .dataTables_paginate .yellow.paginate_button:focus,#main .dataTables_wrapper .dataTables_paginate .yellow.paginate_button:hover,#module-prestablog-blog .sidebar .email_subscription input:focus[type=submit],#module-prestablog-blog .sidebar .email_subscription input:hover[type=submit],.aeuc_scart a.yellow:focus,.aeuc_scart a.yellow:hover,.btn.yellow:focus,.btn.yellow:hover,.page-not-found button.yellow:focus,.page-not-found button.yellow:hover,.product-miniature .product-container .yellow.add-to-cart:focus,.product-miniature .product-container .yellow.add-to-cart:hover,.product-miniature .product-container .yellow.see-product:focus,.product-miniature .product-container .yellow.see-product:hover,.yellow.add-to-cart-button:focus,.yellow.add-to-cart-button:hover{color:#000}#main .dataTables_wrapper .dataTables_paginate .add-to-cart.paginate_button,#main .dataTables_wrapper .dataTables_paginate .add-to-cart.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.add-to-cart[type=submit],.add-to-cart-button,.aeuc_scart a.add-to-cart,.btn.add-to-cart,.page-not-found button.add-to-cart,.product-miniature .product-container .add-to-cart{border-color:#b11f3f}#main .dataTables_wrapper .dataTables_paginate .add-to-cart.paginate_button.current:hover:before,#main .dataTables_wrapper .dataTables_paginate .add-to-cart.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input.add-to-cart[type=submit]:before,.add-to-cart-button:before,.aeuc_scart a.add-to-cart:before,.btn.add-to-cart:before,.page-not-found button.add-to-cart:before,.product-miniature .product-container .add-to-cart:before{background-color:#b11f3f}#main .dataTables_wrapper .dataTables_paginate .add-to-cart.fill.paginate_button,#module-prestablog-blog .sidebar .email_subscription input.add-to-cart[type=submit],.add-to-cart-button,.aeuc_scart a.add-to-cart.fill,.btn.add-to-cart.fill,.page-not-found button.add-to-cart.fill,.product-miniature .product-container .add-to-cart{color:#fff;background-color:#b11f3f;border:none}#main .dataTables_wrapper .dataTables_paginate .add-to-cart.fill.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input.add-to-cart[type=submit]:before,.add-to-cart-button:before,.aeuc_scart a.add-to-cart.fill:before,.btn.add-to-cart.fill:before,.page-not-found button.add-to-cart.fill:before,.product-miniature .product-container .add-to-cart:before{background-color:#861730}#main .dataTables_wrapper .dataTables_paginate .warning.paginate_button,#main .dataTables_wrapper .dataTables_paginate .warning.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.warning[type=submit],.aeuc_scart a.warning,.btn.warning,.page-not-found button.warning,.product-miniature .product-container .warning.add-to-cart,.product-miniature .product-container .warning.see-product,.warning.add-to-cart-button{border-color:#e02424}#main .dataTables_wrapper .dataTables_paginate .warning.paginate_button.current:hover:before,#main .dataTables_wrapper .dataTables_paginate .warning.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input.warning[type=submit]:before,.aeuc_scart a.warning:before,.btn.warning:before,.page-not-found button.warning:before,.product-miniature .product-container .warning.add-to-cart:before,.product-miniature .product-container .warning.see-product:before,.warning.add-to-cart-button:before{background-color:#e02424}#main .dataTables_wrapper .dataTables_paginate .warning.fill.paginate_button,#module-prestablog-blog .sidebar .email_subscription input.warning[type=submit],.aeuc_scart a.warning.fill,.btn.warning.fill,.page-not-found button.warning.fill,.product-miniature .product-container .warning.fill.add-to-cart,.product-miniature .product-container .warning.fill.see-product,.warning.fill.add-to-cart-button{background-color:#e02424;border:none}#main .dataTables_wrapper .dataTables_paginate .warning.fill.paginate_button:before,#module-prestablog-blog .sidebar .email_subscription input.warning[type=submit]:before,.aeuc_scart a.warning.fill:before,.btn.warning.fill:before,.page-not-found button.warning.fill:before,.product-miniature .product-container .warning.fill.add-to-cart:before,.product-miniature .product-container .warning.fill.see-product:before,.warning.fill.add-to-cart-button:before{background-color:#b71a1a}#main .dataTables_wrapper .dataTables_paginate .text-white.paginate_button,#main .dataTables_wrapper .dataTables_paginate .text-white.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.text-white[type=submit],.aeuc_scart a.text-white,.btn.text-white,.page-not-found button.text-white,.product-miniature .product-container .text-white.add-to-cart,.product-miniature .product-container .text-white.see-product,.text-white.add-to-cart-button{color:#fff}#main .dataTables_wrapper .dataTables_paginate .color-fix-on-hover.paginate_button:hover,#module-prestablog-blog .sidebar .email_subscription input.color-fix-on-hover:hover[type=submit],.aeuc_scart a.color-fix-on-hover:hover,.btn.color-fix-on-hover:hover,.color-fix-on-hover.add-to-cart-button:hover,.page-not-found button.color-fix-on-hover:hover,.product-miniature .product-container .color-fix-on-hover.add-to-cart:hover,.product-miniature .product-container .color-fix-on-hover.see-product:hover{color:inherit}#main .dataTables_wrapper .dataTables_paginate .icon.paginate_button,#main .dataTables_wrapper .dataTables_paginate .icon.paginate_button.current:hover,#module-prestablog-blog .sidebar .email_subscription input.icon[type=submit],.add-to-cart-button,.aeuc_scart a,.btn.icon,.page-not-found button.icon,.product-miniature .product-container .add-to-cart,.product-miniature .product-container .see-product{padding-left:50px}#main .dataTables_wrapper .dataTables_paginate .icon.paginate_button.current:hover:after,#main .dataTables_wrapper .dataTables_paginate .icon.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon[type=submit]:after,.add-to-cart-button:after,.aeuc_scart a:after,.btn.icon:after,.page-not-found button.icon:after,.product-miniature .product-container .add-to-cart:after,.product-miniature .product-container .see-product:after{position:absolute;top:12px;left:25px}#main .dataTables_wrapper .dataTables_paginate .icon.fill.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon[type=submit]:after,.aeuc_scart a.fill:after,.btn.icon.fill:after,.fill.add-to-cart-button:after,.page-not-found button.icon.fill:after,.product-miniature .product-container .fill.add-to-cart:after,.product-miniature .product-container .fill.see-product:after{top:15px}#main .dataTables_wrapper .dataTables_paginate .icon.arrow.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow[type=submit]:after,.aeuc_scart a:after,.arrow.add-to-cart-button:after,.btn.icon.arrow:after,.page-not-found button.icon.arrow:after,.product-miniature .product-container .arrow.add-to-cart:after,.product-miniature .product-container .arrow.see-product:after{left:15px;content:url(../img/arrow-right-black.png)}#main .dataTables_wrapper .dataTables_paginate .icon.arrow.paginate_button:hover:after,#main .dataTables_wrapper .dataTables_paginate .icon.arrow.text-white.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow.text-white[type=submit]:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow[type=submit]:hover:after,.aeuc_scart a.text-white:after,.aeuc_scart a:hover:after,.arrow.add-to-cart-button:hover:after,.arrow.text-white.add-to-cart-button:after,.btn.icon.arrow.text-white:after,.btn.icon.arrow:hover:after,.page-not-found button.icon.arrow.text-white:after,.page-not-found button.icon.arrow:hover:after,.product-miniature .product-container .arrow.add-to-cart:hover:after,.product-miniature .product-container .arrow.see-product:hover:after,.product-miniature .product-container .arrow.text-white.add-to-cart:after,.product-miniature .product-container .arrow.text-white.see-product:after{content:url(../img/arrow-right-white.png)}#main .dataTables_wrapper .dataTables_paginate .icon.arrow.arrow-left.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow.arrow-left[type=submit]:after,.aeuc_scart a:after,.arrow.arrow-left.add-to-cart-button:after,.btn.icon.arrow.arrow-left:after,.page-not-found button.icon.arrow.arrow-left:after,.product-miniature .product-container .arrow.arrow-left.add-to-cart:after,.product-miniature .product-container .arrow.arrow-left.see-product:after{transform:scale(-1);top:16px}#main .dataTables_wrapper .dataTables_paginate .icon.arrow.text-white.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow.text-white[type=submit]:after,.aeuc_scart a.text-white:after,.arrow.text-white.add-to-cart-button:after,.btn.icon.arrow.text-white:after,.page-not-found button.icon.arrow.text-white:after,.product-miniature .product-container .arrow.text-white.add-to-cart:after,.product-miniature .product-container .arrow.text-white.see-product:after{content:url(../img/arrow-right-white.png)}#main .dataTables_wrapper .dataTables_paginate .icon.arrow.color-fix-on-hover.paginate_button:hover:after,#main .dataTables_wrapper .dataTables_paginate .icon.arrow.yellow.paginate_button:hover:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow.color-fix-on-hover[type=submit]:hover:after,#module-prestablog-blog .sidebar .email_subscription input.icon.arrow[type=submit]:hover:after,.aeuc_scart a.color-fix-on-hover:hover:after,.aeuc_scart a.yellow:hover:after,.arrow.color-fix-on-hover.add-to-cart-button:hover:after,.arrow.yellow.add-to-cart-button:hover:after,.btn.icon.arrow.color-fix-on-hover:hover:after,.btn.icon.arrow.yellow:hover:after,.page-not-found button.icon.arrow.color-fix-on-hover:hover:after,.page-not-found button.icon.arrow.yellow:hover:after,.product-miniature .product-container .arrow.color-fix-on-hover.add-to-cart:hover:after,.product-miniature .product-container .arrow.color-fix-on-hover.see-product:hover:after,.product-miniature .product-container .arrow.yellow.add-to-cart:hover:after,.product-miniature .product-container .arrow.yellow.see-product:hover:after{content:url(../img/arrow-right-black.png)}#main .dataTables_wrapper .dataTables_paginate .icon.cart.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon.cart[type=submit]:after,.add-to-cart-button:after,.aeuc_scart a.cart:after,.btn.icon.cart:after,.page-not-found button.icon.cart:after,.product-miniature .product-container .add-to-cart:after,.product-miniature .product-container .cart.see-product:after{top:15px;content:url(../img/panier-white.png)}#main .dataTables_wrapper .dataTables_paginate .icon.cart.paginate_button:hover:after,#module-prestablog-blog .sidebar .email_subscription input.icon.cart[type=submit]:hover:after,.add-to-cart-button:hover:after,.aeuc_scart a.cart:hover:after,.btn.icon.cart:hover:after,.page-not-found button.icon.cart:hover:after,.product-miniature .product-container .add-to-cart:hover:after,.product-miniature .product-container .cart.see-product:hover:after{content:url(../img/panier-white.png)}#main .dataTables_wrapper .dataTables_paginate .icon.plus.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription input.icon.plus[type=submit]:after,.aeuc_scart a.plus:after,.btn.icon.plus:after,.page-not-found button.icon.plus:after,.plus.add-to-cart-button:after,.product-miniature .product-container .plus.add-to-cart:after,.product-miniature .product-container .see-product:after{content:"+";margin-right:10px;top:15px}a:focus,a:hover{color:#914107}#header .header-bottom,.gray-wave-container,.grey-wave-cta{background-color:#f6f6f6;position:relative;z-index:2}#header .header-bottom:before,.gray-wave-container:before,.grey-wave-cta:before{content:"";position:absolute;top:-18px;height:18px;width:100%;background:url(../img/light-gray-wave-top.png) repeat-x}#header .header-bottom:after,.gray-wave-container:after,.grey-wave-cta:after{content:"";position:absolute;bottom:-18px;left:0;height:18px;width:100%;background:url(../img/light-gray-wave-top.png) repeat-x;transform:scaleY(-1)}.blue-wave-container,.brown-wave-container,.burgundy-wave-container,.red-wave-container{background-color:#860000;position:relative;border-radius:0!important}.blue-wave-container:before,.brown-wave-container:before,.burgundy-wave-container:before,.red-wave-container:before{content:"";position:absolute;top:-10px;height:10px;width:100%;background:url(../img/wave-red-top.png) repeat-x;z-index:1}.blue-wave-container:after,.brown-wave-container:after,.burgundy-wave-container:after,.red-wave-container:after{content:"";position:absolute;bottom:-10px;height:10px;width:100%;background:url(../img/wave-red-bottom.png) repeat-x;z-index:1}.red-wave-container.watermark,.watermark.blue-wave-container,.watermark.brown-wave-container,.watermark.burgundy-wave-container{background-image:url(../img/neodif-watermark.png);background-position:100% 100%;background-repeat:no-repeat}.blue-wave-container,.brown-wave-container,.burgundy-wave-container{background-color:#4c242d;color:#fff}.blue-wave-container .h2,.blue-wave-container h2,.blue-wave-container h3,.blue-wave-container h4,.blue-wave-container h5,.blue-wave-container h6,.blue-wave-container p,.brown-wave-container .h2,.brown-wave-container h2,.brown-wave-container h3,.brown-wave-container h4,.brown-wave-container h5,.brown-wave-container h6,.brown-wave-container p,.burgundy-wave-container .h2,.burgundy-wave-container h2,.burgundy-wave-container h3,.burgundy-wave-container h4,.burgundy-wave-container h5,.burgundy-wave-container h6,.burgundy-wave-container p{color:#fff!important}.blue-wave-container a,.brown-wave-container a,.burgundy-wave-container a{color:#fff}.blue-wave-container div.product-attribute,.brown-wave-container div.product-attribute,.burgundy-wave-container div.product-attribute{color:#fff!important}#main .dataTables_wrapper .dataTables_paginate .blue-wave-container .icon.arrow.paginate_button:after,#main .dataTables_wrapper .dataTables_paginate .brown-wave-container .icon.arrow.paginate_button:after,#main .dataTables_wrapper .dataTables_paginate .burgundy-wave-container .icon.arrow.paginate_button:after,#module-prestablog-blog .sidebar .email_subscription .blue-wave-container input.icon.arrow[type=submit]:after,#module-prestablog-blog .sidebar .email_subscription .brown-wave-container input.icon.arrow[type=submit]:after,#module-prestablog-blog .sidebar .email_subscription .burgundy-wave-container input.icon.arrow[type=submit]:after,.aeuc_scart .blue-wave-container a:after,.aeuc_scart .brown-wave-container a:after,.aeuc_scart .burgundy-wave-container a:after,.blue-wave-container #main .dataTables_wrapper .dataTables_paginate .icon.arrow.paginate_button:after,.blue-wave-container #module-prestablog-blog .sidebar .email_subscription input.icon.arrow[type=submit]:after,.blue-wave-container .aeuc_scart a:after,.blue-wave-container .arrow.add-to-cart-button:after,.blue-wave-container .btn.icon.arrow:after,.blue-wave-container .page-not-found button.icon.arrow:after,.blue-wave-container .product-miniature .product-container .arrow.add-to-cart:after,.blue-wave-container .product-miniature .product-container .arrow.see-product:after,.brown-wave-container #main .dataTables_wrapper .dataTables_paginate .icon.arrow.paginate_button:after,.brown-wave-container #module-prestablog-blog .sidebar .email_subscription input.icon.arrow[type=submit]:after,.brown-wave-container .aeuc_scart a:after,.brown-wave-container .arrow.add-to-cart-button:after,.brown-wave-container .btn.icon.arrow:after,.brown-wave-container .page-not-found button.icon.arrow:after,.brown-wave-container .product-miniature .product-container .arrow.add-to-cart:after,.brown-wave-container .product-miniature .product-container .arrow.see-product:after,.burgundy-wave-container #main .dataTables_wrapper .dataTables_paginate .icon.arrow.paginate_button:after,.burgundy-wave-container #module-prestablog-blog .sidebar .email_subscription input.icon.arrow[type=submit]:after,.burgundy-wave-container .aeuc_scart a:after,.burgundy-wave-container .arrow.add-to-cart-button:after,.burgundy-wave-container .btn.icon.arrow:after,.burgundy-wave-container .page-not-found button.icon.arrow:after,.burgundy-wave-container .product-miniature .product-container .arrow.add-to-cart:after,.burgundy-wave-container .product-miniature .product-container .arrow.see-product:after,.page-not-found .blue-wave-container button.icon.arrow:after,.page-not-found .brown-wave-container button.icon.arrow:after,.page-not-found .burgundy-wave-container button.icon.arrow:after,.product-miniature .product-container .blue-wave-container .arrow.add-to-cart:after,.product-miniature .product-container .blue-wave-container .arrow.see-product:after,.product-miniature .product-container .brown-wave-container .arrow.add-to-cart:after,.product-miniature .product-container .brown-wave-container .arrow.see-product:after,.product-miniature .product-container .burgundy-wave-container .arrow.add-to-cart:after,.product-miniature .product-container .burgundy-wave-container .arrow.see-product:after{content:url(../img/arrow-right-white.png)}.blue-wave-container:before,.brown-wave-container:before,.burgundy-wave-container:before{background:url(../img/burgundy-wave-top.png) repeat-x}.blue-wave-container:after,.brown-wave-container:after,.burgundy-wave-container:after{background:url(../img/burgundy-wave-bottom.png) repeat-x}.blue-wave-container,.brown-wave-container{background-color:#442c21}.blue-wave-container:before,.brown-wave-container:before{background:url(../img/brown-wave-top.png) repeat-x}.blue-wave-container:after,.brown-wave-container:after{background:url(../img/brown-wave-bottom.png) repeat-x}.blue-wave-container .h2:after,.blue-wave-container h2:after,.blue-wave-container h3:after,.brown-wave-container .h2:after,.brown-wave-container h2:after,.brown-wave-container h3:after{background-color:#000!important}.blue-wave-container{background-color:#3b5777!important}.blue-wave-container:before{background:url(../img/blue-wave-top.png) repeat-x;height:21px;top:-15px}.blue-wave-container:after{background:url(../img/blue-wave-bottom.png) repeat-x}.blue-wave-container.prestablog_slide .actualite-column .single-news-block{background-color:#1f3c58}.blue-wave-container.prestablog_slide .actualite-column .single-news-block .single-news-image:after{background-image:url(../img/deco-round-blue.png)}#header .header-middle .header-middle-subtitle,#header .header-middle .header-middle-title,.border-bottom{position:relative}#header .header-middle .header-middle-subtitle:after,#header .header-middle .header-middle-title:after,.border-bottom:after{content:"";position:absolute;left:0;right:0;bottom:0;margin:0 auto;width:60px;height:1px;background-color:#fff}.nopadding{padding:0}#main .h2,#main h1,#main h2,#main h3,#module-prestablog-blog #content-wrapper .sidebar .h2,#module-prestablog-blog #content-wrapper .sidebar h1,#module-prestablog-blog #content-wrapper .sidebar h2,#module-prestablog-blog #content-wrapper .sidebar h3,#module-prestablog-blog #content-wrapper .sidebar h4,#wrapper .blogview .blog_title,#wrapper .blogview .main_title,.title-bg-diagonal{position:relative;z-index:2}#main .h2:after,#main h1:after,#main h2:after,#main h3:after,#module-prestablog-blog #content-wrapper .sidebar .h2:after,#module-prestablog-blog #content-wrapper .sidebar h1:after,#module-prestablog-blog #content-wrapper .sidebar h2:after,#module-prestablog-blog #content-wrapper .sidebar h3:after,#module-prestablog-blog #content-wrapper .sidebar h4:after,#wrapper .blogview .blog_title:after,#wrapper .blogview .main_title:after,.title-bg-diagonal:after{content:"";display:block;width:1px;background-color:#f36d0b;position:absolute;top:-15px;left:50%;bottom:-15px;transform:rotate(36deg);z-index:-1}#block-reassurance #main .h2:after,#block-reassurance #main h2:after,#block-reassurance #module-prestablog-blog #content-wrapper .sidebar .h2:after,#block-reassurance #module-prestablog-blog #content-wrapper .sidebar h2:after,#block-reassurance #wrapper .blogview .h2.blog_title:after,#block-reassurance #wrapper .blogview .h2.main_title:after,#block-reassurance #wrapper .blogview h2.blog_title:after,#block-reassurance #wrapper .blogview h2.main_title:after,#block-reassurance .title-bg-diagonal.h2:after,#block-reassurance h2.title-bg-diagonal:after,#main #block-reassurance .h2:after,#main #block-reassurance h2:after,#main .diagonal-black.h2:after,#main h1.diagonal-black:after,#main h2.diagonal-black:after,#main h3.diagonal-black:after,#module-prestablog-blog #content-wrapper .sidebar #block-reassurance .h2:after,#module-prestablog-blog #content-wrapper .sidebar #block-reassurance h2:after,#module-prestablog-blog #content-wrapper .sidebar .diagonal-black.h2:after,#module-prestablog-blog #content-wrapper .sidebar h1.diagonal-black:after,#module-prestablog-blog #content-wrapper .sidebar h2.diagonal-black:after,#module-prestablog-blog #content-wrapper .sidebar h3.diagonal-black:after,#module-prestablog-blog #content-wrapper .sidebar h4.diagonal-black:after,#wrapper .blogview #block-reassurance .h2.blog_title:after,#wrapper .blogview #block-reassurance .h2.main_title:after,#wrapper .blogview #block-reassurance h2.blog_title:after,#wrapper .blogview #block-reassurance h2.main_title:after,#wrapper .blogview .diagonal-black.blog_title:after,#wrapper .blogview .diagonal-black.main_title:after,.title-bg-diagonal.diagonal-black:after{background-color:#000}#main .owl-carousel{position:relative;padding:0 25px}@media print,screen and (min-width:40em){#main .owl-carousel{padding:0 50px}}#main .owl-carousel .owl-next,#main .owl-carousel .owl-prev{position:absolute;z-index:2;top:calc(50% - 10px);width:13px;height:20px;opacity:.7;transition:opacity .2s}@media print,screen and (min-width:40em){#main .owl-carousel .owl-next,#main .owl-carousel .owl-prev{top:calc(50% - 8.5px);width:50px;height:17px}}#main .owl-carousel .owl-next:focus,#main .owl-carousel .owl-next:hover,#main .owl-carousel .owl-prev:focus,#main .owl-carousel .owl-prev:hover{opacity:1}#main .owl-carousel .owl-next.disabled,#main .owl-carousel .owl-prev.disabled{opacity:.4!important}#main .owl-carousel .owl-prev{left:0;background:url(../img/arrow-left-mobile-orange.png) no-repeat 50%}@media print,screen and (min-width:40em){#main .owl-carousel .owl-prev{background-image:url(../img/arrow-left-orange.png)}}#main .owl-carousel .owl-next{right:0;background:url(../img/arrow-right-mobile-orange.png) no-repeat 50%}@media print,screen and (min-width:40em){#main .owl-carousel .owl-next{background-image:url(../img/arrow-right-orange.png)}}#main .owl-carousel .owl-next.disabled{opacity:.4}#main .owl-carousel .owl-dots{text-align:center;margin-top:60px}@media print,screen and (min-width:40em){#main .owl-carousel .owl-dots{margin-top:70px}}#main .owl-carousel .owl-dots .owl-dot{display:inline-block}#main .owl-carousel .owl-dots .owl-dot span{display:block;border-radius:50%;margin:0 10px;width:15px;height:15px;border:2px solid #efc83a;background-color:transparent}#main .owl-carousel .owl-dots .owl-dot.active span{background-color:#efc83a}#notifications{max-width:75rem;margin:0 auto}#notifications:after,#notifications:before{display:table;content:" "}#notifications:after{clear:both}.alert,.notification{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;position:relative;margin:0 0 1rem;padding:1rem;border:none;border-radius:0;font-weight:700;margin:0 0 15px}@media print,screen and (min-width:40em){.alert,.notification{padding-right:1.875rem;padding-left:1.875rem}}.alert:last-child:not(:first-child),.notification:last-child:not(:first-child){float:right}.alert>:first-child,.notification>:first-child{margin-top:0}.alert>:last-child,.notification>:last-child{margin-bottom:0}.alert:first-of-type,.notification:first-of-type{margin-top:30px}.alert:last-of-type,.notification:last-of-type{margin-bottom:0}.alert.alert-success,.alert.notification-success,.notification.alert-success,.notification.notification-success{background-color:#ddf5e5;color:#000;color:#33a457}.alert.alert-danger,.alert.notification-danger,.notification.alert-danger,.notification.notification-danger{background-color:#ffc7c7;color:#000;color:#860000}.alert.alert-warning,.alert.notification-warning,.notification.alert-warning,.notification.notification-warning{background-color:#fde9da;color:#000;color:#f36d0b}.alert.alert-info,.alert.notification-info,.notification.alert-info,.notification.notification-info{background-color:#fff9e3;color:#000;color:#ab8400}.page-not-found{text-align:center}.page-not-found>li{list-style:none}.addresses .address .page-not-found ul.action-list,.my-account-has-nav .my-account-nav .page-not-found ul,.page-my-account .page-not-found ul.link-list,.page-not-found .addresses .address ul.action-list,.page-not-found .my-account-has-nav .my-account-nav ul,.page-not-found .page-my-account ul.link-list,.page-not-found ul.menu,.page-not-found ul.my-account-links{text-align:center}.addresses .address .page-not-found ul.action-list li,.my-account-has-nav .my-account-nav .page-not-found ul li,.page-my-account .page-not-found ul.link-list li,.page-not-found .addresses .address ul.action-list li,.page-not-found .my-account-has-nav .my-account-nav ul li,.page-not-found .page-my-account ul.link-list li,.page-not-found ul.menu li,.page-not-found ul.my-account-links li{display:inline-block;padding-right:20px}#content.page-cms{margin-bottom:85px}@media print,screen and (min-width:64em){#content.page-cms{width:83.33333%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-right:auto;margin-left:auto}}@media print,screen and (min-width:64em) and (min-width:40em){#content.page-cms{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){#content.page-cms:last-child:not(:first-child){float:right}#content.page-cms,#content.page-cms:last-child:not(:first-child){float:none;clear:both}}#content.page-cms .h2,#content.page-cms h2,#content.page-cms h3{margin-top:60px;font-size:20px}#content.page-cms a:active,#content.page-cms a:focus,#content.page-cms a:hover,#prestablogfont a:active,#prestablogfont a:focus,#prestablogfont a:hover{text-decoration:underline}.shopping-list{margin:0!important}.shopping-list-btn{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:13px;font-weight:700;line-height:1;transition:.15s}.shopping-list-btn:hover{color:#f36d0b}.shopping-list-btn:after{content:url(../img/icon-wishlist.png);display:inline-block;vertical-align:middle;margin-left:10px}.shopping-list-btn.wish-fill:after{content:url(../img/icon-wishlist-fill.png)}#content #search_widget{max-width:500px;margin:auto}#content #search_widget .search-field{position:relative}#content #search_widget .search-field .search-button{position:absolute;right:0}#content #search_widget .search-field .search-input{background:none;border-bottom-color:inherit}.loader{height:40px;background-image:url(../img/loader.gif);background-position:50%;background-repeat:no-repeat;transition:opacity .3s;width:100%}.loader.hidden{opacity:0;height:0;overflow:hidden}.rrssb-buttons.tiny-format{height:40px!important;float:left;width:30px}.share-content-prestablog{float:left;line-height:37px!important;font-size:17px!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{border:none;padding-bottom:0;margin-top:15px;border-bottom:2px solid #d6d7d5;background-color:transparent;box-shadow:none;transition:border-color .3s;font-size:14px;font-weight:700;z-index:2;position:relative}[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{border:none;border-bottom:2px solid #a3a5a1;background:none;box-shadow:none}[type=color]:valid.full,[type=date]:valid.full,[type=datetime-local]:valid.full,[type=datetime]:valid.full,[type=email]:valid.full,[type=month]:valid.full,[type=number]:valid.full,[type=password]:valid.full,[type=search]:valid.full,[type=tel]:valid.full,[type=text]:valid.full,[type=time]:valid.full,[type=url]:valid.full,[type=week]:valid.full,textarea:valid.full{border-bottom-color:#33a457;position:relative;background-image:url(../img/valid.png);background-repeat:no-repeat;background-position:right 5px center}[type=color]:invalid.full,[type=date]:invalid.full,[type=datetime-local]:invalid.full,[type=datetime]:invalid.full,[type=email]:invalid.full,[type=month]:invalid.full,[type=number]:invalid.full,[type=password]:invalid.full,[type=search]:invalid.full,[type=tel]:invalid.full,[type=text]:invalid.full,[type=time]:invalid.full,[type=url]:invalid.full,[type=week]:invalid.full,textarea:invalid.full{border-bottom-color:#860000;position:relative;background-image:url(../img/ico-false.png);background-repeat:no-repeat;background-position:right 5px center}[type=color]+label,[type=date]+label,[type=datetime-local]+label,[type=datetime]+label,[type=email]+label,[type=month]+label,[type=number]+label,[type=password]+label,[type=search]+label,[type=tel]+label,[type=text]+label,[type=time]+label,[type=url]+label,[type=week]+label,textarea+label{height:0;position:relative;top:-48px;left:0;font-size:14px;font-style:italic;transition:top .1s}[type=color].full+label,[type=color]:focus+label,[type=date].full+label,[type=date]:focus+label,[type=datetime-local].full+label,[type=datetime-local]:focus+label,[type=datetime].full+label,[type=datetime]:focus+label,[type=email].full+label,[type=email]:focus+label,[type=month].full+label,[type=month]:focus+label,[type=number].full+label,[type=number]:focus+label,[type=password].full+label,[type=password]:focus+label,[type=search].full+label,[type=search]:focus+label,[type=tel].full+label,[type=tel]:focus+label,[type=text].full+label,[type=text]:focus+label,[type=time].full+label,[type=time]:focus+label,[type=url].full+label,[type=url]:focus+label,[type=week].full+label,[type=week]:focus+label,textarea.full+label,textarea:focus+label{top:-72px}textarea+label{position:absolute;top:0}textarea.full+label,textarea:focus+label{top:-18px}#main input::-webkit-input-placeholder{visibility:hidden;display:none;opacity:0}#main input::-moz-placeholder{visibility:hidden;display:none;opacity:0}#main input:-ms-input-placeholder{visibility:hidden;display:none;opacity:0}#main input:-moz-placeholder{visibility:hidden;display:none;opacity:0}label{position:relative}label.required:after{content:"*"}label.select-field.required:after{content:""}label.radio-block{padding-left:20px}[type=checkbox],[type=radio]{position:absolute;z-index:1;opacity:0;width:15px;height:15px;top:5px}[type=checkbox]+.pseudo-check,[type=radio]+.pseudo-check{display:inline-block;height:15px;width:15px;background-color:#d6d7d5;position:absolute;left:0;top:5px;border-radius:100px;transition:background-color .3s}[type=checkbox][type=checkbox]+.pseudo-check,[type=radio][type=checkbox]+.pseudo-check{border-radius:3px}[type=checkbox]:checked+.pseudo-check,[type=radio]:checked+.pseudo-check{background-color:#f36d0b}[type=checkbox]:checked+.pseudo-check+form+label,[type=checkbox]:checked+.pseudo-check+form+span,[type=checkbox]:checked+.pseudo-check+label,[type=checkbox]:checked+.pseudo-check+span,[type=checkbox]:checked+form+label,[type=checkbox]:checked+form+span,[type=checkbox]:checked+label,[type=checkbox]:checked+span,[type=radio]:checked+.pseudo-check+form+label,[type=radio]:checked+.pseudo-check+form+span,[type=radio]:checked+.pseudo-check+label,[type=radio]:checked+.pseudo-check+span,[type=radio]:checked+form+label,[type=radio]:checked+form+span,[type=radio]:checked+label,[type=radio]:checked+span{font-weight:700}[type=checkbox]+.pseudo-check+form+label,[type=checkbox]+.pseudo-check+label,[type=checkbox]+.pseudo-check+span,[type=radio]+.pseudo-check+form+label,[type=radio]+.pseudo-check+label,[type=radio]+.pseudo-check+span{display:inline-block;margin-left:30px}.form-errors{position:relative;margin:0 0 1rem;padding:1rem;border:none;border-radius:0;background-color:#ffc7c7;color:#000;color:#860000;font-weight:700;margin-top:30px;margin-bottom:30px}.form-errors>:first-child{margin-top:0}.form-errors>:last-child{margin-bottom:0}.form-errors li{margin-left:20px}.gformbuilderpro_form .itemfield_wp.row{max-width:75rem;margin-right:auto;margin-left:auto}.gformbuilderpro_form .itemfield_wp.row:after,.gformbuilderpro_form .itemfield_wp.row:before{display:table;content:" "}.gformbuilderpro_form .itemfield_wp.row:after{clear:both}.gformbuilderpro_form .itemfield{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.gformbuilderpro_form .itemfield{padding-right:1.875rem;padding-left:1.875rem}}.gformbuilderpro_form .itemfield:last-child:not(:first-child){float:right}.gformbuilderpro_form .formbuilder_group{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.gformbuilderpro_form .formbuilder_group{padding-right:1.875rem;padding-left:1.875rem}}.gformbuilderpro_form .formbuilder_group:last-child:not(:first-child){float:right}.gformbuilderpro_action{text-align:center}#psform #comment{visibility:visible!important}#header .customer-link-area{background-color:#ffd545;position:relative;z-index:3}#header .customer-link-area>.column,#header .customer-link-area>.columns{position:relative}#header .customer-link-area .back-to-portail{float:left;height:50px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}@media screen and (max-width:39.9375em){#header .customer-link-area .back-to-portail{display:none}}#header .customer-link-area .back-to-portail a{color:#22222a;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}#header .customer-link-area .back-to-portail a:hover{text-decoration:underline}#header .customer-link-area .back-to-portail a:before{content:url(../img/arrow-right-black.png);margin-right:10px;display:inline-block;transform:rotate(180deg)}#header .customer-link-area .english-page{float:right;line-height:47px;margin-right:20px}#header .customer-link-area .english-page a{color:#000;font-weight:700}#header .customer-link-area .english-page a img{margin-left:10px}@media screen and (max-width:39.9375em){#header .customer-link-area .english-page{display:none}}#header .customer-link-area .customer-button-container{background-color:#ffd545;float:right}@media screen and (max-width:39.9375em){#header .customer-link-area .customer-button-container{display:none}}#header .customer-link-area .customer-button-container .customer-button,#header .customer-link-area .customer-button-container .login-button{display:block;cursor:pointer;margin:0;border:0;padding:10px 15px 5px}#header .customer-link-area .customer-button-container .customer-button .button-text,#header .customer-link-area .customer-button-container .login-button .button-text{text-align:left;display:block;color:#22222a;transition:color .2s;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:700;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#header .customer-link-area .customer-button-container .customer-button .button-text:hover,#header .customer-link-area .customer-button-container .login-button .button-text:hover{color:#000;text-decoration:underline}#header .customer-link-area .customer-button-container .customer-button .button-text:before,#header .customer-link-area .customer-button-container .login-button .button-text:before{content:url(../img/icon-client.png);display:inline-block;vertical-align:middle;margin-right:10px;transform:scale(.7);height:34px}#header .customer-link-area .customer-button-container .customer-button{position:relative}#header .customer-link-area .customer-button-container .customer-button:after{content:url(../img/chevron-sous-menu-black.png);position:absolute;top:11px;right:-5px}#header .customer-link-area .customer-button-container .customer-menu{position:absolute;overflow:hidden;z-index:1;padding:0;background-color:#ffe178}#header .customer-link-area .customer-button-container .customer-menu li{margin-bottom:0}#header .customer-link-area .customer-button-container .customer-menu li a{white-space:nowrap;padding:5px 10px;font-size:14px;display:block;min-width:180px;text-align:center;text-transform:uppercase;color:#000;border-bottom:1px solid #ffd545}#header .customer-link-area .customer-button-container .customer-menu li a:hover{background-color:#ffd545}#header .customer-link-area .customer-button-container ul{padding:5px 15px 10px}#header .customer-link-area .customer-button-container ul li{line-height:1.3;margin-bottom:10px}#header .customer-link-area .customer-button-container ul li a{color:#22222a;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:700}#header .customer-link-area .customer-button-container ul li a:hover{text-decoration:underline}#header .customer-link-area .customer-button-container ul li:last-child{margin-bottom:0}@media screen and (max-width:39.9375em){#header{background-color:#0a0200;background-image:url(../img/cavistes.png);background-repeat:no-repeat;background-position:bottom;background-size:cover}}@media print,screen and (min-width:40em){#header .header-image-bg{background-color:#0a0200;background-image:url(../img/cavistes.png);background-repeat:no-repeat;background-position:bottom;background-size:auto 100%;background-attachment:fixed;padding-bottom:80px}#header .header-image-bg.header-image-bg--padding{padding-bottom:80px!important}}#header .header-top{height:171px;position:relative}#header .header-top .logo-link{position:absolute;top:14px;left:0;display:inline-block}@media print,screen and (min-width:64em){#header .header-top .logo-link{top:40px}}#header .header-top .logo-link img{width:77px;height:80px}@media print,screen and (min-width:64em){#header .header-top .logo-link img{width:auto;height:auto}}#header .header-top .header-slogan{position:absolute;top:35px;right:240px;left:110px;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:23px;font-weight:900;text-transform:uppercase;line-height:1;margin:0}@media print,screen and (min-width:64em){#header .header-top .header-slogan{top:70px;left:175px;font-size:33px}}#header .header-top #search_widget{position:absolute;right:0;width:230px}@media print,screen and (min-width:40em){#header .header-top #search_widget{top:20px}}@media print,screen and (min-width:64em){#header .header-top #search_widget{top:56px}}#header .header-top #search_widget form .search-field{position:relative}#header .header-top #search_widget form .search-field .search-button{position:absolute;right:12px;top:2px;z-index:3}#header .header-top #search_widget form .search-field .search-input{background:#fff;border:none;border-radius:15px;height:30px;padding-top:0}#header .header-top #search_widget form .search-field .search-input:-ms-input-placeholder{font-weight:lighter;font-style:italic;font-size:12px;color:#000}#header .header-top #search_widget form .search-field .search-input:-moz-input-placeholder,#header .header-top #search_widget form .search-field .search-input::-moz-placeholder{font-weight:lighter;font-style:italic;font-size:12px;color:#000}#header .header-top #search_widget form .search-field .search-input::-webkit-input-placeholder{font-weight:lighter;font-style:italic;font-size:12px;color:#000}#header .header-top #search_widget form .search-field .search-input::-ms-input-placeholder{font-weight:lighter;font-style:italic;font-size:12px;color:#000}#header .header-top #search_widget form .search-field .search-input::placeholder{font-weight:lighter;font-style:italic;font-size:12px;color:#000}#header .header-top #search_widget #search_popup .product{margin-bottom:30px;cursor:pointer;padding:5px}#header .header-top #search_widget #search_popup .product:active,#header .header-top #search_widget #search_popup .product:focus,#header .header-top #search_widget #search_popup .product:hover{background-color:#f6f6f6}#header .header-top #search_widget #search_popup .search_img{border:none;width:20%}#header .header-top #search_widget #search_popup .search_info{line-height:1;margin-top:10px;width:75%}#header .header-top #search_widget #search_popup .search_info .product_name{font-weight:700;color:#000}#header .header-top .main-menu{position:absolute;left:0;bottom:-7px;right:0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}@media print,screen and (min-width:64em){#header .header-top .main-menu{left:175px}}#header .header-top .main-menu .addresses .address .action-list,#header .header-top .main-menu .menu,#header .header-top .main-menu .my-account-has-nav .my-account-nav ul,#header .header-top .main-menu .my-account-links,#header .header-top .main-menu .page-my-account .link-list,.addresses .address #header .header-top .main-menu .action-list,.my-account-has-nav .my-account-nav #header .header-top .main-menu ul,.page-my-account #header .header-top .main-menu .link-list{display:none}#header .header-top .main-menu>li{line-height:1;text-align:center;position:relative}#header .header-top .main-menu>li>a{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;text-transform:uppercase;padding:0;display:inline;position:relative;display:block}#header .header-top .main-menu>li.current>a{font-weight:700;text-decoration:none}#header .header-top .main-menu>li.submenu>a{position:relative;padding-right:20px;pointer-events:none;cursor:default}#header .header-top .main-menu>li.submenu>a:after{content:url(../img/chevron-sous-menu.png);position:absolute;right:4px;top:-2px}#header .header-top .main-menu>li.submenu .sub{z-index:99;text-align:left;left:-10px;padding-top:10px}#header .header-top .main-menu>li.submenu .sub .submenu-container{background-color:#ffd545;border-radius:2px}#header .header-top .main-menu>li.submenu .sub .submenu-container>ul{margin-left:0!important}#header .header-top .main-menu>li.submenu .sub .submenu-container>ul>li>.submore,#header .header-top .main-menu>li.submenu .sub .submenu-container>ul>li>a{display:none}#header .header-top .main-menu>li.submenu .sub .submenu-container>ul>li>ul{margin-left:0!important}#header .header-top .main-menu>li.submenu .sub .submenu-container>ul li a{white-space:nowrap;padding:5px 10px;font-size:14px;text-transform:uppercase;color:#000;border-bottom:1px solid #ffc912}#header .header-top .main-menu>li.submenu .sub .submenu-container>ul li a:hover{background-color:#ffc912}#header .header-top .main-menu>li.submenu .sub .submenu-container>ul li.current a{font-weight:700}#header .header-top .main-menu>.li-separator{background:url(../img/sep-menu.png) no-repeat;width:6px;height:5px}#header .header-top .main-menu>.li-separator:last-child{display:none}#header .header-top-mobile{height:64px;background-color:#ffd545;position:relative;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:0 10px}#header .header-top-mobile .button-holder-left,#header .header-top-mobile .button-holder-right{-ms-flex:1;flex:1}#header .header-top-mobile .button-holder-left{padding-left:10px}#header .header-top-mobile .button-holder-left #blockcart-wrapper,#header .header-top-mobile .button-holder-left #search_widget{display:inline-block}#header .header-top-mobile .button-holder-left #blockcart-wrapper{padding-left:0}#header .header-top-mobile .button-holder-left #blockcart-wrapper a{padding-left:10px}#header .header-top-mobile .button-holder-left #search_widget{line-height:58px}#header .header-top-mobile .button-holder-left #search_widget .search-button{padding-right:10px}#header .header-top-mobile .button-holder-left #search_widget .search-input{padding:0;position:absolute;top:-8px;left:1%;right:1%;padding-left:10px;padding-right:25px;background-color:#fff;border:1px solid gray;width:98%;display:block}#header .header-top-mobile .button-holder-left #search_widget .search-holder{display:none;position:absolute;top:64px;left:0;right:0;height:50px;background-color:#ffe692;z-index:9}#header .header-top-mobile .button-holder-left #search_widget .search-holder .search-button{position:absolute;z-index:2;right:-1px;top:-4px}#header .header-top-mobile .button-holder-left #search_widget .search-holder .search-button img{background-color:#fff}#header .header-top-mobile .button-holder-left .customer-button-container{display:inline-block;line-height:52px}#header .header-top-mobile .button-holder-left .customer-button-container .login-button{position:relative}#header .header-top-mobile .button-holder-left .customer-button-container .login-button .button-text{display:none}#header .header-top-mobile .button-holder-left .customer-button-container .login-button:before{content:url(../img/icon-client.png);display:inline-block;vertical-align:middle;margin-right:10px;transform:scale(.7);height:34px}#header .header-top-mobile .logo-link{margin-top:10px;display:inline-block}#header .header-top-mobile .logo-link img{width:39px;height:42px}#header .header-top-mobile #blockcart-wrapper{line-height:58px;padding-left:10px;float:none}#header .header-top-mobile .english-page{float:right;line-height:47px;margin-right:20px;margin-top:7px}#header .header-top-mobile .english-page a{color:#000;font-weight:700}#header .header-top-mobile .english-page a img{margin-left:10px}#header .header-top-mobile .menu-button{float:right;margin-top:20px;color:#22222a;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600;cursor:pointer}#header .header-top-mobile .menu-button:after{content:url(../img/menu-is-close.png);display:inline-block;vertical-align:middle;margin-left:5px;width:26px;text-align:right}#header .header-top-mobile .menu-button.menu-open:after{content:url(../img/menu-is-open.png)}#header .header-top-mobile .menu-mobile{position:absolute;top:100%;z-index:5;width:100%;left:0;background-color:#ffd545;padding:15px}#header .header-top-mobile .menu-mobile li{margin:0 25px 15px}#header .header-top-mobile .menu-mobile li a{padding:0;display:inline-block;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:600;text-transform:uppercase}#header .header-top-mobile .menu-mobile li a:hover{text-decoration:underline}#header .header-top-mobile .menu-mobile li.submenu{margin-top:15px}#header .header-top-mobile .menu-mobile li.submenu>a{padding-right:30px;margin-right:-30px}#header .header-top-mobile .menu-mobile li.submenu .submore:before{content:url(../img/chevron-sous-menu-black.png);display:inline-block;margin-left:10px;position:relative;top:-2px;z-index:-1}#header .header-top-mobile .menu-mobile li.submenu .sub{position:static}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul{margin-left:0;border-top:1px solid #ffe897;border-bottom:1px solid #ffe897;padding-top:11px;margin-top:8px}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul>li>.submore,#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul>li>a{display:none}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul li{margin-left:0;margin-right:0}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul li a{text-transform:none}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul li ul{margin-left:0}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul li ul li{margin:0 15px 10px}#header .header-top-mobile .menu-mobile li.submenu .sub .submenu-container>ul li ul li a{font-size:14px}#header .header-top-mobile .menu-mobile li.is-accordion-submenu-parent a{padding-right:18px}#header .header-top-mobile .menu-mobile li.is-accordion-submenu-parent a:after{right:0;border-color:#000 transparent transparent}#header .header-top-mobile .menu-mobile #search_widget{margin-left:20px;margin-right:23px;position:relative;margin-bottom:40px}#header .header-top-mobile .menu-mobile #search_widget form .search-field .search-button{position:absolute;right:5px}#header .header-top-mobile .menu-mobile #search_widget form .search-field .search-input{border-bottom-color:#000}#header .header-top-mobile .menu-mobile .customer-link-mobile{margin-top:25px}#header .header-top-mobile .menu-mobile .customer-link-mobile .customer-button,#header .header-top-mobile .menu-mobile .customer-link-mobile .login-button{display:block;cursor:pointer;margin:0;border:0;padding:16px 27px;width:100%;text-align:left;background-color:#000;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;position:relative}#header .header-top-mobile .menu-mobile .customer-link-mobile .customer-button:before,#header .header-top-mobile .menu-mobile .customer-link-mobile .login-button:before{content:url(../img/icon-client-mobile.png);display:inline-block;vertical-align:middle;margin-right:12px}#header .header-top-mobile .menu-mobile .customer-link-mobile #blockcart-wrapper{display:none}#header .header-top-mobile .menu-mobile .customer-link-mobile .customer-button:after{content:url(../img/arrow-bottom-white.png);display:inline-block;vertical-align:middle;position:absolute;right:10px}#header .header-top-mobile .menu-mobile .customer-link-mobile ul{background-color:#000;padding:0 25px;margin-left:0}#header .header-top-mobile .menu-mobile .customer-link-mobile ul li{margin:0;border-top:1px solid #fff}#header .header-top-mobile .menu-mobile .customer-link-mobile ul li a{display:block;padding:14px 0;color:#fff}#header .header-top-mobile .menu-mobile .customer-link-mobile ul li a:hover{text-decoration:none}#header .header-top-mobile .menu-mobile .customer-link-mobile ul li:last-child{margin-bottom:0}#header .header-top-mobile .menu-mobile .customer-link-mobile .back-to-portail{float:left;height:50px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}#header .header-top-mobile .menu-mobile .customer-link-mobile .back-to-portail a{color:#22222a;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}#header .header-top-mobile .menu-mobile .customer-link-mobile .back-to-portail a:hover{text-decoration:underline}#header .header-top-mobile .menu-mobile .customer-link-mobile .back-to-portail a:before{content:url(../img/arrow-right-black.png);margin-right:10px;display:inline-block;transform:rotate(180deg)}#header .header-middle{padding-top:40px;padding-bottom:40px}@media print,screen and (min-width:40em){#header .header-middle{padding-top:65px;padding-bottom:100px}}@media print,screen and (min-width:64em){#header .header-middle{padding-top:100px;padding-bottom:100px}}#header .header-middle .header-middle-title{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:28px;font-weight:900;text-transform:uppercase;text-align:center;line-height:1.2;padding-bottom:30px;margin:0 0 30px}@media print,screen and (min-width:40em){#header .header-middle .header-middle-title{font-size:25px;padding-bottom:0;margin-bottom:8px}#header .header-middle .header-middle-title:after{content:normal}}@media print,screen and (min-width:64em){#header .header-middle .header-middle-title{font-size:30px}}#header .header-middle .header-middle-subtitle{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.4;text-align:center;margin:0}@media screen and (max-width:39.9375em){#header .header-middle .header-middle-subtitle:after{content:normal}}@media print,screen and (min-width:40em){#header .header-middle .header-middle-subtitle{padding-bottom:34px;font-size:18px;font-weight:600}}#header .header-middle .header-reassurance{margin-top:60px;margin-bottom:10px}#header .header-middle .header-reassurance .item{margin-bottom:50px}#header .header-middle .header-reassurance .item .img-container{height:80px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:25px}#header .header-middle .header-reassurance .item .text-legend{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:18px;font-weight:400;text-transform:uppercase;text-align:center;line-height:1.2}#header .header-bottom-mobile .subdomain-link{display:block;text-align:center;padding:30px 50px;margin-bottom:20px;position:relative;z-index:2}#header .header-bottom-mobile .subdomain-link h3{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:18px;font-weight:700;text-transform:uppercase;line-height:1.2;margin-bottom:10px}#header .header-bottom-mobile .subdomain-link .commercial-hook,#header .header-bottom-mobile .subdomain-link .commercial-text{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.3;margin:0;margin-bottom:10px}#header .header-bottom-mobile .subdomain-link .commercial-hook{font-weight:700}#header .header-bottom-mobile .subdomain-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.3);z-index:-1}#header .header-bottom-mobile .subdomain-link:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid #efc83a}#header .header-bottom{padding-bottom:75px}@media print,screen and (min-width:64em){#header .header-bottom{padding-bottom:90px}}#header .header-bottom .subdomain-link{display:block;overflow:hidden;position:relative;box-shadow:0 -5px 20px #121212;transition:.3s;margin:-110px auto 30px;max-width:155px;height:155px;border-radius:50%}@media print,screen and (min-width:64em){#header .header-bottom .subdomain-link{max-width:230px;height:230px;margin:-185px auto 35px}}#header .header-bottom .subdomain-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.5);transition:.4s}#header .header-bottom .subdomain-link:hover{box-shadow:0 -5px 30px #0d0d0d}#header .header-bottom .subdomain-link:hover:before{background-color:rgba(0,0,0,.2)}#header .header-bottom .subdomain-link:hover:after{transform:rotate(60deg)}#header .header-bottom .subdomain-link:after{content:normal}@media screen and (min-width:46.875em){#header .header-bottom .subdomain-link:after{content:"";position:absolute;transition:.4s;border:none;top:0;right:0;bottom:0;left:0;background-image:url(../img/contour-diagonale.png);background-repeat:no-repeat;background-size:82% 82%;background-position:50%}}#header .header-bottom .subdomain-link h3{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);line-height:1;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:700;text-transform:uppercase;text-align:center}@media print,screen and (min-width:64em){#header .header-bottom .subdomain-link h3{font-size:20px}}#header .header-bottom-mobile .subdomain-link .header-bottom .commercial-hook,#header .header-bottom .commercial-hook,#header .header-bottom .commercial-text,#header .header-bottom .header-bottom-mobile .subdomain-link .commercial-hook{max-width:180px;margin:auto;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400;text-align:center;line-height:1.3;margin-bottom:10px}@media print,screen and (min-width:64em){#header .header-bottom-mobile .subdomain-link .header-bottom .commercial-hook,#header .header-bottom .commercial-hook,#header .header-bottom .commercial-text,#header .header-bottom .header-bottom-mobile .subdomain-link .commercial-hook{max-width:210px}}#header .header-bottom .commercial-hook{font-weight:700}#header .subdomain-link{background-repeat:no-repeat;background-position:50%;background-size:cover}#header .subdomain-link.information{background-image:url(../img/frank-mckenna-252014.jpg)}#header .subdomain-link.cavistes{background-image:url(../img/beer-barrel-keg-cask-oak.jpg)}#header .subdomain-link.caves-bars{background-image:url(../img/pexels-photo-481676.jpg)}#header .subdomain-link.event-organizer{background-image:url(../img/pexels-photo-474893.jpg)}#blockcart-wrapper{float:right;line-height:48px;position:relative;z-index:2;margin-right:20px}#blockcart-wrapper a{position:relative}#blockcart-wrapper a.my-cart-text,#blockcart-wrapper a.my-favorites-text{color:#22222a;transition:color .2s;font-weight:700;padding-left:10px}#blockcart-wrapper a.my-cart-text:hover,#blockcart-wrapper a.my-favorites-text:hover{color:#000;text-decoration:underline}@media screen and (max-width:39.9375em){#blockcart-wrapper a.my-cart-text,#blockcart-wrapper a.my-favorites-text{display:none}}#blockcart-wrapper a.my-favorites-text .icon{width:15px;height:15px}#blockcart-wrapper a .products-badge{position:absolute;top:-8px;right:-8px;font-size:11px;display:block;height:auto;width:auto;line-height:10px;color:#000;z-index:2;text-align:center;font-weight:700;background:#f36d0b;border-radius:27px;padding:2px;min-width:14px}@media screen and (max-width:39.9375em){.customer-link-area #blockcart-wrapper{display:none}}#index #header .header-image-bg{padding-bottom:0}#header .sticky-menu-content{background-color:#ffd545;position:fixed;top:-110px;left:0;right:0;transition:top .3s;z-index:9999}@media screen and (max-width:39.9375em){#header .sticky-menu-content{display:none!important}}#header .sticky-menu-content .notification{max-height:0;overflow:hidden;transition:max-height .3s,padding .3s;padding-top:0;padding-bottom:0}#header .sticky-menu-content.show{top:0}#header .sticky-menu-content.show .notification{max-height:100px;overflow:hidden;padding-top:20px;padding-bottom:20px}#header .sticky-menu-content .header-top{height:auto}#header .sticky-menu-content .header-top .logo-link{position:static;display:inline-block;height:80px;padding:10px;float:left}#header .sticky-menu-content .header-top .logo-link img{max-height:100%;width:auto}#header .sticky-menu-content .header-top .main-menu{display:block;position:relative;left:0;top:0;bottom:0;right:0;padding-top:23px;padding-left:33px;padding-bottom:23px;text-align:center;overflow:visible;height:50px}#header .sticky-menu-content .header-top .main-menu>li{display:inline-block;margin-right:20px}#header .sticky-menu-content .header-top .main-menu>li.current a:before{background-color:#000}#header .sticky-menu-content .header-top .main-menu>li a{color:#000}#header .sticky-menu-content .header-top .main-menu>li.submenu>a:after{content:url(../img/chevron-sous-menu-black.png)}#header .sticky-menu-content .header-top .main-menu>li .sub .submenu-container{background-color:#ffc912}#header .sticky-menu-content .header-top .main-menu>li .sub .submenu-container>ul li a:hover{background-color:#f8c000}#header .sticky-menu-content .header-top .main-menu>.li-separator{margin-right:20px;display:inline-block}#header .sticky-menu-content .header-top .main-menu>.li-separator:last-child{display:none}#header .sticky-menu-content .customer-button,#header .sticky-menu-content .login-button{float:right;height:80px;padding:0 20px;opacity:.7;transition:opacity .2s;z-index:99;position:relative}#header .sticky-menu-content .customer-button .button-text,#header .sticky-menu-content .login-button .button-text{display:none}#header .sticky-menu-content .customer-button:focus,#header .sticky-menu-content .customer-button:hover,#header .sticky-menu-content .login-button:focus,#header .sticky-menu-content .login-button:hover{opacity:1}#header .sticky-menu-content .customer-button:before,#header .sticky-menu-content .login-button:before{content:url(../img/icon-client.png);display:inline-block;vertical-align:middle;line-height:94px;position:relative;z-index:1;line-height:105px;transform:scale(.7);height:34px}#header .sticky-menu-content .customer-button{cursor:pointer}#header .sticky-menu-content #search_widget{position:relative;float:right;top:0;margin-top:8px;width:29px;transition:width .3s;margin-left:-230px;z-index:1}#header .sticky-menu-content #search_widget form .search-field{text-align:right}#header .sticky-menu-content #search_widget form .search-field .search-button{top:15px;opacity:.7;transition:opacity .2s}#header .sticky-menu-content #search_widget form .search-field .search-button:focus,#header .sticky-menu-content #search_widget form .search-field .search-button:hover{opacity:1}#header .sticky-menu-content #search_widget form .search-field .search-input{width:0;padding-left:0;padding-right:0;display:inline-block;transition:width .3s,padding-left .3s,padding-right .3s;box-shadow:0 0 10px 21px #ffd545}#header .sticky-menu-content #search_widget.show{width:230px}#header .sticky-menu-content #search_widget.show form .search-field .search-input{width:100%;padding-left:.5rem;padding-right:.5rem}#header .sticky-menu-content #blockcart-wrapper{line-height:66px;padding-left:14px}#header .sticky-menu-content #blockcart-wrapper .my-cart-text,#header .sticky-menu-content #blockcart-wrapper .my-favorites-text span{display:none}.main-menu{position:relative}.main-menu .active-indicator{position:absolute;bottom:-8px;left:0;display:block;margin:0 auto;width:30px;height:1px;background-color:#f36d0b;transition:opacity .2s}.main-menu .active-indicator.hidden{opacity:0}#blockcart-wrapper .cart-preview .body{display:none;position:absolute;background-color:#ffd545;left:0;right:-210px;z-index:9999999;padding:15px}#blockcart-wrapper .cart-preview .body>ul{list-style:none;margin-left:0;margin-bottom:0;background-color:#fff;padding:15px}#blockcart-wrapper .cart-preview .body>ul li{font-weight:700}#blockcart-wrapper .cart-preview .body>ul li .product-quantity{font-size:14px;color:grey}#blockcart-wrapper .cart-preview .body>ul li .product-quantity:after{content:" x"}#blockcart-wrapper .cart-preview .body>ul li .product-price{font-weight:400}#blockcart-wrapper .cart-preview .body>ul li .remove-from-cart{font-size:14px}#blockcart-wrapper .cart-preview .body .cart-subtotals,#blockcart-wrapper .cart-preview .body .cart-total{text-align:right;margin-right:30px}#blockcart-wrapper .cart-preview .body #cart-summary>div span,#blockcart-wrapper .cart-preview .body .cart-subtotals>div span,#blockcart-wrapper .cart-preview .body .cart-summary-totals .cart-summary-totals span,#blockcart-wrapper .cart-preview .body .cart-total>div span,#blockcart-wrapper .cart-preview .body .cart-total span{width:auto;float:none;padding:5px;line-height:1}#blockcart-wrapper .cart-preview .body .cart-summary-totals .cart-summary-totals,#blockcart-wrapper .cart-preview .body .cart-total{border-top:none;padding-top:5px}#blockcart-wrapper .cart-preview .body .products{display:block}#blockcart-wrapper .cart-preview .body .cart-total{margin:0;line-height:1}@media print,screen and (min-width:40em){#blockcart-wrapper .cart-preview:active .body,#blockcart-wrapper .cart-preview:focus .body,#blockcart-wrapper .cart-preview:hover .body{display:block}}.sticky-menu-content #blockcart-wrapper .cart-preview .body{left:-300px;right:-61px}.contact-prefooter{background:url(../img/prefooter-background-pattern.png) no-repeat;background-size:cover;background-position:50%;margin-top:0;padding-top:33px;margin-bottom:-29px;padding-bottom:33px;position:relative;z-index:-1}.contact-prefooter:before{content:"";position:absolute;top:-18px;height:36px;width:100%;background:url(../img/light-gray-wave-both.png) repeat-x}.contact-prefooter .contact-row{max-width:75rem;margin-right:auto;margin-left:auto;padding-top:50px;padding-bottom:50px}.contact-prefooter .contact-row:after,.contact-prefooter .contact-row:before{display:table;content:" "}.contact-prefooter .contact-row:after{clear:both}.contact-prefooter .contact-row .practical-information{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.contact-prefooter .contact-row .practical-information{padding-right:1.875rem;padding-left:1.875rem}}.contact-prefooter .contact-row .practical-information:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.contact-prefooter .contact-row .practical-information{width:58.33333%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){.contact-prefooter .contact-row .practical-information{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.contact-prefooter .contact-row .practical-information:last-child:not(:first-child){float:right}}.contact-prefooter .contact-row .customer-service{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.contact-prefooter .contact-row .customer-service{padding-right:1.875rem;padding-left:1.875rem}}.contact-prefooter .contact-row .customer-service:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.contact-prefooter .contact-row .customer-service{width:41.66667%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){.contact-prefooter .contact-row .customer-service{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.contact-prefooter .contact-row .customer-service:last-child:not(:first-child){float:right}}@media print,screen and (min-width:40em){.contact-prefooter .contact-row{padding-top:70px;padding-bottom:70px}}.contact-prefooter .h2,.contact-prefooter h2,.contact-prefooter h3,.contact-prefooter h4{font-size:20px;font-weight:900;text-transform:uppercase;margin-bottom:33px}.contact-prefooter p{font-size:14px}#index .contact-prefooter{margin-top:0}#index .contact-prefooter:before{height:18px;background:none}#footer{padding-top:18px;background:url(../img/footer-top-wave.png) repeat-x top}#footer .footer-top{padding:70px 0 20px;background-color:#22222a;background-image:url(../img/logo-neodif-footer.png);background-repeat:no-repeat;background-position:0 100%}@media screen and (max-width:39.9375em){#footer .footer-top>.row{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;flex-direction:column-reverse;text-align:center}#footer .footer-top>.row .email_subscription form,#footer .footer-top>.row h3{display:inline-block}}#footer .footer-top .footer-block{margin-bottom:70px}#footer .footer-top .footer-block .footer-title{line-height:1.3;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:20px;font-weight:700;text-transform:uppercase;margin-bottom:35px;padding-left:24px;position:relative}#footer .footer-top .footer-block .footer-title:before{content:url(../img/slash-orange.png);position:absolute;top:0;left:0}#footer .footer-top .footer-block h4{font-weight:600;margin-bottom:20px}#footer .footer-top .footer-block h4,#footer .footer-top .footer-block p{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;line-height:24px}#footer .footer-top .footer-block p{font-weight:400}#footer .footer-top .footer-block p b{font-weight:600}@media print,screen and (min-width:64em){#footer .footer-top .footer-block.footer-links{padding-left:50px}}#footer .footer-top .footer-block.footer-links ul:first-of-type{padding:0}@media screen and (max-width:39.9375em){#footer .footer-top .footer-block.footer-links ul{padding:0}#footer .footer-top .footer-block.footer-links ul:first-of-type{margin-bottom:30px}}#footer .footer-top .footer-block.footer-links ul li:before{content:".";color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400}#footer .footer-top .footer-block.footer-links ul li a{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:600}#footer .footer-top .footer-block.footer-links ul li a:hover{text-decoration:underline}#footer .footer-top .footer-block .contact-link{font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;color:#efc83a;font-weight:700;text-decoration:underline}#footer .footer-top .footer-block .contact-link:active,#footer .footer-top .footer-block .contact-link:focus,#footer .footer-top .footer-block .contact-link:hover{color:#b4910f}#footer .footer-top .footer-block .email_subscription{position:relative}#footer .footer-top .footer-block .email_subscription form{width:100%;max-width:237px;margin-bottom:20px;position:relative}#footer .footer-top .footer-block .email_subscription form input[type=text]{border:none;outline:none;box-shadow:none;background-color:#fff;color:#171717;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400;height:40px;line-height:40px;padding:0 65px 0 15px;margin:0}#footer .footer-top .footer-block .email_subscription form input[type=text]::-webkit-input-placeholder{color:#868686;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:400;font-style:italic}#footer .footer-top .footer-block .email_subscription form input[type=text]::-ms-input-placeholder{color:#868686;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:400;font-style:italic}#footer .footer-top .footer-block .email_subscription form input[type=text]::placeholder{color:#868686;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:400;font-style:italic}#footer .footer-top .footer-block .email_subscription form input[type=submit]{border:none;outline:none;position:absolute;top:0;right:0;z-index:2;width:50px;height:40px;line-height:40px;padding:0;text-align:center;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:700;text-transform:uppercase;background-color:#f36d0b;transition:.15s;cursor:pointer}#footer .footer-top .footer-block .email_subscription form input[type=submit]:hover{background-color:#cc5b09}#footer .footer-top .footer-block .email_subscription .notification{position:absolute;left:0;right:0;padding-left:10px;padding-right:10px;padding-top:22px;background-color:#ffd545;box-shadow:0 0 10px 0 #000}#footer .footer-top .footer-block .email_subscription .notification.notification-error{background-color:#860000}#footer .footer-top .footer-block .email_subscription .notification.notification-success{background-color:#33a457}@media print,screen and (min-width:40em){#footer .footer-top .footer-block .ps-social-follow,#footer .footer-top .footer-block .ps-social-follow+ul{margin-top:50px;display:inline-block}}#footer .footer-top .footer-block .ps-social-follow ul li{display:inline-block;vertical-align:top;margin-right:6px}#footer .footer-top .footer-block .ps-social-follow ul li:before{content:none}#footer .footer-top .footer-block .ps-social-follow ul li a{display:block;width:40px;height:40px;transition:.15s}#footer .footer-top .footer-block .ps-social-follow ul li.facebook a{background:#3b5998 url(../img/icon-facebook.png) no-repeat 50%}#footer .footer-top .footer-block .ps-social-follow ul li.facebook a:hover{background-color:#314a7e}#footer .footer-top .footer-block .ps-social-follow ul li.twitter a{background:#55acee url(../img/icon-twitter.png) no-repeat 50%}#footer .footer-top .footer-block .ps-social-follow ul li.twitter a:hover{background-color:#2795e9}#footer .footer-top .footer-block .ps-social-follow ul li.instagram a{background:#6a453b url(../img/icon-instagram.png) no-repeat 50%}#footer .footer-top .footer-block .ps-social-follow ul li.instagram a:hover{background-color:#5a3a32}#footer .footer-top .footer-sub-links{text-align:center}#footer .footer-top .footer-sub-links li{line-height:1;display:block;margin-bottom:8px}@media print,screen and (min-width:40em){#footer .footer-top .footer-sub-links li{display:inline-block;vertical-align:middle;margin-bottom:0}}#footer .footer-top .footer-sub-links li a{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:600}#footer .footer-top .footer-sub-links li a:hover{text-decoration:underline}#footer .footer-top .footer-sub-links li:after{content:"•";color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:600;padding:0 2px 0 3px}@media screen and (max-width:39.9375em){#footer .footer-top .footer-sub-links li:after{content:normal}}#footer .footer-top .footer-sub-links li:last-child:after{content:normal}#footer .footer-bottom{background-color:#171717}#footer .footer-bottom p{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:11px;font-weight:400;text-align:center;margin:0;padding:18px 0;line-height:1.4}#index #wrapper{max-width:none;padding:0}#index #wrapper #main{padding:0}#index #wrapper #main #content{max-width:none;padding:0}#index .breadcrumb-holder{display:none}#an_brandslider-block{padding:60px 0 70px}#an_brandslider-block .h2,#an_brandslider-block h2{margin-bottom:60px}#an_brandslider-block p{font-weight:600;text-align:center;margin-bottom:40px}@media print,screen and (min-width:40em){#an_brandslider-block p{margin-bottom:80px;font-size:18px}}#an_brandslider-block .owl-carousel .owl-next,#an_brandslider-block .owl-carousel .owl-prev{top:70px}#an_brandslider-block .owl-carousel .owl-item{padding-bottom:30px;background:url(../img/shadow-brand-logo.png) no-repeat bottom}#an_brandslider-block .owl-carousel .owl-item .an_brandslider-item{padding:20px}#block-reassurance{padding:50px 0 80px;background:#860000 url(../img/logo-neodif-reassurance.png) no-repeat 100% 100%;background-size:contain}@media print,screen and (min-width:40em){#block-reassurance{padding:70px 0 90px}}#block-reassurance .h2,#block-reassurance h2,#block-reassurance p{color:#fff;margin-bottom:60px}#block-reassurance p{font-weight:600;text-align:center}@media print,screen and (min-width:40em){#block-reassurance p{margin-bottom:80px;font-size:18px}}#block-reassurance ul{margin-bottom:60px}@media print,screen and (min-width:40em){#block-reassurance ul{margin-bottom:90px}}#block-reassurance ul li{margin-bottom:40px;text-align:center}@media print,screen and (min-width:40em){#block-reassurance ul li{margin-bottom:0;text-align:center}}#block-reassurance ul li:last-child{margin-bottom:0}#block-reassurance ul li .image-block,#block-reassurance ul li span{display:inline-block;vertical-align:middle}@media print,screen and (min-width:40em){#block-reassurance ul li .image-block,#block-reassurance ul li span{display:block;margin:auto}}#block-reassurance ul li .image-block{background-repeat:no-repeat;background-position:50%;background-size:70%;width:120px;height:84px}@media print,screen and (min-width:40em){#block-reassurance ul li .image-block{background-size:auto;margin-bottom:30px}}#block-reassurance ul li span{color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;line-height:1.3;max-width:165px}.fsch-home-block{padding:60px 0 80px}.fsch-home-block .h2,.fsch-home-block h2{margin-bottom:60px!important}@media print,screen and (min-width:40em){.fsch-home-block .owl-carousel{padding:0 70px!important}}.fsch-home-block .owl-carousel .owl-next,.fsch-home-block .owl-carousel .owl-prev{top:60px!important}.fsch-home-block .owl-carousel .owl-item{padding:0 10px;max-height:180px;display:inline-block;vertical-align:middle;float:none}.fsch-home-block .owl-carousel .owl-item a{display:block;opacity:.5;transition:opacity .2s}.fsch-home-block .owl-carousel .owl-item a:hover{opacity:1}.fsch-home-block .owl-carousel .owl-item a img{margin:auto;width:auto}body .prestablog_slide{box-shadow:none;padding:50px 0}@media print,screen and (min-width:40em){body .prestablog_slide{padding:80px 0}}body .prestablog_slide .h2,body .prestablog_slide h2{margin-bottom:50px!important}body .prestablog_slide .owl-carousel{margin-bottom:20px}@media print,screen and (min-width:40em){body .prestablog_slide .owl-carousel{padding:0 70px!important;margin-bottom:60px}}@media print,screen and (min-width:64em){body .prestablog_slide .owl-carousel{padding:0 94px!important}}body .prestablog_slide .owl-carousel .owl-stage-outer{padding:30px 0}body .prestablog_slide .owl-carousel .owl-stage-outer .owl-stage{display:-ms-flexbox;display:flex}body .prestablog_slide .owl-carousel .owl-stage-outer .owl-item{padding:0 15px;display:-ms-flexbox;display:flex}body .prestablog_slide .owl-carousel .owl-dots{margin-top:40px!important}body .prestablog_slide .news-block{cursor:pointer;background-color:#f6f6f6;transition:.15s;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}body .prestablog_slide .news-block:hover{box-shadow:0 0 20px rgba(0,0,0,.3)}body .prestablog_slide .news-block .news-image{display:block;position:relative}body .prestablog_slide .news-block .news-image a{height:393px;width:100%;display:block;background-size:cover;background-position:50%}body .prestablog_slide .news-block .news-image:before{content:"";position:absolute;top:25px;right:25px;bottom:0;left:25px;border:2px solid #ffd545;z-index:1}body .prestablog_slide .news-block .news-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:url(../img/deco-round-gray.png) no-repeat bottom;background-size:contain;z-index:2}body .prestablog_slide .news-block .news-date{font-weight:600;margin-bottom:10px}body .prestablog_slide .news-block .news-info{padding:30px}body .prestablog_slide .news-block .news-info .news-date{display:block;margin-bottom:10px;color:#f36d0b;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}body .prestablog_slide .news-block .news-info .news-title{text-align:left!important}body .prestablog_slide .news-block .news-info .news-title:after{content:none!important}@media print,screen and (min-width:40em){body .prestablog_slide .news-block .news-info .news-title{font-size:25px!important}}body .prestablog_slide .news-block .news-info .news-excerpt{font-size:14px!important;margin-bottom:30px}@media print,screen and (min-width:40em){body .prestablog_slide .news-block .news-info .news-excerpt{font-size:16px!important}}body .prestablog_slide .news-block .news-info .block-link{font-size:16px;text-transform:none;border:2px solid #f36d0b;font-weight:600}body .prestablog_slide .actualite-column{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-bottom:30px}@media print,screen and (min-width:40em){body .prestablog_slide .actualite-column{padding-right:1.875rem;padding-left:1.875rem}}body .prestablog_slide .actualite-column:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){body .prestablog_slide .actualite-column{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-bottom:0}}@media print,screen and (min-width:64em) and (min-width:40em){body .prestablog_slide .actualite-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){body .prestablog_slide .actualite-column:last-child:not(:first-child){float:right}}body .prestablog_slide .actualite-column .owl-carousel{margin-bottom:20px}@media print,screen and (min-width:40em){body .prestablog_slide .actualite-column .owl-carousel{padding:0 70px!important;margin-bottom:60px}}@media print,screen and (min-width:64em){body .prestablog_slide .actualite-column .owl-carousel{padding:0 94px!important}}body .prestablog_slide .actualite-column .owl-carousel .owl-stage-outer{padding:30px 0}body .prestablog_slide .actualite-column .owl-carousel .owl-stage-outer .owl-stage{display:-ms-flexbox;display:flex}body .prestablog_slide .actualite-column .owl-carousel .owl-stage-outer .owl-item{padding:0 15px;display:-ms-flexbox;display:flex}body .prestablog_slide .actualite-column .owl-carousel .owl-dots{margin-top:40px!important}body .prestablog_slide .actualite-column .single-news-block{cursor:pointer;background-color:#f6f6f6;transition:.15s;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}body .prestablog_slide .actualite-column .single-news-block:hover{box-shadow:0 0 20px rgba(0,0,0,.3)}body .prestablog_slide .actualite-column .single-news-block .single-news-image{display:block;position:relative}body .prestablog_slide .actualite-column .single-news-block .single-news-image a{height:393px;width:100%;display:block;background-size:cover;background-position:50%}body .prestablog_slide .actualite-column .single-news-block .single-news-image:before{content:"";position:absolute;top:25px;right:25px;bottom:0;left:25px;border:2px solid #ffd545;z-index:1}body .prestablog_slide .actualite-column .single-news-block .single-news-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:url(../img/deco-round-gray.png) no-repeat bottom;background-size:contain;z-index:2}body .prestablog_slide .actualite-column .single-news-block .single-news-date{font-weight:600;margin-bottom:10px}body .prestablog_slide .actualite-column .single-news-block .single-news-info{padding:30px}body .prestablog_slide .actualite-column .single-news-block .single-news-info .single-news-date{display:block;margin-bottom:10px;color:#f36d0b;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}body .prestablog_slide .actualite-column .single-news-block .single-news-info .single-news-title{text-align:left!important}body .prestablog_slide .actualite-column .single-news-block .single-news-info .single-news-title:after{content:none!important}@media print,screen and (min-width:40em){body .prestablog_slide .actualite-column .single-news-block .single-news-info .single-news-title{font-size:25px!important}}body .prestablog_slide .actualite-column .single-news-block .single-news-info .single-news-excerpt{font-size:14px!important;margin-bottom:30px}@media print,screen and (min-width:40em){body .prestablog_slide .actualite-column .single-news-block .single-news-info .single-news-excerpt{font-size:16px!important}}body .prestablog_slide .actualite-column .single-news-block .single-news-info .block-link{font-size:16px;text-transform:none;border:2px solid #f36d0b;font-weight:600}body .prestablog_slide .accompagnement-column,body .prestablog_slide .exchange-column{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){body .prestablog_slide .accompagnement-column,body .prestablog_slide .exchange-column{padding-right:1.875rem;padding-left:1.875rem}}body .prestablog_slide .accompagnement-column:last-child:not(:first-child),body .prestablog_slide .exchange-column:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){body .prestablog_slide .accompagnement-column,body .prestablog_slide .exchange-column{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){body .prestablog_slide .accompagnement-column,body .prestablog_slide .exchange-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){body .prestablog_slide .accompagnement-column:last-child:not(:first-child),body .prestablog_slide .exchange-column:last-child:not(:first-child){float:right}}body .prestablog_slide .accompagnement-column .exchanges-icon,body .prestablog_slide .exchange-column .exchanges-icon{margin-top:114px;margin-bottom:75px;text-align:center}body .prestablog_slide .accompagnement-column .exchanges-button-holder,body .prestablog_slide .exchange-column .exchanges-button-holder{margin-top:50px}body .prestablog_slide.single-article-slide{max-width:75rem;margin-right:auto;margin-left:auto;width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}body .prestablog_slide.single-article-slide:after,body .prestablog_slide.single-article-slide:before{display:table;content:" "}body .prestablog_slide.single-article-slide:after{clear:both}@media print,screen and (min-width:40em){body .prestablog_slide.single-article-slide{padding-right:1.875rem;padding-left:1.875rem}}body .prestablog_slide.single-article-slide:last-child:not(:first-child){float:right}body .prestablog_slide.single-article-slide,body .prestablog_slide.single-article-slide:last-child{float:none}body .prestablog_slide.single-article-slide .owl-carousel{margin-bottom:20px}@media print,screen and (min-width:40em){body .prestablog_slide.single-article-slide .owl-carousel{padding:0 70px!important;margin-bottom:60px}}@media print,screen and (min-width:64em){body .prestablog_slide.single-article-slide .owl-carousel{padding:0 94px!important}}body .prestablog_slide.single-article-slide .owl-carousel .owl-stage-outer{padding:30px 0}body .prestablog_slide.single-article-slide .owl-carousel .owl-stage-outer .owl-stage{display:-ms-flexbox;display:flex}body .prestablog_slide.single-article-slide .owl-carousel .owl-stage-outer .owl-item{padding:0 15px;display:-ms-flexbox;display:flex}body .prestablog_slide.single-article-slide .owl-carousel .owl-dots{margin-top:40px!important}body .prestablog_slide.single-article-slide .single-news-block{cursor:pointer;background-color:#f6f6f6;transition:.15s;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}body .prestablog_slide.single-article-slide .single-news-block:hover{box-shadow:0 0 20px rgba(0,0,0,.3)}body .prestablog_slide.single-article-slide .single-news-block .single-news-image{display:block;position:relative}body .prestablog_slide.single-article-slide .single-news-block .single-news-image a{height:393px;width:100%;display:block;background-size:cover;background-position:50%}body .prestablog_slide.single-article-slide .single-news-block .single-news-image:before{content:"";position:absolute;top:25px;right:25px;bottom:0;left:25px;border:2px solid #ffd545;z-index:1}body .prestablog_slide.single-article-slide .single-news-block .single-news-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:url(../img/deco-round-gray.png) no-repeat bottom;background-size:contain;z-index:2}body .prestablog_slide.single-article-slide .single-news-block .single-news-date{font-weight:600;margin-bottom:10px}body .prestablog_slide.single-article-slide .single-news-block .single-news-info{padding:30px}body .prestablog_slide.single-article-slide .single-news-block .single-news-info .single-news-date{display:block;margin-bottom:10px;color:#f36d0b;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}body .prestablog_slide.single-article-slide .single-news-block .single-news-info .single-news-title{text-align:left!important}body .prestablog_slide.single-article-slide .single-news-block .single-news-info .single-news-title:after{content:none!important}@media print,screen and (min-width:40em){body .prestablog_slide.single-article-slide .single-news-block .single-news-info .single-news-title{font-size:25px!important}}body .prestablog_slide.single-article-slide .single-news-block .single-news-info .single-news-excerpt{font-size:14px!important;margin-bottom:30px}@media print,screen and (min-width:40em){body .prestablog_slide.single-article-slide .single-news-block .single-news-info .single-news-excerpt{font-size:16px!important}}body .prestablog_slide.single-article-slide .single-news-block .single-news-info .block-link{font-size:16px;text-transform:none;border:2px solid #f36d0b;font-weight:600}@media print,screen and (min-width:40em){body .prestablog_slide.single-article-slide .single-news-slider .single-news-block{max-width:75rem;margin-right:auto;margin-left:auto;display:block}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block:after,body .prestablog_slide.single-article-slide .single-news-slider .single-news-block:before{display:table;content:" "}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block:after{clear:both}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-image{width:50%;float:left;padding-right:0;padding-left:0}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-image:last-child:not(:first-child){float:right}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-image:after{background:url(../img/deco-round-gray-rotated.png) no-repeat 100%;background-size:auto 100%}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-image:before{bottom:25px;right:0}body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-info{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-info{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){body .prestablog_slide.single-article-slide .single-news-slider .single-news-block .single-news-info:last-child:not(:first-child){float:right}}@media print,screen and (min-width:64em){body .prestablog_slide .actualite-column.slimmer{width:33.33333%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){body .prestablog_slide .actualite-column.slimmer{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){body .prestablog_slide .actualite-column.slimmer:last-child:not(:first-child){float:right}}body .prestablog_slide .actualite-column.slimmer .owl-carousel{padding:0!important}@media screen and (max-width:39.9375em){body .prestablog_slide .accompagnement-column{margin-top:100px}}@media print,screen and (min-width:64em){body .prestablog_slide .accompagnement-column{width:66.66667%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){body .prestablog_slide .accompagnement-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){body .prestablog_slide .accompagnement-column:last-child:not(:first-child){float:right}}body .prestablog_slide .accompagnement-column .column .step-icon,body .prestablog_slide .accompagnement-column .columns .step-icon{border:3px solid #ffd545;border-radius:40px;height:80px;width:80px;margin:auto;max-width:100%}body .prestablog_slide .accompagnement-column .column .step-icon .step-number,body .prestablog_slide .accompagnement-column .columns .step-icon .step-number{font-size:50px;font-weight:600}body .prestablog_slide .accompagnement-column .column h3,body .prestablog_slide .accompagnement-column .columns h3{font-size:18px!important;padding-top:30px}body .prestablog_slide .accompagnement-column .column p,body .prestablog_slide .accompagnement-column .columns p{font-size:14px;line-height:1.7}.home_categories{max-width:75rem;margin:85px auto 100px}.home_categories:after,.home_categories:before{display:table;content:" "}.home_categories:after{clear:both}.home_categories #homecategories{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.home_categories #homecategories{padding-right:1.875rem;padding-left:1.875rem}}.home_categories #homecategories:last-child:not(:first-child){float:right}.home_categories #homecategories .owl-carousel{margin-bottom:20px}@media print,screen and (min-width:40em){.home_categories #homecategories .owl-carousel{padding:0 70px!important;margin-bottom:60px}}@media print,screen and (min-width:64em){.home_categories #homecategories .owl-carousel{padding:0 94px!important}}.home_categories #homecategories .owl-carousel .owl-stage-outer{padding:30px 0}.home_categories #homecategories .owl-carousel .owl-stage-outer .owl-stage{display:-ms-flexbox;display:flex}.home_categories #homecategories .owl-carousel .owl-stage-outer .owl-item{padding:0 15px;display:-ms-flexbox;display:flex}.home_categories #homecategories .owl-carousel .owl-dots{margin-top:40px!important}.home_categories #homecategories .promo-block{cursor:pointer;background-color:#f6f6f6;transition:.15s;-ms-flex-pack:justify;justify-content:space-between}.home_categories #homecategories .promo-block:hover{box-shadow:0 0 20px rgba(0,0,0,.3)}.home_categories #homecategories .promo-block .promo-image{display:block;position:relative;padding:38px}.home_categories #homecategories .promo-block .promo-image a{height:393px;width:100%;display:block;background-size:cover;background-position:50%}.home_categories #homecategories .promo-block .promo-image:before{content:"";position:absolute;top:25px;right:25px;bottom:0;left:25px;border:2px solid #ffd545;z-index:1}.home_categories #homecategories .promo-block .promo-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:url(../img/deco-round-gray.png) no-repeat bottom;background-size:contain;z-index:2}.home_categories #homecategories .promo-block .promo-date{font-weight:600;margin-bottom:10px}.home_categories #homecategories .promo-block .promo-info{padding:30px}.home_categories #homecategories .promo-block .promo-info .promo-date{display:block;margin-bottom:10px;color:#f36d0b;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}.home_categories #homecategories .promo-block .promo-info .promo-title{text-align:left!important}.home_categories #homecategories .promo-block .promo-info .promo-title:after{content:none!important}@media print,screen and (min-width:40em){.home_categories #homecategories .promo-block .promo-info .promo-title{font-size:25px!important}}.home_categories #homecategories .promo-block .promo-info .promo-excerpt{font-size:14px!important;margin-bottom:30px}@media print,screen and (min-width:40em){.home_categories #homecategories .promo-block .promo-info .promo-excerpt{font-size:16px!important}}.home_categories #homecategories .promo-block .promo-info .block-link{font-size:16px;text-transform:none;border:2px solid #f36d0b;font-weight:600}.home_categories #homecategories .promo-block{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-positive:0;flex-grow:0;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:stretch;align-items:stretch;width:100%}.home_categories #homecategories .promo-block .promo-image{padding:0;background:#fff;height:224px;overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.home_categories #homecategories .promo-block .promo-image .category-image{width:auto;height:auto;max-width:100%}.home_categories #homecategories .promo-block .promo-info{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}.home_categories #homecategories .promo-slider-brasseries .promo-block .promo-image{padding:48px}#index .page-header h1{display:none}#promo-area{padding:150px 0;background-repeat:no-repeat;background-position:bottom;background-size:contain}@media screen and (max-width:39.9375em){#promo-area{text-align:center;padding-top:30px;background-size:cover}}#promo-area .spheres-container{display:inline-block;text-align:center}@media print,screen and (min-width:40em){#promo-area .spheres-container{margin-left:20%}}#promo-area .spheres-container .sphere{background-color:#ffd545;border-radius:50%;padding:55px 35px 88px;max-width:419px;position:relative}@media screen and (max-width:39.9375em){#promo-area .spheres-container .sphere{padding:10px;width:200px;height:200px;left:-68px;top:100px}}#promo-area .spheres-container .sphere:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border:4px solid #ffd545;border-radius:50%}#promo-area .spheres-container .sphere .h2,#promo-area .spheres-container .sphere h2{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:25px;font-weight:900;text-transform:uppercase;margin-bottom:30px}#promo-area .spheres-container .sphere .h2:after,#promo-area .spheres-container .sphere h2:after{content:normal}@media screen and (max-width:39.9375em){#promo-area .spheres-container .sphere .h2,#promo-area .spheres-container .sphere h2{font-size:18px;max-width:100px;margin:0 auto 20px}}#promo-area .spheres-container .sphere h3{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:45px;font-weight:900;line-height:50px;text-transform:uppercase;margin-bottom:20px}#promo-area .spheres-container .sphere h3:after{content:normal}@media screen and (max-width:39.9375em){#promo-area .spheres-container .sphere h3{font-size:23px;max-width:150px;margin:auto;line-height:1.3}}#promo-area .spheres-container .sphere .text{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:600}@media screen and (max-width:39.9375em){#promo-area .spheres-container .sphere .text{display:none}}#promo-area .spheres-container .sphere-link{display:block;position:relative;z-index:2;max-width:190px;margin:-50px auto 0;background-color:#f36d0b;box-shadow:0 0 68px rgba(0,0,0,.4);padding:25px 35px 45px;border-radius:50%;color:#f6f6f6;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:20px;font-weight:900;text-transform:uppercase;line-height:1.3;transition:.15s}#promo-area .spheres-container .sphere-link:before{content:url(../img/arrow-right-white.png);display:block;margin-bottom:16px}#promo-area .spheres-container .sphere-link:hover{background-color:#db620a}@media screen and (max-width:39.9375em){#promo-area .spheres-container .sphere-link{left:88px;top:40px}}.featured-products{padding-top:50px;padding-bottom:50px}@media print,screen and (min-width:40em){.featured-products{padding-top:104px;padding-bottom:104px}}.featured-products.featured-products.blue-wave-container .products,.featured-products.featured-products.brown-wave-container .products,.featured-products.featured-products.burgundy-wave-container .products{padding-left:0!important;padding-right:0!important}.featured-products.featured-products.blue-wave-container .products .product-miniature,.featured-products.featured-products.brown-wave-container .products .product-miniature,.featured-products.featured-products.burgundy-wave-container .products .product-miniature{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;padding-left:10px!important;padding-right:10px!important}@media print,screen and (min-width:40em){.featured-products.featured-products.blue-wave-container .products .product-miniature,.featured-products.featured-products.brown-wave-container .products .product-miniature,.featured-products.featured-products.burgundy-wave-container .products .product-miniature{padding-right:1.875rem;padding-left:1.875rem}}.featured-products.featured-products.blue-wave-container .products .product-miniature:last-child:not(:first-child),.featured-products.featured-products.brown-wave-container .products .product-miniature:last-child:not(:first-child),.featured-products.featured-products.burgundy-wave-container .products .product-miniature:last-child:not(:first-child){float:right}.featured-products.featured-products.blue-wave-container .products .owl-dots,.featured-products.featured-products.brown-wave-container .products .owl-dots,.featured-products.featured-products.burgundy-wave-container .products .owl-dots{width:100%}.featured-products.featured-products.blue-wave-container .products .owl-stage,.featured-products.featured-products.blue-wave-container .products .owl-stage .owl-item,.featured-products.featured-products.brown-wave-container .products .owl-stage,.featured-products.featured-products.brown-wave-container .products .owl-stage .owl-item,.featured-products.featured-products.burgundy-wave-container .products .owl-stage,.featured-products.featured-products.burgundy-wave-container .products .owl-stage .owl-item{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch}.featured-products .featured-products-title-block{max-width:880px;margin:0 auto}.featured-products .products{max-width:910px;margin:0 auto}.featured-products .products .product-miniature{margin-bottom:1rem!important}.featured-products .products .product-miniature .product-container{padding:10px;margin:5px}.featured-products .products .product-miniature .product-container:hover{background-color:inherit}.featured-products .products .product-miniature .product-container .product-name{font-size:20px!important;margin-left:0;margin-right:0;margin-bottom:0!important}.featured-products .products .product-miniature .product-container .product-name a,.featured-products .products .product-miniature .product-container .product-reference,.featured-products .products .product-miniature .product-container .see-product{color:#fff}.featured-products .products .product-miniature .product-container .add-to-cart,.featured-products .products .product-miniature .product-container .see-product{padding-left:42px;max-width:200px;margin-left:auto;margin-right:auto}.featured-products .products .product-miniature .product-container .add-to-cart:after,.featured-products .products .product-miniature .product-container .see-product:after{left:20px}.featured-products.two-up .products{max-width:1100px}@media print,screen and (min-width:40em){.featured-products.two-up .products{margin-bottom:70px}}.featured-products.two-up .products .product-miniature{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;position:relative}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature{padding-right:1.875rem;padding-left:1.875rem}}.featured-products.two-up .products .product-miniature:last-child:not(:first-child){float:right}.featured-products.two-up .products .product-miniature .product-container{width:100%;display:block}.featured-products.two-up .products .product-miniature .product-container .name-row{max-width:75rem;margin-right:auto;margin-left:auto;width:100%}.featured-products.two-up .products .product-miniature .product-container .name-row:after,.featured-products.two-up .products .product-miniature .product-container .name-row:before{display:table;content:" "}.featured-products.two-up .products .product-miniature .product-container .name-row:after{clear:both}.featured-products.two-up .products .product-miniature .product-container .name-row .name-col{width:100%;float:left;padding-right:0;padding-left:0}.featured-products.two-up .products .product-miniature .product-container .name-row .name-col:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature .product-container .name-row .name-col{width:66.66667%;float:left;padding-right:0;padding-left:0}.featured-products.two-up .products .product-miniature .product-container .name-row .name-col:last-child:not(:first-child){float:right}}.featured-products.two-up .products .product-miniature .product-container .name-row .name-col .product-reference,.featured-products.two-up .products .product-miniature .product-container .name-row .name-col h3{text-align:left!important}.featured-products.two-up .products .product-miniature .product-container .name-row .name-col .product-reference{margin-left:0;margin-right:0}.featured-products.two-up .products .product-miniature .product-container .name-row .add-to-fav-col{width:100%;float:left;padding-right:0;padding-left:0}.featured-products.two-up .products .product-miniature .product-container .name-row .add-to-fav-col:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature .product-container .name-row .add-to-fav-col{width:33.33333%;float:left;padding-right:0;padding-left:0}.featured-products.two-up .products .product-miniature .product-container .name-row .add-to-fav-col:last-child:not(:first-child){float:right}}.featured-products.two-up .products .product-miniature .product-container .thumbnail-holder{text-align:center}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature .product-container .thumbnail-holder{width:41.66667%;float:left;padding-right:0;padding-left:0}.featured-products.two-up .products .product-miniature .product-container .thumbnail-holder:last-child:not(:first-child){float:right}}.featured-products.two-up .products .product-miniature .product-container .thumbnail-holder .product-thumbnail{margin-left:0}@media screen and (max-width:39.9375em){.featured-products.two-up .products .product-miniature .product-container .thumbnail-holder .product-thumbnail{margin-right:0}}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature .product-container .product-attribute,.featured-products.two-up .products .product-miniature .product-container .product-list-actions{float:right;width:54%}}.featured-products.two-up .products .product-miniature .product-container .product-attribute{margin-top:20px;padding-left:30px;padding-right:30px}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature .product-container .product-list-actions{width:58.33333%;float:left;padding-right:0;padding-left:0}.featured-products.two-up .products .product-miniature .product-container .product-list-actions:last-child:not(:first-child){float:right}}.featured-products.two-up .products .product-miniature .product-container .product-list-actions a{text-align:center}@media print,screen and (min-width:40em){.featured-products.two-up .products .product-miniature .product-container .product-list-actions .shopping-list{position:absolute;top:32px;right:20px}}.featured-products.two-up .products .product-miniature:after{content:"";width:4px;position:absolute;right:-2px;top:13%;bottom:6%;background:url(../img/sep.png);background-repeat:repeat}.featured-products.two-up .products .product-miniature:nth-child(2n):after{content:none;display:none}.grey-wave-cta{padding-top:60px;padding-bottom:30px}.subcategories .owl-carousel{margin-bottom:20px}@media print,screen and (min-width:40em){.subcategories .owl-carousel{padding:0 70px!important;margin-bottom:60px}}@media print,screen and (min-width:64em){.subcategories .owl-carousel{padding:0 94px!important}}.subcategories .owl-carousel .owl-stage-outer{padding:30px 0}.subcategories .owl-carousel .owl-stage-outer .owl-stage{display:-ms-flexbox;display:flex}.subcategories .owl-carousel .owl-stage-outer .owl-item{padding:0 15px;display:-ms-flexbox;display:flex}.subcategories .owl-carousel .owl-dots{margin-top:40px!important}.subcategories .category-miniature-block{cursor:pointer;background-color:#f6f6f6;transition:.15s;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}.subcategories .category-miniature-block:hover{box-shadow:0 0 20px rgba(0,0,0,.3)}.subcategories .category-miniature-block .category-miniature-image{display:block;position:relative}.subcategories .category-miniature-block .category-miniature-image a{height:393px;width:100%;display:block;background-size:cover;background-position:50%}.subcategories .category-miniature-block .category-miniature-image:before{content:"";position:absolute;top:25px;right:25px;bottom:0;left:25px;border:2px solid #ffd545;z-index:1}.subcategories .category-miniature-block .category-miniature-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:url(../img/deco-round-gray.png) no-repeat bottom;background-size:contain;z-index:2}.subcategories .category-miniature-block .category-miniature-date{font-weight:600;margin-bottom:10px}.subcategories .category-miniature-block .category-miniature-info{padding:30px}.subcategories .category-miniature-block .category-miniature-info .category-miniature-date{display:block;margin-bottom:10px;color:#f36d0b;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}.subcategories .category-miniature-block .category-miniature-info .category-miniature-title{text-align:left!important}.subcategories .category-miniature-block .category-miniature-info .category-miniature-title:after{content:none!important}@media print,screen and (min-width:40em){.subcategories .category-miniature-block .category-miniature-info .category-miniature-title{font-size:25px!important}}.subcategories .category-miniature-block .category-miniature-info .category-miniature-excerpt{font-size:14px!important;margin-bottom:30px}@media print,screen and (min-width:40em){.subcategories .category-miniature-block .category-miniature-info .category-miniature-excerpt{font-size:16px!important}}.subcategories .category-miniature-block .category-miniature-info .block-link{font-size:16px;text-transform:none;border:2px solid #f36d0b;font-weight:600}.subcategories .category-miniature-block .category-miniature-image{background-color:#fff;text-align:center;padding:38px}.subcategories .category-miniature-block .category-miniature-info .category-miniature-title a{color:#000}.product-list-section .h2,.product-list-section h1,.product-list-section h2{margin-bottom:60px}.product-list-section #category-description{margin-bottom:40px}.product-list-section #category-description p{font-weight:700}@media print,screen and (min-width:40em){.product-list-section .product-filter-columns-container{display:-ms-flexbox;display:flex}}.product-list-section .product-filter-columns-container .filter-column{margin-bottom:40px}@media print,screen and (min-width:40em){.product-list-section .product-filter-columns-container .filter-column{width:25%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-bottom:0}}@media print,screen and (min-width:40em) and (min-width:40em){.product-list-section .product-filter-columns-container .filter-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.product-list-section .product-filter-columns-container .filter-column:last-child:not(:first-child){float:right}}.product-list-section .product-filter-columns-container .product-list-column{-ms-flex-positive:1;flex-grow:1}@media print,screen and (min-width:40em){.product-list-section .product-filter-columns-container .product-list-column{width:75%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){.product-list-section .product-filter-columns-container .product-list-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.product-list-section .product-filter-columns-container .product-list-column:last-child:not(:first-child){float:right}}.product-list-section #products .filter-column{padding:0}.product-list-section #products .filter-column .category-tree ul li{list-style:none;position:relative}.product-list-section #products .filter-column .category-tree ul li:before{content:url(../img/chevron-sous-menu-black.png);transform:rotate(-90deg);display:block;position:absolute;left:-17px}.product-list-section #products .filter-column .facet-search h3{line-height:1.3;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:700;line-height:24px;text-transform:uppercase;padding:25px 10px;text-align:center;background-color:#ffd545;margin-bottom:0}.product-list-section #products .filter-column .facet-search h3:after{content:none}.product-list-section #products .filter-column .facet-search .active_filters{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400;line-height:24px}.product-list-section #products .filter-column .facet-search .active_filters .active-filters-title{font-weight:700;margin-bottom:5px}.product-list-section #products .filter-column .facet-search .active_filters .remove-filter{display:inline-block;margin-right:8px;background:url(../img/icon-croix.png) no-repeat;width:8px;height:8px}.product-list-section #products .filter-column .facet-search .active_filters .reset-filter{margin-top:5px;padding-bottom:30px;border-bottom:1px solid #000;margin-bottom:30px}.product-list-section #products .filter-column .facet-search .active_filters .reset-filter a{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:700;line-height:24px}.product-list-section #products .filter-column .facet-search .active_filters .reset-filter a:hover{text-decoration:underline}.product-list-section #products .filter-column .facet-search .facets-list{padding:30px;background-color:#ececec}.product-list-section #products .filter-column .facet-search .facets-list .facet{margin-bottom:25px}.product-list-section #products .filter-column .facet-search .facets-list .facet:last-child{margin-bottom:0}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-label{display:block;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:700;line-height:1.2;cursor:pointer;margin-bottom:0}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-label:after{content:url(../img/arrow-medium-bottom.png);float:right}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields{display:none;overflow:hidden}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields select{height:auto;margin-bottom:0;border:none;box-shadow:none;outline:none;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;line-height:24px;padding:8px 30px 8px 20px;background:#fff url(../img/arrow-small-bottom.png) no-repeat center right 20px;cursor:pointer}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields label{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400;line-height:24px}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields ul{margin-left:0}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields ul li{list-style:none}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields .js-slider-max-label,.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields .js-slider-min-label{display:inline-block;float:left;height:30px;width:40px;background-color:#fff;margin-top:-15px;font-size:12px;padding:5px 10px;text-align:center}.product-list-section #products .filter-column .facet-search .facets-list .facet .facet-fields .js-slider-max-label{float:right}.product-list-section #products .filter-column .facet-search .facets-list .facet.is-open .facet-label{margin-bottom:25px}.product-list-section #products .filter-column .facet-search .facets-list .facet.is-open .facet-label:after{transform:rotate(180deg)}.product-list-section #products .filter-column .facet-search .facets-list .facet.is-open .facet-fields{display:block}.product-list-section #products .products-selection{margin-bottom:15px}.product-list-section #products .products-selection .nb-products{margin-bottom:10px;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:700;text-transform:uppercase}@media print,screen and (min-width:40em){.product-list-section #products .products-selection .nb-products{float:left;margin-bottom:0}}.product-list-section #products .products-selection .products-sort-order{margin-bottom:25px}@media print,screen and (min-width:40em){.product-list-section #products .products-selection .products-sort-order{float:right;margin-bottom:0}}.product-list-section #products .products-selection .products-sort-order ul{width:100%}@media print,screen and (min-width:40em){.product-list-section #products .products-selection .products-sort-order ul{width:260px}}.product-list-section #products .products-selection .products-sort-order ul li{position:relative}.product-list-section #products .products-selection .products-sort-order ul li a{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;padding:11px 40px 11px 20px;background-color:#ececec;transition:.15s}.product-list-section #products .products-selection .products-sort-order ul li a:hover{background-color:#dfdfdf}.product-list-section #products .products-selection .products-sort-order ul li a:after{content:none}.product-list-section #products .products-selection .products-sort-order ul li ul{display:none;position:absolute;top:100%;left:0;right:0;margin:0;z-index:3}.product-list-section #products .products-selection .products-sort-order ul li.is-accordion-submenu-parent>a{position:relative}.product-list-section #products .products-selection .products-sort-order ul li.is-accordion-submenu-parent>a:before{content:"";background:url(../img/arrow-small-bottom.png) no-repeat;width:10px;height:6px;position:absolute;top:50%;margin-top:-3px;right:20px}.product-list-section #products .products-selection .products-sort-order ul li.is-accordion-submenu-parent[aria-expanded=true]>a:before{transform:rotate(180deg)}.product-list-section #products .products-selection .products-display-type{float:right;margin-left:40px}@media screen and (max-width:39.9375em){.product-list-section #products .products-selection .products-display-type{display:none}}.product-list-section #products .products-selection .products-display-type li{opacity:.3}.product-list-section #products .products-selection .products-display-type li.is-active,.product-list-section #products .products-selection .products-display-type li:active,.product-list-section #products .products-selection .products-display-type li:focus,.product-list-section #products .products-selection .products-display-type li:hover{opacity:1}.product-list-section #products .products-selection .products-display-type li a{background:transparent}.product-list-section #products .products-selection .products-display-type li a img{width:20px;height:20px}.product-list-section #products .products-selection .products-display-type li:active a,.product-list-section #products .products-selection .products-display-type li:focus a,.product-list-section #products .products-selection .products-display-type li:hover a{background-color:#f6f6f6}body:not(.is-safari) .products{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.product-miniature{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;display:-ms-flexbox;display:flex}@media print,screen and (min-width:40em){.product-miniature{padding-right:1.875rem;padding-left:1.875rem}}.product-miniature:last-child:not(:first-child){float:right}@media screen and (max-width:39.9375em){.product-miniature{padding-left:0!important;padding-right:0!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.product-miniature{width:33.33333%;float:left;padding-right:0;padding-left:0}.product-miniature:last-child:not(:first-child){float:right}.product-miniature:nth-child(3n+1){clear:both}}@media print,screen and (min-width:64em){.product-miniature{width:25%;float:left;padding-right:0;padding-left:0}.product-miniature:last-child:not(:first-child){float:right}.product-miniature:nth-child(4n+1){clear:both}.product-miniature:last-child:last-child:last-child{float:left}}.product-miniature .product-container{display:-ms-flexbox;display:flex;width:100%;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;padding:30px;transition:.15s}.product-miniature .product-container:hover{background-color:#f6f6f6}.product-miniature .product-container .product-flags{min-height:38px;margin:-30px -30px 12px}.product-miniature .product-container .product-flags li{display:inline-block;padding:13px 15px;background-color:#91ac39;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:700;line-height:1;text-transform:uppercase;position:relative}.product-miniature .product-container .product-flags li:after{content:"";position:absolute;right:-12px;width:12px;top:0;bottom:0;background-image:linear-gradient(99deg,#91ac39,#91ac39 8px,transparent 0,transparent 60px)}.product-miniature .product-container .product-name{font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:22px!important;font-weight:900;text-transform:uppercase;text-align:center;line-height:1.2;margin:0 30px 3px;margin-bottom:0!important}.product-miniature .product-container .product-name:after{content:none!important}.product-miniature .product-container .product-name a{color:#000}.product-miniature .product-container .product-reference{display:block;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:400;font-style:italic;text-align:center;line-height:1.2;margin:0 30px 20px}.product-miniature .product-container .thumbnail{margin:0 30px 25px}.product-miniature .product-container .thumbnail-small{display:none}.product-miniature .product-container .product-attribute{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;line-height:24px;font-weight:400}.product-miniature .product-container .shopping-list{margin-top:20px!important;display:block;text-align:center}.product-miniature .product-container .see-product{display:block;margin-bottom:10px;margin-top:20px}.product-miniature .product-container .add-to-cart{display:block}.product-miniature .product-container .add-to-cart.loading{color:transparent!important;pointer-events:none}.product-miniature .product-container .add-to-cart.loading:after{border:6px solid #f3f3f3;border-top:6px solid hsla(0,0%,100%,.3);border-radius:50%;width:30px;height:30px;animation:d 1s linear infinite;content:"";position:absolute;left:0;right:0;margin:auto;top:11px}.page-manufacturer #main h1,.page-supplier #main h1{margin-bottom:50px}.page-manufacturer .filter-column,.page-supplier .filter-column{display:none}.page-manufacturer .brand-content,.page-supplier .brand-content{margin-bottom:50px}.page-manufacturer #manufacturer-city,.page-supplier #manufacturer-city{margin-bottom:20px;font-style:italic}.page-manufacturer .brand-tabs,.page-supplier .brand-tabs{display:none;margin-bottom:60px}.page-manufacturer .brand-tabs .accordion,.page-manufacturer .brand-tabs .tabs,.page-supplier .brand-tabs .accordion,.page-supplier .brand-tabs .tabs{border:none;border-bottom:3px solid #f36d0b}.page-manufacturer .brand-tabs .accordion li a,.page-manufacturer .brand-tabs .tabs li a,.page-supplier .brand-tabs .accordion li a,.page-supplier .brand-tabs .tabs li a{color:#22222a;font-size:16px;font-weight:700;transition:background-color .2s}.page-manufacturer .brand-tabs .accordion li a:focus,.page-manufacturer .brand-tabs .accordion li a[aria-selected=true],.page-manufacturer .brand-tabs .tabs li a:focus,.page-manufacturer .brand-tabs .tabs li a[aria-selected=true],.page-supplier .brand-tabs .accordion li a:focus,.page-supplier .brand-tabs .accordion li a[aria-selected=true],.page-supplier .brand-tabs .tabs li a:focus,.page-supplier .brand-tabs .tabs li a[aria-selected=true]{background-color:#f36d0b;color:#fff}.page-manufacturer .brand-tabs .accordion li a:hover:not([aria-selected=true]),.page-manufacturer .brand-tabs .tabs li a:hover:not([aria-selected=true]),.page-supplier .brand-tabs .accordion li a:hover:not([aria-selected=true]),.page-supplier .brand-tabs .tabs li a:hover:not([aria-selected=true]){background-color:#fbc49c}.page-manufacturer .brand-tabs .tabs-content,.page-supplier .brand-tabs .tabs-content{border:none}#main .brands-list{max-width:75rem;margin-right:auto;margin-left:auto}#main .brands-list:after,#main .brands-list:before{display:table;content:" "}#main .brands-list:after{clear:both}#main .brands-list .brand{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem;float:left!important;text-align:center}@media print,screen and (min-width:40em){#main .brands-list .brand{padding-right:1.875rem;padding-left:1.875rem}}#main .brands-list .brand:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){#main .brands-list .brand{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){#main .brands-list .brand{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){#main .brands-list .brand:last-child:not(:first-child){float:right}}@media print,screen and (min-width:40em) and (min-width:64em){#main .brands-list .brand{width:33.33333%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:64em) and (min-width:40em){#main .brands-list .brand{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em) and (min-width:64em){#main .brands-list .brand:last-child:not(:first-child){float:right}#main .brands-list .brand:nth-child(3n+1){clear:both}}#main .brands-list .brand .brand-container{position:relative;overflow:visible}#main .brands-list .brand .brand-container:before{position:absolute;content:"";top:-20px;left:0;right:0;height:20px;background-image:url(../img/deco-round-gray.png);background-position:bottom;background-size:contain;background-repeat:no-repeat}#main .brands-list .brand .brand-img{height:125px;line-height:125px}#main .brands-list .brand .brand-img img{vertical-align:middle}#main .brands-list .brand .brand-desc .h2,#main .brands-list .brand .brand-desc h2{font-size:16px}#main .brands-list .brand .brand-desc .h2 a,#main .brands-list .brand .brand-desc h2 a{color:#000}#js-product-list.list-style-list .row.products.large-up-3>.column,#js-product-list.list-style-list .row.products.large-up-3>.columns{width:100%;margin-bottom:0}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container{-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}@media screen and (max-width:63.9375em){#js-product-list.list-style-list .row.products.large-up-3>.column .product-container,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .product-main-info,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .product-main-info{-ms-flex-preferred-size:27%;flex-basis:27%;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:0;flex-shrink:0}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .thumbnail,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .thumbnail{display:none}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .thumbnail-small,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .thumbnail-small{-ms-flex-positive:0;flex-grow:0;-ms-flex-preferred-size:120px;flex-basis:120px;-ms-flex-negative:0;flex-shrink:0}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .thumbnail-small,#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .thumbnail-small>.thumbnail,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .thumbnail-small,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .thumbnail-small>.thumbnail{display:block}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .thumbnail-small .thumbnail,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .thumbnail-small .thumbnail{margin:0;margin-right:20px;margin-left:20px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .product-flags,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .product-flags{margin:0 0 0 -30px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .product-name,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .product-name{font-size:16px;text-align:left}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .product-name a,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .product-name a{font-size:16px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .product-reference,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .product-reference{text-align:left}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .product_attributes,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .product_attributes{-ms-flex-positive:1;flex-grow:1;margin-right:20px;display:none}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .see-product,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .see-product{padding-left:25px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .see-product:after,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .see-product:after{top:5px;left:10px;margin-right:auto}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .add-to-cart,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .add-to-cart{padding-left:35px}#js-product-list.list-style-list .row.products.large-up-3>.column .product-container .add-to-cart:after,#js-product-list.list-style-list .row.products.large-up-3>.columns .product-container .add-to-cart:after{top:7px;left:10px;margin-right:auto}#product .product-flags{min-height:38px;margin:0 0 15px}#product .product-flags li{display:inline-block;padding:13px 15px;background-color:#91ac39;color:#fff;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:12px;font-weight:700;line-height:1;text-transform:uppercase}@media screen and (max-width:39.9375em){#product .images-container{margin-bottom:50px}}#product .images-container .product-cover{margin-bottom:60px}#product .images-container .product-images{margin:0;list-style-type:none}#product .images-container .product-images li{display:inline-block;vertical-align:top;width:48%}#product .product-information{border-bottom:1px solid #ffd545;padding-bottom:35px;margin-bottom:35px;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:400}#product .product-information #product-reference{font-size:18px}#product .product-information #product-reference .ref-label{font-weight:700}#product .product-information #product-reference .ref{font-style:italic}#product .product-information .product-prices .product-price{font-size:18px}#product .product-information .product-prices .product-price #only-price{font-weight:900}#product .product-information .product-prices .product-price .discount-percentage{display:inline-block;padding:5px;background-color:#f36d0b;color:#fff;font-weight:700}#product .product-information .product-prices .aeuc_delivery_label{display:block;margin-bottom:10px}#product .product-information #product-description{margin-bottom:30px}#product .product-information .product-features ul{list-style-type:none;margin:0;padding:0}#product .product-variants ul{margin-left:0}#product .product-variants ul li{position:relative;list-style:none}#product .product-variants ul li .color-name{margin-left:20px;display:inline-block}#product .product-variants ul li .color-swatch{height:15px;width:15px;border-radius:3px;display:inline-block;vertical-align:middle;margin-left:7px}#product .product-actions .product-quantity label{display:inline-block;font-size:16px}#product .product-actions .product-quantity .decrease-product-quantity,#product .product-actions .product-quantity .increase-product-quantity{display:inline-block;vertical-align:middle;margin:0 10px;background-color:#000;color:#fff;font-size:16px;font-weight:900;line-height:20px;width:20px;height:20px;border-radius:50%;text-align:center;cursor:pointer}#product .product-actions .product-quantity input[type=number]{display:inline-block;vertical-align:middle;width:auto;max-width:80px;height:auto;margin:0;padding:5px 15px;border:2px solid #f6f6f6;color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:20px;font-weight:600;line-height:24px;text-align:center}#product .product-actions .product-quantity input[type=number]:valid{background-image:none}#product .product-actions .product-quantity input[type=number]::-webkit-inner-spin-button,#product .product-actions .product-quantity input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#product .product-actions .product-quantity input[type=number]{-moz-appearance:textfield}#product .product-actions #product-price-sum{font-size:40px;font-weight:900}#product .product-actions .add-to-cart-button,#product .product-actions .product-miniature .product-container .add-to-cart,.product-miniature .product-container #product .product-actions .add-to-cart{margin-right:30px}@media screen and (max-width:39.9375em){#product .product-actions .add-to-cart-button,#product .product-actions .product-miniature .product-container .add-to-cart,.product-miniature .product-container #product .product-actions .add-to-cart{margin-bottom:20px}}#main .ps_crossselling{margin-top:70px}#main .ps_crossselling .h2,#main .ps_crossselling h2{text-align:left}.cart-overview{padding-left:30px;padding-right:30px}.cart-overview ul .cart-item{overflow:hidden;margin-bottom:30px}.cart-overview ul .cart-item>span{display:inline-block}.cart-overview ul .cart-item .product-image{display:block;margin:auto}@media screen and (max-width:39.9375em){.cart-overview ul .cart-item .product-image{text-align:center}}@media print,screen and (min-width:40em){.cart-overview ul .cart-item .product-image{float:left;margin-right:10px}}.cart-overview ul .cart-item .product-name{display:block;font-weight:700}.cart-overview ul .cart-item .product-name a{color:#000}.cart-overview ul .cart-item .product-attributes{display:block}.cart-overview ul .cart-item .product-attributes span.label{background:none;color:#000;font-weight:700;display:inline;padding:0}.cart-overview ul .cart-item .product-availability{display:block}.cart-overview ul .cart-item .product-unit-price:after{content:" x"}.cart-overview ul .cart-item .product-quantity{display:inline-block;background-color:#fff;padding:0 15px;width:60px;border-bottom:none!important;background:#fff!important}.cart-overview ul .cart-item .js-decrease-product-quantity,.cart-overview ul .cart-item .js-increase-product-quantity{display:inline-block;margin-left:10px;margin-right:10px;background-color:#f36d0b;border-radius:100px;height:20px;width:20px;vertical-align:middle;color:#fff;padding:0;line-height:20px;text-align:center;font-weight:900}.cart-overview ul .cart-item .product-price{font-weight:700;font-size:24px;margin-left:30px}.cart-overview ul .cart-item .quantity-update{display:inline-block}.cart-overview ul .cart-item .update-quantity{display:inline-block;width:70px}.cart-overview ul .cart-item .small-text{font-size:12px;font-weight:700;transition:color .2s,opacity .2s;color:#f36d0b}.cart-overview ul .cart-item .small-text.disabled{color:#555!important;pointer-events:none;cursor:default;opacity:.3}.cart-overview ul .cart-item .small-text.warning{color:#f80c0c}#items-subtotal{text-align:right;margin-bottom:40px}#items-subtotal .total-amount{font-weight:700;font-size:18px;margin-left:30px}#items-subtotal .total-amount:before{content:"//";font-size:16px;font-weight:400;margin-right:20px}.cart-voucher{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.cart-voucher{padding-right:1.875rem;padding-left:1.875rem}}.cart-voucher:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.cart-voucher{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-left:50%}}@media print,screen and (min-width:40em) and (min-width:40em){.cart-voucher{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.cart-voucher:last-child:not(:first-child){float:right}}.cart-voucher>ul{margin:0}.cart-voucher>ul>li{list-style:none;padding:10px;background-color:#fff;margin-bottom:5px}.cart-voucher span.label{background-color:#f36d0b;font-weight:700}.cart-voucher a.remove-voucher{font-size:13px;margin-left:10px;color:#000;font-weight:700}.cart-voucher a.remove-voucher:after{content:"x";margin-left:5px;font-weight:400}.cart-detailed-totals{width:100%;float:left;padding:20px .9375rem;background-color:#f6f6f6}@media print,screen and (min-width:40em){.cart-detailed-totals{padding-right:1.875rem;padding-left:1.875rem}}.cart-detailed-totals:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.cart-detailed-totals{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-left:50%}}@media print,screen and (min-width:40em) and (min-width:40em){.cart-detailed-totals{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.cart-detailed-totals:last-child:not(:first-child){float:right}}.cart-detailed-totals span.label{display:inline;color:#000;font-size:1rem;background-color:transparent}#cart-summary>div,.cart-subtotals>div,.cart-total>div{max-width:75rem;margin-right:auto;margin-left:auto;margin-right:-.9375rem;margin-left:-.9375rem}#cart-summary>div:after,#cart-summary>div:before,.cart-subtotals>div:after,.cart-subtotals>div:before,.cart-total>div:after,.cart-total>div:before{display:table;content:" "}#cart-summary>div:after,.cart-subtotals>div:after,.cart-total>div:after{clear:both}@media print,screen and (min-width:40em){#cart-summary>div,.cart-subtotals>div,.cart-total>div{margin-right:-1.875rem;margin-left:-1.875rem}}@media print,screen and (min-width:64em){#cart-summary>div,.cart-subtotals>div,.cart-total>div{margin-right:-1.875rem;margin-left:-1.875rem}}#cart-summary>div span,.cart-subtotals>div span,.cart-total>div span{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;width:49%}@media print,screen and (min-width:40em){#cart-summary>div span,.cart-subtotals>div span,.cart-total>div span{padding-right:1.875rem;padding-left:1.875rem}}#cart-summary>div span:last-child:not(:first-child),.cart-subtotals>div span:last-child:not(:first-child),.cart-total>div span:last-child:not(:first-child){float:right}#cart-summary>div span:first-child,.cart-subtotals>div span:first-child,.cart-total>div span:first-child{text-align:right;font-weight:700}#cart-summary span.label,.cart-subtotals span.label,.cart-total span.label{display:inline;color:#000;font-size:1rem;background-color:transparent}.cart-summary-totals .cart-summary-totals,.cart-total{border-top:2px solid #cdcdcd;margin-top:15px;padding-top:15px;max-width:75rem;margin-right:auto;margin-left:auto}.cart-summary-totals .cart-summary-totals:after,.cart-summary-totals .cart-summary-totals:before,.cart-total:after,.cart-total:before{display:table;content:" "}.cart-summary-totals .cart-summary-totals:after,.cart-total:after{clear:both}.cart-summary-totals .cart-summary-totals span,.cart-total span{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;font-weight:700}@media print,screen and (min-width:40em){.cart-summary-totals .cart-summary-totals span,.cart-total span{padding-right:1.875rem;padding-left:1.875rem}}.cart-summary-totals .cart-summary-totals span:last-child:not(:first-child),.cart-total span:last-child:not(:first-child){float:right}.cart-summary-totals .cart-summary-totals span:first-child,.cart-total span:first-child{text-align:right}.cart-summary-totals .cart-summary-totals span.label,.cart-total span.label{display:inline;color:#000;font-size:1rem;background-color:transparent}.continue-shopping{margin-top:30px;margin-bottom:30px}.order-button{float:right;margin-top:30px}#add-to-cart-modal{margin-top:70px;padding-top:40px}#add-to-cart-modal .h2,#add-to-cart-modal h2{font-size:27px;font-weight:700;text-transform:uppercase;margin-bottom:30px;position:relative}#add-to-cart-modal .h2 .fa,#add-to-cart-modal h2 .fa{position:absolute;font-size:3em;opacity:.5;z-index:-1;top:0;bottom:0;margin:auto;display:block;height:70px;left:0;right:0}#add-to-cart-modal .h2 .fa.fa-check,#add-to-cart-modal h2 .fa.fa-check{color:#34c57d}#add-to-cart-modal .h2 .fa.fa-warning,#add-to-cart-modal h2 .fa.fa-warning{color:#860000;opacity:.3}#add-to-cart-modal h3{font-size:23px;font-weight:900}#add-to-cart-modal .price{font-weight:900;font-size:30px}#add-to-cart-modal .modal-actions{text-align:center}.product-update-quantity-spinner,.product-update-quantity-spinner:after{border-radius:50%;width:10em;height:10em}.product-update-quantity-spinner{margin:60px auto;font-size:10px;position:relative;text-indent:-9999em;border-top:1.1em solid hsla(0,0%,100%,.2);border-right:1.1em solid hsla(0,0%,100%,.2);border-bottom:1.1em solid hsla(0,0%,100%,.2);border-left:1.1em solid #fff;transform:translateZ(0);animation:d 1.1s infinite linear}@keyframes d{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.product-update-quantity-spinner{vertical-align:middle;margin:0;font-size:2px;display:inline-block;visibility:hidden}.quantity-panel{display:inline-block;padding:5px}.quantity-panel.is-shown{background-color:#d0d0d0}.quantity-panel.is-shown .product-update-quantity-spinner{visibility:visible}.cart-summary-string{font-weight:700;margin-bottom:20px;margin-top:40px}#order-confirmation #content{padding:0}#cart-summary-product-list{text-align:center;margin-bottom:40px}@media print,screen and (min-width:40em){#cart-summary-product-list{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-right:auto;margin-left:auto}}@media print,screen and (min-width:40em) and (min-width:40em){#cart-summary-product-list{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){#cart-summary-product-list:last-child:not(:first-child){float:right}#cart-summary-product-list,#cart-summary-product-list:last-child:not(:first-child){float:none;clear:both}}#cart-summary-product-list ul li{font-size:16px;list-style:none}#cart-summary-product-list ul li .product-quantity{font-size:.9em}#cart-summary-product-list ul li .product-quantity:after{content:" x "}#cart-summary-product-list ul li .product-name,#cart-summary-product-list ul li .product-price{font-weight:700}#cart-summary-product-list ul li .product-price:before{font-weight:400;content:" – "}#checkout .cart-voucher{margin-right:auto;margin-left:auto}#checkout .cart-voucher,#checkout .cart-voucher:last-child:not(:first-child){float:none;clear:both}@media print,screen and (min-width:40em){#cart-summary,.cart-summary-totals{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-right:auto;margin-left:auto}}@media print,screen and (min-width:40em) and (min-width:40em){#cart-summary,.cart-summary-totals{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){#cart-summary:last-child:not(:first-child),.cart-summary-totals:last-child:not(:first-child){float:right}#cart-summary,#cart-summary:last-child:not(:first-child),.cart-summary-totals,.cart-summary-totals:last-child:not(:first-child){float:none;clear:both}}.cart-summary-totals span.label{display:inline;color:#000;font-size:1rem;background-color:transparent}.checkout-step{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.checkout-step{padding-right:1.875rem;padding-left:1.875rem}}.checkout-step:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){.checkout-step{width:75%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-right:auto;margin-left:auto}}@media print,screen and (min-width:64em) and (min-width:40em){.checkout-step{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){.checkout-step:last-child:not(:first-child){float:right}.checkout-step,.checkout-step:last-child:not(:first-child){float:none;clear:both}}.checkout-step.-unreacheable{opacity:.3}.checkout-step>h1 .step-number{margin-right:20px;display:inline-block}.checkout-step>h1 .step-number:after{content:"."}.checkout-step .form-footer{text-align:center}.checkout-step .form-fields{margin-bottom:30px}.checkout-step .already-has-account{text-align:center;border-bottom:2px solid #cdcdcd;padding-top:30px;padding-bottom:30px}.checkout-step .guest-checkout{padding-top:20px}.checkout-step .js-address-form>form a{margin-bottom:10px}.address-selector{max-width:75rem;margin-right:auto;margin-left:auto}.address-selector:after,.address-selector:before{display:table;content:" "}.address-selector:after{clear:both}.address-selector .address-item{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.address-selector .address-item{padding-right:1.875rem;padding-left:1.875rem}}.address-selector .address-item:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){.address-selector .address-item{width:33.33333%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){.address-selector .address-item{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){.address-selector .address-item:last-child:not(:first-child){float:right}}.delivery-options .delivery-option{position:relative;white-space:nowrap}.delivery-options .delivery-option label{display:inline-block;margin-left:30px;white-space:normal}.delivery-options .delivery-option label img{vertical-align:top}.payment-options .js-additional-information{padding-left:30px;padding-right:30px;font-size:14px}.payment-options .js-additional-information li,.payment-options .js-additional-information p{font-size:14px}#conditions-to-approve ul,.payment-options ul{margin-left:0}#conditions-to-approve ul div.payment-option,#conditions-to-approve ul li,.payment-options ul div.payment-option,.payment-options ul li{list-style:none;white-space:nowrap}#conditions-to-approve ul div.payment-option label,#conditions-to-approve ul li label,.payment-options ul div.payment-option label,.payment-options ul li label{white-space:normal}#payment-confirmation{text-align:center}#content-hook_payment_return{max-width:700px;margin:0 auto;margin-bottom:50px}#content-hook_order_confirmation{text-align:center;margin-bottom:100px}#order-items table td .product-image{display:inline-block;max-width:100px}#order-details{text-align:center}#order-details ul li{list-style:none}.glass-pickup-callout{margin-top:30px;width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.glass-pickup-callout{padding-right:1.875rem;padding-left:1.875rem}}.glass-pickup-callout:last-child:not(:first-child){float:right}@media print,screen and (min-width:40em){.glass-pickup-callout{width:66.66667%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-right:auto;margin-left:auto}}@media print,screen and (min-width:40em) and (min-width:40em){.glass-pickup-callout{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.glass-pickup-callout:last-child:not(:first-child){float:right}.glass-pickup-callout,.glass-pickup-callout:last-child:not(:first-child){float:none;clear:both}}@media print,screen and (min-width:64em){.glass-pickup-callout{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-right:auto;margin-left:auto}}@media print,screen and (min-width:64em) and (min-width:40em){.glass-pickup-callout{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){.glass-pickup-callout:last-child:not(:first-child){float:right}.glass-pickup-callout,.glass-pickup-callout:last-child:not(:first-child){float:none;clear:both}}.login-form-header{margin-bottom:60px}.page-my-account .link-list li{position:relative}.page-my-account .link-list li:before{content:"";background-image:url(../img/arrow-right-orange.png);background-size:contain;background-repeat:no-repeat;display:inline-block;height:10px;width:27px}.page-my-account .link-list li a{font-weight:700;display:inline-block}.page-customer-account #content{margin-bottom:30px}.my-account-links li{padding-right:10px}.my-account-has-nav .my-account-nav{display:none;background-color:#ffd545}@media print,screen and (min-width:64em){.my-account-has-nav .my-account-nav{display:block;width:25%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){.my-account-has-nav .my-account-nav{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){.my-account-has-nav .my-account-nav:last-child:not(:first-child){float:right}}.my-account-has-nav .my-account-nav ul li{position:relative}.my-account-has-nav .my-account-nav ul li:before{content:"";background-image:url(../img/arrow-right-orange.png);background-size:contain;background-repeat:no-repeat;display:inline-block;height:10px;width:27px;vertical-align:middle}.my-account-has-nav .my-account-nav ul li a{font-weight:700;display:inline-block;color:#22222a;max-width:80%;vertical-align:middle;transition:color .2s}.my-account-has-nav .my-account-nav ul li a.active,.my-account-has-nav .my-account-nav ul li a:hover{color:#aa4c08}.my-account-has-nav #content{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.my-account-has-nav #content{padding-right:1.875rem;padding-left:1.875rem}}.my-account-has-nav #content:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){.my-account-has-nav #content{width:75%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){.my-account-has-nav #content{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){.my-account-has-nav #content:last-child:not(:first-child){float:right}}.addresses{max-width:75rem;margin-right:auto;margin-left:auto}.addresses:after,.addresses:before{display:table;content:" "}.addresses:after{clear:both}.addresses>.address{float:left;width:100%;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){.addresses>.address{padding-right:1.875rem;padding-left:1.875rem}}.addresses>.address:nth-of-type(1n){clear:none}.addresses>.address:nth-of-type(1n+1){clear:both}.addresses>.address:last-child{float:left}@media print,screen and (min-width:40em){.addresses>.address{float:left;width:50%;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){.addresses>.address{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){.addresses>.address:nth-of-type(1n){clear:none}.addresses>.address:nth-of-type(odd){clear:both}.addresses>.address:last-child{float:left}}@media print,screen and (min-width:64em){.addresses>.address{float:left;width:50%;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){.addresses>.address{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){.addresses>.address:nth-of-type(1n){clear:none}.addresses>.address:nth-of-type(odd){clear:both}.addresses>.address:last-child{float:left}}.addresses .address .action-list li{padding-right:10px}#shopping-list thead th:nth-child(3){width:20%}#shopping-list td.list-checkbox>div{margin-top:-13px}#shopping-list td:last-child{white-space:nowrap}#main .dataTables_filter label,#main .dataTables_length label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}#main .dataTables_filter label input,#main .dataTables_filter label select,#main .dataTables_length label input,#main .dataTables_length label select{margin-left:10px;margin-right:10px;margin-bottom:0}#main table.dataTable.no-footer,#main table.dataTable thead td,#main table.dataTable thead th{border-bottom:none}#main .dataTables_wrapper .dataTables_paginate .paginate_button{background:none;border:none}#main .dataTables_wrapper .dataTables_paginate .paginate_button.current,#main .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{border:none;background:#ffd545}@media print,screen and (min-width:40em){#module-prestablog-blog #content-wrapper{max-width:75rem;margin-right:auto;margin-left:auto}#module-prestablog-blog #content-wrapper:after,#module-prestablog-blog #content-wrapper:before{display:table;content:" "}#module-prestablog-blog #content-wrapper:after{clear:both}}@media print,screen and (min-width:40em){#module-prestablog-blog #content-wrapper #main{width:66.66667%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em) and (min-width:40em){#module-prestablog-blog #content-wrapper #main{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){#module-prestablog-blog #content-wrapper #main:last-child:not(:first-child){float:right}}#module-prestablog-blog #content-wrapper #main .rrssb-buttons{max-width:130px}#module-prestablog-blog #content-wrapper #main .rrssb-buttons li a .text{font-size:13px!important}@media print,screen and (min-width:40em){#module-prestablog-blog #content-wrapper .sidebar{width:33.33333%;float:left;padding-right:.9375rem;padding-left:.9375rem;margin-top:150px}}@media print,screen and (min-width:40em) and (min-width:40em){#module-prestablog-blog #content-wrapper .sidebar{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:40em){#module-prestablog-blog #content-wrapper .sidebar:last-child:not(:first-child){float:right}}#module-prestablog-blog #content-wrapper .sidebar .h2,#module-prestablog-blog #content-wrapper .sidebar h1,#module-prestablog-blog #content-wrapper .sidebar h2,#module-prestablog-blog #content-wrapper .sidebar h3,#module-prestablog-blog #content-wrapper .sidebar h4{color:#000;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:28px;font-weight:900;text-transform:uppercase;line-height:1.2;text-align:center;margin-bottom:20px}@media print,screen and (min-width:40em){#module-prestablog-blog #content-wrapper .sidebar .h2,#module-prestablog-blog #content-wrapper .sidebar h1,#module-prestablog-blog #content-wrapper .sidebar h2,#module-prestablog-blog #content-wrapper .sidebar h3,#module-prestablog-blog #content-wrapper .sidebar h4{font-size:25px}}#module-prestablog-blog #content-wrapper .sidebar h3,#module-prestablog-blog #content-wrapper .sidebar h4{font-size:22px}#prestablog_menu_cat{display:none}#module-prestablog-blog div.prestablog_pagination span.current{border:none;background:#f6f6f6;border-radius:3px;font-weight:700;color:#000}#module-prestablog-blog div.prestablog_pagination span.disabled{border:none}#module-prestablog-blog div.prestablog_pagination a{border:none;color:#000}#module-prestablog-blog .sidebar .email_subscription h4{display:none}#module-prestablog-blog .sidebar .email_subscription form{text-align:center}#neodif_blog_list{list-style:none;margin-left:0}#neodif_blog_list>li{margin-bottom:30px}#neodif_blog_list>li .owl-carousel{margin-bottom:20px}@media print,screen and (min-width:40em){#neodif_blog_list>li .owl-carousel{padding:0 70px!important;margin-bottom:60px}}@media print,screen and (min-width:64em){#neodif_blog_list>li .owl-carousel{padding:0 94px!important}}#neodif_blog_list>li .owl-carousel .owl-stage-outer{padding:30px 0}#neodif_blog_list>li .owl-carousel .owl-stage-outer .owl-stage{display:-ms-flexbox;display:flex}#neodif_blog_list>li .owl-carousel .owl-stage-outer .owl-item{padding:0 15px;display:-ms-flexbox;display:flex}#neodif_blog_list>li .owl-carousel .owl-dots{margin-top:40px!important}#neodif_blog_list>li .news-list-block{cursor:pointer;background-color:#f6f6f6;transition:.15s;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between}#neodif_blog_list>li .news-list-block:hover{box-shadow:0 0 20px rgba(0,0,0,.3)}#neodif_blog_list>li .news-list-block .news-list-image{display:block;position:relative}#neodif_blog_list>li .news-list-block .news-list-image a{height:393px;width:100%;display:block;background-size:cover;background-position:50%}#neodif_blog_list>li .news-list-block .news-list-image:before{content:"";position:absolute;top:25px;right:25px;bottom:0;left:25px;border:2px solid #ffd545;z-index:1}#neodif_blog_list>li .news-list-block .news-list-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:url(../img/deco-round-gray.png) no-repeat bottom;background-size:contain;z-index:2}#neodif_blog_list>li .news-list-block .news-list-date{font-weight:600;margin-bottom:10px}#neodif_blog_list>li .news-list-block .news-list-info{padding:30px}#neodif_blog_list>li .news-list-block .news-list-info .news-list-date{display:block;margin-bottom:10px;color:#f36d0b;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:14px;font-weight:600}#neodif_blog_list>li .news-list-block .news-list-info .news-list-title{text-align:left!important}#neodif_blog_list>li .news-list-block .news-list-info .news-list-title:after{content:none!important}@media print,screen and (min-width:40em){#neodif_blog_list>li .news-list-block .news-list-info .news-list-title{font-size:25px!important}}#neodif_blog_list>li .news-list-block .news-list-info .news-list-excerpt{font-size:14px!important;margin-bottom:30px}@media print,screen and (min-width:40em){#neodif_blog_list>li .news-list-block .news-list-info .news-list-excerpt{font-size:16px!important}}#neodif_blog_list>li .news-list-block .news-list-info .block-link{font-size:16px;text-transform:none;border:2px solid #f36d0b;font-weight:600}#neodif_blog_list>li .news-list-block{max-width:75rem;margin-right:auto;margin-left:auto;display:block}#neodif_blog_list>li .news-list-block:after,#neodif_blog_list>li .news-list-block:before{display:table;content:" "}#neodif_blog_list>li .news-list-block:after{clear:both}#neodif_blog_list>li .news-list-block .news-list-image{width:100%;float:left;padding-right:0;padding-left:0}#neodif_blog_list>li .news-list-block .news-list-image:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){#neodif_blog_list>li .news-list-block .news-list-image{width:50%;float:left;padding-right:0;padding-left:0}#neodif_blog_list>li .news-list-block .news-list-image:last-child:not(:first-child){float:right}}@media print,screen and (min-width:64em){#neodif_blog_list>li .news-list-block .news-list-image:after{background:url(../img/deco-round-gray-rotated.png) no-repeat 100%;background-size:auto 100%}}@media print,screen and (min-width:64em){#neodif_blog_list>li .news-list-block .news-list-image:before{bottom:25px;right:0}}#neodif_blog_list>li .news-list-block .news-list-info{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){#neodif_blog_list>li .news-list-block .news-list-info{padding-right:1.875rem;padding-left:1.875rem}}#neodif_blog_list>li .news-list-block .news-list-info:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){#neodif_blog_list>li .news-list-block .news-list-info{width:50%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){#neodif_blog_list>li .news-list-block .news-list-info{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){#neodif_blog_list>li .news-list-block .news-list-info:last-child:not(:first-child){float:right}}#neodif_blog_list>li .news-list-block .news-list-info .news-list-title a{color:#000}#neodif_blog_list>li .news-list-block .news-list-info .news-list-date .categorie_blog{color:#f36d0b}#module-xenforum-category #wrapper,#module-xenforum-home #wrapper{max-width:75rem;margin-right:auto;margin-left:auto}#module-xenforum-category #wrapper:after,#module-xenforum-category #wrapper:before,#module-xenforum-home #wrapper:after,#module-xenforum-home #wrapper:before{display:table;content:" "}#module-xenforum-category #wrapper:after,#module-xenforum-home #wrapper:after{clear:both}#module-xenforum-category #wrapper #left-column,#module-xenforum-home #wrapper #left-column{padding:15px;width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){#module-xenforum-category #wrapper #left-column,#module-xenforum-home #wrapper #left-column{padding-right:1.875rem;padding-left:1.875rem}}#module-xenforum-category #wrapper #left-column:last-child:not(:first-child),#module-xenforum-home #wrapper #left-column:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){#module-xenforum-category #wrapper #left-column,#module-xenforum-home #wrapper #left-column{width:25%;float:left;padding-right:.9375rem;padding-left:.9375rem;padding-top:70px}}@media print,screen and (min-width:64em) and (min-width:40em){#module-xenforum-category #wrapper #left-column,#module-xenforum-home #wrapper #left-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){#module-xenforum-category #wrapper #left-column:last-child:not(:first-child),#module-xenforum-home #wrapper #left-column:last-child:not(:first-child){float:right}}#module-xenforum-category #wrapper .left-column,#module-xenforum-home #wrapper .left-column{width:100%;float:left;padding-right:.9375rem;padding-left:.9375rem}@media print,screen and (min-width:40em){#module-xenforum-category #wrapper .left-column,#module-xenforum-home #wrapper .left-column{padding-right:1.875rem;padding-left:1.875rem}}#module-xenforum-category #wrapper .left-column:last-child:not(:first-child),#module-xenforum-home #wrapper .left-column:last-child:not(:first-child){float:right}@media print,screen and (min-width:64em){#module-xenforum-category #wrapper .left-column,#module-xenforum-home #wrapper .left-column{width:75%;float:left;padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:64em) and (min-width:40em){#module-xenforum-category #wrapper .left-column,#module-xenforum-home #wrapper .left-column{padding-right:1.875rem;padding-left:1.875rem}}@media print,screen and (min-width:64em){#module-xenforum-category #wrapper .left-column:last-child:not(:first-child),#module-xenforum-home #wrapper .left-column:last-child:not(:first-child){float:right}}body[id^=module-xenforum-] #wrapper .page-header{display:none}#wrapper .blogview a{color:inherit}#wrapper .blogview .blog_title,#wrapper .blogview .main_title{color:#000;background-color:transparent;background:transparent;border:none;font-family:Source Sans Pro,Helvetica,Roboto,Arial,sans-serif;font-size:28px;font-weight:900;text-transform:uppercase;line-height:1.2;text-align:center;margin-bottom:20px}@media print,screen and (min-width:40em){#wrapper .blogview .blog_title,#wrapper .blogview .main_title{font-size:25px}}#wrapper .blogview fieldset span.inline{display:block}#wrapper .blogview fieldset input::-webkit-input-placeholder{visibility:visible;display:inherit;opacity:1}#wrapper .blogview fieldset input::-moz-placeholder{visibility:visible;display:inherit;opacity:1}#wrapper .blogview fieldset input:-ms-input-placeholder{visibility:visible;display:inherit;opacity:1}#wrapper .blogview fieldset input:-moz-placeholder{visibility:visible;display:inherit;opacity:1}.sidebar .secondaryContent{background-image:none;border-bottom:none}.sidebar .form-search input{padding-left:inherit}.profilePage .mast .section.infoBlock h3,.sidebar .secondaryContent h3,.sidebar .section .primaryContent h3,.sidebar .section .secondaryContent h3{color:#000!important;text-transform:uppercase;font-weight:900;border-bottom:none!important;padding-bottom:0;font-size:18px}#wrapper .topCtrl{margin-top:40px;float:none;text-align:right}#wrapper .avatarHome .avatar img{max-width:none}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9OZW9kaWZDYXZpc3Rlcy9fZGV2L3Njc3MvX3NldHRpbmdzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwiYXBwLmNzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYXJkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19tYXRoLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3NsaWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGh1bWJuYWlsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RpdGxlLWJhci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJfY3VzdG9taXphdGlvbnMuc2NzcyIsIl9nbG9iYWwuc2NzcyIsIl9mb3Jtcy5zY3NzIiwiX2hlYWRlci5zY3NzIiwiX2Zvb3Rlci5zY3NzIiwiX2hvbWVwYWdlLnNjc3MiLCJfcHJvZHVjdC1saXN0LnNjc3MiLCJfcHJvZHVjdC5zY3NzIiwiX2NhcnQuc2NzcyIsIl9jaGVja291dC5zY3NzIiwiX215YWNjb3VudC5zY3NzIiwiX2Jsb2cuc2NzcyIsIl9mb3J1bXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0Y0UsaUJDelNJLEFDVzZCLHlDQ2xJakMsaURBQ0UsV0FBVyxBQUNYLFVBQVUsQUFDVixhQUFjLENBQ2YsQ0FBQTs7QUNIRCxpRUFBaUUsQUFhL0QsS0FDRSx1QkMxQ3VCLEFEa0RyQixpQkFBaUIsQUFFbkIsMEJBQTBCLEFBQzFCLDZCQUE4QixDQUMvQixBQW1CRCx3Q0FNRSxhQUFjLENBQ2YsQUFPRCxHRTlFRixjQVh1QyxBRm9HakMsY0FBZ0IsQ0FFbkIsQUFnRkQsa0JBRUUsYUFBYyxDQUNmLEFBTUQsT0FLSSxlQ3ZMWSxDRHlMZixBQU9ELEdBQ0UsdUJBQXVCLEFBRXZCLGdCQUFpQixDQUNsQixBQU1ELEtBQ0UsYUFBYyxDQUNmLEFBa0JELElBQ0UsZ0NBQWlDLEFBQ2pDLGFBQWMsQ0FDZixBQVlELEVBQ0UsNkJBQTZCLEFBQzdCLG9DQUFxQyxDQUN0QyxBQU9ELGlCQUVFLGVBQWdCLENBQ2pCLEFBWUQsWUFDRSxtQkFBbUIsQUFDbkIsMEJBQTBCLEFBQzFCLHlDQUFpQyxBQUFqQyxnQ0FBaUMsQ0FDbEMsQUFNRCxTQUVFLG9CQUFvQixBQVNwQixrQkFBbUIsQ0FScEIsQUFnQkQsY0FHRSxnQ0FBaUMsQUFDakMsYUFBYyxDQUNmLEFBTUQsSUFDRSxpQkFBa0IsQ0FDbkIsQUFNRCxLQUNFLHNCQUFzQixBQUN0QixVQUFXLENBQ1osQUFlRCxRQUVFLGNBQWMsQUFDZCxjQUFjLEFBQ2Qsa0JBQWtCLEFBQ2xCLHVCQUF3QixDQUN6QixBQUVELElBQ0UsYUFBZSxDQUNoQixBQUVELElBQ0UsU0FBVyxDQUNaLEFBV0QsWUFFRSxvQkFBcUIsQ0FDdEIsQUFNRCxzQkFDRSxhQUFhLEFBQ2IsUUFBUyxDQUNWLEFBTUQsSUFDRSxpQkFBa0IsQ0FDbkIsQUFNRCxlQUNFLGVBQWdCLENBQ2pCLEFBWUQsc0NBS0UsdUJDelp1QixBRDBadkIsZUFBZSxBQUtiLGlCQUFpQixBQUVuQixRQUFTLENBQ1YsQUFNRCxPQUNFLGdCQUFpQixDQUNsQixBQU9ELGNBRUUsbUJBQW9CLENBQ3JCLEFBUUQscURBSUUseUJBQTBCLENBQzNCLEFBRUQsd0hBVUksa0JBQWtCLEFBQ2xCLFNBQVUsQ0FDWCxBQVpILDRHQW1CSSw2QkFBOEIsQ0FDL0IsQUFPSCxNQUNFLGdCQUFpQixDQUNsQixBRzFKTCw2QkhtS00sc0JBQXNCLEFBQ3RCLFNBQVUsQ0FDWCxBRzFKTCxrRkhrS00sV0FBWSxDQUNiLEFHMUpMLGNIa0tNLDZCQUE2QixBQUM3QixtQkFBb0IsQ0FVckIsQUdwS0gscUZIa0tNLHVCQUF3QixDQUN6QixBQVFILDZCQUNFLDBCQUEwQixBQUMxQixZQUFhLENBQ2QsQUFNRCxTQUNFLHdCQUF5QixBQUN6QixhQUFhLEFBQ2IsMEJBQThCLENBQy9CLEFBU0QsT0FDRSxzQkFBc0IsQUFDdEIsY0FBYyxBQUVkLFVBQVUsQUFDVixjQUFjLEFBQ2Qsa0JBQW1CLENBQ3BCLEFBT0QsU0FDRSxxQkFBcUIsQUFDckIsdUJBQXdCLENBQ3pCLEFBTUQsU0FDRSxhQUFjLENBQ2YsQUFXRCxRQUNFLGFBQWMsQ0FDZixBQU1ELFFBQ0UsaUJBQWtCLENBQ25CLEFBTUQsS0FDRSxhQUFjLENBcUJmLEFBV0QsT0FDRSxvQkFBcUIsQ0FDdEIsQUc3S0wsa0JIaU1NLFlBQWEsQ0FDZCxBSXZoQkgsZUFDRSx1RUFBZ0QsQ0FDakQsQUpsRkMsS0lxRkEsc0JBQXNCLEFBQ3RCLGNONUVtQixDTTZFcEIsQUFHRCxpQkFHRSxrQkFBbUIsQ0FDcEIsQUp0RUMsS0kwRUEsU0FBUyxBQUNULFVBQVUsQUFFVixnQk43RVcsQU0rRVgsOERObkVNLEFNb0VOLGdCTmhFc0IsQU1pRXRCLGdCTjdGbUIsQU04Rm5CLFdObkZXLEFNc0ZULG1DQUFtQyxBQUNuQyxpQ0FBa0MsQ0FFckMsQUpxT0MsSUlqT0EscUJBQXFCLEFBQ3JCLHNCQUFzQixBQUd0QixlQUFlLEFBQ2YsWUFBWSxBQUNaLDhCQUErQixDQUNoQyxBSnVaQyxTSW5aQSxZQUFZLEFBQ1osZ0JBQWdCLEFBQ2hCLGVOckZhLENNc0ZkLEFBR0QsT0FDRSxzQkFBc0IsQUFDdEIsVUFBVyxDQUVaLEFBSUQsNkdBS0ksd0JBQTBCLENBQzNCLEFKNE9ELE9JdE9BLFVBQVUsQUFDVix3QkFBZ0IsQUFBaEIscUJBQWdCLEFBQWhCLGdCQUFnQixBQUNoQixTQUFTLEFBQ1QsZ0JOaEhhLEFNaUhiLHVCQUF1QixBQUN2QixjQUFjLEFBQ2QsV0F4R3VCLENBeUd4QixBRDBVRCw4QkUxVkUsU0FBVSxDQUNYLEFMK0NDLElJNUJBLGFBQWMsQ0FDZixBSnNNQyxzQ0k5TEEsbUJBQW9CLENBQ3JCLEFBR0QsWUFDRSx1QkFBeUIsQ0FDMUIsQUFFRCxXQUNFLHNCQUF3QixDQUN6QixBRXRORCxLQ3NFQSxnQkNUdUQsQUQxQnJELGtCQUFrQixBQUNsQixnQkFBaUIsQ0RTbEIsQURpR0QsdUJBRUUsY0FBYyxBQUNkLFdBQVksQ0FNYixBQUVELFdBQ0UsVUFBVyxDQUNaLEFDM0pELDZDR0xFLGdCRHVFUyxBQ3RFVCxjRHNFUyxDRjNETixBQVBMLFVDeURFLHVCQUYrRCxBQUcvRCxxQkFIK0QsQ0RyQzlELEFUc0hDLHlDU3hJSixVQ3lERSx1QkFGK0QsQUFHL0QscUJBSCtELENEckM5RCxDQUFBLEFUc0hDLHlDU3hJSixVQ3lERSx1QkFGK0QsQUFHL0QscUJBSCtELENEckM5RCxDQUFBLEFBbEJILG1CQWVNLGVBQWUsQUFDZixhQUFjLENBQ2YsQUFqQkwsY0NzRUEsY0FIYSxDRHZDVixBQTVCSCxtQkF5Qk0sa0JBQWtCLEFBQ2xCLGdCQUFpQixDQUNsQixBQTNCTCx5QkNzRUEsY0FIYSxDRG5DVixBQWhDSCxxREdMRSx1QkFGcUMsQUFHckMscUJBSHFDLENIZ0Q5QixBQXpDVCx1REdMRSx1QkFGcUMsQUFHckMscUJBSHFDLENIZ0Q5QixBQU9ULGlCSTdEQSxXQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCx1QkFGcUMsQUFHckMscUJBSHFDLENIK0R0QyxBVGdGRyx5Q1N4RkosaUJHckRFLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ0grRHRDLENBQUEsQUtoQkMsMkVBQ0UsV1BxRHNELENPcER2RCxBQ3JCSCxxRUFDRSxVUnVFdUQsQ1F0RXhELEFOcUNELGlDQUNFLFVBQVcsQ0FDWixBQUdELDJDQUNFLGVBQWUsQUFDZixjQUFjLEFBQ2QsZ0JBQWdCLEFBQ2hCLGNBQWUsQ0FDaEIsQUFLRyxTSXhGSixjQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsYUFIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLGNBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixhRGhCZ0MsQ0xnRzNCLEFBcEJELFNJeEZKLGVDZXFELENMMkVoRCxBQUlDLGNNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxjTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsZ0JNOUVKLG9CRGJxRCxDTDZGaEQsQUFwQkQsU0l4RkosU0NlcUQsQ0wyRWhELEFBSUMsY003Rkosa0JBQWtCLEFBQ2xCLFFBSG1ELENOaUc5QyxBQUVELGNNakdKLGtCQUFrQixBQUNsQixTQUhtRCxDTnFHOUMsQUFNSCxnQk05RUoscUJEYnFELENMNkZoRCxBQXBCRCxTSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLGVBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixlRGJxRCxDTDZGaEQsQUFwQkQsU0l4RkosZUNlcUQsQ0wyRWhELEFBSUMsY003Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGNNakdKLGtCQUFrQixBQUNsQixlQUhtRCxDTnFHOUMsQUFNSCxnQk05RUoscUJEYnFELENMNkZoRCxBQXBCRCxTSXhGSixTQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsUUFIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLFNBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixxQkRicUQsQ0w2RmhELEFBcEJELFNJeEZKLGVDZXFELENMMkVoRCxBQUlDLGNNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxjTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsZ0JNOUVKLGVEYnFELENMNkZoRCxBQXBCRCxTSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLGVBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixxQkRicUQsQ0w2RmhELEFBcEJELFNJeEZKLFNDZXFELENMMkVoRCxBQUlDLGNNN0ZKLGtCQUFrQixBQUNsQixRQUhtRCxDTmlHOUMsQUFFRCxjTWpHSixrQkFBa0IsQUFDbEIsU0FIbUQsQ05xRzlDLEFBTUgsZ0JNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsVUl4RkosZUNlcUQsQ0wyRWhELEFBSUMsZU03Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGVNakdKLGtCQUFrQixBQUNsQixlQUhtRCxDTnFHOUMsQUFNSCxnQk05RUosZURicUQsQ0w2RmhELEFBcEJELFVJeEZKLGVDZXFELENMMkVoRCxBQUlDLGVNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxlTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsaUJNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsVUl4RkosVUNlcUQsQ0wyRWhELEFBZ0JELGlCTTlFSixxQkRicUQsQ0w2RmhELEFBS0QseUNPekdGLFdUa0d1RCxBU2pHdkQsVUFBdUIsQ0FpQ3hCLEFQdUVHLHlFT2pGQSxVQUFXLENBQ1osQVBnRkMsNkVPN0VBLFVBQVcsQ0FDWixBUDRFQywrRE96RUEsVVRrRXFELENTakV0RCxBUHdFQyx5Q096R0YsV1RrR3VELEFTakd2RCxTQUF1QixDQWlDeEIsQVB1RUcseUVPakZBLFVBQVcsQ0FDWixBUGdGQywyRU83RUEsVUFBVyxDQUNaLEFQNEVDLCtET3pFQSxVVGtFcUQsQ1NqRXRELEFQd0VDLHlDT3pHRixXVGtHdUQsQVNqR3ZELGVBQXVCLENBaUN4QixBUHVFRyx5RU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLDZFTzdFQSxVQUFXLENBQ1osQVA0RUMsK0RPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMseUNPekdGLFdUa0d1RCxBU2pHdkQsU0FBdUIsQ0FpQ3hCLEFQdUVHLHlFT2pGQSxVQUFXLENBQ1osQVBnRkMsNkVPN0VBLFVBQVcsQ0FDWixBUDRFQywrRE96RUEsVVRrRXFELENTakV0RCxBUHdFQyx5Q096R0YsV1RrR3VELEFTakd2RCxTQUF1QixDQWlDeEIsQVB1RUcseUVPakZBLFVBQVcsQ0FDWixBUGdGQyw2RU83RUEsVUFBVyxDQUNaLEFQNEVDLCtET3pFQSxVVGtFcUQsQ1NqRXRELEFQd0VDLHlDT3pHRixXVGtHdUQsQVNqR3ZELGVBQXVCLENBaUN4QixBUHVFRyx5RU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLDZFTzdFQSxVQUFXLENBQ1osQVA0RUMsK0RPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMseUNPekdGLFdUa0d1RCxBU2pHdkQsZUFBdUIsQ0FpQ3hCLEFQdUVHLHlFT2pGQSxVQUFXLENBQ1osQVBnRkMsNkVPN0VBLFVBQVcsQ0FDWixBUDRFQywrRE96RUEsVVRrRXFELENTakV0RCxBUHdFQyx5Q096R0YsV1RrR3VELEFTakd2RCxXQUF1QixDQWlDeEIsQVB1RUcseUVPakZBLFVBQVcsQ0FDWixBUGdGQyw2RU83RUEsVUFBVyxDQUNaLEFQNEVDLCtET3pFQSxVVGtFcUQsQ1NqRXRELEFQOEVELGlERy9HQSxnQkR1RVMsQUN0RVQsY0RzRVMsQ0Z5Q3VDLEFBUWhELHVEQUNFLGVBQWUsQUFDZixhQUFjLENBQ2YsQUFFRCxxREc3SEEsdUJBRnFDLEFBR3JDLHFCQUhxQyxDSGdJb0IsQUFJekQsZ0JNaklBLGtCQUFrQixBQUNsQixnQkFBaUIsQ05rSWhCLEFNdklELDZEQUNFLFdBQVcsQUFDWCxVQUFXLENBQ1osQU51SUQsOENNNUhGLGdCQUFnQixBQUNoQixXUnNGeUQsQVFyRnpELGVBQWUsQUFDZixhQUFjLENONkhYLEFURUMseUNTN0RBLFVJeEZKLGNDZXFELENMMkVoRCxBQUlDLGVNN0ZKLGtCQUFrQixBQUNsQixhQUhtRCxDTmlHOUMsQUFFRCxlTWpHSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05xRzlDLEFBTUgsaUJNOUVKLGFEaEJnQyxDTGdHM0IsQUFwQkQsVUl4RkosZUNlcUQsQ0wyRWhELEFBSUMsZU03Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGVNakdKLGtCQUFrQixBQUNsQixlQUhtRCxDTnFHOUMsQUFNSCxpQk05RUosb0JEYnFELENMNkZoRCxBQXBCRCxVSXhGSixTQ2VxRCxDTDJFaEQsQUFJQyxlTTdGSixrQkFBa0IsQUFDbEIsUUFIbUQsQ05pRzlDLEFBRUQsZU1qR0osa0JBQWtCLEFBQ2xCLFNBSG1ELENOcUc5QyxBQU1ILGlCTTlFSixxQkRicUQsQ0w2RmhELEFBcEJELFVJeEZKLGVDZXFELENMMkVoRCxBQUlDLGVNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxlTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsaUJNOUVKLGVEYnFELENMNkZoRCxBQXBCRCxVSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxlTTdGSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05pRzlDLEFBRUQsZU1qR0osa0JBQWtCLEFBQ2xCLGVBSG1ELENOcUc5QyxBQU1ILGlCTTlFSixxQkRicUQsQ0w2RmhELEFBcEJELFVJeEZKLFNDZXFELENMMkVoRCxBQUlDLGVNN0ZKLGtCQUFrQixBQUNsQixRQUhtRCxDTmlHOUMsQUFFRCxlTWpHSixrQkFBa0IsQUFDbEIsU0FIbUQsQ05xRzlDLEFBTUgsaUJNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsVUl4RkosZUNlcUQsQ0wyRWhELEFBSUMsZU03Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGVNakdKLGtCQUFrQixBQUNsQixlQUhtRCxDTnFHOUMsQUFNSCxpQk05RUosZURicUQsQ0w2RmhELEFBcEJELFVJeEZKLGVDZXFELENMMkVoRCxBQUlDLGVNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxlTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsaUJNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsVUl4RkosU0NlcUQsQ0wyRWhELEFBSUMsZU03Rkosa0JBQWtCLEFBQ2xCLFFBSG1ELENOaUc5QyxBQUVELGVNakdKLGtCQUFrQixBQUNsQixTQUhtRCxDTnFHOUMsQUFNSCxpQk05RUoscUJEYnFELENMNkZoRCxBQXBCRCxXSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxnQk03Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGdCTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsaUJNOUVKLGVEYnFELENMNkZoRCxBQXBCRCxXSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxnQk03Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGdCTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsa0JNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsV0l4RkosVUNlcUQsQ0wyRWhELEFBZ0JELGtCTTlFSixxQkRicUQsQ0w2RmhELEFBS0QsMkNPekdGLFdUa0d1RCxBU2pHdkQsVUFBdUIsQ0FpQ3hCLEFQdUVHLDJFT2pGQSxVQUFXLENBQ1osQVBnRkMsK0VPN0VBLFVBQVcsQ0FDWixBUDRFQyxpRU96RUEsVVRrRXFELENTakV0RCxBUHdFQywyQ096R0YsV1RrR3VELEFTakd2RCxTQUF1QixDQWlDeEIsQVB1RUcsMkVPakZBLFVBQVcsQ0FDWixBUGdGQyw2RU83RUEsVUFBVyxDQUNaLEFQNEVDLGlFT3pFQSxVVGtFcUQsQ1NqRXRELEFQd0VDLDJDT3pHRixXVGtHdUQsQVNqR3ZELGVBQXVCLENBaUN4QixBUHVFRywyRU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLCtFTzdFQSxVQUFXLENBQ1osQVA0RUMsaUVPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMsMkNPekdGLFdUa0d1RCxBU2pHdkQsU0FBdUIsQ0FpQ3hCLEFQdUVHLDJFT2pGQSxVQUFXLENBQ1osQVBnRkMsK0VPN0VBLFVBQVcsQ0FDWixBUDRFQyxpRU96RUEsVVRrRXFELENTakV0RCxBUHdFQywyQ096R0YsV1RrR3VELEFTakd2RCxTQUF1QixDQWlDeEIsQVB1RUcsMkVPakZBLFVBQVcsQ0FDWixBUGdGQywrRU83RUEsVUFBVyxDQUNaLEFQNEVDLGlFT3pFQSxVVGtFcUQsQ1NqRXRELEFQd0VDLDJDT3pHRixXVGtHdUQsQVNqR3ZELGVBQXVCLENBaUN4QixBUHVFRywyRU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLCtFTzdFQSxVQUFXLENBQ1osQVA0RUMsaUVPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMsMkNPekdGLFdUa0d1RCxBU2pHdkQsZUFBdUIsQ0FpQ3hCLEFQdUVHLDJFT2pGQSxVQUFXLENBQ1osQVBnRkMsK0VPN0VBLFVBQVcsQ0FDWixBUDRFQyxpRU96RUEsVVRrRXFELENTakV0RCxBUHdFQywyQ096R0YsV1RrR3VELEFTakd2RCxXQUF1QixDQWlDeEIsQVB1RUcsMkVPakZBLFVBQVcsQ0FDWixBUGdGQywrRU83RUEsVUFBVyxDQUNaLEFQNEVDLGlFT3pFQSxVVGtFcUQsQ1NqRXRELEFQOEVELG1ERy9HQSxnQkR1RVMsQUN0RVQsY0RzRVMsQ0Z5Q3VDLEFBUWhELHlEQUNFLGVBQWUsQUFDZixhQUFjLENBQ2YsQUFFRCx1REc3SEEsdUJBRnFDLEFBR3JDLHFCQUhxQyxDSGdJb0IsQUFJekQsaUJNaklBLGtCQUFrQixBQUNsQixnQkFBaUIsQ05rSWhCLEFNdklELCtEQUNFLFdBQVcsQUFDWCxVQUFXLENBQ1osQU51SUQsaURNNUhGLGdCQUFnQixBQUNoQixXUnNGeUQsQVFyRnpELGVBQWUsQUFDZixhQUFjLENONkhYLENBQUEsQVRFQyx5Q1M3REEsU0l4RkosY0NlcUQsQ0wyRWhELEFBSUMsY003Rkosa0JBQWtCLEFBQ2xCLGFBSG1ELENOaUc5QyxBQUVELGNNakdKLGtCQUFrQixBQUNsQixjQUhtRCxDTnFHOUMsQUFNSCxnQk05RUosYURoQmdDLENMZ0czQixBQXBCRCxTSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLGVBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixvQkRicUQsQ0w2RmhELEFBcEJELFNJeEZKLFNDZXFELENMMkVoRCxBQUlDLGNNN0ZKLGtCQUFrQixBQUNsQixRQUhtRCxDTmlHOUMsQUFFRCxjTWpHSixrQkFBa0IsQUFDbEIsU0FIbUQsQ05xRzlDLEFBTUgsZ0JNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsU0l4RkosZUNlcUQsQ0wyRWhELEFBSUMsY003Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGNNakdKLGtCQUFrQixBQUNsQixlQUhtRCxDTnFHOUMsQUFNSCxnQk05RUosZURicUQsQ0w2RmhELEFBcEJELFNJeEZKLGVDZXFELENMMkVoRCxBQUlDLGNNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxjTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsZ0JNOUVKLHFCRGJxRCxDTDZGaEQsQUFwQkQsU0l4RkosU0NlcUQsQ0wyRWhELEFBSUMsY003Rkosa0JBQWtCLEFBQ2xCLFFBSG1ELENOaUc5QyxBQUVELGNNakdKLGtCQUFrQixBQUNsQixTQUhtRCxDTnFHOUMsQUFNSCxnQk05RUoscUJEYnFELENMNkZoRCxBQXBCRCxTSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLGVBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixlRGJxRCxDTDZGaEQsQUFwQkQsU0l4RkosZUNlcUQsQ0wyRWhELEFBSUMsY003Rkosa0JBQWtCLEFBQ2xCLGNBSG1ELENOaUc5QyxBQUVELGNNakdKLGtCQUFrQixBQUNsQixlQUhtRCxDTnFHOUMsQUFNSCxnQk05RUoscUJEYnFELENMNkZoRCxBQXBCRCxTSXhGSixTQ2VxRCxDTDJFaEQsQUFJQyxjTTdGSixrQkFBa0IsQUFDbEIsUUFIbUQsQ05pRzlDLEFBRUQsY01qR0osa0JBQWtCLEFBQ2xCLFNBSG1ELENOcUc5QyxBQU1ILGdCTTlFSixxQkRicUQsQ0w2RmhELEFBcEJELFVJeEZKLGVDZXFELENMMkVoRCxBQUlDLGVNN0ZKLGtCQUFrQixBQUNsQixjQUhtRCxDTmlHOUMsQUFFRCxlTWpHSixrQkFBa0IsQUFDbEIsZUFIbUQsQ05xRzlDLEFBTUgsZ0JNOUVKLGVEYnFELENMNkZoRCxBQXBCRCxVSXhGSixlQ2VxRCxDTDJFaEQsQUFJQyxlTTdGSixrQkFBa0IsQUFDbEIsY0FIbUQsQ05pRzlDLEFBRUQsZU1qR0osa0JBQWtCLEFBQ2xCLGVBSG1ELENOcUc5QyxBQU1ILGlCTTlFSixxQkRicUQsQ0w2RmhELEFBcEJELFVJeEZKLFVDZXFELENMMkVoRCxBQWdCRCxpQk05RUoscUJEYnFELENMNkZoRCxBQUtELHlDT3pHRixXVGtHdUQsQVNqR3ZELFVBQXVCLENBaUN4QixBUHVFRyx5RU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLDZFTzdFQSxVQUFXLENBQ1osQVA0RUMsK0RPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMseUNPekdGLFdUa0d1RCxBU2pHdkQsU0FBdUIsQ0FpQ3hCLEFQdUVHLHlFT2pGQSxVQUFXLENBQ1osQVBnRkMsMkVPN0VBLFVBQVcsQ0FDWixBUDRFQywrRE96RUEsVVRrRXFELENTakV0RCxBUHdFQyx5Q096R0YsV1RrR3VELEFTakd2RCxlQUF1QixDQWlDeEIsQVB1RUcseUVPakZBLFVBQVcsQ0FDWixBUGdGQyw2RU83RUEsVUFBVyxDQUNaLEFQNEVDLCtET3pFQSxVVGtFcUQsQ1NqRXRELEFQd0VDLHlDT3pHRixXVGtHdUQsQVNqR3ZELFNBQXVCLENBaUN4QixBUHVFRyx5RU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLDZFTzdFQSxVQUFXLENBQ1osQVA0RUMsK0RPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMseUNPekdGLFdUa0d1RCxBU2pHdkQsU0FBdUIsQ0FpQ3hCLEFQdUVHLHlFT2pGQSxVQUFXLENBQ1osQVBnRkMsNkVPN0VBLFVBQVcsQ0FDWixBUDRFQywrRE96RUEsVVRrRXFELENTakV0RCxBUHdFQyx5Q096R0YsV1RrR3VELEFTakd2RCxlQUF1QixDQWlDeEIsQVB1RUcseUVPakZBLFVBQVcsQ0FDWixBUGdGQyw2RU83RUEsVUFBVyxDQUNaLEFQNEVDLCtET3pFQSxVVGtFcUQsQ1NqRXRELEFQd0VDLHlDT3pHRixXVGtHdUQsQVNqR3ZELGVBQXVCLENBaUN4QixBUHVFRyx5RU9qRkEsVUFBVyxDQUNaLEFQZ0ZDLDZFTzdFQSxVQUFXLENBQ1osQVA0RUMsK0RPekVBLFVUa0VxRCxDU2pFdEQsQVB3RUMseUNPekdGLFdUa0d1RCxBU2pHdkQsV0FBdUIsQ0FpQ3hCLEFQdUVHLHlFT2pGQSxVQUFXLENBQ1osQVBnRkMsNkVPN0VBLFVBQVcsQ0FDWixBUDRFQywrRE96RUEsVVRrRXFELENTakV0RCxBUDhFRCxpREcvR0EsZ0JEdUVTLEFDdEVULGNEc0VTLENGeUN1QyxBQVFoRCx1REFDRSxlQUFlLEFBQ2YsYUFBYyxDQUNmLEFBRUQscURHN0hBLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ0hnSW9CLEFBSXpELGdCTWpJQSxrQkFBa0IsQUFDbEIsZ0JBQWlCLENOa0loQixBTXZJRCw2REFDRSxXQUFXLEFBQ1gsVUFBVyxDQUNaLEFOdUlELDhDTTVIRixnQkFBZ0IsQUFDaEIsV1JzRnlELEFRckZ6RCxlQUFlLEFBQ2YsYUFBYyxDTjZIWCxDQUFBLEFBSUgsY0cxRkUsc0JEYXFELENGK0V0RCxBRzFGQywwQkFDRSxlQUFnQixDQUNqQixBWm9GQyx5Q1NFSixjRzFGRSxxQkRhcUQsQ0YrRXRELEFHMUZDLDBCQUNFLGVBQWdCLENBQ2pCLENBQUEsQWJnTEgsd0VBbUJFLFNBQVMsQUFDVCxTQUFVLENBQ1gsQUFHRCxFQUNFLG1CRXhJMEIsQUYwSTFCLGtCQUFrQixBQUNsQixnQkU1SXNCLEFGNkl0QixpQ0UzSXlDLENGNEkxQyxBQUdELEtBRUUsaUJBQWtCLENBRW5CLEFBR0QsY0FKRSxtQkFBb0IsQ0FJdEIsQUFJQyxTQUZDLGVFck1vQixDRnVNckIsQUlnREMsTUo1Q0EsY0VsS2lCLEFGbUtqQixtQkFBb0IsQ0FDckIsQUFHRCwwQ0FNRSw4REU1Tk0sQUY2Tk4sa0JFMUxzQixBRjJMdEIsZ0JFMU5zQixBRjJOdEIsY0V2TGtCLEFGd0xsQixpQ0VsTHNDLENGd0x2QyxBQWhCRCxrSEFhSSxjQUFjLEFBQ2QsYUVuUGUsQ0ZvUGhCLEFBUUcsT0FJSSxnQll2UDZDLENab1JoRCxBQXJHUCxjQW9GVSxnQkVwTlcsQUY0TlgsYUFBYSxBQU9iLG1CRWxPaUIsQ0YrSDNCLEFBcUdPLE9BN0JHLGlCWXZQNkMsQ1pvUmhELEFBakNELE9BSUksbUJZdlA2QyxDWm9SaEQsQUFqQ0QsY0FnQkksZ0JFcE5XLEFGNE5YLGFBQWEsQUFPYixtQkVsT2lCLENGbU1yQixBQWlDQyxPQTdCRyxrQll2UDZDLENab1JoRCxBQWpDRCxPQUlJLG1CWXZQNkMsQ1pvUmhELEFBakNELGNBZ0JJLGdCRXBOVyxBRjROWCxhQUFhLEFBT2IsbUJFbE9pQixDRm1NckIsQUFpQ0MsT0E3QkcsY1l2UDZDLENab1JoRCxBQ3pNSCx5Q0R3S0UsT0FJSSxjWXZQNkMsQ1pvUmhELEFBckdQLE9Bd0VVLGdCWXZQNkMsQ1pvUmhELEFBakNELE9BSUksbUJZdlA2QyxDWm9SaEQsQUFqQ0QsT0FJSSxtQll2UDZDLENab1JoRCxBQWpDRCxPQUlJLGlCWXZQNkMsQ1pvUmhELEFBakNELE9BSUksY1l2UDZDLENab1JoRCxDQUFBLEFJbkdMLEVKMEdBLG9CQUFvQixBQUNwQixjRXJUWSxBRnNUWixxQkUxTnlCLEFGNE56QixjQUFlLENBYWhCLEFBbEJELGdCQVNJLGFFak9XLENGcU9aLEFBYkgsTUFnQkksUUFBUyxDQUNWLEFJdktELEdKNEtBLFdBQVcsQUFFWCxnQllsVHFELEFabVRyRCxTQUFTLEFBQ1Qsb0JFN095QixBRitPekIsYUFBYSxBQUNiLGVBQWUsQUFDZixnQ0VqVWlCLEFGa1VqQixhQUFjLENBQ2YsQUFHRCxTQUdFLG1CRXhRMEIsQUZ5UTFCLDRCRXRQeUIsQUZ1UHpCLGVFM1FzQixDRjRRdkIsQUFHRCxHQUNFLGlCQUFrQixDQUNuQixBQUdELEdBRUUsb0JFblFrQixDRm9RbkIsQUFHRCxNQUxFLG1CRWhRc0IsQ0Z1UXZCLEFBR0Qsd0JBRUksb0JFM1EyQixBRjRRM0IsZUFBZ0IsQ0FDakIsQUFJSCxHQUNFLGtCRWpSeUIsQ0Z1UjFCLEFBUEQsTUFJSSxvQkVsUjhCLEFGbVI5QixlRXZWa0IsQ0Z3Vm5CLEFBSUgsV0FDRSxnQkVqVDBCLEFGa1QxQixxQ1kxV3FELEFaMldyRCw2QkVwWGlCLENGMFhsQixBQVRELHdCQU1JLGdCRXZUb0IsQUZ3VHBCLGFFaFpjLENGaVpmLEFBSUgsS0FDRSxjQUFjLEFBQ2QsbUJZdFhxRCxBWnVYckQsYUV4WmdCLENGNlpqQixBQVJELFlBTUksWUVwUzZCLENBQUEsQUZ5U2pDLGlCQUNFLDhCRXZZVyxBRndZWCxZQUFZLEFBQ1osb0JBQXFCLENBQ3RCLEFJN1FDLE9KaVJBLFFBQVMsQ0FDVixBQUdELEtBQ0Usa0NZNVlxRCxBWjhZckQseUJFdlppQixBRjJaakIsZUV4WXNCLENGMFl2QixBQUdELFNBUkUseUJFL2FnQixBRmliaEIsdURFcFdLLEFGc1dMLFVFMVpXLENGOFpiLEFBWUMsSUFYQyxTQUFTLEFBQ1Qsd0JZcFpTLENaOFpWLEFrQjVjRCxX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QW9CZ0JuQixnQnBCT2UsQW9CTmYsc0JwQmRhLEFvQmViLDBDcEJoQmEsQW9Ca0JiLG9CcEI0UHlCLEFvQjNQekIsZVZadUQsQVVhdkQsZ0JwQkh3QixBb0JJeEIsZ0JwQmhDcUIsQW9CaUNyQixXcEJ0QmEsQW9CeUJYLHdEcEJrUTBCLEFvQjdPMUIsd0JBQWdCLEFBQWhCLHFCQUFnQixBQUFoQixlQUFnQixDQUNqQixBZjRzRUQsa1NlN3RFRSxhQUFhLEFBQ2IseUJwQnpEZ0IsQW9CMERoQixzQnBCL0JXLEFvQmdDWCwyQnBCbkNpQixBb0JzQ2YsdURwQnVQd0IsQ29CclAzQixBbEJxZEMsU2tCeGNBLGNBQWUsQ0FLaEIsQUFORCxlQUlJLFdBQVksQ0FDYixBQUdILHFFQUlJLGFwQmhFZSxDb0JpRWhCLEFBTEgsNkRBSUksYXBCaEVlLENvQmlFaEIsQUFMSCx5Q0FJSSxhcEJoRWUsQ29CaUVoQixBQUxILG9FQVVJLHlCcEI3RmMsQW9COEZkLGtCcEJvTjZCLENvQm5OOUIsQWZpdEVMLDRCZTNzRUksd0JBQWdCLEFBQWhCLHFCQUFnQixBQUFoQixnQkFBZ0IsQUFDaEIsZXBCeERhLENvQnlEZCxBQUdELG1CQUNFLHFCQUFzQixDQUN2QixBZjhzRUgseUNnQnQyRUksZVg0RXFELENXM0V0RCxBaEIyMkVILHlDZ0J0MkVJLHFCQUFxQixBQUNyQix3QkFBd0IsQUFFeEIsa0JBQWtELEFBQ2xELGtCWGtFcUQsQVdqRXJELGVBQWdCLENBS2pCLEFoQm8yRUQsbURnQnQyRUksY0FBZSxDQUNoQixBQUlILHlDQUVFLGtCQUFtRCxDQUNwRCxBaEJ3MkVILFlnQnAyRUksVUFBVyxDQUNaLEFDR0QsTUFqQkEsY0FBYyxBQUNkLFNBQVMsQUFFVCxrQlo0RHVELEFZM0R2RCxnQnRCcUV3QixBc0JwRXhCLGdCdEIyVDBCLEFzQjFUMUIsVXRCa0RhLENzQmpDWixBQU5ELGFBTEEsZ0JabUR1RCxBWWxEdkQsa0JBQThELENBUzNELEFDMUJILFdBR0Usa0JBRnVDLEFBR3ZDLG1CYitEcUQsQWE5RHJELGtCdkJ1VHdCLEF1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MUIsQUFVRCw0Q0dvQkEsMEJBRnlCLENIaEJ4QixBQWRELHdCQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLHdCQUZ5QixBQ3ZCdkIsc0NBQXVDLEFBR3pDLG1DQUEyQixBQUEzQiwwQkFBMkIsQ0pSMUIsQUFVRCx5Q0dvQkEsMkJBRnlCLENIaEJ4QixBQWRELDBCQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLHdCQUZ5QixBQ3ZCdkIsc0NBQXVDLEFBR3pDLG1DQUEyQixBQUEzQiwwQkFBMkIsQ0pSMUIsQUFVRCwyQ0dvQkEsMkJBRnlCLENIaEJ4QixBQWRELG1CQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLFVGaENrQyxBSUFsQywyQkFBNEIsQ0xFM0IsQUFVRCxvQ0dvQkEsU0ZoQ3FDLENEY3BDLEFBZEQsb0JDbEJGLHdCQ2tCYyxBRGpCZCxrQ0NpQ2UsQUNnQmIsVUYvQmtDLEFJRGxDLDJCQUE0QixDTEUzQixBQVVELHFDR29CQSxTRi9CcUMsQ0RhcEMsQUFkRCw2QkNsQkYsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYiw4Q0dyQ21DLEFIcUNuQyxxQkY1Qm1ELEFNR2pELHNDQUF1QyxBQUN2QyxTQUEyQixDUE41QixBQVVELDhDR29CQSwyQ0dWNEMsQUNKMUMsU0FBMkIsQ1BKNUIsQUFkRCwrQkNsQkYsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYiw4Q0dwQ3FDLEFIb0NyQyx1QkYzQnFELEFNRW5ELHNDQUF1QyxBQUN2QyxTQUEyQixDUE41QixBQVVELGdER29CQSwyQ0dWNEMsQUNKMUMsU0FBMkIsQ1BKNUIsQUFkRCxnQ0NsQkYsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYiw2Q0duQ2lDLEFIbUNqQyx3QkYxQnNELEFNQ3BELHNDQUF1QyxBQUN2QyxTQUEyQixDUE41QixBQVVELGlER29CQSwyQ0dWNEMsQUNKMUMsU0FBMkIsQ1BKNUIsQUFkRCw4QkNsQkYsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYiw2Q0dsQytCLEFIa0MvQixzQkZ6Qm9ELEFNQWxELHNDQUF1QyxBQUN2QyxTQUEyQixDUE41QixBQVVELCtDR29CQSwyQ0dWNEMsQUNKMUMsU0FBMkIsQ1BKNUIsQUFkRCxrQ0NsQkYsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYiw4Q0dyQ21DLEFIcUNuQyx3QkdDZSxBQzFCYixzQ0FBdUMsQUFDdkMsU0FBMkIsQ1BONUIsQUFVRCxtREdvQkEsMkNHVjRDLEFDSjFDLFNBQTJCLENQSjVCLEFBZEQsa0NDbEJGLHdCQ2tCYyxBRGpCZCxrQ0NpQ2UsQUNnQmIsOENHcENxQyxBSG9DckMsd0JHQ2UsQUMxQmIsc0NBQXVDLEFBQ3ZDLFNBQTJCLENQTjVCLEFBRkQsaUZHZ0NBLDJDR1Y0QyxBQ0oxQyxTQUEyQixDUGxCN0IsQUFFQyw4QkNwQkgsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYixxQkZ0Qm1ELEFNSGpELHFDQUF1QyxDUEx4QyxBQVVELCtDR29CQSw4Q0dyQ21DLEFDdUJqQyxTQUE4QixDUEovQixBQWRELGdDQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLDJDR1I4QyxBSFE5Qyx1QkZyQnFELEFNSm5ELHNDQUF1QyxBQUN2QyxTQUE4QixDUE4vQixBQVVELGlER29CQSw4Q0dwQ3FDLEFDc0JuQyxTQUE4QixDUEovQixBQWRELGlDQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLDJDR1I4QyxBSFE5Qyx3QkZwQnNELEFNTHBELHNDQUF1QyxBQUN2QyxTQUE4QixDUE4vQixBQVVELGtER29CQSw2Q0duQ2lDLEFDcUIvQixTQUE4QixDUEovQixBQWRELCtCQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLDJDR1I4QyxBSFE5QyxzQkZuQm9ELEFNTmxELHNDQUF1QyxBQUN2QyxTQUE4QixDUE4vQixBQVVELGdER29CQSw2Q0dsQytCLEFDb0I3QixTQUE4QixDUEovQixBQWRELG1DQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLDJDR1I4QyxBSFE5Qyx3QkdDZSxBQzFCYixzQ0FBdUMsQUFDdkMsU0FBOEIsQ1BOL0IsQUFVRCxvREdvQkEsOENHckNtQyxBQ3VCakMsU0FBOEIsQ1BKL0IsQUFkRCxtQ0NsQkYsd0JDa0JjLEFEakJkLGtDQ2lDZSxBQ2dCYiwyQ0dSOEMsQUhROUMsd0JHQ2UsQUMxQmIsc0NBQXVDLEFBQ3ZDLFNBQThCLENQTi9CLEFBVUQsb0RHb0JBLDhDR3BDcUMsQUNzQm5DLFNBQThCLENQSi9CLEFBZEQsdUJDbEJGLHdCQ2tCYyxBRGpCZCxrQ0NpQ2UsQUNnQmIsb0JBRnlCLEFLM0J2QixzQ0FBdUMsQUFDdkMsU0FBMkIsQ1JGNUIsQUFVRCx3Q0dvQkEsbUJBRnlCLEFLaEJ2QixTQUEyQixDUkE1QixBQWRELHlCQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLHFCQUZ5QixBSzNCdkIsc0NBQXVDLEFBQ3ZDLFNBQTJCLENSRjVCLEFBRkQsa0VHZ0NBLG1CQUZ5QixBS2hCdkIsU0FBMkIsQ1JkN0IsQUFFQyx3QkNwQkgsd0JDa0JjLEFEakJkLGtDQ2lDZSxBTWJYLHFDQUF1QyxDUkR4QyxBQVVELHlDR29CQSxxQkFGeUIsQUtoQnZCLFNBQThCLENSQS9CLEFBZEQsMEJDbEJGLHdCQ2tCYyxBRGpCZCxrQ0NpQ2UsQUNnQmIsbUJBRnlCLEFLM0J2QixzQ0FBdUMsQUFDdkMsU0FBOEIsQ1JGL0IsQUFVRCwyQ0dvQkEsb0JBRnlCLEFLaEJ2QixTQUE4QixDUkEvQixBQWRELG1CQ2xCRix3QkNrQmMsQURqQmQsa0NDaUNlLEFDZ0JiLDBCQUZ5QixBTTNCdkIsc0NBQXVDLEFBQ3ZDLFNBQTJCLENURjVCLEFBRkQsd0RHZ0NBLG9CQUZ5QixBTWhCdkIsU0FBMkIsQ1RkN0IsQUFFQyxvQkNwQkgsd0JDa0JjLEFEakJkLGtDQ2lDZSxBT2JYLHFDQUF1QyxDVER4QyxBQUZELDRER2dDQSx5QkFGeUIsQU1oQnZCLFNBQThCLENUZGhDLEFBRUMsdUJDcEJILHdCQ2tCYyxBRGpCZCxrQ0NpQ2UsQU9iWCxxQ0FBdUMsQ1REeEMsQUFGRCxnRUdnQ0Esb0JBRnlCLEFNaEJ2QixTQUEyQixDVGQ3QixBQUVDLHdCQ3BCSCx3QkNrQmMs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RyxnQkFBaUIsQ0ErRmpCLEE5RTViRyx5QzhFaVJOLG9DQThFSSxrQkFBbUIsQ0E2RnBCLENBQUEsQUEzS0gsdURqRXRhRSxXQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCx1QkFGcUMsQUFHckMsc0JBSHFDLEFrRXFmckMsaUJBQWtCLENBcUZsQixBOUUzYkUseUM4RWlSTix1RGxFOVpJLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ2tFMGtCckMsQ0FBQSxBaEUzaEJBLG9GQUNFLFdQcURzRCxDT3BEdkQsQWdFK1dMLDBFQXVGSyxXQUFXLEFBQ1gsYUFBYSxDQWlFYixBQXpKTCxvRnBFblZFLGdCQ1R1RCxBRDFCckQsa0JBQWtCLEFBQ2xCLGlCQUFpQixBb0VnZGYsVUFBVyxDQWtCWCxBdEV4WEoscUxBRUUsY0FBYyxBQUNkLFdBQVksQ0FNYixBQUVELDBGQUNFLFVBQVcsQ0FDWixBc0U4UEgsOEZqRXRhRSxXQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCxnQkR1RVMsQUN0RVQsY0RzRVMsQ21FNmJOLEFoRXZkSCwySEFDRSxXUHFEc0QsQ09wRHZELEFkOEZDLHlDOEVpUk4sOEZqRXRhRSxnQkNlcUQsQUErQnJELFdQNER5RCxBS2xHdkQsZ0JEdUVTLEFDdEVULGNEc0VTLENtRTZiTixBaEV2ZEgsMkhBQ0UsV1BxRHNELENPcER2RCxDQUFBLEFnRStXTCxrTkFpRytCLHlCQUEyQixDQUFHLEFBakc3RCxpSEFtR1EsY0FBYSxBQUNiLGNBQWUsQ0FDZixBQXJHUixvR2pFdGFFLFdDZXFELEFBK0JyRCxXUDREeUQsQUtsR3ZELGdCRHVFUyxBQ3RFVCxjRHNFUyxDbUVtY04sQWhFN2RILGlJQUNFLFdQcURzRCxDT3BEdkQsQWQ4RkMseUM4RWlSTixvR2pFdGFFLGdCQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCxnQkR1RVMsQUN0RVQsY0RzRVMsQ21FbWNOLEFoRTdkSCxpSUFDRSxXUHFEc0QsQ09wRHZELENBQUEsQWdFK1dMLDRGQXFITSxpQkFBaUIsQ0FPakIsQTlFN1lBLHlDOEVpUk4sNEZqRXRhRSxnQkNl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Q09wRHZELENBQUEsQWQ4RkMseUNvRmpGTiw2REFvQndCLGtFQUE0RSxBQUM1RSx5QkFBMEIsQ0FFakMsQ0FBQSxBcEYwRFgseUNvRmpGTiw4REEyQndCLFlBQVksQUFDWixPQUFRLENBRWYsQ0FBQSxBVm10QlQsc0Q3RHJ6Qk4sV0NlcUQsQUErQnJELFdQNER5RCxBS2xHdkQsdUJBRnFDLEFBR3JDLHFCQUhxQyxDd0UyRzVCLEFwRm9DUCx5QzBFZ3FCRSxzRDlEN3lCSix1QkFGcUMsQUFHckMscUJBSHFDLEN3RTJHNUIsQ0FBQSxBdEU1RFQsbUZBQ0UsV1BxRHNELENPcER2RCxBZDhGQyx5QzBFZ3FCRSxzRDdEcnpCTixVQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCx1QkFGcUMsQUFHckMscUJBSHFDLEN3RTJHNUIsQ0FBQSxBcEZvQ1AsOEQwRWdxQkUsc0Q5RDd5QkosdUJBRnFDLEFBR3JDLHFCQUhxQyxDd0UyRzVCLENBQUEsQXBGb0NQLHlDY2hHRixtRkFDRSxXUHFEc0QsQ09wRHZELENBQUEsQXNFYUwseUVBc0NvQixVbkZ2Q0wsQ21Gd0NFLEFBdkNqQixzRkEwQ3dCLGFuRjlEUixDbUYrREssQUM3SHJCLGtFM0VpR0UsZ0JDVHVELEFEMUJyRCxrQkFBa0IsQUFDbEIsZ0JBQWlCLEMyRTdDaEIsQTdFdUpILDhKQUVFLGNBQWMsQUFDZCxXQUFZLENBTWIsQUFFRCw4RUFDRSxVQUFXLENBQ1osQTZFdExILDRGQUtZLGFBQWEsQXhFU3ZCLFdDZXFELEFBK0JyRCxXUDREeUQsQUtsR3ZELHVCQUZxQyxBQUdyQyxxQkFIcUMsQ3lFVGhDLEFyRndKSCx5Q3FGbktOLDRGekVzQkksdUJBRnFDLEFBR3JDLHFCQUhxQyxDeUVUaEMsQ0FBQSxBdkV3REwsc0pBQ0UsV1BxRHNELENPcER2RCxBZDhGQyx5Q3FGbktOLDRGeEVjRSxVQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCx1QkFGcUMsQUFHckMsc0JBSHFDLEF5RVh6QixnQkFBaUIsQ0FFeEIsQ0FBQSxBckZ3SkgsOERxRm5LTiw0RnpFc0JJLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ3lFVGhDLENBQUEsQXJGd0pILHlDY2hHRixzSkFDRSxXUHFEc0QsQ09wRHZELENBQUEsQXVFckVMLDRGeEVjRSxXQ2VxRCxBQStCckQsV1A0RHlELEFLbEd2RCx1QkFGcUMsQUFHckMscUJBSHFDLEN5RUhoQyxBckZrSkgseUNxRm5LTiw0RnpFc0JJLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ3lFSGhDLENBQUEsQXZFa0RMLHNKQUNFLFdQcURzRCxDT3BEdkQsQWQ4RkMseUNxRm5LTiw0RnhFY0UsVUNlcUQsQUErQnJELFdQNER5RCxBS2xHdkQsdUJBRnFDLEFBR3JDLHFCQUhxQyxDeUVIaEMsQ0FBQSxBckZrSkgsOERxRm5LTiw0RnpFc0JJLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ3lFSGhDLENBQUEsQXJGa0pILHlDY2hHRixzSkFDRSxXUHFEc0QsQ09wRHZELENBQUEsQXVFaERMLGlEQUdZLFlBQWEsQ0FDaEIsQUFJVCxxQkFFUSxhQUFjLENBQ2pCLEFBSEwsOERBT1EsV3BGNkNPLEFvRjVDUCw2QkFBNkIsQUFDN0IsdUJBQXVCLEFBQ3ZCLFlBQVksQUFDWiw4RHBGc0RFLEFvRnJERixlQUFlLEFBQ2YsZ0JwRjJEaUIsQW9GMURqQix5QkFBeUIsQUFDekIsZ0JBQWdCLEFBQ2hCLGtCQUFrQixBQUlsQixrQkFBbUIsQ0FDdEIsQXJGaUhDLHlDcUZ0SU4sOERBa0JZLGNBQWUsQ0FHdEIsQ0FBQSxBQXJCTCx3Q0F3QlksYUFBYyxDQUNqQixBQXpCVCw2REE0QlksbUJBQW1CLEFBQ25CLGdCQUFnQixBQUNoQixTQUFVLENBQ2IsQUEvQlQsb0RBa0NZLG1CQUFtQixBQUNuQixnQkFBZ0IsQUFDaEIsU0FBVSxDQUNiLEFBckNULHdEQXdDWSxtQkFBbUIsQUFDbkIsZ0JBQWdCLEFBQ2hCLFNBQVUsQ0FDYixBQTNDVCxtREE4Q1ksbUJBQW1CLEFBQ25CLGdCQUFnQixBQUNoQixTQUFVLENBQ2IsQUFNVCwyQkFHUSxzQkFBc0IsQUFDdEIsa0JBQW1CLENBQ3RCLEFBTEwsNEJBT1Esb0JBQXFCLENBQ3hCLEFBR0wsbUpBSUkscUJBQXdCLEFBQ3hCLHlCQUF5QixBQUN6QixnQnBGQXFCLEFvRkNyQiw2QkFBOEIsQUFDOUIsaUJBQWlCLEFBQ2pCLGNBQWUsQ0FDbEIsQUFFRCxrQkFFUSxnQkFBZ0IsQUFDaEIsV0FBVyxBQUNYLGdCQUFpQixDQUNwQixBQUxMLGlDQU9RLGNBQWUsQ0FDbEIiLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1lvdXIgc21hbGxlc3QgYnJlYWtwb2ludCAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMpIG11c3QgYmUgc2V0IHRvIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgfVxuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkb2xkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgLy8gUmVzdG9yZSB0aGUgb2xkIGJyZWFrcG9pbnQgc2l6ZVxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICQtemYtc2l6ZTogbnVsbCAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbmcgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW5nLlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZvcm1zXG4vLyAgMjAuIExhYmVsXG4vLyAgMjEuIE1lZGlhIE9iamVjdFxuLy8gIDIyLiBNZW51XG4vLyAgMjMuIE1ldGVyXG4vLyAgMjQuIE9mZi1jYW52YXNcbi8vICAyNS4gT3JiaXRcbi8vICAyNi4gUGFnaW5hdGlvblxuLy8gIDI3LiBQcm9ncmVzcyBCYXJcbi8vICAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDI5LiBSZXZlYWxcbi8vICAzMC4gU2xpZGVyXG4vLyAgMzEuIFN3aXRjaFxuLy8gIDMyLiBUYWJsZVxuLy8gIDMzLiBUYWJzXG4vLyAgMzQuIFRodW1ibmFpbFxuLy8gIDM1LiBUaXRsZSBCYXJcbi8vICAzNi4gVG9vbHRpcFxuLy8gIDM3LiBUb3AgQmFyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLyoqIFZhcmlhYmxlcyAqKi9cblxuJGhhcy1oZWFkZXItYmFyOiB0cnVlO1xuJHNpbXBsaWZpZWQtZm9vdGVyOiB0cnVlO1xuJGhlYWRlci1pbWFnZS1iZzogdXJsKCcuLi9pbWcvY2F2aXN0ZXMucG5nJyk7XG4kaGVhZGVyLWJnLWNvbG9yOiAjMGEwMjAwO1xuJGhlYWRlci1pbWFnZS1jZW50ZXJlZDogZmFsc2U7XG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuLyoqXG5Db3VsZXVycyBtYXF1ZXR0ZSAqKi9cblxuJHNsYXRlLWdyYXk6ICMxNzE3MTc7XG4kY2xvdWQtZ3JheTogI2Y2ZjZmNjtcbiRib3JkZXItZ3JheTogI2NkY2RjZDtcbiRmb3JtLWdyYXk6ICNkNmQ3ZDU7XG4kaW5rLWJsYWNrOiAjMjIyMjJBO1xuJHNjYXJsZXQ6ICM4NjAwMDA7XG4kYWRkLXRvLWNhcnQtY29sb3I6ICNiMTFmM2Y7XG4kb3JhbmdlOiAjRjM2RDBCO1xuJHllbGxvdzogI0ZGRDU0NTtcbiRoZWFkZXIteWVsbG93OiAjRjZFOTAwO1xuJGJ1cmd1bmR5OiAjNGMyNDJkO1xuJGJyb3duOiAjNDQyYzIxO1xuJHRlYWwtYmx1ZTogIzNiNTc3NztcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6ICggcHJpbWFyeTogJHllbGxvdyxcbnNlY29uZGFyeTogJGluay1ibGFjayxcbnN1Y2Nlc3M6ICMzM2E0NTcsXG53YXJuaW5nOiAjZTAyNDI0LFxuYWxlcnQ6ICM4NjAwMDAsXG4pO1xuJGxpZ2h0LWdyYXk6ICRjbG91ZC1ncmF5O1xuJGxpZ2h0LWdyYXktMjogI2VjZWNlYztcbiRtZWRpdW0tZ3JheTogIzg2ODY4NjtcbiRkYXJrLWdyYXk6ICRzbGF0ZS1ncmF5O1xuJGJsYWNrOiAjMDAwMDAwO1xuJHdoaXRlOiAjZmZmZmZmO1xuJHJlZDogI2YzNmQwYjtcbiRkYXJrLXJlZDogJHNjYXJsZXQ7XG4kb3JhbmdlOiAkb3JhbmdlO1xuJHllbGxvdy12YXJpYW50OiAjZWZjODNhO1xuJHRleHQtZW1waGFzaXMtY29sb3I6I2JlOTI2ZjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJyxcbkhlbHZldGljYSxcblJvYm90byxcbkFyaWFsLFxuc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IDQwMDtcbiRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA3MDA7XG4kZ2xvYmFsLXdlaWdodC1ibGFjazogOTAwO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IGZhbHNlO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG4kYnJlYWtwb2ludHM6ICggc21hbGw6IDAsXG5tZWRpdW06IDY0MHB4LFxubGFyZ2U6IDEwMjRweCxcbnhsYXJnZTogMTIwMHB4LFxueHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKCBzbWFsbDogMzBweCxcbm1lZGl1bTogNjBweCk7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRibG9jay1ncmlkLW1heDogODtcbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsXG4nTGliZXJhdGlvbiBNb25vJyxcbkNvdXJpZXIsXG5tb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoIHNtYWxsOiAoICdoMSc6ICgnZm9udC1zaXplJzogMjQpLCAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSwgJ2gzJzogKCdmb250LXNpemUnOiAxOSksICdoNCc6ICgnZm9udC1zaXplJzogMTgpLCAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSwgJ2g2JzogKCdmb250LXNpemUnOiAxNiksICksXG5tZWRpdW06ICggJ2gxJzogKCdmb250LXNpemUnOiA0OCksICdoMic6ICgnZm9udC1zaXplJzogNDApLCAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSwgJ2g0JzogKCdmb250LXNpemUnOiAyNSksICdoNSc6ICgnZm9udC1zaXplJzogMjApLCAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSwgKSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLFxuJGxpZ2h0bmVzczogLTE0JSk7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWU7XG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1zaXplczogKCB0aW55OiAwLjZyZW0sXG5zbWFsbDogMC43NXJlbSxcbmRlZmF1bHQ6IDAuOXJlbSxcbmxhcmdlOiAxLjI1cmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsXG5jb2xvciAwLjI1cyBlYXNlLW91dDtcbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IG5vbmU7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6ICggc21hbGw6IDAuNjZyZW0sXG5tZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKCBzbWFsbDogMC4zM2VtLFxubWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6ICggc21hbGw6IDEuNWVtLFxubWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKCB0aW55OiAxMDBweCxcbnNtYWxsOiAyMDBweCxcbmxhcmdlOiA0MDBweCxcbik7XG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbi8vIDE5LiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjayxcbjAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cyxcbmJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gMjAuIExhYmVsXG4vLyAtLS0tLS0tLS1cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vIDIxLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuLy8gMjIuIE1lbnVcbi8vIC0tLS0tLS0tXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtO1xuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJG1lbnUtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbi8vIDIzLiBNZXRlclxuLy8gLS0tLS0tLS0tXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG4vLyAyNC4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cbiRvZmZjYW52YXMtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjayxcbjAuNyk7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTA7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDE7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLFxuMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuLy8gMjUuIE9yYml0XG4vLyAtLS0tLS0tLS1cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssXG4wLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLFxuMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuLy8gMjYuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcbi8vIDI3LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKCBkZWZhdWx0OiA0IGJ5IDMsXG53aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcbi8vIDI5LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjayxcbjAuNDUpO1xuLy8gMzAuIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gMzEuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbi8vIDMyLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCxcbiR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLFxuJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsXG4kdGFibGUtY29sb3Itc2NhbGUrJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsXG4kdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLFxuJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLFxuJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLFxuJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsXG4kdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuLy8gMzMuIFRhYnNcbi8vIC0tLS0tLS0tXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcbi8vIDM0LiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssXG4wLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsXG4wLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gMzUuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuLy8gMzYuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gMzcuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTsiLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuICAvLyBbVE9ET10gSXMgdGhpcyBuZWNlc3Nhcnk/XG4gIGJvZHkuaXMtcmV2ZWFsLW9wZW4geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gaHRtbCBnZXRzIHRoaXMgY2xhc3Mgb25seSBpbiBpT1NcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbixcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweFxuICAgIG9yICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDEtZm9udC1zaXplICE9IDIgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGE6YWN0aXZlLFxuICAgIGE6aG92ZXIge1xuICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBsZWdlbmQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xuXG4gICAgcHJvZ3Jlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShpbnRlcmFjdGl2ZSkge1xuICAgIC8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1bW1hcnkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKlxuICAgICAgICAgKiAxLiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICAgKiAyLiBTZXQgY29uc2lzdGVudCBzcGFjZSBmb3IgdGhlIGxpc3Qgc3R5bGUgaW1hZ2UuXG4gICAgICAgICAqL1xuXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTsgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAgICovXG5cbiAgICAgICAgbWVudSAmLFxuICAgICAgICBvbCAmLFxuICAgICAgICB1bCAmIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNjcmlwdGluZykge1xuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XG4gICAgLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqIFZhcmlhYmxlcyAqKi9cbi8qKlxuQ291bGV1cnMgbWFxdWV0dGUgKiovXG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi40LjNcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAvKiBsaW5lIDQ1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzICovXG4gIC5yZXZlYWwsIC5yZXZlYWwudGlueSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC5sYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG4vKiBsaW5lIDU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqLyB9XG5cbi8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuLyogbGluZSA4Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG4vKiBsaW5lIDkxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuLyogbGluZSAxMDUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG4vKiBsaW5lIDE5OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG4vKiBsaW5lIDIwNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cbi8qIGxpbmUgMjIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbi8qIGxpbmUgMjMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuLyogbGluZSAyNTEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuLyogbGluZSAyNjYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuLyogbGluZSAyNzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuLyogbGluZSAyOTEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG4vKiBsaW5lIDMwMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuLyogbGluZSAzMTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbi8qIGxpbmUgMzIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG4vKiBsaW5lIDMzMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG4vKiBsaW5lIDMzOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbi8qIGxpbmUgMzQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG4vKiBsaW5lIDM1Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLyogbGluZSAzNjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogbGluZSAzNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuLyogbGluZSAzODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG4vKiBsaW5lIDM5MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbi8qIGxpbmUgNDAwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuLyogbGluZSA0MDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG4vKiBsaW5lIDQyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbi8qIGxpbmUgNDQyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuLyogbGluZSA0NTEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuLyogbGluZSA0NjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG4vKiBsaW5lIDQ2OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG4gIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovIH1cbiAgLyogbGluZSA0NzgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAvKiBsaW5lIDQ4Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuLyogbGluZSA0OTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuLyogbGluZSA1MDUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cbi8qIGxpbmUgNTE1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cbi8qIGxpbmUgNTI1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICAvKiBsaW5lIDUzMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG4vKiBsaW5lIDU0NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG4vKiBsaW5lIDU1Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbi8qIGxpbmUgNTY2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbi8qIGxpbmUgNTgwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cbi8qIGxpbmUgNTg5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cbi8qIGxpbmUgNjAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuLyogbGluZSA2MTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG4vKiBsaW5lIDYxOCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG4vKiBsaW5lIDY1MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbi8qIGxpbmUgNjU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG4vKiBsaW5lIDY3Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MgKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBsaW5lIDEzOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuLyogbGluZSAxNDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzICovXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbi8qIGxpbmUgMTQ5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyAqL1xuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG4vKiBsaW5lIDE1Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4vKiBsaW5lIDE3Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxuLyogbGluZSAxODUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzICovXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4vKiBsaW5lIDE5Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qIGxpbmUgMjAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyAqL1xuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMjEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyAqL1xuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bzsgfVxuICAvKiBsaW5lIDIwMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi8qIGxpbmUgMjIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyogbGluZSAyMjcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4vKiBsaW5lIDIzNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDI0MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSAyOCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSAzMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLyogbGluZSAzOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAzOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEuODc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLyogbGluZSAzOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEuODc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuODc1cmVtOyB9IH1cbiAgICAvKiBsaW5lIDQyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKiBsaW5lIDQ5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDUyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAgIC5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAvKiBsaW5lIDU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAvKiBsaW5lIDY3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAvKiBsaW5lIDY3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfVxuXG4vKiBsaW5lIDc2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDc2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLyogbGluZSA0OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzICovXG4gIC5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmVuZC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSA4OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lOyB9XG5cbi8qIGxpbmUgOTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVzaC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4LjMzMzMzJTsgfVxuXG4vKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04LjMzMzMzJTsgfVxuXG4vKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4vKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4vKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NyU7IH1cblxuLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7IH1cblxuLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVsbC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMjUlOyB9XG5cbi8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4vKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdXNoLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4vKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMyU7IH1cblxuLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjclOyB9XG5cbi8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7IH1cblxuLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVsbC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTAlOyB9XG5cbi8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4vKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4vKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMyU7IH1cblxuLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLXB1c2gtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjYuNjY2NjclOyB9XG5cbi8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7IH1cblxuLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVsbC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzUlOyB9XG5cbi8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVzaC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogODMuMzMzMzMlOyB9XG5cbi8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLXB1bGwtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04My4zMzMzMyU7IH1cblxuLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY3JTsgfVxuXG4vKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyMCU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMi41JTsgfVxuICAvKiBsaW5lIDQ2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAvKiBsaW5lIDUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSA1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4vKiBsaW5lIDEzNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qIGxpbmUgMTM3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIGxpbmUgMTQzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuLmV4cGFuZGVkLnJvdyAuc21hbGwtY29sbGFwc2Uucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4vKiBsaW5lIDE0OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cblxuLyogbGluZSAxNTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4uc21hbGwtY2VudGVyZWQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMjAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyAqL1xuICAuc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4vKiBsaW5lIDE1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5zbWFsbC11bmNlbnRlcmVkLFxuLnNtYWxsLXB1c2gtMCxcbi5zbWFsbC1wdWxsLTAge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAvKiBsaW5lIDQ2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLyogbGluZSA1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAvKiBsaW5lIDQ2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLyogbGluZSA1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLyogbGluZSA1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDEzNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLyogbGluZSAxMzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC8qIGxpbmUgMTQzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAuZXhwYW5kZWQucm93IC5tZWRpdW0tY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLyogbGluZSAxNDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9XG4gIC8qIGxpbmUgMTUzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubWVkaXVtLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAvKiBsaW5lIDIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MgKi9cbiAgICAubWVkaXVtLWNlbnRlcmVkLCAubWVkaXVtLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDE1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLm1lZGl1bS11bmNlbnRlcmVkLFxuICAubWVkaXVtLXB1c2gtMCxcbiAgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAvKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC8qIGxpbmUgMTEzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAvKiBsaW5lIDExMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC8qIGxpbmUgMTAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC8qIGxpbmUgMTM1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLyogbGluZSAxMzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLyogbGluZSAxNDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC8qIGxpbmUgMTQ5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH1cbiAgLyogbGluZSAxNTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzICovXG4gIC5sYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLyogbGluZSAyMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzICovXG4gICAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgMTU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAubGFyZ2UtdW5jZW50ZXJlZCxcbiAgLmxhcmdlLXB1c2gtMCxcbiAgLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4vKiBsaW5lIDE2Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MgKi9cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAvKiBsaW5lIDc4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzICovXG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMTY2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyAqL1xuICAgIC5jb2x1bW4tYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfVxuICAgICAgLyogbGluZSA3OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyAqL1xuICAgICAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi8qIGxpbmUgMjU2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbi5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKiBsaW5lIDI4MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuLyogbGluZSAyODksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbi8qIGxpbmUgMjk2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbi8qIGxpbmUgMzAzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyogbGluZSAzMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5oMSwgLmgxLFxuaDIsXG4uaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIC8qIGxpbmUgMzIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCxcbiAgLmgyIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAuaDUgc21hbGwsXG4gIGg2IHNtYWxsLCAuaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjODY4Njg2OyB9XG5cbi8qIGxpbmUgMzMyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLyogbGluZSAzMzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5cbmgyLFxuLmgyLCAuaDIge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4vKiBsaW5lIDMzMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi8qIGxpbmUgMzMyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4vKiBsaW5lIDMzMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi8qIGxpbmUgMzMyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC8qIGxpbmUgMzMyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07IH1cbiAgLyogbGluZSAzMzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG4gIFxuICBoMixcbiAgLmgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIC8qIGxpbmUgMzMyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuOTM3NXJlbTsgfVxuICAvKiBsaW5lIDMzMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07IH1cbiAgLyogbGluZSAzMzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAvKiBsaW5lIDMzMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuLyogbGluZSAzNzEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjRkZENTQ1O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAvKiBsaW5lIDM3OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmNiMTg7IH1cbiAgLyogbGluZSAzODYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuLyogbGluZSAzOTIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODY4Njg2O1xuICBib3JkZXItbGVmdDogMDsgfVxuXG4vKiBsaW5lIDQwNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLyogbGluZSA0MTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG4vKiBsaW5lIDQyMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG4vKiBsaW5lIDQyNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxuLyogbGluZSA0MzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qIGxpbmUgNDM5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC8qIGxpbmUgNDQyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogbGluZSA0NDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzg2ODY4NjsgfVxuICAvKiBsaW5lIDQ1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjMTcxNzE3OyB9XG5cbi8qIGxpbmUgNDYxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyAqL1xuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICMxNzE3MTc7IH1cbiAgLyogbGluZSA0NjYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG4vKiBsaW5lIDQ3Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMDAwMDAwO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4vKiBsaW5lIDQ3OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBsaW5lIDQ4NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MgKi9cbmNvZGUge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjODY4Njg2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLyogbGluZSA0OTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzICovXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi8qIGxpbmUgNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzICovXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMTcxNzE3OyB9XG5cbi8qIGxpbmUgNTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzICovXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4vKiBsaW5lIDY0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyAqL1xuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MgKi9cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG4vKiBsaW5lIDc1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyAqL1xudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vKiBsaW5lIDE1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzICovXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4vKiBsaW5lIDE1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzICovXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi8qIGxpbmUgMTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MgKi9cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKiBsaW5lIDE1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzICovXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAvKiBsaW5lIDEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzICovXG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC8qIGxpbmUgMTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MgKi9cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAvKiBsaW5lIDEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzICovXG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAvKiBsaW5lIDEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzICovXG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLyogbGluZSAxMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyAqL1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC8qIGxpbmUgMTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MgKi9cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC8qIGxpbmUgMTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MgKi9cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogbGluZSAxMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyAqL1xuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLyogbGluZSAxNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLyogbGluZSAxNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSAyOCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDI5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MgKi9cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSAzMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIC8qIGxpbmUgMzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSAzMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MgKi9cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC8qIGxpbmUgMzUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC8qIGxpbmUgMzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC8qIGxpbmUgMzksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC8qIGxpbmUgNDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAvKiBsaW5lIDQ2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MgKi9cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgLyogbGluZSA1MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgLyogbGluZSA1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE3MTcxNztcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgLyogbGluZSA2MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgLyogbGluZSA2Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzICovXG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICAvKiBsaW5lIDY2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MgKi9cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICAvKiBsaW5lIDcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MgKi9cbiAgcCxcbiAgaDIsXG4gIC5oMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIC8qIGxpbmUgNzgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICBcbiAgaDIsXG4gIC5oMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC8qIGxpbmUgODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyAqL1xuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi8qIGxpbmUgMjYyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSAyMDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLyogbGluZSAxNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2ExNDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDI2Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC8qIGxpbmUgMjY3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAvKiBsaW5lIDI2Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLyogbGluZSAyNzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC8qIGxpbmUgMjc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24ucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC8qIGxpbmUgMTUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzYwNDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgMjc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjJBO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLyogbGluZSAxNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFiMWIyMjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC8qIGxpbmUgMjc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzYTQ1NztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC8qIGxpbmUgMTUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODM0NjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgMjc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24ud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UwMjQyNDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC8qIGxpbmUgMTUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I2MWExYTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC8qIGxpbmUgMjc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NjAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAvKiBsaW5lIDE1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzZiMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC8qIGxpbmUgMjkzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAvKiBsaW5lIDIwNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLyogbGluZSAyOTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC8qIGxpbmUgMjA3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAvKiBsaW5lIDI5OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC8qIGxpbmUgMjA3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyQTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAvKiBsaW5lIDI5OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLyogbGluZSAyMDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNhNDU3O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC8qIGxpbmUgMjk4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAvKiBsaW5lIDIwNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMDI0MjQ7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLyogbGluZSAyOTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLyogbGluZSAyMDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODYwMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDMwNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRDU0NTtcbiAgICBjb2xvcjogI0ZGRDU0NTsgfVxuICAgIC8qIGxpbmUgMTU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC8qIGxpbmUgMTY1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC8qIGxpbmUgMTgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2EyN2QwMDtcbiAgICAgIGNvbG9yOiAjYTI3ZDAwOyB9XG4gICAgICAvKiBsaW5lIDE4NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkQ1NDU7XG4gICAgICAgIGNvbG9yOiAjRkZENTQ1OyB9XG4gICAgLyogbGluZSAzMTEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkQ1NDU7XG4gICAgICBjb2xvcjogI0ZGRDU0NTsgfVxuICAgICAgLyogbGluZSAxODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICNhMjdkMDA7XG4gICAgICAgIGNvbG9yOiAjYTI3ZDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRDU0NTtcbiAgICAgICAgICBjb2xvcjogI0ZGRDU0NTsgfVxuICAgIC8qIGxpbmUgMzExLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMjIyMkE7XG4gICAgICBjb2xvcjogIzIyMjIyQTsgfVxuICAgICAgLyogbGluZSAxODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTExMTE1O1xuICAgICAgICBjb2xvcjogIzExMTExNTsgfVxuICAgICAgICAvKiBsaW5lIDE4NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzIyMjIyQTtcbiAgICAgICAgICBjb2xvcjogIzIyMjIyQTsgfVxuICAgIC8qIGxpbmUgMzExLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzNhNDU3O1xuICAgICAgY29sb3I6ICMzM2E0NTc7IH1cbiAgICAgIC8qIGxpbmUgMTgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWE1MjJjO1xuICAgICAgICBjb2xvcjogIzFhNTIyYzsgfVxuICAgICAgICAvKiBsaW5lIDE4NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzM2E0NTc7XG4gICAgICAgICAgY29sb3I6ICMzM2E0NTc7IH1cbiAgICAvKiBsaW5lIDMxMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwMjQyNDtcbiAgICAgIGNvbG9yOiAjZTAyNDI0OyB9XG4gICAgICAvKiBsaW5lIDE4Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzcyMTAxMDtcbiAgICAgICAgY29sb3I6ICM3MjEwMTA7IH1cbiAgICAgICAgLyogbGluZSAxODUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTAyNDI0O1xuICAgICAgICAgIGNvbG9yOiAjZTAyNDI0OyB9XG4gICAgLyogbGluZSAzMTEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjODYwMDAwO1xuICAgICAgY29sb3I6ICM4NjAwMDA7IH1cbiAgICAgIC8qIGxpbmUgMTgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM0MzAwMDA7XG4gICAgICAgIGNvbG9yOiAjNDMwMDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4NjAwMDA7XG4gICAgICAgICAgY29sb3I6ICM4NjAwMDA7IH1cbiAgLyogbGluZSAzMjAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbi5jbGVhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRDU0NTtcbiAgICBjb2xvcjogI0ZGRDU0NTsgfVxuICAgIC8qIGxpbmUgMTU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC8qIGxpbmUgMTY1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC8qIGxpbmUgMTgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICNhMjdkMDA7XG4gICAgICBjb2xvcjogI2EyN2QwMDsgfVxuICAgICAgLyogbGluZSAxODUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkQ1NDU7XG4gICAgICAgIGNvbG9yOiAjRkZENTQ1OyB9XG4gICAgLyogbGluZSAzMjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAvKiBsaW5lIDMzMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZENTQ1O1xuICAgICAgY29sb3I6ICNGRkQ1NDU7IH1cbiAgICAgIC8qIGxpbmUgMTgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2EyN2QwMDtcbiAgICAgICAgY29sb3I6ICNhMjdkMDA7IH1cbiAgICAgICAgLyogbGluZSAxODUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkQ1NDU7XG4gICAgICAgICAgY29sb3I6ICNGRkQ1NDU7IH1cbiAgICAgIC8qIGxpbmUgMzM2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC8qIGxpbmUgMzMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzIyMjIyQTtcbiAgICAgIGNvbG9yOiAjMjIyMjJBOyB9XG4gICAgICAvKiBsaW5lIDE4Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTExMTE1O1xuICAgICAgICBjb2xvcjogIzExMTExNTsgfVxuICAgICAgICAvKiBsaW5lIDE4NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMjIyMjJBO1xuICAgICAgICAgIGNvbG9yOiAjMjIyMjJBOyB9XG4gICAgICAvKiBsaW5lIDMzNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAvKiBsaW5lIDMzMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzNhNDU3O1xuICAgICAgY29sb3I6ICMzM2E0NTc7IH1cbiAgICAgIC8qIGxpbmUgMTgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzFhNTIyYztcbiAgICAgICAgY29sb3I6ICMxYTUyMmM7IH1cbiAgICAgICAgLyogbGluZSAxODUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzM2E0NTc7XG4gICAgICAgICAgY29sb3I6ICMzM2E0NTc7IH1cbiAgICAgIC8qIGxpbmUgMzM2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC8qIGxpbmUgMzMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMDI0MjQ7XG4gICAgICBjb2xvcjogI2UwMjQyNDsgfVxuICAgICAgLyogbGluZSAxODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNzIxMDEwO1xuICAgICAgICBjb2xvcjogIzcyMTAxMDsgfVxuICAgICAgICAvKiBsaW5lIDE4NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwMjQyNDtcbiAgICAgICAgICBjb2xvcjogI2UwMjQyNDsgfVxuICAgICAgLyogbGluZSAzMzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLyogbGluZSAzMzEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4NjAwMDA7XG4gICAgICBjb2xvcjogIzg2MDAwMDsgfVxuICAgICAgLyogbGluZSAxODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM0MzAwMDA7XG4gICAgICAgIGNvbG9yOiAjNDMwMDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg2MDAwMDtcbiAgICAgICAgICBjb2xvcjogIzg2MDAwMDsgfVxuICAgICAgLyogbGluZSAzMzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC8qIGxpbmUgMjIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLyogbGluZSAzNTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjRkZENTQ1OyB9XG4gIC8qIGxpbmUgMzY0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjRkZENTQ1OyB9XG4gIC8qIGxpbmUgMzY0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMyMjIyMkE7IH1cbiAgLyogbGluZSAzNjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzM2E0NTc7IH1cbiAgLyogbGluZSAzNjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNlMDI0MjQ7IH1cbiAgLyogbGluZSAzNjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjODYwMDAwOyB9XG4gIC8qIGxpbmUgMzczLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIGxpbmUgMzgwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyogbGluZSAxMjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyAqL1xuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4Njg2ODY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICAvKiBsaW5lIDExMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzICovXG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE3MTcxNztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggIzg2ODY4NjtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG4vKiBsaW5lIDEzMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzICovXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICAvKiBsaW5lIDEzNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzICovXG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuLyogbGluZSAxNDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyAqL1xuaW5wdXQ6OnBsYWNlaG9sZGVyLFxudGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4Njg2ODY7IH1cblxuLyogbGluZSAxNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyAqL1xuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4vKiBsaW5lIDE1Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzICovXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qIGxpbmUgMTYzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MgKi9cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKiBsaW5lIDEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzICovXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxuLyogbGluZSAxNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyAqL1xuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC8qIGxpbmUgMjYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MgKi9cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKiBsaW5lIDMyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzICovXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cbi8qIGxpbmUgMzgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MgKi9cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiBsaW5lIDQzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzICovXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MgKi9cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzICovXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLyogbGluZSAyNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyAqL1xuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC8qIGxpbmUgMzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MgKi9cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC8qIGxpbmUgNDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MgKi9cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi8qIGxpbmUgNDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MgKi9cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qIGxpbmUgNTcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MgKi9cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg2ODY4NjtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDElO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLyogbGluZSA3OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyAqL1xuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAvKiBsaW5lIDgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzICovXG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4vKiBsaW5lIDg4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzICovXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDIuNXJlbTsgfVxuXG4vKiBsaW5lIDEwMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyAqL1xuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAvKiBsaW5lIDExNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyAqL1xuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuLyogbGluZSAxMzgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MgKi9cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuXG4vKiBsaW5lIDM5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzICovXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qIGxpbmUgNDUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MgKi9cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbi8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MgKi9cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg2ODY4NjsgfVxuICAvKiBsaW5lIDMwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzICovXG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTsgfVxuXG4vKiBsaW5lIDgzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyAqL1xuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg2ODY4NjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MjMsIDIzLCAyMyUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgLyogbGluZSA4Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MgKi9cbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzICovXG4gIHNlbGVjdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMTcxNzE3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjODY4Njg2O1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIC8qIGxpbmUgNjYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzICovXG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIC8qIGxpbmUgNzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzICovXG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBsaW5lIDc2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyAqL1xuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4vKiBsaW5lIDQ1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzICovXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogIzg2MDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZTZlNjsgfVxuICAvKiBsaW5lIDQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzICovXG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM4NjAwMDA7IH1cblxuLyogbGluZSA3NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyAqL1xuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogIzg2MDAwMDsgfVxuXG4vKiBsaW5lIDgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzICovXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICM4NjAwMDA7IH1cbiAgLyogbGluZSA4NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyAqL1xuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBsaW5lIDE0MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyAqL1xuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLyogbGluZSA1Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyAqL1xuICAuYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi8qIGxpbmUgNjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MgKi9cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLyogbGluZSA2OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyAqL1xuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLyogbGluZSAxNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MgKi9cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmNmY2ZjY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjRkZENTQ1OyB9XG4gIC8qIGxpbmUgOTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MgKi9cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmNmY2ZjY7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAvKiBsaW5lIDk4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzICovXG4gIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7IH1cbiAgLyogbGluZSAxMDQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MgKi9cbiAgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBjb250ZW50OiAnKyc7IH1cbiAgLyogbGluZSAxMTIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MgKi9cbiAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxMyc7IH1cblxuLyogbGluZSAxNTIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MgKi9cbi5hY2NvcmRpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmNmY2ZjY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgMTM0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzICovXG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjZmNmY2OyB9XG5cbi8qIGxpbmUgODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyAqL1xuLmFjY29yZGlvbi1tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogbGluZSA5MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uYWNjb3JkaW9uLW1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi8qIGxpbmUgOTcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyAqL1xuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLyogbGluZSAxMDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyAqL1xuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi8qIGxpbmUgMTA2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MgKi9cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4vKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MgKi9cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLyogbGluZSA1Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4gIC5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNGRkQ1NDUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLyogbGluZSA2NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMXJlbTsgfVxuXG4vKiBsaW5lIDY5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MgKi9cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTsgfVxuXG4vKiBsaW5lIDExNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLyogbGluZSAxMjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyAqL1xuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4vKiBsaW5lIDEzMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDsgfVxuXG4vKiBsaW5lIDEzNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDsgfVxuICAvKiBsaW5lIDE1Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4gIC5zdWJtZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRDU0NSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4vKiBsaW5lIDE2Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuXG4vKiBsaW5lIDE2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzICovXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7IH1cblxuLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzICovXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMi4xZW07XG4gIHBhZGRpbmc6IDAuM2VtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNGRkQ1NDU7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC8qIGxpbmUgNTcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyAqL1xuICAuYmFkZ2UucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogI0ZGRDU0NTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDU3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MgKi9cbiAgLmJhZGdlLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzIyMjIyQTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDU3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MgKi9cbiAgLmJhZGdlLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICMzM2E0NTc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLyogbGluZSA1Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzICovXG4gIC5iYWRnZS53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTAyNDI0O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC8qIGxpbmUgNTcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyAqL1xuICAuYmFkZ2UuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICM4NjAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyAqL1xuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSA3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzICovXG4gIC5icmVhZGNydW1icyBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAvKiBsaW5lIDg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MgKi9cbiAgICAuYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwIDAuNzVyZW07XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBjb2xvcjogIzg2ODY4NjsgfVxuICAvKiBsaW5lIDk5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MgKi9cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjRkZENTQ1OyB9XG4gICAgLyogbGluZSAxMDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyAqL1xuICAgIC5icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC8qIGxpbmUgMTEyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MgKi9cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICM4Njg2ODY7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4vKiBsaW5lIDE5Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMDsgfVxuICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC8qIGxpbmUgNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIGZvbnQtc2l6ZTogMC45cmVtOyB9XG4gICAgLyogbGluZSA1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgIC5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAvKiBsaW5lIDIwMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLyogbGluZSAyMDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLyogbGluZSAyMDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLyogbGluZSAyMDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4OyB9XG4gICAgLyogbGluZSA5MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQ6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgMTAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzICovXG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcHgpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7IH1cbiAgICAgIC8qIGxpbmUgMTE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzICovXG4gICAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNnB4OyB9XG4gICAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXB4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gICAgICAvKiBsaW5lIDExNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTZweDsgfVxuICAgIC8qIGxpbmUgMTA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzICovXG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDFweCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAgICAgLyogbGluZSAxMTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02cHg7IH1cbiAgICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogY2FsYygyMCUgLSAxcHgpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7IH1cbiAgICAgIC8qIGxpbmUgMTE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzICovXG4gICAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNnB4OyB9XG4gICAgLyogbGluZSAxMDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNiksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXB4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gICAgICAvKiBsaW5lIDExNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTZweDsgfVxuICAvKiBsaW5lIDIxMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC8qIGxpbmUgMTUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmM2MDQ7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDIxMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjJBO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLyogbGluZSAxNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MgKi9cbiAgICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjFiMjI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDIxMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzYTQ1NztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC8qIGxpbmUgMTUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTgzNDY7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDIxMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UwMjQyNDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC8qIGxpbmUgMTUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzICovXG4gICAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiNjFhMWE7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDIxMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NjAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAvKiBsaW5lIDE1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyAqL1xuICAgIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2YjAwMDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDEzMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC8qIGxpbmUgMTQxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzICovXG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDE2OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLyogbGluZSAyNDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MgKi9cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAvKiBsaW5lIDI0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyAqL1xuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi8qIGxpbmUgODksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzICovXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDU1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyAqL1xuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAvKiBsaW5lIDU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyAqL1xuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC8qIGxpbmUgOTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzICovXG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY5ZTM7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLyogbGluZSA5Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MgKi9cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmUyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgOTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzICovXG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGY1ZTU7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLyogbGluZSA5Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MgKi9cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZGVkZTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDkzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyAqL1xuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzdjNztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDk4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyAqL1xuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAvKiBsaW5lIDEwMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MgKi9cbiAgLmNhbGxvdXQubGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG5cbi8qIGxpbmUgMTEyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyAqL1xuLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjZmNmY2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDczLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyAqL1xuICAuY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qIGxpbmUgMTE2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyAqL1xuLmNhcmQtZGl2aWRlciB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQ6ICNmNmY2ZjY7IH1cbiAgLyogbGluZSA5MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYXJkLnNjc3MgKi9cbiAgLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qIGxpbmUgMTIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyAqL1xuLmNhcmQtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLyogbGluZSAxMDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzICovXG4gIC5jYXJkLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiBsaW5lIDEyNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYXJkLnNjc3MgKi9cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbi8qIGxpbmUgOTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MgKi9cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMTcxNzE3O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLyogbGluZSAyMDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLyogbGluZSA4OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyAqL1xuICAuY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAvKiBsaW5lIDk5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzICovXG4gIC5jbG9zZS1idXR0b24uc21hbGwge1xuICAgIHJpZ2h0OiAwLjY2cmVtO1xuICAgIHRvcDogMC4zM2VtO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLyogbGluZSAxMDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MgKi9cbiAgLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi8qIGxpbmUgMzYxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuLm1lbnUsIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCwgLm15LWFjY291bnQtbGlua3MsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5hY3Rpb24tbGlzdCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC8qIGxpbmUgMjAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCBsaSwgLnBhZ2UtbXktYWNjb3VudCBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmxpbmstbGlzdCBsaSwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5teS1hY2NvdW50LWxpbmtzIGxpLCBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwgbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSB1bCBsaSwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFjdGlvbi1saXN0IGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYWN0aW9uLWxpc3QgbGkge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLyogbGluZSA3Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUgYSwgLnBhZ2UtbXktYWNjb3VudCAubGluay1saXN0IGEsIC5teS1hY2NvdW50LWxpbmtzIGEsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIGEsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFjdGlvbi1saXN0IGEsXG4gIC5tZW51IC5idXR0b24sXG4gIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCAuYnV0dG9uLFxuICAubXktYWNjb3VudC1saW5rcyAuYnV0dG9uLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCAuYnV0dG9uLFxuICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5hY3Rpb24tbGlzdCAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLyogbGluZSA4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUgaW5wdXQsIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCBpbnB1dCwgLm15LWFjY291bnQtbGlua3MgaW5wdXQsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIGlucHV0LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5hY3Rpb24tbGlzdCBpbnB1dCxcbiAgLm1lbnUgc2VsZWN0LFxuICAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3Qgc2VsZWN0LFxuICAubXktYWNjb3VudC1saW5rcyBzZWxlY3QsXG4gIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIHNlbGVjdCxcbiAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWN0aW9uLWxpc3Qgc2VsZWN0LCAubWVudSBhLCAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgYSwgLm15LWFjY291bnQtbGlua3MgYSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwgYSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWN0aW9uLWxpc3QgYSxcbiAgLm1lbnUgYnV0dG9uLFxuICAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgYnV0dG9uLFxuICAubXktYWNjb3VudC1saW5rcyBidXR0b24sXG4gIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIGJ1dHRvbixcbiAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWN0aW9uLWxpc3QgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC8qIGxpbmUgODgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51IGlucHV0LCAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgaW5wdXQsIC5teS1hY2NvdW50LWxpbmtzIGlucHV0LCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCBpbnB1dCwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWN0aW9uLWxpc3QgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAvKiBsaW5lIDE4NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUgbGksIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCBsaSwgLm15LWFjY291bnQtbGlua3MgbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5hY3Rpb24tbGlzdCBsaSwgLm1lbnUuaG9yaXpvbnRhbCBsaSwgLnBhZ2UtbXktYWNjb3VudCAuaG9yaXpvbnRhbC5saW5rLWxpc3QgbGksIC5ob3Jpem9udGFsLm15LWFjY291bnQtbGlua3MgbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmhvcml6b250YWwgbGksIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFjdGlvbi1saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLyogbGluZSAxOTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51LnZlcnRpY2FsIGxpLCAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgbGksIC52ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzIGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCBsaSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAudmVydGljYWwuYWN0aW9uLWxpc3QgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8qIGxpbmUgMzc1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAubWVudS5leHBhbmRlZCwgLnBhZ2UtbXktYWNjb3VudCAuZXhwYW5kZWQubGluay1saXN0LCAuZXhwYW5kZWQubXktYWNjb3VudC1saW5rcywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZXhwYW5kZWQsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmV4cGFuZGVkLmFjdGlvbi1saXN0IHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC8qIGxpbmUgMTA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51LmV4cGFuZGVkID4gbGksIC5wYWdlLW15LWFjY291bnQgLmV4cGFuZGVkLmxpbmstbGlzdCA+IGxpLCAuZXhwYW5kZWQubXktYWNjb3VudC1saW5rcyA+IGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5leHBhbmRlZCA+IGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5leHBhbmRlZC5hY3Rpb24tbGlzdCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC8qIGxpbmUgMjE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAubWVudS5zaW1wbGUgbGkgKyBsaSwgLnBhZ2UtbXktYWNjb3VudCAuc2ltcGxlLmxpbmstbGlzdCBsaSArIGxpLCAuc2ltcGxlLm15LWFjY291bnQtbGlua3MgbGkgKyBsaSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuc2ltcGxlIGxpICsgbGksIC5hZGRyZXNzZXMgLmFkZHJlc3MgLnNpbXBsZS5hY3Rpb24tbGlzdCBsaSArIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAvKiBsaW5lIDIxOCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUuc2ltcGxlIGEsIC5wYWdlLW15LWFjY291bnQgLnNpbXBsZS5saW5rLWxpc3QgYSwgLnNpbXBsZS5teS1hY2NvdW50LWxpbmtzIGEsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLnNpbXBsZSBhLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5zaW1wbGUuYWN0aW9uLWxpc3QgYSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMTg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIGxpLCAucGFnZS1teS1hY2NvdW50IC5tZWRpdW0taG9yaXpvbnRhbC5saW5rLWxpc3QgbGksIC5tZWRpdW0taG9yaXpvbnRhbC5teS1hY2NvdW50LWxpbmtzIGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5tZWRpdW0taG9yaXpvbnRhbCBsaSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubWVkaXVtLWhvcml6b250YWwuYWN0aW9uLWxpc3QgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLyogbGluZSAxOTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gICAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIGxpLCAucGFnZS1teS1hY2NvdW50IC5tZWRpdW0tdmVydGljYWwubGluay1saXN0IGxpLCAubWVkaXVtLXZlcnRpY2FsLm15LWFjY291bnQtbGlua3MgbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLm1lZGl1bS12ZXJ0aWNhbCBsaSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubWVkaXVtLXZlcnRpY2FsLmFjdGlvbi1saXN0IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLyogbGluZSAzOTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkLCAucGFnZS1teS1hY2NvdW50IC5tZWRpdW0tZXhwYW5kZWQubGluay1saXN0LCAubWVkaXVtLWV4cGFuZGVkLm15LWFjY291bnQtbGlua3MsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLm1lZGl1bS1leHBhbmRlZCwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubWVkaXVtLWV4cGFuZGVkLmFjdGlvbi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC8qIGxpbmUgMTA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkID4gbGksIC5wYWdlLW15LWFjY291bnQgLm1lZGl1bS1leHBhbmRlZC5saW5rLWxpc3QgPiBsaSwgLm1lZGl1bS1leHBhbmRlZC5teS1hY2NvdW50LWxpbmtzID4gbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLm1lZGl1bS1leHBhbmRlZCA+IGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5tZWRpdW0tZXhwYW5kZWQuYWN0aW9uLWxpc3QgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAvKiBsaW5lIDM5OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAubWVudS5tZWRpdW0tc2ltcGxlLCAucGFnZS1teS1hY2NvdW50IC5tZWRpdW0tc2ltcGxlLmxpbmstbGlzdCwgLm1lZGl1bS1zaW1wbGUubXktYWNjb3VudC1saW5rcywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwubWVkaXVtLXNpbXBsZSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubWVkaXVtLXNpbXBsZS5hY3Rpb24tbGlzdCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAvKiBsaW5lIDEwNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAgIC5tZW51Lm1lZGl1bS1zaW1wbGUgPiBsaSwgLnBhZ2UtbXktYWNjb3VudCAubWVkaXVtLXNpbXBsZS5saW5rLWxpc3QgPiBsaSwgLm1lZGl1bS1zaW1wbGUubXktYWNjb3VudC1saW5rcyA+IGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5tZWRpdW0tc2ltcGxlID4gbGksIC5hZGRyZXNzZXMgLmFkZHJlc3MgLm1lZGl1bS1zaW1wbGUuYWN0aW9uLWxpc3QgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgMTg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwgbGksIC5wYWdlLW15LWFjY291bnQgLmxhcmdlLWhvcml6b250YWwubGluay1saXN0IGxpLCAubGFyZ2UtaG9yaXpvbnRhbC5teS1hY2NvdW50LWxpbmtzIGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5sYXJnZS1ob3Jpem9udGFsIGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5sYXJnZS1ob3Jpem9udGFsLmFjdGlvbi1saXN0IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC8qIGxpbmUgMTk2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsIGxpLCAucGFnZS1teS1hY2NvdW50IC5sYXJnZS12ZXJ0aWNhbC5saW5rLWxpc3QgbGksIC5sYXJnZS12ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzIGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5sYXJnZS12ZXJ0aWNhbCBsaSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubGFyZ2UtdmVydGljYWwuYWN0aW9uLWxpc3QgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAvKiBsaW5lIDM5NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAubWVudS5sYXJnZS1leHBhbmRlZCwgLnBhZ2UtbXktYWNjb3VudCAubGFyZ2UtZXhwYW5kZWQubGluay1saXN0LCAubGFyZ2UtZXhwYW5kZWQubXktYWNjb3VudC1saW5rcywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwubGFyZ2UtZXhwYW5kZWQsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmxhcmdlLWV4cGFuZGVkLmFjdGlvbi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC8qIGxpbmUgMTA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaSwgLnBhZ2UtbXktYWNjb3VudCAubGFyZ2UtZXhwYW5kZWQubGluay1saXN0ID4gbGksIC5sYXJnZS1leHBhbmRlZC5teS1hY2NvdW50LWxpbmtzID4gbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmxhcmdlLWV4cGFuZGVkID4gbGksIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmxhcmdlLWV4cGFuZGVkLmFjdGlvbi1saXN0ID4gbGkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLyogbGluZSAzOTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gICAgLm1lbnUubGFyZ2Utc2ltcGxlLCAucGFnZS1teS1hY2NvdW50IC5sYXJnZS1zaW1wbGUubGluay1saXN0LCAubGFyZ2Utc2ltcGxlLm15LWFjY291bnQtbGlua3MsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmxhcmdlLXNpbXBsZSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubGFyZ2Utc2ltcGxlLmFjdGlvbi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC8qIGxpbmUgMTA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgICAgLm1lbnUubGFyZ2Utc2ltcGxlID4gbGksIC5wYWdlLW15LWFjY291bnQgLmxhcmdlLXNpbXBsZS5saW5rLWxpc3QgPiBsaSwgLmxhcmdlLXNpbXBsZS5teS1hY2NvdW50LWxpbmtzID4gbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmxhcmdlLXNpbXBsZSA+IGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5sYXJnZS1zaW1wbGUuYWN0aW9uLWxpc3QgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0gfVxuICAvKiBsaW5lIDQwNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUubmVzdGVkLCAucGFnZS1teS1hY2NvdW50IC5uZXN0ZWQubGluay1saXN0LCAubmVzdGVkLm15LWFjY291bnQtbGlua3MsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLm5lc3RlZCwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubmVzdGVkLmFjdGlvbi1saXN0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgLyogbGluZSAyNDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51Lmljb25zIGltZywgLnBhZ2UtbXktYWNjb3VudCAuaWNvbnMubGluay1saXN0IGltZywgLmljb25zLm15LWFjY291bnQtbGlua3MgaW1nLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29ucyBpbWcsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb25zLmFjdGlvbi1saXN0IGltZyxcbiAgLm1lbnUuaWNvbnMgaSxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbnMubGluay1saXN0IGksXG4gIC5pY29ucy5teS1hY2NvdW50LWxpbmtzIGksXG4gIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb25zIGksXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb25zLmFjdGlvbi1saXN0IGksXG4gIC5tZW51Lmljb25zIHN2ZyxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbnMubGluay1saXN0IHN2ZyxcbiAgLmljb25zLm15LWFjY291bnQtbGlua3Mgc3ZnLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29ucyBzdmcsXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb25zLmFjdGlvbi1saXN0IHN2ZyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC8qIGxpbmUgMjU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51Lmljb25zIGltZyArIHNwYW4sIC5wYWdlLW15LWFjY291bnQgLmljb25zLmxpbmstbGlzdCBpbWcgKyBzcGFuLCAuaWNvbnMubXktYWNjb3VudC1saW5rcyBpbWcgKyBzcGFuLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29ucyBpbWcgKyBzcGFuLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29ucy5hY3Rpb24tbGlzdCBpbWcgKyBzcGFuLFxuICAgIC5tZW51Lmljb25zIGkgKyBzcGFuLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb25zLmxpbmstbGlzdCBpICsgc3BhbixcbiAgICAuaWNvbnMubXktYWNjb3VudC1saW5rcyBpICsgc3BhbixcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29ucyBpICsgc3BhbixcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29ucy5hY3Rpb24tbGlzdCBpICsgc3BhbixcbiAgICAubWVudS5pY29ucyBzdmcgKyBzcGFuLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb25zLmxpbmstbGlzdCBzdmcgKyBzcGFuLFxuICAgIC5pY29ucy5teS1hY2NvdW50LWxpbmtzIHN2ZyArIHNwYW4sXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbnMgc3ZnICsgc3BhbixcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29ucy5hY3Rpb24tbGlzdCBzdmcgKyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLyogbGluZSAyNDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51Lmljb24tdG9wIGltZywgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi10b3AubGluay1saXN0IGltZywgLmljb24tdG9wLm15LWFjY291bnQtbGlua3MgaW1nLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBpbWcsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tdG9wLmFjdGlvbi1saXN0IGltZyxcbiAgLm1lbnUuaWNvbi10b3AgaSxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi10b3AubGluay1saXN0IGksXG4gIC5pY29uLXRvcC5teS1hY2NvdW50LWxpbmtzIGksXG4gIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tdG9wIGksXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tdG9wLmFjdGlvbi1saXN0IGksXG4gIC5tZW51Lmljb24tdG9wIHN2ZyxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi10b3AubGluay1saXN0IHN2ZyxcbiAgLmljb24tdG9wLm15LWFjY291bnQtbGlua3Mgc3ZnLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBzdmcsXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tdG9wLmFjdGlvbi1saXN0IHN2ZywgLm1lbnUuaWNvbi1yaWdodCBpbWcsIC5wYWdlLW15LWFjY291bnQgLmljb24tcmlnaHQubGluay1saXN0IGltZywgLmljb24tcmlnaHQubXktYWNjb3VudC1saW5rcyBpbWcsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tcmlnaHQgaW1nLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXJpZ2h0LmFjdGlvbi1saXN0IGltZyxcbiAgLm1lbnUuaWNvbi1yaWdodCBpLFxuICAucGFnZS1teS1hY2NvdW50IC5pY29uLXJpZ2h0LmxpbmstbGlzdCBpLFxuICAuaWNvbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIGksXG4gIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tcmlnaHQgaSxcbiAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi1yaWdodC5hY3Rpb24tbGlzdCBpLFxuICAubWVudS5pY29uLXJpZ2h0IHN2ZyxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1yaWdodC5saW5rLWxpc3Qgc3ZnLFxuICAuaWNvbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIHN2ZyxcbiAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1yaWdodCBzdmcsXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tcmlnaHQuYWN0aW9uLWxpc3Qgc3ZnLCAubWVudS5pY29uLWJvdHRvbSBpbWcsIC5wYWdlLW15LWFjY291bnQgLmljb24tYm90dG9tLmxpbmstbGlzdCBpbWcsIC5pY29uLWJvdHRvbS5teS1hY2NvdW50LWxpbmtzIGltZywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1ib3R0b20gaW1nLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWJvdHRvbS5hY3Rpb24tbGlzdCBpbWcsXG4gIC5tZW51Lmljb24tYm90dG9tIGksXG4gIC5wYWdlLW15LWFjY291bnQgLmljb24tYm90dG9tLmxpbmstbGlzdCBpLFxuICAuaWNvbi1ib3R0b20ubXktYWNjb3VudC1saW5rcyBpLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWJvdHRvbSBpLFxuICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWJvdHRvbS5hY3Rpb24tbGlzdCBpLFxuICAubWVudS5pY29uLWJvdHRvbSBzdmcsXG4gIC5wYWdlLW15LWFjY291bnQgLmljb24tYm90dG9tLmxpbmstbGlzdCBzdmcsXG4gIC5pY29uLWJvdHRvbS5teS1hY2NvdW50LWxpbmtzIHN2ZyxcbiAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1ib3R0b20gc3ZnLFxuICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWJvdHRvbS5hY3Rpb24tbGlzdCBzdmcsIC5tZW51Lmljb24tbGVmdCBpbWcsIC5wYWdlLW15LWFjY291bnQgLmljb24tbGVmdC5saW5rLWxpc3QgaW1nLCAuaWNvbi1sZWZ0Lm15LWFjY291bnQtbGlua3MgaW1nLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWxlZnQgaW1nLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWxlZnQuYWN0aW9uLWxpc3QgaW1nLFxuICAubWVudS5pY29uLWxlZnQgaSxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1sZWZ0LmxpbmstbGlzdCBpLFxuICAuaWNvbi1sZWZ0Lm15LWFjY291bnQtbGlua3MgaSxcbiAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1sZWZ0IGksXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tbGVmdC5hY3Rpb24tbGlzdCBpLFxuICAubWVudS5pY29uLWxlZnQgc3ZnLFxuICAucGFnZS1teS1hY2NvdW50IC5pY29uLWxlZnQubGluay1saXN0IHN2ZyxcbiAgLmljb24tbGVmdC5teS1hY2NvdW50LWxpbmtzIHN2ZyxcbiAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1sZWZ0IHN2ZyxcbiAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi1sZWZ0LmFjdGlvbi1saXN0IHN2ZyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC8qIGxpbmUgMjU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51Lmljb24tdG9wIGltZyArIHNwYW4sIC5wYWdlLW15LWFjY291bnQgLmljb24tdG9wLmxpbmstbGlzdCBpbWcgKyBzcGFuLCAuaWNvbi10b3AubXktYWNjb3VudC1saW5rcyBpbWcgKyBzcGFuLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBpbWcgKyBzcGFuLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXRvcC5hY3Rpb24tbGlzdCBpbWcgKyBzcGFuLFxuICAgIC5tZW51Lmljb24tdG9wIGkgKyBzcGFuLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb24tdG9wLmxpbmstbGlzdCBpICsgc3BhbixcbiAgICAuaWNvbi10b3AubXktYWNjb3VudC1saW5rcyBpICsgc3BhbixcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBpICsgc3BhbixcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXRvcC5hY3Rpb24tbGlzdCBpICsgc3BhbixcbiAgICAubWVudS5pY29uLXRvcCBzdmcgKyBzcGFuLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb24tdG9wLmxpbmstbGlzdCBzdmcgKyBzcGFuLFxuICAgIC5pY29uLXRvcC5teS1hY2NvdW50LWxpbmtzIHN2ZyArIHNwYW4sXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi10b3Agc3ZnICsgc3BhbixcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXRvcC5hY3Rpb24tbGlzdCBzdmcgKyBzcGFuLCAubWVudS5pY29uLXJpZ2h0IGltZyArIHNwYW4sIC5wYWdlLW15LWFjY291bnQgLmljb24tcmlnaHQubGluay1saXN0IGltZyArIHNwYW4sIC5pY29uLXJpZ2h0Lm15LWFjY291bnQtbGlua3MgaW1nICsgc3BhbiwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1yaWdodCBpbWcgKyBzcGFuLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXJpZ2h0LmFjdGlvbi1saXN0IGltZyArIHNwYW4sXG4gICAgLm1lbnUuaWNvbi1yaWdodCBpICsgc3BhbixcbiAgICAucGFnZS1teS1hY2NvdW50IC5pY29uLXJpZ2h0LmxpbmstbGlzdCBpICsgc3BhbixcbiAgICAuaWNvbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIGkgKyBzcGFuLFxuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tcmlnaHQgaSArIHNwYW4sXG4gICAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi1yaWdodC5hY3Rpb24tbGlzdCBpICsgc3BhbixcbiAgICAubWVudS5pY29uLXJpZ2h0IHN2ZyArIHNwYW4sXG4gICAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1yaWdodC5saW5rLWxpc3Qgc3ZnICsgc3BhbixcbiAgICAuaWNvbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIHN2ZyArIHNwYW4sXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1yaWdodCBzdmcgKyBzcGFuLFxuICAgIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tcmlnaHQuYWN0aW9uLWxpc3Qgc3ZnICsgc3BhbiwgLm1lbnUuaWNvbi1ib3R0b20gaW1nICsgc3BhbiwgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1ib3R0b20ubGluay1saXN0IGltZyArIHNwYW4sIC5pY29uLWJvdHRvbS5teS1hY2NvdW50LWxpbmtzIGltZyArIHNwYW4sIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tYm90dG9tIGltZyArIHNwYW4sIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tYm90dG9tLmFjdGlvbi1saXN0IGltZyArIHNwYW4sXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gaSArIHNwYW4sXG4gICAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1ib3R0b20ubGluay1saXN0IGkgKyBzcGFuLFxuICAgIC5pY29uLWJvdHRvbS5teS1hY2NvdW50LWxpbmtzIGkgKyBzcGFuLFxuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tYm90dG9tIGkgKyBzcGFuLFxuICAgIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tYm90dG9tLmFjdGlvbi1saXN0IGkgKyBzcGFuLFxuICAgIC5tZW51Lmljb24tYm90dG9tIHN2ZyArIHNwYW4sXG4gICAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1ib3R0b20ubGluay1saXN0IHN2ZyArIHNwYW4sXG4gICAgLmljb24tYm90dG9tLm15LWFjY291bnQtbGlua3Mgc3ZnICsgc3BhbixcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWJvdHRvbSBzdmcgKyBzcGFuLFxuICAgIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tYm90dG9tLmFjdGlvbi1saXN0IHN2ZyArIHNwYW4sIC5tZW51Lmljb24tbGVmdCBpbWcgKyBzcGFuLCAucGFnZS1teS1hY2NvdW50IC5pY29uLWxlZnQubGluay1saXN0IGltZyArIHNwYW4sIC5pY29uLWxlZnQubXktYWNjb3VudC1saW5rcyBpbWcgKyBzcGFuLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWxlZnQgaW1nICsgc3BhbiwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi1sZWZ0LmFjdGlvbi1saXN0IGltZyArIHNwYW4sXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGkgKyBzcGFuLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb24tbGVmdC5saW5rLWxpc3QgaSArIHNwYW4sXG4gICAgLmljb24tbGVmdC5teS1hY2NvdW50LWxpbmtzIGkgKyBzcGFuLFxuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tbGVmdCBpICsgc3BhbixcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWxlZnQuYWN0aW9uLWxpc3QgaSArIHNwYW4sXG4gICAgLm1lbnUuaWNvbi1sZWZ0IHN2ZyArIHNwYW4sXG4gICAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1sZWZ0LmxpbmstbGlzdCBzdmcgKyBzcGFuLFxuICAgIC5pY29uLWxlZnQubXktYWNjb3VudC1saW5rcyBzdmcgKyBzcGFuLFxuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tbGVmdCBzdmcgKyBzcGFuLFxuICAgIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tbGVmdC5hY3Rpb24tbGlzdCBzdmcgKyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLyogbGluZSAyNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51Lmljb24tbGVmdCBsaSBhIGltZywgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1sZWZ0LmxpbmstbGlzdCBsaSBhIGltZywgLmljb24tbGVmdC5teS1hY2NvdW50LWxpbmtzIGxpIGEgaW1nLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWxlZnQgbGkgYSBpbWcsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tbGVmdC5hY3Rpb24tbGlzdCBsaSBhIGltZyxcbiAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1sZWZ0LmxpbmstbGlzdCBsaSBhIGksXG4gIC5pY29uLWxlZnQubXktYWNjb3VudC1saW5rcyBsaSBhIGksXG4gIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tbGVmdCBsaSBhIGksXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tbGVmdC5hY3Rpb24tbGlzdCBsaSBhIGksXG4gIC5tZW51Lmljb24tbGVmdCBsaSBhIHN2ZyxcbiAgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1sZWZ0LmxpbmstbGlzdCBsaSBhIHN2ZyxcbiAgLmljb24tbGVmdC5teS1hY2NvdW50LWxpbmtzIGxpIGEgc3ZnLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWxlZnQgbGkgYSBzdmcsXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tbGVmdC5hY3Rpb24tbGlzdCBsaSBhIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAvKiBsaW5lIDI4Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZywgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1yaWdodC5saW5rLWxpc3QgbGkgYSBpbWcsIC5pY29uLXJpZ2h0Lm15LWFjY291bnQtbGlua3MgbGkgYSBpbWcsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmljb24tcmlnaHQgbGkgYSBpbWcsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tcmlnaHQuYWN0aW9uLWxpc3QgbGkgYSBpbWcsXG4gIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuICAucGFnZS1teS1hY2NvdW50IC5pY29uLXJpZ2h0LmxpbmstbGlzdCBsaSBhIGksXG4gIC5pY29uLXJpZ2h0Lm15LWFjY291bnQtbGlua3MgbGkgYSBpLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXJpZ2h0IGxpIGEgaSxcbiAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi1yaWdodC5hY3Rpb24tbGlzdCBsaSBhIGksXG4gIC5tZW51Lmljb24tcmlnaHQgbGkgYSBzdmcsXG4gIC5wYWdlLW15LWFjY291bnQgLmljb24tcmlnaHQubGluay1saXN0IGxpIGEgc3ZnLFxuICAuaWNvbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIGxpIGEgc3ZnLFxuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXJpZ2h0IGxpIGEgc3ZnLFxuICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXJpZ2h0LmFjdGlvbi1saXN0IGxpIGEgc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLyogbGluZSAyOTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51Lmljb24tdG9wIGxpIGEsIC5wYWdlLW15LWFjY291bnQgLmljb24tdG9wLmxpbmstbGlzdCBsaSBhLCAuaWNvbi10b3AubXktYWNjb3VudC1saW5rcyBsaSBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBsaSBhLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXRvcC5hY3Rpb24tbGlzdCBsaSBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAvKiBsaW5lIDMwNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAubWVudS5pY29uLXRvcCBsaSBhIGltZywgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi10b3AubGluay1saXN0IGxpIGEgaW1nLCAuaWNvbi10b3AubXktYWNjb3VudC1saW5rcyBsaSBhIGltZywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi10b3AgbGkgYSBpbWcsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tdG9wLmFjdGlvbi1saXN0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaSxcbiAgICAucGFnZS1teS1hY2NvdW50IC5pY29uLXRvcC5saW5rLWxpc3QgbGkgYSBpLFxuICAgIC5pY29uLXRvcC5teS1hY2NvdW50LWxpbmtzIGxpIGEgaSxcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBsaSBhIGksXG4gICAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi10b3AuYWN0aW9uLWxpc3QgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgc3ZnLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb24tdG9wLmxpbmstbGlzdCBsaSBhIHN2ZyxcbiAgICAuaWNvbi10b3AubXktYWNjb3VudC1saW5rcyBsaSBhIHN2ZyxcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLXRvcCBsaSBhIHN2ZyxcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLXRvcC5hY3Rpb24tbGlzdCBsaSBhIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvIDAuMjVyZW07IH1cbiAgLyogbGluZSAzMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51Lmljb24tYm90dG9tIGxpIGEsIC5wYWdlLW15LWFjY291bnQgLmljb24tYm90dG9tLmxpbmstbGlzdCBsaSBhLCAuaWNvbi1ib3R0b20ubXktYWNjb3VudC1saW5rcyBsaSBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWJvdHRvbSBsaSBhLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWJvdHRvbS5hY3Rpb24tbGlzdCBsaSBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAvKiBsaW5lIDMzMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZywgLnBhZ2UtbXktYWNjb3VudCAuaWNvbi1ib3R0b20ubGluay1saXN0IGxpIGEgaW1nLCAuaWNvbi1ib3R0b20ubXktYWNjb3VudC1saW5rcyBsaSBhIGltZywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuaWNvbi1ib3R0b20gbGkgYSBpbWcsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmljb24tYm90dG9tLmFjdGlvbi1saXN0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbiAgICAucGFnZS1teS1hY2NvdW50IC5pY29uLWJvdHRvbS5saW5rLWxpc3QgbGkgYSBpLFxuICAgIC5pY29uLWJvdHRvbS5teS1hY2NvdW50LWxpbmtzIGxpIGEgaSxcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWJvdHRvbSBsaSBhIGksXG4gICAgLmFkZHJlc3NlcyAuYWRkcmVzcyAuaWNvbi1ib3R0b20uYWN0aW9uLWxpc3QgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnLFxuICAgIC5wYWdlLW15LWFjY291bnQgLmljb24tYm90dG9tLmxpbmstbGlzdCBsaSBhIHN2ZyxcbiAgICAuaWNvbi1ib3R0b20ubXktYWNjb3VudC1saW5rcyBsaSBhIHN2ZyxcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5pY29uLWJvdHRvbSBsaSBhIHN2ZyxcbiAgICAuYWRkcmVzc2VzIC5hZGRyZXNzIC5pY29uLWJvdHRvbS5hY3Rpb24tbGlzdCBsaSBhIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMC4yNXJlbSBhdXRvIDA7IH1cbiAgLyogbGluZSA0NDQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhLCAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgLmlzLWFjdGl2ZSA+IGEsIC5teS1hY2NvdW50LWxpbmtzIC5pcy1hY3RpdmUgPiBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCAuaXMtYWN0aXZlID4gYSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWN0aW9uLWxpc3QgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICNGRkQ1NDU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSA0NTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51IC5hY3RpdmUgPiBhLCAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgLmFjdGl2ZSA+IGEsIC5teS1hY2NvdW50LWxpbmtzIC5hY3RpdmUgPiBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCAuYWN0aXZlID4gYSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWN0aW9uLWxpc3QgLmFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICNGRkQ1NDU7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSA0NTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51LmFsaWduLWxlZnQsIC5wYWdlLW15LWFjY291bnQgLmFsaWduLWxlZnQubGluay1saXN0LCAuYWxpZ24tbGVmdC5teS1hY2NvdW50LWxpbmtzLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5hbGlnbi1sZWZ0LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5hbGlnbi1sZWZ0LmFjdGlvbi1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC8qIGxpbmUgNDYxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAubWVudS5hbGlnbi1yaWdodCwgLnBhZ2UtbXktYWNjb3VudCAuYWxpZ24tcmlnaHQubGluay1saXN0LCAuYWxpZ24tcmlnaHQubXktYWNjb3VudC1saW5rcywgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuYWxpZ24tcmlnaHQsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFsaWduLXJpZ2h0LmFjdGlvbi1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC8qIGxpbmUgMTQ0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51LmFsaWduLXJpZ2h0IC5zdWJtZW51IGxpLCAucGFnZS1teS1hY2NvdW50IC5hbGlnbi1yaWdodC5saW5rLWxpc3QgLnN1Ym1lbnUgbGksIC5hbGlnbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIC5zdWJtZW51IGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5hbGlnbi1yaWdodCAuc3VibWVudSBsaSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWxpZ24tcmlnaHQuYWN0aW9uLWxpc3QgLnN1Ym1lbnUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC8qIGxpbmUgMTQ5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuICAgIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIC5zdWJtZW51IGxpLCAucGFnZS1teS1hY2NvdW50IC5hbGlnbi1yaWdodC5saW5rLWxpc3QgLnN1Ym1lbnUgbGksIC5hbGlnbi1yaWdodC52ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzIC5zdWJtZW51IGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5hbGlnbi1yaWdodCAuc3VibWVudSBsaSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWxpZ24tcmlnaHQudmVydGljYWwuYWN0aW9uLWxpc3QgLnN1Ym1lbnUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAvKiBsaW5lIDQ2NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAubWVudS5hbGlnbi1yaWdodCAubmVzdGVkLCAucGFnZS1teS1hY2NvdW50IC5hbGlnbi1yaWdodC5saW5rLWxpc3QgLm5lc3RlZCwgLmFsaWduLXJpZ2h0Lm15LWFjY291bnQtbGlua3MgLm5lc3RlZCwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuYWxpZ24tcmlnaHQgLm5lc3RlZCwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWxpZ24tcmlnaHQuYWN0aW9uLWxpc3QgLm5lc3RlZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKiBsaW5lIDQ3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUuYWxpZ24tY2VudGVyLCAucGFnZS1teS1hY2NvdW50IC5hbGlnbi1jZW50ZXIubGluay1saXN0LCAuYWxpZ24tY2VudGVyLm15LWFjY291bnQtbGlua3MsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmFsaWduLWNlbnRlciwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuYWxpZ24tY2VudGVyLmFjdGlvbi1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAvKiBsaW5lIDE2OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgICAubWVudS5hbGlnbi1jZW50ZXIgLnN1Ym1lbnUgbGksIC5wYWdlLW15LWFjY291bnQgLmFsaWduLWNlbnRlci5saW5rLWxpc3QgLnN1Ym1lbnUgbGksIC5hbGlnbi1jZW50ZXIubXktYWNjb3VudC1saW5rcyAuc3VibWVudSBsaSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuYWxpZ24tY2VudGVyIC5zdWJtZW51IGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5hbGlnbi1jZW50ZXIuYWN0aW9uLWxpc3QgLnN1Ym1lbnUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAvKiBsaW5lIDQ3NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MgKi9cbiAgLm1lbnUgLm1lbnUtdGV4dCwgLnBhZ2UtbXktYWNjb3VudCAubGluay1saXN0IC5tZW51LXRleHQsIC5teS1hY2NvdW50LWxpbmtzIC5tZW51LXRleHQsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIC5tZW51LXRleHQsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFjdGlvbi1saXN0IC5tZW51LXRleHQge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi8qIGxpbmUgNDgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuLm1lbnUtY2VudGVyZWQgPiAubWVudSwgLnBhZ2UtbXktYWNjb3VudCAubWVudS1jZW50ZXJlZCA+IC5saW5rLWxpc3QsIC5tZW51LWNlbnRlcmVkID4gLm15LWFjY291bnQtbGlua3MsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IC5tZW51LWNlbnRlcmVkID4gdWwsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLm1lbnUtY2VudGVyZWQgPiAuYWN0aW9uLWxpc3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogbGluZSAxNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzICovXG4gIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgLnN1Ym1lbnUgbGksIC5wYWdlLW15LWFjY291bnQgLm1lbnUtY2VudGVyZWQgPiAubGluay1saXN0IC5zdWJtZW51IGxpLCAubWVudS1jZW50ZXJlZCA+IC5teS1hY2NvdW50LWxpbmtzIC5zdWJtZW51IGxpLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiAubWVudS1jZW50ZXJlZCA+IHVsIC5zdWJtZW51IGxpLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5tZW51LWNlbnRlcmVkID4gLmFjdGlvbi1saXN0IC5zdWJtZW51IGxpIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8qIGxpbmUgNDkyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyAqL1xuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIGxpbmUgMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyAqL1xuLm1lbnUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLyogbGluZSAxMTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgI2ZmZmZmZiwgMCAxNHB4IDAgI2ZmZmZmZjtcbiAgICBjb250ZW50OiAnJzsgfVxuICAvKiBsaW5lIDEzNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzg2ODY4NjtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICM4Njg2ODYsIDAgMTRweCAwICM4Njg2ODY7IH1cblxuLyogbGluZSA2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzICovXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC8qIGxpbmUgMTE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5tZW51LWljb24uZGFyazo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzAwMDAwMCwgMCAxNHB4IDAgIzAwMDAwMDtcbiAgICBjb250ZW50OiAnJzsgfVxuICAvKiBsaW5lIDEzNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTcxNzE3O1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzE3MTcxNywgMCAxNHB4IDAgIzE3MTcxNzsgfVxuXG4vKiBsaW5lIDczLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC8qIGxpbmUgNzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MgKi9cbiAgLmlzLWRyaWxsZG93biBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLyogbGluZSA4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyAqL1xuICAuaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41czsgfVxuXG4vKiBsaW5lIDg4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4vKiBsaW5lIDk0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7IH1cbiAgLyogbGluZSAxMDQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MgKi9cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgLyogbGluZSAxMTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MgKi9cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG4gIC8qIGxpbmUgMTE1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi8qIGxpbmUgMTIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4uZHJpbGxkb3duIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIGxpbmUgMTI0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4uZHJpbGxkb3duIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyAqL1xuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAvKiBsaW5lIDQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzICovXG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICByaWdodDogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNGRkQ1NDU7IH1cblxuLyogbGluZSA1Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyAqL1xuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjRkZENTQ1OyB9XG5cbi8qIGxpbmUgNjMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MgKi9cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNGRkQ1NDUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cblxuLyogbGluZSAxMzEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MgKi9cbi5kcmlsbGRvd24gLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI0ZGRDU0NSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuXG4vKiBsaW5lIDcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MgKi9cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4Njg2ODY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAvKiBsaW5lIDU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MgKi9cbiAgLmRyb3Bkb3duLXBhbmUuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLyogbGluZSA2Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzICovXG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogbGluZSA3NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzICovXG4uZHJvcGRvd24tcGFuZS50aW55IHtcbiAgd2lkdGg6IDEwMHB4OyB9XG5cbi8qIGxpbmUgNzUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyAqL1xuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7IH1cblxuLyogbGluZSA3NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzICovXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4vKiBsaW5lIDg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxpbmstbGlzdCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLm15LWFjY291bnQtbGlua3MgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5hY3Rpb24tbGlzdCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLyogbGluZSA5Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLm15LWFjY291bnQtbGlua3MgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLyogbGluZSAxMDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAuZHJvcGRvd24ubXktYWNjb3VudC1saW5rcyA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24gPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmFjdGlvbi1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cblxuLyogbGluZSAxMDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxpbmstbGlzdCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIsIC5kcm9wZG93bi5teS1hY2NvdW50LWxpbmtzID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24gPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5hY3Rpb24tbGlzdCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjRkZENTQ1IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbi8qIGxpbmUgMTQ5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuLmRyb3Bkb3duLm1lbnUgYSwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0IGEsIC5kcm9wZG93bi5teS1hY2NvdW50LWxpbmtzIGEsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duIGEsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmFjdGlvbi1saXN0IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICAvKiBsaW5lIDIwMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxpbmstbGlzdCBhLCAucGFnZS1teS1hY2NvdW50IFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubGluay1saXN0IGEsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubXktYWNjb3VudC1saW5rcyBhLCBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24gYSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIHVsLmRyb3Bkb3duIGEsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5hY3Rpb24tbGlzdCBhLCAuYWRkcmVzc2VzIC5hZGRyZXNzIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24uYWN0aW9uLWxpc3QgYSB7XG4gICAgb3V0bGluZTogMDsgfVxuXG4vKiBsaW5lIDE1NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbi5kcm9wZG93bi5tZW51IC5pcy1hY3RpdmUgPiBhLCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgLmlzLWFjdGl2ZSA+IGEsIC5kcm9wZG93bi5teS1hY2NvdW50LWxpbmtzIC5pcy1hY3RpdmUgPiBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biAuaXMtYWN0aXZlID4gYSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24uYWN0aW9uLWxpc3QgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNGRkQ1NDU7IH1cblxuLyogbGluZSAxNjAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwsIC5uby1qcyAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgdWwsIC5wYWdlLW15LWFjY291bnQgLm5vLWpzIC5kcm9wZG93bi5saW5rLWxpc3QgdWwsIC5uby1qcyAuZHJvcGRvd24ubXktYWNjb3VudC1saW5rcyB1bCwgLm5vLWpzIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duIHVsLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiAubm8tanMgdWwuZHJvcGRvd24gdWwsIC5uby1qcyAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5hY3Rpb24tbGlzdCB1bCwgLmFkZHJlc3NlcyAuYWRkcmVzcyAubm8tanMgLmRyb3Bkb3duLmFjdGlvbi1saXN0IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBsaW5lIDE2NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLm15LWFjY291bnQtbGlua3MgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51LCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmFjdGlvbi1saXN0IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyogbGluZSAxMTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51LCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLnZlcnRpY2FsLm15LWFjY291bnQtbGlua3MgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24gPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24udmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDsgfVxuXG4vKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5kcm9wZG93bi52ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24udmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbiAgdG9wOiAwOyB9XG5cbi8qIGxpbmUgMTI5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuZHJvcGRvd24udmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24udmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7IH1cblxuLyogbGluZSA2Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0ID4gbGkgPiBhOjphZnRlciwgLmRyb3Bkb3duLnZlcnRpY2FsLm15LWFjY291bnQtbGlua3MgPiBsaSA+IGE6OmFmdGVyLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biA+IGxpID4gYTo6YWZ0ZXIsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLnZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4OyB9XG5cbi8qIGxpbmUgNzEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0ID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyLCAuZHJvcGRvd24udmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24gPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLnZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI0ZGRDU0NSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuXG4vKiBsaW5lIDc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyLCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyLCAuZHJvcGRvd24udmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24udmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI0ZGRDU0NTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAvKiBsaW5lIDg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwubGluay1saXN0ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLm1lZGl1bS1ob3Jpem9udGFsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAvKiBsaW5lIDkzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLm1lZGl1bS1ob3Jpem9udGFsLmxpbmstbGlzdCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5kcm9wZG93bi5tZWRpdW0taG9yaXpvbnRhbC5teS1hY2NvdW50LWxpbmtzID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5tZWRpdW0taG9yaXpvbnRhbC5hY3Rpb24tbGlzdCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC8qIGxpbmUgMTAxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwubGluay1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwubXktYWNjb3VudC1saW5rcyA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLm1lZGl1bS1ob3Jpem9udGFsLmFjdGlvbi1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC8qIGxpbmUgMTA2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLm1lZGl1bS1ob3Jpem9udGFsLmxpbmstbGlzdCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIsIC5kcm9wZG93bi5tZWRpdW0taG9yaXpvbnRhbC5teS1hY2NvdW50LWxpbmtzID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5tZWRpdW0taG9yaXpvbnRhbC5hY3Rpb24tbGlzdCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRDU0NSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAvKiBsaW5lIDExNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbC5saW5rLWxpc3QgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC8qIGxpbmUgMTIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbC5saW5rLWxpc3QgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwOyB9XG4gIC8qIGxpbmUgMTI5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwubGluay1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAvKiBsaW5lIDY3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyLCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwubGluay1saXN0ID4gbGkgPiBhOjphZnRlciwgLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzID4gbGkgPiBhOjphZnRlciwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLyogbGluZSA3MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyLCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwubGluay1saXN0ID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyLCAuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsLm15LWFjY291bnQtbGlua3MgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjRkZENTQ1IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC8qIGxpbmUgNzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLm1lZGl1bS12ZXJ0aWNhbC5saW5rLWxpc3QgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyLCAuZHJvcGRvd24ubWVkaXVtLXZlcnRpY2FsLm15LWFjY291bnQtbGlua3MgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5tZWRpdW0tdmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNGRkQ1NDU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAvKiBsaW5lIDg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5sYXJnZS1ob3Jpem9udGFsLmxpbmstbGlzdCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLmxhcmdlLWhvcml6b250YWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24ubGFyZ2UtaG9yaXpvbnRhbC5hY3Rpb24tbGlzdCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLyogbGluZSA5Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxhcmdlLWhvcml6b250YWwubGluay1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmRyb3Bkb3duLmxhcmdlLWhvcml6b250YWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duLmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5sYXJnZS1ob3Jpem9udGFsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLyogbGluZSAxMDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxhcmdlLWhvcml6b250YWwubGluay1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAuZHJvcGRvd24ubGFyZ2UtaG9yaXpvbnRhbC5teS1hY2NvdW50LWxpbmtzID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93bi5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5sYXJnZS1ob3Jpem9udGFsLmFjdGlvbi1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC8qIGxpbmUgMTA2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGFyZ2UtaG9yaXpvbnRhbC5saW5rLWxpc3QgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyLCAuZHJvcGRvd24ubGFyZ2UtaG9yaXpvbnRhbC5teS1hY2NvdW50LWxpbmtzID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmxhcmdlLWhvcml6b250YWwuYWN0aW9uLWxpc3QgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNGRkQ1NDUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLyogbGluZSAxMTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxhcmdlLXZlcnRpY2FsLmxpbmstbGlzdCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51LCAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51LCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbC5hY3Rpb24tbGlzdCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLyogbGluZSAxMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbC5saW5rLWxpc3QgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwOyB9XG4gIC8qIGxpbmUgMTI5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmxhcmdlLXZlcnRpY2FsLmxpbmstbGlzdCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbC5teS1hY2NvdW50LWxpbmtzID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbC5hY3Rpb24tbGlzdCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLyogbGluZSA2Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyLCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbC5saW5rLWxpc3QgPiBsaSA+IGE6OmFmdGVyLCAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpID4gYTo6YWZ0ZXIsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsLmRyb3Bkb3duLmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwuYWN0aW9uLWxpc3QgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAvKiBsaW5lIDcxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwubGluay1saXN0ID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyLCAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwubXktYWNjb3VudC1saW5rcyA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmxhcmdlLXZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjRkZENTQ1IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC8qIGxpbmUgNzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGFyZ2UtdmVydGljYWwubGluay1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciwgLmRyb3Bkb3duLmxhcmdlLXZlcnRpY2FsLm15LWFjY291bnQtbGlua3MgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93bi5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmxhcmdlLXZlcnRpY2FsLmFjdGlvbi1saXN0ID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjRkZENTQ1OyB9IH1cblxuLyogbGluZSAxODcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIsIC5wYWdlLW15LWFjY291bnQgLmRyb3Bkb3duLmFsaWduLXJpZ2h0LmxpbmstbGlzdCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIsIC5kcm9wZG93bi5hbGlnbi1yaWdodC5teS1hY2NvdW50LWxpbmtzIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwuZHJvcGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViLCAuYWRkcmVzc2VzIC5hZGRyZXNzIC5kcm9wZG93bi5hbGlnbi1yaWdodC5hY3Rpb24tbGlzdCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi8qIGxpbmUgMTk1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLyogbGluZSAxOTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLyogbGluZSAyMDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLyogbGluZSAyMDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtNnB4OyB9XG4gIC8qIGxpbmUgMjE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLyogbGluZSAyMjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLyogbGluZSAyMzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG5cbi8qIGxpbmUgMjM2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg2ODY4NjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDI0OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbiAgLmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGEge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG4gIC8qIGxpbmUgNjcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAvKiBsaW5lIDcxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjRkZENTQ1IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC8qIGxpbmUgNzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNGRkQ1NDU7IH1cbiAgLyogbGluZSAyNTksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC8qIGxpbmUgMjY0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyAqL1xuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAvKiBsaW5lIDI3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MgKi9cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBsaW5lIDQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyAqL1xuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC8qIGxpbmUgMzUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzICovXG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLyogbGluZSA1NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MgKi9cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4vKiBsaW5lIDUxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MgKi9cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjRkZENTQ1O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MgKi9cbiAgLmxhYmVsLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICNGRkQ1NDU7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLyogbGluZSA1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzICovXG4gIC5sYWJlbC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICMyMjIyMkE7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSA1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzICovXG4gIC5sYWJlbC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzNhNDU3O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgNTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyAqL1xuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2UwMjQyNDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MgKi9cbiAgLmxhYmVsLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjODYwMDAwO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi8qIGxpbmUgNzQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MgKi9cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAvKiBsaW5lIDc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzICovXG4gIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLyogbGluZSA4OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyAqL1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyAqL1xuICAgICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLyogbGluZSA5Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyAqL1xuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAvKiBsaW5lIDQyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzICovXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAvKiBsaW5lIDQ2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzICovXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MgKi9cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLyogbGluZSAxMDUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MgKi9cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1pZGRsZSB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAvKiBsaW5lIDEwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyAqL1xuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24uYm90dG9tIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbi8qIGxpbmUgOTIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBsaW5lIDk3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLyogbGluZSAxMTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIC8qIGxpbmUgMTIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLyogbGluZSAxMjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC8qIGxpbmUgMTI4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4vKiBsaW5lIDQ0Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogbGluZSA0NDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4ub2ZmLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjsgfVxuICAvKiBsaW5lIDIwMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLyogbGluZSAxNTksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLyogbGluZSAxNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC8qIGxpbmUgMTc0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLyogbGluZSAxNzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC8qIGxpbmUgMTgzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4vKiBsaW5lIDQ1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZjZmNmY2OyB9XG4gIC8qIGxpbmUgMjAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAvKiBsaW5lIDE1OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAvKiBsaW5lIDE2OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLyogbGluZSAxNzQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogMTM7IH1cbiAgICAvKiBsaW5lIDE3Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgLyogbGluZSAxODMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi8qIGxpbmUgNDYzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNDYzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5wb3NpdGlvbi1sZWZ0IHtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9IH1cbiAgLyogbGluZSAyMDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAyMDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfSB9XG4gICAgLyogbGluZSAyMTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC8qIGxpbmUgMjIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMjIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH0gfVxuICAvKiBsaW5lIDM0NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4vKiBsaW5lIDQ2NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSA0NjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH0gfVxuICAvKiBsaW5lIDI0NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDI0NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9IH1cbiAgICAvKiBsaW5lIDI1Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC8qIGxpbmUgMjU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAyNTksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9IH1cbiAgLyogbGluZSAzNDQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLyogbGluZSA0NjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDQ2NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tdG9wIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfSB9XG4gIC8qIGxpbmUgMjgyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAyODIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9IH1cbiAgICAvKiBsaW5lIDI4OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAvKiBsaW5lIDI5NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMjk1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfSB9XG4gIC8qIGxpbmUgMzQ0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMTNweCAyMHB4IC0xM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLyogbGluZSA0NjYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNDY2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH0gfVxuICAvKiBsaW5lIDMxOCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAzMTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH0gfVxuICAgIC8qIGxpbmUgMzI0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC8qIGxpbmUgMzMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMzMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH0gfVxuICAvKiBsaW5lIDM0NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLyogbGluZSA0NjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLyogbGluZSAzNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLyogbGluZSAzNzQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSA0NzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLyogbGluZSAzOTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLyogbGluZSA0MDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQwNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgICAvKiBsaW5lIDQwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC8qIGxpbmUgNDgwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAvKiBsaW5lIDM5NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLyogbGluZSA0MDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLyogbGluZSA0MDQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAvKiBsaW5lIDQwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLyogbGluZSA0ODQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAvKiBsaW5lIDM5NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDAwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQwNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLyogbGluZSA0MDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLyogbGluZSA0ODgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAvKiBsaW5lIDM5NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDAwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQwNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9XG4gICAgLyogbGluZSA0MDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAvKiBsaW5lIDQ3Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC8qIGxpbmUgMzk1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLyogbGluZSA0MDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC8qIGxpbmUgNDA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAvKiBsaW5lIDQ4MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAvKiBsaW5lIDM5NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQwMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLyogbGluZSA0MDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLyogbGluZSA0ODQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC8qIGxpbmUgMzk1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQwMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQwNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLyogbGluZSA0MDksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAvKiBsaW5lIDQ4OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLyogbGluZSAzOTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDAwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDA0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAvKiBsaW5lIDQwOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MgKi9cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSA0OTksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDsgfVxuICAgIC8qIGxpbmUgNDI1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLyogbGluZSA0MzMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLyogbGluZSA0OTksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0OyB9XG4gICAgLyogbGluZSA0MjUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzICovXG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDMzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyAqL1xuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyogbGluZSAxNTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyAqL1xuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qIGxpbmUgMTU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIGxpbmUgMTYzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbi5vcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC8qIGxpbmUgNzIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyAqL1xuICAub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuXG4vKiBsaW5lIDE2Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzICovXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIGxpbmUgMTcxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBsaW5lIDE3NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzICovXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4vKiBsaW5lIDE3OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzICovXG4ub3JiaXQtcHJldmlvdXMsIC5vcmJpdC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSAyMDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC8qIGxpbmUgMTEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbiAgLm9yYml0LXByZXZpb3VzOmhvdmVyLCAub3JiaXQtbmV4dDpob3ZlciwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6YWN0aXZlLCAub3JiaXQtcHJldmlvdXM6Zm9jdXMsIC5vcmJpdC1uZXh0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLyogbGluZSAxODMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyAqL1xuLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMDsgfVxuXG4vKiBsaW5lIDE4OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzICovXG4ub3JiaXQtbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIGxpbmUgMTkzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbi5vcmJpdC1idWxsZXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC8qIGxpbmUgMjAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtYnVsbGV0cyB7XG4gICAgb3V0bGluZTogMDsgfVxuICAvKiBsaW5lIDEzNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzICovXG4gIC5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEuMnJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBtYXJnaW46IDAuMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg2ODY4NjsgfVxuICAgIC8qIGxpbmUgMTQ0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE3MTcxNzsgfVxuICAgIC8qIGxpbmUgMTQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MgKi9cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzE3MTc7IH1cblxuLyogbGluZSAxNjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzICovXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSA4Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MgKi9cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLyogbGluZSA5NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MgKi9cbiAgICAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA4Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MgKi9cbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLyogbGluZSAxMTIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzICovXG4gIC5wYWdpbmF0aW9uIGEsXG4gIC5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAvKiBsaW5lIDExOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MgKi9cbiAgICAucGFnaW5hdGlvbiBhOmhvdmVyLFxuICAgIC5wYWdpbmF0aW9uIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2OyB9XG4gIC8qIGxpbmUgMTY1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyAqL1xuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNGRkQ1NDU7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC8qIGxpbmUgMTY5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyAqL1xuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzg2ODY4NjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLyogbGluZSAxNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzICovXG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC8qIGxpbmUgMTczLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyAqL1xuICAucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29udGVudDogJ1xcMjAyNic7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLyogbGluZSAxNzksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzICovXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBhYic7IH1cblxuLyogbGluZSAxODYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzICovXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYmInOyB9XG5cbi8qIGxpbmUgNDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MgKi9cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg2ODY4NjsgfVxuICAvKiBsaW5lIDQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzICovXG4gIC5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTsgfVxuICAvKiBsaW5lIDQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzICovXG4gIC5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjJBOyB9XG4gIC8qIGxpbmUgNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MgKi9cbiAgLnByb2dyZXNzLnN1Y2Nlc3MgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNhNDU3OyB9XG4gIC8qIGxpbmUgNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MgKi9cbiAgLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTAyNDI0OyB9XG4gIC8qIGxpbmUgNDgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MgKi9cbiAgLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg2MDAwMDsgfVxuXG4vKiBsaW5lIDU2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzICovXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTsgfVxuXG4vKiBsaW5lIDYxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzICovXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vKiBsaW5lIDEwNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4vKiBsaW5lIDExMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg2ODY4NjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuICAuc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLyogbGluZSAxMTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MgKi9cbi5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IH1cbiAgLyogbGluZSAyMDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5zbGlkZXItaGFuZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC8qIGxpbmUgNjcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MgKi9cbiAgLnNsaWRlci1oYW5kbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmNhMTQ7IH1cbiAgLyogbGluZSA3MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuICAuc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4vKiBsaW5lIDEyMSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4vKiBsaW5lIDEyNywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuLnNsaWRlci52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IH1cbiAgLyogbGluZSA4OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyAqL1xuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAvKiBsaW5lIDk0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3NsaWRlci5zY3NzICovXG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxLjRyZW07XG4gICAgaGVpZ2h0OiAxLjRyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi8qIGxpbmUgNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyAqL1xuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLyogbGluZSAxMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyAqL1xuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4vKiBsaW5lIDE2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzICovXG4uc3RpY2t5LmlzLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1O1xuICB3aWR0aDogMTAwJTsgfVxuICAvKiBsaW5lIDIxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzICovXG4gIC5zdGlja3kuaXMtc3R1Y2suaXMtYXQtdG9wIHtcbiAgICB0b3A6IDA7IH1cbiAgLyogbGluZSAyNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyAqL1xuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbi8qIGxpbmUgMzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3RpY2t5LnNjc3MgKi9cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMzUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3RpY2t5LnNjc3MgKi9cbiAgLnN0aWNreS5pcy1hbmNob3JlZC5pcy1hdC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDsgfVxuXG4vKiBsaW5lIDEyOSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogbGluZSAxMzQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MgKi9cbmh0bWwuaXMtcmV2ZWFsLW9wZW4sXG5odG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi8qIGxpbmUgMTQzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzICovXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi8qIGxpbmUgMTQ4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzICovXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjODY4Njg2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgLyogbGluZSAyMDIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDE0OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAgIC5yZXZlYWwge1xuICAgICAgbWluLWhlaWdodDogMDsgfSB9XG4gIC8qIGxpbmUgODcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MgKi9cbiAgLnJldmVhbCAuY29sdW1uLCAucmV2ZWFsIC5jb2x1bW5zIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLyogbGluZSA5Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDE0OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAgIC5yZXZlYWwge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIC8qIGxpbmUgMTU4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzICovXG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDE2Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MgKi9cbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDE2NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAgIC5yZXZlYWwubGFyZ2Uge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAvKiBsaW5lIDE2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAvKiBsaW5lIDE0OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyAqL1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLyogbGluZSAxNzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MgKi9cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4vKiBsaW5lIDIwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyAqL1xuLnN3aXRjaCB7XG4gIGhlaWdodDogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdXRsaW5lOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi8qIGxpbmUgMjA5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMjE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4uc3dpdGNoLXBhZGRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICM4Njg2ODY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLyogbGluZSAxMDUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbiAgaW5wdXQgKyAuc3dpdGNoLXBhZGRsZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC8qIGxpbmUgMTEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC8qIGxpbmUgMTI3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZSB7XG4gICAgYmFja2dyb3VuZDogI0ZGRDU0NTsgfVxuICAgIC8qIGxpbmUgMTMwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgICBsZWZ0OiAyLjI1cmVtOyB9XG4gIC8qIGxpbmUgMjAyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi8qIGxpbmUgMjE5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4uc3dpdGNoLWFjdGl2ZSwgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4vKiBsaW5lIDIyNCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyAqL1xuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBsaW5lIDE1Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyAqL1xuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogbGluZSAyMzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlOyB9XG4gIC8qIGxpbmUgMTYxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogbGluZSAyMzYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbi5zd2l0Y2gudGlueSB7XG4gIGhlaWdodDogMS41cmVtOyB9XG4gIC8qIGxpbmUgMTgzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gIC5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjYyNXJlbTsgfVxuICAvKiBsaW5lIDE4OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyAqL1xuICAuc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07IH1cbiAgLyogbGluZSAxOTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbiAgLnN3aXRjaC50aW55IGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIGxlZnQ6IDEuNzVyZW07IH1cblxuLyogbGluZSAyNDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbi5zd2l0Y2guc21hbGwge1xuICBoZWlnaHQ6IDEuNzVyZW07IH1cbiAgLyogbGluZSAxODMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbiAgLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDMuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC8qIGxpbmUgMTg5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEuMjVyZW07IH1cbiAgLyogbGluZSAxOTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbiAgLnN3aXRjaC5zbWFsbCBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAycmVtOyB9XG5cbi8qIGxpbmUgMjQ0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4uc3dpdGNoLmxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgLyogbGluZSAxODMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC8qIGxpbmUgMTg5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzICovXG4gIC5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgbGVmdDogMC4yNXJlbTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07IH1cbiAgLyogbGluZSAxOTYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MgKi9cbiAgLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAyLjc1cmVtOyB9XG5cbi8qIGxpbmUgMzA1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLyogbGluZSAxMTEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSAxMTksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAvKiBsaW5lIDEyNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgMTMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLyogbGluZSAxNDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC8qIGxpbmUgMTQ1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkLFxuICB0Zm9vdCB0aCxcbiAgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLyogbGluZSAxNTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICAvKiBsaW5lIDg3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbiAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgLyogbGluZSAxNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAvKiBsaW5lIDEwMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG4gICAgdGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC8qIGxpbmUgMjg0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLyogbGluZSAyODksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBsaW5lIDI5Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8qIGxpbmUgMjk5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG4vKiBsaW5lIDMxNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxuLyogbGluZSAyMjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0OyB9XG5cbi8qIGxpbmUgMjI4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MgKi9cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG4vKiBsaW5lIDIzNSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxuLyogbGluZSAyNDMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyAqL1xudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG4vKiBsaW5lIDMyMywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuICAvKiBsaW5lIDMyNiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzICovXG4gIC50YWJsZS1zY3JvbGwgdGFibGUge1xuICAgIHdpZHRoOiBhdXRvOyB9XG5cbi8qIGxpbmUgMTQ3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyAqL1xuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmNmY2ZjY7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAudGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAudGFiczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi8qIGxpbmUgNzUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4vKiBsaW5lIDE1OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MgKi9cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLyogbGluZSAxNjEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4gIC50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLyogbGluZSAxNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogI0ZGRDU0NTsgfVxuICAvKiBsaW5lIDE3MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MgKi9cbiAgLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAvKiBsaW5lIDE3NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MgKi9cbiAgICAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmQxMzU7IH1cblxuLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC8qIGxpbmUgOTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4gIC50YWJzLXRpdGxlID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjRkZENTQ1OyB9XG4gICAgLyogbGluZSAxMDAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4gICAgLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICBjb2xvcjogI2ZmY2IxODsgfVxuICAgIC8qIGxpbmUgMTA1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyAqL1xuICAgIC50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICAgICAgY29sb3I6ICNGRkQ1NDU7IH1cblxuLyogbGluZSAxODUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y2ZjZmNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLyogbGluZSAxODksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y2ZjZmNjtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLyogbGluZSAxOTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4udGFicy1wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLyogbGluZSAxNDEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzICovXG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogbGluZSA2MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyAqL1xuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDsgfVxuXG4vKiBsaW5lIDY0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzICovXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7IH1cbiAgLyogbGluZSA0OSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyAqL1xuICBhLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjU1LCAyMTMsIDY5LCAwLjUpOyB9XG4gIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGh1bWJuYWlsLnNjc3MgKi9cbiAgYS50aHVtYm5haWwgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLyogbGluZSAzOCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyAqL1xuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSAxNzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLnRpdGxlLWJhcjo6YmVmb3JlLCAudGl0bGUtYmFyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC50aXRsZS1iYXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDUyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RpdGxlLWJhci5zY3NzICovXG4gIC50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG5cbi8qIGxpbmUgNjksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MgKi9cbi50aXRsZS1iYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi8qIGxpbmUgNzMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MgKi9cbi50aXRsZS1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi8qIGxpbmUgNzksIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MgKi9cbi50aXRsZS1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIGxpbmUgMTUzLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjMTcxNzE3O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuLyogbGluZSAxNTcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzICovXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAwLjY0OTVyZW0pO1xuICB6LWluZGV4OiAxMjAwO1xuICBtYXgtd2lkdGg6IDEwcmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSA3NSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MgKi9cbiAgLnRvb2x0aXA6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC8qIGxpbmUgODAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzICovXG4gIC50b29sdGlwLmJvdHRvbTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDAwMDAwO1xuICAgIGJvdHRvbTogMTAwJTsgfVxuICAvKiBsaW5lIDg1LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC5ib3R0b20uYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLyogbGluZSA5Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MgKi9cbiAgLnRvb2x0aXAudG9wOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAxMDAlO1xuICAgIGJvdHRvbTogYXV0bzsgfVxuICAvKiBsaW5lIDk4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLyogbGluZSAxMDUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzICovXG4gIC50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC8qIGxpbmUgMTEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC8qIGxpbmUgMTE4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC5yaWdodDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLyogbGluZSAxMjQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzICovXG4gIC50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC8qIGxpbmUgMTMxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlOyB9XG4gIC8qIGxpbmUgMTM2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvOyB9XG4gIC8qIGxpbmUgMTQxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyAqL1xuICAudG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAvKiBsaW5lIDE0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MgKi9cbiAgLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlOyB9XG5cbi8qIGxpbmUgMTIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyAqL1xuLnRvcC1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgLyogbGluZSAxNzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLnRvcC1iYXI6OmJlZm9yZSwgLnRvcC1iYXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLnRvcC1iYXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDQ3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyAqL1xuICAudG9wLWJhcixcbiAgLnRvcC1iYXIgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7IH1cbiAgLyogbGluZSA2MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MgKi9cbiAgLnRvcC1iYXIgaW5wdXQge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC8qIGxpbmUgNjYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzICovXG4gIC50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC8qIGxpbmUgNzEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzICovXG4gIC50b3AtYmFyIGlucHV0LmJ1dHRvbiB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLyogbGluZSA5MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MgKi9cbiAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxMTMsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzICovXG4gICAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC8qIGxpbmUgOTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzICovXG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLyogbGluZSA5MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MgKi9cbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLyogbGluZSAxNTcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzICovXG4udG9wLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwOyB9XG4gIC8qIGxpbmUgMTYyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyAqL1xuICAudG9wLWJhci10aXRsZSAubWVudS1pY29uIHtcbiAgICBib3R0b206IDJweDsgfVxuXG4vKiBsaW5lIDE2Nywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MgKi9cbi50b3AtYmFyLWxlZnQge1xuICBmbG9hdDogbGVmdDsgfVxuXG4vKiBsaW5lIDE3MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MgKi9cbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi8qIGxpbmUgNjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzICovXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDY2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLyogbGluZSA4Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAvKiBsaW5lIDg2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSA3Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC8qIGxpbmUgNzcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzICovXG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLyogbGluZSA4Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLyogbGluZSA4Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAvKiBsaW5lIDczLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAvKiBsaW5lIDc3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLyogbGluZSA4Miwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAvKiBsaW5lIDg2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLyogbGluZSA5Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDsgfVxuXG4vKiBsaW5lIDEwMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MgKi9cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjbGlwLXBhdGg6IG5vbmU7IH1cblxuLyogbGluZSAxMDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzICovXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC8qIGxpbmUgMTA3LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLyogbGluZSAxMDcsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzICovXG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLyogbGluZSAxMjAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzICovXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLyogbGluZSAxMjAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzICovXG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC8qIGxpbmUgMTIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyAqL1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4vKiBsaW5lIDEwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Zsb2F0LnNjc3MgKi9cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDE0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Zsb2F0LnNjc3MgKi9cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyAqL1xuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4uY2xlYXJmaXg6OmJlZm9yZSwgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uOjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIsIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnOyB9XG5cbi8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4uY2xlYXJmaXg6OmFmdGVyLCAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNjYWxlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgMzQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyAqL1xuLnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDM0LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zcGluLWluLWNjdy5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MgKi9cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSAzNCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzICovXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDU2LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSA1Niwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgNjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5saW5lYXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSA2Miwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgNjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDYyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uZWFzZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDYyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDYyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgNjIsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5ib3VuY2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDYyLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5sb25nLWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDc2LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNzsgfVxuXG5Aa2V5ZnJhbWVzIHNoYWtlLTcge1xuICAwJSwgMTAlLCAyMCUsIDMwJSwgNDAlLCA1MCUsIDYwJSwgNzAlLCA4MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDclKTsgfVxuICA1JSwgMTUlLCAyNSUsIDM1JSwgNDUlLCA1NSUsIDY1JSwgNzUlLCA4NSUsIDk1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03JSk7IH0gfVxuXG4vKiBsaW5lIDc3LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLyogbGluZSA3OCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47IH1cblxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKTsgfSB9XG5cbi8qIGxpbmUgNzksIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7IH1cblxuQGtleWZyYW1lcyB3aWdnbGUtN2RlZyB7XG4gIDQwJSwgNTAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpOyB9XG4gIDM1JSwgNDUlLCA1NSUsIDY1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpOyB9XG4gIDAlLCAzMCUsIDcwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4vKiBsaW5lIDgxLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zOyB9XG5cbi8qIGxpbmUgOTAsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi8qIGxpbmUgOTQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5zbG93IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgOTQsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTAwLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSAxMDAsIG5vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MgKi9cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTAwLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDEwMCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDEwMCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDEwMCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTAwLCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDEwMCwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDEwNiwgbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyAqL1xuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTA2LCBub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzICovXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4vKiogSW1wb3J0IGN1c3RvbWlzYXRpb25zIHRvIEZvdW5kYXRpb24gYmFzZSBlbGVtZW50cyAqL1xuLyoqXG4gKiBDdXN0b21pemF0aW9ucyB0byBTdGFuZGFyZCBGb3VuZGF0aW9uIGVsZW1lbnRzXG4gKi9cbi8qIGxpbmUgNSwgc2Nzcy9fY3VzdG9taXphdGlvbnMuc2NzcyAqL1xuYSB7XG4gIGNvbG9yOiAjRjM2RDBCOyB9XG4gIC8qIGxpbmUgNywgc2Nzcy9fY3VzdG9taXphdGlvbnMuc2NzcyAqL1xuICBhOmhvdmVyLCBhOmZvY3VzLCBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNjMjU3MDk7IH1cblxuLyoqKioqKioqXG4gKiBEcm9wZG93biBNZW51XG4gKi9cbi8qIGxpbmUgMTYsIHNjc3MvX2N1c3RvbWl6YXRpb25zLnNjc3MgKi9cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAucGFnZS1teS1hY2NvdW50IC5kcm9wZG93bi5saW5rLWxpc3QgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEsIC5kcm9wZG93bi5teS1hY2NvdW50LWxpbmtzID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSwgLmFkZHJlc3NlcyAuYWRkcmVzcyAuZHJvcGRvd24uYWN0aW9uLWxpc3QgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaGV2cm9uLXNvdXMtbWVudS5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjsgfVxuICAvKiBsaW5lIDE5LCBzY3NzL19jdXN0b21pemF0aW9ucy5zY3NzICovXG4gIC5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciwgLnBhZ2UtbXktYWNjb3VudCAuZHJvcGRvd24ubGluay1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciwgLmRyb3Bkb3duLm15LWFjY291bnQtbGlua3MgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bC5kcm9wZG93biA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmRyb3Bkb3duLmFjdGlvbi1saXN0ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogbm9ybWFsICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSAyNCwgc2Nzcy9fY3VzdG9taXphdGlvbnMuc2NzcyAqL1xuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDE1cHggIzAwMDAwMDtcbiAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAvKiBsaW5lIDI5LCBzY3NzL19jdXN0b21pemF0aW9ucy5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IGxpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQwNDA0MDsgfVxuICAgIC8qIGxpbmUgMzAsIHNjc3MvX2N1c3RvbWl6YXRpb25zLnNjc3MgKi9cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMmE7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgdHJhbnNpdGlvbjogMC4xNXM7IH1cbiAgICAgIC8qIGxpbmUgNDAsIHNjc3MvX2N1c3RvbWl6YXRpb25zLnNjc3MgKi9cbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IGxpIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTcxNzFjOyB9XG4gICAgLyogbGluZSA0NSwgc2Nzcy9fY3VzdG9taXphdGlvbnMuc2NzcyAqL1xuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IGxpOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDgsIHNjc3MvX2N1c3RvbWl6YXRpb25zLnNjc3MgKi9cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudSBsaS5jdXJyZW50IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE3MTcxYzsgfVxuICAvKiBsaW5lIDUyLCBzY3NzL19jdXN0b21pemF0aW9ucy5zY3NzICovXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4vKioqKioqKiBCcmVhZGNydW1iICoqKioqKiovXG4vKiBsaW5lIDYwLCBzY3NzL19jdXN0b21pemF0aW9ucy5zY3NzICovXG4uYnJlYWRjcnVtYi1ob2xkZXIge1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAzMnB4OyB9XG4gIC8qIGxpbmUgNjUsIHNjc3MvX2N1c3RvbWl6YXRpb25zLnNjc3MgKi9cbiAgLmJyZWFkY3J1bWItaG9sZGVyIC5icmVhZGNydW1icyBsaSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLyogbGluZSA2OCwgc2Nzcy9fY3VzdG9taXphdGlvbnMuc2NzcyAqL1xuICAgIC5icmVhZGNydW1iLWhvbGRlciAuYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvY2hldnJvbi5wbmdcIik7IH1cbiAgICAvKiBsaW5lIDcxLCBzY3NzL19jdXN0b21pemF0aW9ucy5zY3NzICovXG4gICAgLmJyZWFkY3J1bWItaG9sZGVyIC5icmVhZGNydW1icyBsaSBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLyogbGluZSA3Nywgc2Nzcy9fY3VzdG9taXphdGlvbnMuc2NzcyAqL1xuICAgIC5icmVhZGNydW1iLWhvbGRlciAuYnJlYWRjcnVtYnMgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKiogSW1wb3J0IEdsb2JhbCBzdHlsZXMgKi9cbi8qKlxuICogR2xvYmFsIHN0eWxlc1xuICovXG4vKiBsaW5lIDUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4uaGlkZS1mb3ItcG9ydGFsIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTEsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4ucGFuZWwtYmxvY2ssIC5wYW5lbCwgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAuYnJhbmQtY29udGFpbmVyLCAuY2FydC1vdmVydmlldywgLmNhcnQtdm91Y2hlciwgLmNhcnQtY21zLWJsb2NrLCAjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCwgI2NhcnQtc3VtbWFyeSwgLmNhcnQtc3VtbWFyeS10b3RhbHMsIC5jaGVja291dC1zdGVwLCAuYWRkcmVzcy1zZWxlY3RvciAuYWRkcmVzcy1pdGVtLCAucGF5bWVudC1vcHRpb25zIC5qcy1hZGRpdGlvbmFsLWluZm9ybWF0aW9uLCAjY29udGVudC1ob29rX3BheW1lbnRfcmV0dXJuLCAjb3JkZXItaXRlbXMsICNvcmRlci1kZXRhaWxzLCAuZ2xhc3MtcGlja3VwLWNhbGxvdXQsIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYsIC5hZGRyZXNzZXMgLmFkZHJlc3MsICNjdXN0b21lci1mb3JtLCAuc2lkZWJhciAuc2Vjb25kYXJ5Q29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAvKiBsaW5lIDE3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAucGFuZWwtYmxvY2sud2hpdGUsIC53aGl0ZS5wYW5lbCwgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAud2hpdGUuYnJhbmQtY29udGFpbmVyLCAud2hpdGUuY2FydC1vdmVydmlldywgLndoaXRlLmNhcnQtdm91Y2hlciwgLndoaXRlLmNhcnQtY21zLWJsb2NrLCAud2hpdGUjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCwgLndoaXRlI2NhcnQtc3VtbWFyeSwgLndoaXRlLmNhcnQtc3VtbWFyeS10b3RhbHMsIC53aGl0ZS5jaGVja291dC1zdGVwLCAuYWRkcmVzcy1zZWxlY3RvciAuYWRkcmVzcy1pdGVtLCAucGF5bWVudC1vcHRpb25zIC5qcy1hZGRpdGlvbmFsLWluZm9ybWF0aW9uLCAud2hpdGUjY29udGVudC1ob29rX3BheW1lbnRfcmV0dXJuLCAud2hpdGUjb3JkZXItaXRlbXMsIC53aGl0ZSNvcmRlci1kZXRhaWxzLCAud2hpdGUuZ2xhc3MtcGlja3VwLWNhbGxvdXQsIC5wYWdlLW15LWFjY291bnQgLndoaXRlLmxpbmstbGlzdCwgLm15LWFjY291bnQtaGFzLW5hdiAud2hpdGUubXktYWNjb3VudC1uYXYsIC5hZGRyZXNzZXMgLndoaXRlLmFkZHJlc3MsIC53aGl0ZSNjdXN0b21lci1mb3JtLCAuc2lkZWJhciAud2hpdGUuc2Vjb25kYXJ5Q29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAvKiBsaW5lIDIwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAucGFuZWwtYmxvY2suZGFyaywgLmRhcmsucGFuZWwsICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQgLmRhcmsuYnJhbmQtY29udGFpbmVyLCAuZGFyay5jYXJ0LW92ZXJ2aWV3LCAuZGFyay5jYXJ0LXZvdWNoZXIsIC5kYXJrLmNhcnQtY21zLWJsb2NrLCAuZGFyayNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0LCAuZGFyayNjYXJ0LXN1bW1hcnksIC5kYXJrLmNhcnQtc3VtbWFyeS10b3RhbHMsIC5kYXJrLmNoZWNrb3V0LXN0ZXAsIC5hZGRyZXNzLXNlbGVjdG9yIC5kYXJrLmFkZHJlc3MtaXRlbSwgLnBheW1lbnQtb3B0aW9ucyAuZGFyay5qcy1hZGRpdGlvbmFsLWluZm9ybWF0aW9uLCAuZGFyayNjb250ZW50LWhvb2tfcGF5bWVudF9yZXR1cm4sIC5kYXJrI29yZGVyLWl0ZW1zLCAuZGFyayNvcmRlci1kZXRhaWxzLCAuZ2xhc3MtcGlja3VwLWNhbGxvdXQsIC5wYWdlLW15LWFjY291bnQgLmRhcmsubGluay1saXN0LCAubXktYWNjb3VudC1oYXMtbmF2IC5kYXJrLm15LWFjY291bnQtbmF2LCAuYWRkcmVzc2VzIC5kYXJrLmFkZHJlc3MsIC5kYXJrI2N1c3RvbWVyLWZvcm0sIC5zaWRlYmFyIC5kYXJrLnNlY29uZGFyeUNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7IH1cbiAgLyogbGluZSAyMywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLnBhbmVsLWJsb2NrLnJlZCwgLnJlZC5wYW5lbCwgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAucmVkLmJyYW5kLWNvbnRhaW5lciwgLnJlZC5jYXJ0LW92ZXJ2aWV3LCAucmVkLmNhcnQtdm91Y2hlciwgLnJlZC5jYXJ0LWNtcy1ibG9jaywgLnJlZCNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0LCAucmVkI2NhcnQtc3VtbWFyeSwgLnJlZC5jYXJ0LXN1bW1hcnktdG90YWxzLCAucmVkLmNoZWNrb3V0LXN0ZXAsIC5hZGRyZXNzLXNlbGVjdG9yIC5yZWQuYWRkcmVzcy1pdGVtLCAucGF5bWVudC1vcHRpb25zIC5yZWQuanMtYWRkaXRpb25hbC1pbmZvcm1hdGlvbiwgLnJlZCNjb250ZW50LWhvb2tfcGF5bWVudF9yZXR1cm4sIC5yZWQjb3JkZXItaXRlbXMsIC5yZWQjb3JkZXItZGV0YWlscywgLnJlZC5nbGFzcy1waWNrdXAtY2FsbG91dCwgLnBhZ2UtbXktYWNjb3VudCAucmVkLmxpbmstbGlzdCwgLm15LWFjY291bnQtaGFzLW5hdiAucmVkLm15LWFjY291bnQtbmF2LCAuYWRkcmVzc2VzIC5yZWQuYWRkcmVzcywgLnJlZCNjdXN0b21lci1mb3JtLCAuc2lkZWJhciAucmVkLnNlY29uZGFyeUNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTM0LCAwLCAwLCAwLjgpO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLyogbGluZSAyNiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAucGFuZWwtYmxvY2sucmVkIHAsIC5yZWQucGFuZWwgcCwgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAucmVkLmJyYW5kLWNvbnRhaW5lciBwLCAucmVkLmNhcnQtb3ZlcnZpZXcgcCwgLnJlZC5jYXJ0LXZvdWNoZXIgcCwgLnJlZC5jYXJ0LWNtcy1ibG9jayBwLCAucmVkI2NhcnQtc3VtbWFyeS1wcm9kdWN0LWxpc3QgcCwgLnJlZCNjYXJ0LXN1bW1hcnkgcCwgLnJlZC5jYXJ0LXN1bW1hcnktdG90YWxzIHAsIC5yZWQuY2hlY2tvdXQtc3RlcCBwLCAuYWRkcmVzcy1zZWxlY3RvciAucmVkLmFkZHJlc3MtaXRlbSBwLCAucGF5bWVudC1vcHRpb25zIC5yZWQuanMtYWRkaXRpb25hbC1pbmZvcm1hdGlvbiBwLCAucmVkI2NvbnRlbnQtaG9va19wYXltZW50X3JldHVybiBwLCAucmVkI29yZGVyLWl0ZW1zIHAsIC5yZWQjb3JkZXItZGV0YWlscyBwLCAucmVkLmdsYXNzLXBpY2t1cC1jYWxsb3V0IHAsIC5wYWdlLW15LWFjY291bnQgLnJlZC5saW5rLWxpc3QgcCwgLm15LWFjY291bnQtaGFzLW5hdiAucmVkLm15LWFjY291bnQtbmF2IHAsIC5hZGRyZXNzZXMgLnJlZC5hZGRyZXNzIHAsIC5yZWQjY3VzdG9tZXItZm9ybSBwLCAuc2lkZWJhciAucmVkLnNlY29uZGFyeUNvbnRlbnQgcCxcbiAgICAucGFuZWwtYmxvY2sucmVkIGxpLFxuICAgIC5yZWQucGFuZWwgbGksXG4gICAgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAucmVkLmJyYW5kLWNvbnRhaW5lciBsaSxcbiAgICAucmVkLmNhcnQtb3ZlcnZpZXcgbGksXG4gICAgLnJlZC5jYXJ0LXZvdWNoZXIgbGksXG4gICAgLnJlZC5jYXJ0LWNtcy1ibG9jayBsaSxcbiAgICAucmVkI2NhcnQtc3VtbWFyeS1wcm9kdWN0LWxpc3QgbGksXG4gICAgLnJlZCNjYXJ0LXN1bW1hcnkgbGksXG4gICAgLnJlZC5jYXJ0LXN1bW1hcnktdG90YWxzIGxpLFxuICAgIC5yZWQuY2hlY2tvdXQtc3RlcCBsaSxcbiAgICAuYWRkcmVzcy1zZWxlY3RvciAucmVkLmFkZHJlc3MtaXRlbSBsaSxcbiAgICAucGF5bWVudC1vcHRpb25zIC5yZWQuanMtYWRkaXRpb25hbC1pbmZvcm1hdGlvbiBsaSxcbiAgICAucmVkI2NvbnRlbnQtaG9va19wYXltZW50X3JldHVybiBsaSxcbiAgICAucmVkI29yZGVyLWl0ZW1zIGxpLFxuICAgIC5yZWQjb3JkZXItZGV0YWlscyBsaSxcbiAgICAucmVkLmdsYXNzLXBpY2t1cC1jYWxsb3V0IGxpLFxuICAgIC5wYWdlLW15LWFjY291bnQgLnJlZC5saW5rLWxpc3QgbGksXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAucmVkLm15LWFjY291bnQtbmF2IGxpLFxuICAgIC5hZGRyZXNzZXMgLnJlZC5hZGRyZXNzIGxpLFxuICAgIC5yZWQjY3VzdG9tZXItZm9ybSBsaSxcbiAgICAuc2lkZWJhciAucmVkLnNlY29uZGFyeUNvbnRlbnQgbGksXG4gICAgLnBhbmVsLWJsb2NrLnJlZCBoMSxcbiAgICAucmVkLnBhbmVsIGgxLFxuICAgICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQgLnJlZC5icmFuZC1jb250YWluZXIgaDEsXG4gICAgLnJlZC5jYXJ0LW92ZXJ2aWV3IGgxLFxuICAgIC5yZWQuY2FydC12b3VjaGVyIGgxLFxuICAgIC5yZWQuY2FydC1jbXMtYmxvY2sgaDEsXG4gICAgLnJlZCNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IGgxLFxuICAgIC5yZWQjY2FydC1zdW1tYXJ5IGgxLFxuICAgIC5yZWQuY2FydC1zdW1tYXJ5LXRvdGFscyBoMSxcbiAgICAucmVkLmNoZWNrb3V0LXN0ZXAgaDEsXG4gICAgLmFkZHJlc3Mtc2VsZWN0b3IgLnJlZC5hZGRyZXNzLWl0ZW0gaDEsXG4gICAgLnBheW1lbnQtb3B0aW9ucyAucmVkLmpzLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24gaDEsXG4gICAgLnJlZCNjb250ZW50LWhvb2tfcGF5bWVudF9yZXR1cm4gaDEsXG4gICAgLnJlZCNvcmRlci1pdGVtcyBoMSxcbiAgICAucmVkI29yZGVyLWRldGFpbHMgaDEsXG4gICAgLnJlZC5nbGFzcy1waWNrdXAtY2FsbG91dCBoMSxcbiAgICAucGFnZS1teS1hY2NvdW50IC5yZWQubGluay1saXN0IGgxLFxuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLnJlZC5teS1hY2NvdW50LW5hdiBoMSxcbiAgICAuYWRkcmVzc2VzIC5yZWQuYWRkcmVzcyBoMSxcbiAgICAucmVkI2N1c3RvbWVyLWZvcm0gaDEsXG4gICAgLnNpZGViYXIgLnJlZC5zZWNvbmRhcnlDb250ZW50IGgxLFxuICAgIC5wYW5lbC1ibG9jay5yZWQgaDIsXG4gICAgLnJlZC5wYW5lbCBoMixcbiAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIC5yZWQuYnJhbmQtY29udGFpbmVyIGgyLFxuICAgIC5yZWQuY2FydC1vdmVydmlldyBoMixcbiAgICAucmVkLmNhcnQtdm91Y2hlciBoMixcbiAgICAucmVkLmNhcnQtY21zLWJsb2NrIGgyLFxuICAgIC5yZWQjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCBoMixcbiAgICAucmVkI2NhcnQtc3VtbWFyeSBoMixcbiAgICAucmVkLmNhcnQtc3VtbWFyeS10b3RhbHMgaDIsXG4gICAgLnJlZC5jaGVja291dC1zdGVwIGgyLFxuICAgIC5hZGRyZXNzLXNlbGVjdG9yIC5yZWQuYWRkcmVzcy1pdGVtIGgyLFxuICAgIC5wYXltZW50LW9wdGlvbnMgLnJlZC5qcy1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIGgyLFxuICAgIC5yZWQjY29udGVudC1ob29rX3BheW1lbnRfcmV0dXJuIGgyLFxuICAgIC5yZWQjb3JkZXItaXRlbXMgaDIsXG4gICAgLnJlZCNvcmRlci1kZXRhaWxzIGgyLFxuICAgIC5yZWQuZ2xhc3MtcGlja3VwLWNhbGxvdXQgaDIsXG4gICAgLnBhZ2UtbXktYWNjb3VudCAucmVkLmxpbmstbGlzdCBoMixcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5yZWQubXktYWNjb3VudC1uYXYgaDIsXG4gICAgLmFkZHJlc3NlcyAucmVkLmFkZHJlc3MgaDIsXG4gICAgLnJlZCNjdXN0b21lci1mb3JtIGgyLFxuICAgIC5zaWRlYmFyIC5yZWQuc2Vjb25kYXJ5Q29udGVudCBoMixcbiAgICAucGFuZWwtYmxvY2sucmVkIC5oMixcbiAgICAucmVkLnBhbmVsIC5oMixcbiAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIC5yZWQuYnJhbmQtY29udGFpbmVyIC5oMixcbiAgICAucmVkLmNhcnQtb3ZlcnZpZXcgLmgyLFxuICAgIC5yZWQuY2FydC12b3VjaGVyIC5oMixcbiAgICAucmVkLmNhcnQtY21zLWJsb2NrIC5oMixcbiAgICAucmVkI2NhcnQtc3VtbWFyeS1wcm9kdWN0LWxpc3QgLmgyLFxuICAgIC5yZWQjY2FydC1zdW1tYXJ5IC5oMixcbiAgICAucmVkLmNhcnQtc3VtbWFyeS10b3RhbHMgLmgyLFxuICAgIC5yZWQuY2hlY2tvdXQtc3RlcCAuaDIsXG4gICAgLmFkZHJlc3Mtc2VsZWN0b3IgLnJlZC5hZGRyZXNzLWl0ZW0gLmgyLFxuICAgIC5wYXltZW50LW9wdGlvbnMgLnJlZC5qcy1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIC5oMixcbiAgICAucmVkI2NvbnRlbnQtaG9va19wYXltZW50X3JldHVybiAuaDIsXG4gICAgLnJlZCNvcmRlci1pdGVtcyAuaDIsXG4gICAgLnJlZCNvcmRlci1kZXRhaWxzIC5oMixcbiAgICAucmVkLmdsYXNzLXBpY2t1cC1jYWxsb3V0IC5oMixcbiAgICAucGFnZS1teS1hY2NvdW50IC5yZWQubGluay1saXN0IC5oMixcbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5yZWQubXktYWNjb3VudC1uYXYgLmgyLFxuICAgIC5hZGRyZXNzZXMgLnJlZC5hZGRyZXNzIC5oMixcbiAgICAucmVkI2N1c3RvbWVyLWZvcm0gLmgyLFxuICAgIC5zaWRlYmFyIC5yZWQuc2Vjb25kYXJ5Q29udGVudCAuaDIsXG4gICAgLnBhbmVsLWJsb2NrLnJlZCBoMyxcbiAgICAucmVkLnBhbmVsIGgzLFxuICAgICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQgLnJlZC5icmFuZC1jb250YWluZXIgaDMsXG4gICAgLnJlZC5jYXJ0LW92ZXJ2aWV3IGgzLFxuICAgIC5yZWQuY2FydC12b3VjaGVyIGgzLFxuICAgIC5yZWQuY2FydC1jbXMtYmxvY2sgaDMsXG4gICAgLnJlZCNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IGgzLFxuICAgIC5yZWQjY2FydC1zdW1tYXJ5IGgzLFxuICAgIC5yZWQuY2FydC1zdW1tYXJ5LXRvdGFscyBoMyxcbiAgICAucmVkLmNoZWNrb3V0LXN0ZXAgaDMsXG4gICAgLmFkZHJlc3Mtc2VsZWN0b3IgLnJlZC5hZGRyZXNzLWl0ZW0gaDMsXG4gICAgLnBheW1lbnQtb3B0aW9ucyAucmVkLmpzLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24gaDMsXG4gICAgLnJlZCNjb250ZW50LWhvb2tfcGF5bWVudF9yZXR1cm4gaDMsXG4gICAgLnJlZCNvcmRlci1pdGVtcyBoMyxcbiAgICAucmVkI29yZGVyLWRldGFpbHMgaDMsXG4gICAgLnJlZC5nbGFzcy1waWNrdXAtY2FsbG91dCBoMyxcbiAgICAucGFnZS1teS1hY2NvdW50IC5yZWQubGluay1saXN0IGgzLFxuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLnJlZC5teS1hY2NvdW50LW5hdiBoMyxcbiAgICAuYWRkcmVzc2VzIC5yZWQuYWRkcmVzcyBoMyxcbiAgICAucmVkI2N1c3RvbWVyLWZvcm0gaDMsXG4gICAgLnNpZGViYXIgLnJlZC5zZWNvbmRhcnlDb250ZW50IGgzIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSAzNCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLnBhbmVsLWJsb2NrLnBhZGRpbmctc2lkZXMsIC5wYW5lbCwgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAuYnJhbmQtY29udGFpbmVyLCAucGFkZGluZy1zaWRlcy5jYXJ0LW92ZXJ2aWV3LCAucGFkZGluZy1zaWRlcy5jYXJ0LXZvdWNoZXIsIC5jYXJ0LWNtcy1ibG9jaywgLnBhZGRpbmctc2lkZXMjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCwgLnBhZGRpbmctc2lkZXMjY2FydC1zdW1tYXJ5LCAucGFkZGluZy1zaWRlcy5jYXJ0LXN1bW1hcnktdG90YWxzLCAucGFkZGluZy1zaWRlcy5jaGVja291dC1zdGVwLCAuYWRkcmVzcy1zZWxlY3RvciAucGFkZGluZy1zaWRlcy5hZGRyZXNzLWl0ZW0sIC5wYXltZW50LW9wdGlvbnMgLnBhZGRpbmctc2lkZXMuanMtYWRkaXRpb25hbC1pbmZvcm1hdGlvbiwgI2NvbnRlbnQtaG9va19wYXltZW50X3JldHVybiwgI29yZGVyLWl0ZW1zLCAjb3JkZXItZGV0YWlscywgLnBhZGRpbmctc2lkZXMuZ2xhc3MtcGlja3VwLWNhbGxvdXQsIC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCwgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYsIC5hZGRyZXNzZXMgLnBhZGRpbmctc2lkZXMuYWRkcmVzcywgI2N1c3RvbWVyLWZvcm0sIC5zaWRlYmFyIC5wYWRkaW5nLXNpZGVzLnNlY29uZGFyeUNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG4gIC8qIGxpbmUgMzgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5wYW5lbC1ibG9jay55ZWxsb3csIC5wYW5lbCwgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAueWVsbG93LmJyYW5kLWNvbnRhaW5lciwgLnllbGxvdy5jYXJ0LW92ZXJ2aWV3LCAueWVsbG93LmNhcnQtdm91Y2hlciwgLnllbGxvdy5jYXJ0LWNtcy1ibG9jaywgLnllbGxvdyNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0LCAueWVsbG93I2NhcnQtc3VtbWFyeSwgLnllbGxvdy5jYXJ0LXN1bW1hcnktdG90YWxzLCAueWVsbG93LmNoZWNrb3V0LXN0ZXAsIC5hZGRyZXNzLXNlbGVjdG9yIC55ZWxsb3cuYWRkcmVzcy1pdGVtLCAucGF5bWVudC1vcHRpb25zIC55ZWxsb3cuanMtYWRkaXRpb25hbC1pbmZvcm1hdGlvbiwgLnllbGxvdyNjb250ZW50LWhvb2tfcGF5bWVudF9yZXR1cm4sIC55ZWxsb3cjb3JkZXItaXRlbXMsIC55ZWxsb3cjb3JkZXItZGV0YWlscywgLnllbGxvdy5nbGFzcy1waWNrdXAtY2FsbG91dCwgLnBhZ2UtbXktYWNjb3VudCAueWVsbG93LmxpbmstbGlzdCwgLm15LWFjY291bnQtaGFzLW5hdiAueWVsbG93Lm15LWFjY291bnQtbmF2LCAuYWRkcmVzc2VzIC55ZWxsb3cuYWRkcmVzcywgLnllbGxvdyNjdXN0b21lci1mb3JtLCAuc2lkZWJhciAueWVsbG93LnNlY29uZGFyeUNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxNzg7IH1cblxuLyoqIExheW91dCAqKi9cbi8qIGxpbmUgNTEsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4jd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgLyogbGluZSAxNzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgI3dyYXBwZXI6OmJlZm9yZSwgI3dyYXBwZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgI3dyYXBwZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDU0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAjd3JhcHBlciAjbWFpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNTQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAjd3JhcHBlciAjbWFpbiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgI3dyYXBwZXIgI21haW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA1NCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICN3cmFwcGVyICNtYWluIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDcwcHg7IH0gfVxuXG4vKiBsaW5lIDY0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuI2NvbnRlbnQge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLyogbGluZSAxNzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgI2NvbnRlbnQ6OmJlZm9yZSwgI2NvbnRlbnQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgI2NvbnRlbnQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgI2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAjY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLyogbGluZSA4Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAjY29udGVudCwgI2NvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cblxuLyogbGluZSA2OSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiNtYWluIGgxLFxuI21haW4gaDIsXG4jbWFpbiAuaDIsXG4jbWFpbiBoMyB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjksIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgI21haW4gaDEsXG4gICAgI21haW4gaDIsXG4gICAgI21haW4gLmgyLFxuICAgICNtYWluIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfSB9XG5cbi8qIGxpbmUgODUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4jbWFpbiBoMyB7XG4gIGZvbnQtc2l6ZTogMjJweDsgfVxuXG4vKiBsaW5lIDg5LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuI21haW4gLnBhZ2UtaGVhZGVyIGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogNzBweDsgfVxuXG4vKiBsaW5lIDk1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xucCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG5cbi8qIGxpbmUgMTA0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuLm5vLWRpYWdvbmFsOmFmdGVyLCAjY29udGVudC5wYWdlLWNtcyBoMjphZnRlciwgI2NvbnRlbnQucGFnZS1jbXMgLmgyOmFmdGVyLFxuI2NvbnRlbnQucGFnZS1jbXMgaDM6YWZ0ZXIsIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1uIGgzOmFmdGVyLCBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY2NvbXBhZ25lbWVudC1jb2x1bW4gLmNvbHVtbnMgaDM6YWZ0ZXIsICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQgLmJyYW5kLWRlc2MgaDI6YWZ0ZXIsICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQgLmJyYW5kLWRlc2MgLmgyOmFmdGVyLCAjbWFpbiAucHNfY3Jvc3NzZWxsaW5nIGgyOmFmdGVyLCAjbWFpbiAucHNfY3Jvc3NzZWxsaW5nIC5oMjphZnRlciwgLmNhcnQtdm91Y2hlciBoMjphZnRlciwgLmNhcnQtdm91Y2hlciAuaDI6YWZ0ZXIsICNjb250ZW50LWhvb2tfb3JkZXJfY29uZmlybWF0aW9uIGgzOmFmdGVyLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiAubmF2LXRpdGxlOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgMTExLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuI2luZGV4IHVsLFxuI2Zvb3RlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi8qIGxpbmUgMTE4LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuLnRodW1ibmFpbCB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSAxMjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4jYmFjay10by10b3Age1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgYm9yZGVyOiAycHggc29saWQgIzg2ODY4NjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYXJyb3ctdG9wLW9yYW5nZS5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDEyJTtcbiAgcmlnaHQ6IDUlO1xuICB0cmFuc2l0aW9uOiAwLjE1czsgfVxuICAvKiBsaW5lIDEzNSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgI2JhY2stdG8tdG9wOmhvdmVyIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjODY4Njg2OyB9XG5cbi8qIGxpbmUgMTQwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuLnRleHQteWVsbG93IHtcbiAgY29sb3I6ICNGRkQ1NDU7IH1cblxuLyoqIGJ1dHRvbnMgKiovXG4vKiBsaW5lIDE0Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5idG4sIC5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgYm9yZGVyOiAzcHggc29saWQgI0YzNkQwQjtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgcGFkZGluZzogMTRweCAzMHB4IDE0cHggMzBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBvcGFjaXR5IDAuMnM7XG4gIC8qIEljb24gKi8gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMTQ2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4sIC5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC8qIGxpbmUgMTY1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuYnRuLmRpc2FibGVkLCAuZGlzYWJsZWQuYWRkLXRvLWNhcnQtYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5kaXNhYmxlZC5hZGQtdG8tY2FydCwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5kaXNhYmxlZCwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuZGlzYWJsZWQuc2VlLXByb2R1Y3QsIC5hZXVjX3NjYXJ0IGEuZGlzYWJsZWQsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmRpc2FibGVkLnBhZ2luYXRlX2J1dHRvbiwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuZGlzYWJsZWQucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuZGlzYWJsZWRbdHlwZT1zdWJtaXRdIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC8qIGxpbmUgMTcwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuYnRuLmV4cGFuZGVkLCAuZXhwYW5kZWQuYWRkLXRvLWNhcnQtYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5leHBhbmRlZC5hZGQtdG8tY2FydCwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5leHBhbmRlZCwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuZXhwYW5kZWQuc2VlLXByb2R1Y3QsIC5hZXVjX3NjYXJ0IGEuZXhwYW5kZWQsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmV4cGFuZGVkLnBhZ2luYXRlX2J1dHRvbiwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuZXhwYW5kZWQucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuZXhwYW5kZWRbdHlwZT1zdWJtaXRdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogbGluZSAxNzQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idG46OmJlZm9yZSwgLmFkZC10by1jYXJ0LWJ1dHRvbjo6YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydDo6YmVmb3JlLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uOjpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0OjpiZWZvcmUsIC5hZXVjX3NjYXJ0IGE6OmJlZm9yZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uOjpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OjpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyOjpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjM2RDBCO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICB6LWluZGV4OiAtMTsgfVxuICAvKiBsaW5lIDE4NSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ0bjpob3ZlciwgLmFkZC10by1jYXJ0LWJ1dHRvbjpob3ZlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6aG92ZXIsIC5wYWdlLW5vdC1mb3VuZCBidXR0b246aG92ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0OmhvdmVyLCAuYWV1Y19zY2FydCBhOmhvdmVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246aG92ZXIsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0OmhvdmVyW3R5cGU9c3VibWl0XSwgLmJ0bjpmb2N1cywgLmFkZC10by1jYXJ0LWJ1dHRvbjpmb2N1cywgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6Zm9jdXMsIC5wYWdlLW5vdC1mb3VuZCBidXR0b246Zm9jdXMsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0OmZvY3VzLCAuYWV1Y19zY2FydCBhOmZvY3VzLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246Zm9jdXMsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmZvY3VzOmhvdmVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0OmZvY3VzW3R5cGU9c3VibWl0XSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAvKiBsaW5lIDE4OCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuOmhvdmVyOmJlZm9yZSwgLmFkZC10by1jYXJ0LWJ1dHRvbjpob3ZlcjpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0OmhvdmVyOmJlZm9yZSwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbjpob3ZlcjpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0OmhvdmVyOmJlZm9yZSwgLmFldWNfc2NhcnQgYTpob3ZlcjpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbjpob3ZlcjpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyOmJlZm9yZSwgLmJ0bjpmb2N1czpiZWZvcmUsIC5hZGQtdG8tY2FydC1idXR0b246Zm9jdXM6YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydDpmb2N1czpiZWZvcmUsIC5wYWdlLW5vdC1mb3VuZCBidXR0b246Zm9jdXM6YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdDpmb2N1czpiZWZvcmUsIC5hZXVjX3NjYXJ0IGE6Zm9jdXM6YmVmb3JlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246Zm9jdXM6YmVmb3JlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3Zlcjpmb2N1czpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzOmJlZm9yZSB7XG4gICAgICByaWdodDogMDsgfVxuICAvKiBsaW5lIDE5Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ0bjpkaXNhYmxlZCwgLmFkZC10by1jYXJ0LWJ1dHRvbjpkaXNhYmxlZCwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6ZGlzYWJsZWQsIC5wYWdlLW5vdC1mb3VuZCBidXR0b246ZGlzYWJsZWQsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0OmRpc2FibGVkLCAuYWV1Y19zY2FydCBhOmRpc2FibGVkLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246ZGlzYWJsZWQsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmRpc2FibGVkOmhvdmVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0OmRpc2FibGVkW3R5cGU9c3VibWl0XSB7XG4gICAgb3BhY2l0eTogMC4zOyB9XG4gICAgLyogbGluZSAxOTYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bjpkaXNhYmxlZDpob3ZlcjpiZWZvcmUsIC5hZGQtdG8tY2FydC1idXR0b246ZGlzYWJsZWQ6aG92ZXI6YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydDpkaXNhYmxlZDpob3ZlcjpiZWZvcmUsIC5wYWdlLW5vdC1mb3VuZCBidXR0b246ZGlzYWJsZWQ6aG92ZXI6YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdDpkaXNhYmxlZDpob3ZlcjpiZWZvcmUsIC5hZXVjX3NjYXJ0IGE6ZGlzYWJsZWQ6aG92ZXI6YmVmb3JlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246ZGlzYWJsZWQ6aG92ZXI6YmVmb3JlLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0W3R5cGU9c3VibWl0XTpkaXNhYmxlZDpob3ZlcjpiZWZvcmUsIC5idG46ZGlzYWJsZWQ6Zm9jdXM6YmVmb3JlLCAuYWRkLXRvLWNhcnQtYnV0dG9uOmRpc2FibGVkOmZvY3VzOmJlZm9yZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6ZGlzYWJsZWQ6Zm9jdXM6YmVmb3JlLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uOmRpc2FibGVkOmZvY3VzOmJlZm9yZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3Q6ZGlzYWJsZWQ6Zm9jdXM6YmVmb3JlLCAuYWV1Y19zY2FydCBhOmRpc2FibGVkOmZvY3VzOmJlZm9yZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uOmRpc2FibGVkOmZvY3VzOmJlZm9yZSwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC8qIGxpbmUgMjAxLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuYnRuLmZpbGwsIC5maWxsLmFkZC10by1jYXJ0LWJ1dHRvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuZmlsbC5hZGQtdG8tY2FydCwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5maWxsLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5maWxsLnNlZS1wcm9kdWN0LCAuYWV1Y19zY2FydCBhLmZpbGwsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmZpbGwucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5maWxsLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YzNkQwQjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZy10b3A6IDE3cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE3cHg7IH1cbiAgICAvKiBsaW5lIDIwNiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmZpbGw6YmVmb3JlLCAuZmlsbC5hZGQtdG8tY2FydC1idXR0b246YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5maWxsLmFkZC10by1jYXJ0OmJlZm9yZSwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5maWxsOmJlZm9yZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuZmlsbC5zZWUtcHJvZHVjdDpiZWZvcmUsIC5hZXVjX3NjYXJ0IGEuZmlsbDpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmZpbGwucGFnaW5hdGVfYnV0dG9uOmJlZm9yZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuZmlsbC5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlcjpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzI1NzA5OyB9XG4gICAgLyogbGluZSAyMTAsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bi5maWxsLmljb246OmFmdGVyLCAuZmlsbC5hZGQtdG8tY2FydC1idXR0b246OmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5maWxsLmFkZC10by1jYXJ0OjphZnRlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5maWxsLmljb246OmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5maWxsLnNlZS1wcm9kdWN0OjphZnRlciwgLmFldWNfc2NhcnQgYS5maWxsOjphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuZmlsbC5pY29uLnBhZ2luYXRlX2J1dHRvbjo6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvblt0eXBlPXN1Ym1pdF06OmFmdGVyIHtcbiAgICAgIHRvcDogMThweDsgfVxuICAvKiBsaW5lIDIxNSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ0bi50cmFuc3BhcmVudCwgLnRyYW5zcGFyZW50LmFkZC10by1jYXJ0LWJ1dHRvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAudHJhbnNwYXJlbnQuYWRkLXRvLWNhcnQsIC5wYWdlLW5vdC1mb3VuZCBidXR0b24udHJhbnNwYXJlbnQsIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3QsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnRyYW5zcGFyZW50LnNlZS1wcm9kdWN0LCAuYWV1Y19zY2FydCBhLnRyYW5zcGFyZW50LCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC50cmFuc3BhcmVudC5wYWdpbmF0ZV9idXR0b24sICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnRyYW5zcGFyZW50LnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0LnRyYW5zcGFyZW50W3R5cGU9c3VibWl0XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLyogbGluZSAyMTgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idG4udGV4dC11cHBlcmNhc2UsIC50ZXh0LXVwcGVyY2FzZS5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnRleHQtdXBwZXJjYXNlLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLnRleHQtdXBwZXJjYXNlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC50ZXh0LXVwcGVyY2FzZS5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYS50ZXh0LXVwcGVyY2FzZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAudGV4dC11cHBlcmNhc2UucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC50ZXh0LXVwcGVyY2FzZS5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC50ZXh0LXVwcGVyY2FzZVt0eXBlPXN1Ym1pdF0ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLyogbGluZSAyMjEsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idG4ubGFyZ2UsIC5sYXJnZS5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmxhcmdlLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmxhcmdlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5sYXJnZS5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYS5sYXJnZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAubGFyZ2UucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5sYXJnZS5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5sYXJnZVt0eXBlPXN1Ym1pdF0ge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDIyMSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIC5idG4ubGFyZ2UsIC5sYXJnZS5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmxhcmdlLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmxhcmdlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5sYXJnZS5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYS5sYXJnZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAubGFyZ2UucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5sYXJnZS5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5sYXJnZVt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIC8qIGxpbmUgMjI2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4ubGFyZ2UuaWNvbiwgLmxhcmdlLmFkZC10by1jYXJ0LWJ1dHRvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubGFyZ2UuYWRkLXRvLWNhcnQsIC5wYWdlLW5vdC1mb3VuZCBidXR0b24ubGFyZ2UuaWNvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubGFyZ2Uuc2VlLXByb2R1Y3QsIC5hZXVjX3NjYXJ0IGEubGFyZ2UsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmxhcmdlLmljb24ucGFnaW5hdGVfYnV0dG9uLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0LmxhcmdlLmljb25bdHlwZT1zdWJtaXRdIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNzBweDsgfVxuICAvKiBsaW5lIDIzMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ0bi5zbWFsbCwgLnNtYWxsLmFkZC10by1jYXJ0LWJ1dHRvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuc21hbGwuYWRkLXRvLWNhcnQsIC5wYWdlLW5vdC1mb3VuZCBidXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNtYWxsLnNlZS1wcm9kdWN0LCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3QsICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3QsICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydCwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydCwgLmFldWNfc2NhcnQgYS5zbWFsbCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuc21hbGwucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5zbWFsbC5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgcGFkZGluZzogNXB4IDEzcHg7IH1cbiAgICAvKiBsaW5lIDIzNCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLnNtYWxsLmljb24sIC5zbWFsbC5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNtYWxsLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNtYWxsLnNlZS1wcm9kdWN0LCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAuaWNvbi5zZWUtcHJvZHVjdCwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5pY29uLnNlZS1wcm9kdWN0LCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAuaWNvbi5hZGQtdG8tY2FydCwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5pY29uLmFkZC10by1jYXJ0LCAuYWV1Y19zY2FydCBhLnNtYWxsLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5zbWFsbC5pY29uLnBhZ2luYXRlX2J1dHRvbiwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uW3R5cGU9c3VibWl0XSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgLyogbGluZSAyMzgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idG4ueWVsbG93LCAueWVsbG93LmFkZC10by1jYXJ0LWJ1dHRvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAueWVsbG93LmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLnllbGxvdywgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAueWVsbG93LnNlZS1wcm9kdWN0LCAuYWV1Y19zY2FydCBhLnllbGxvdywgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAueWVsbG93LnBhZ2luYXRlX2J1dHRvbiwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAueWVsbG93LnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkZENTQ1OyB9XG4gICAgLyogbGluZSAyNDAsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bi55ZWxsb3c6YmVmb3JlLCAueWVsbG93LmFkZC10by1jYXJ0LWJ1dHRvbjpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5hZGQtdG8tY2FydDpiZWZvcmUsIC5wYWdlLW5vdC1mb3VuZCBidXR0b24ueWVsbG93OmJlZm9yZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAueWVsbG93LnNlZS1wcm9kdWN0OmJlZm9yZSwgLmFldWNfc2NhcnQgYS55ZWxsb3c6YmVmb3JlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC55ZWxsb3cucGFnaW5hdGVfYnV0dG9uOmJlZm9yZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAueWVsbG93LnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyOmJlZm9yZSwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dFt0eXBlPXN1Ym1pdF06YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkQ1NDU7IH1cbiAgICAvKiBsaW5lIDI0Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLnllbGxvdy5maWxsLCAueWVsbG93LmZpbGwuYWRkLXRvLWNhcnQtYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC55ZWxsb3cuZmlsbC5hZGQtdG8tY2FydCwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi55ZWxsb3cuZmlsbCwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAueWVsbG93LmZpbGwuc2VlLXByb2R1Y3QsIC5hZXVjX3NjYXJ0IGEueWVsbG93LmZpbGwsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnllbGxvdy5maWxsLnBhZ2luYXRlX2J1dHRvbiwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLyogbGluZSAyNDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAuYnRuLnllbGxvdy5maWxsOmJlZm9yZSwgLnllbGxvdy5maWxsLmFkZC10by1jYXJ0LWJ1dHRvbjpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5maWxsLmFkZC10by1jYXJ0OmJlZm9yZSwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi55ZWxsb3cuZmlsbDpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5maWxsLnNlZS1wcm9kdWN0OmJlZm9yZSwgLmFldWNfc2NhcnQgYS55ZWxsb3cuZmlsbDpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnllbGxvdy5maWxsLnBhZ2luYXRlX2J1dHRvbjpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXRbdHlwZT1zdWJtaXRdOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmM5MTI7IH1cbiAgICAvKiBsaW5lIDI1MCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLnllbGxvdzpob3ZlciwgLnllbGxvdy5hZGQtdG8tY2FydC1idXR0b246aG92ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5hZGQtdG8tY2FydDpob3ZlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi55ZWxsb3c6aG92ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5zZWUtcHJvZHVjdDpob3ZlciwgLmFldWNfc2NhcnQgYS55ZWxsb3c6aG92ZXIsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnllbGxvdy5wYWdpbmF0ZV9idXR0b246aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQ6aG92ZXJbdHlwZT1zdWJtaXRdLCAuYnRuLnllbGxvdzpmb2N1cywgLnllbGxvdy5hZGQtdG8tY2FydC1idXR0b246Zm9jdXMsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5hZGQtdG8tY2FydDpmb2N1cywgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi55ZWxsb3c6Zm9jdXMsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnllbGxvdy5zZWUtcHJvZHVjdDpmb2N1cywgLmFldWNfc2NhcnQgYS55ZWxsb3c6Zm9jdXMsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnllbGxvdy5wYWdpbmF0ZV9idXR0b246Zm9jdXMsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQ6Zm9jdXNbdHlwZT1zdWJtaXRdIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgMjU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuYnRuLmFkZC10by1jYXJ0LCAuYWRkLXRvLWNhcnQtYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydCwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5hZGQtdG8tY2FydCwgLmFldWNfc2NhcnQgYS5hZGQtdG8tY2FydCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuYWRkLXRvLWNhcnQucGFnaW5hdGVfYnV0dG9uLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5hZGQtdG8tY2FydC5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5hZGQtdG8tY2FydFt0eXBlPXN1Ym1pdF0ge1xuICAgIGJvcmRlci1jb2xvcjogI2IxMWYzZjsgfVxuICAgIC8qIGxpbmUgMjU3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4uYWRkLXRvLWNhcnQ6YmVmb3JlLCAuYWRkLXRvLWNhcnQtYnV0dG9uOmJlZm9yZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6YmVmb3JlLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmFkZC10by1jYXJ0OmJlZm9yZSwgLmFldWNfc2NhcnQgYS5hZGQtdG8tY2FydDpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmFkZC10by1jYXJ0LnBhZ2luYXRlX2J1dHRvbjpiZWZvcmUsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmFkZC10by1jYXJ0LnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyOmJlZm9yZSwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5hZGQtdG8tY2FydFt0eXBlPXN1Ym1pdF06YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMTFmM2Y7IH1cbiAgICAvKiBsaW5lIDI2MCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmFkZC10by1jYXJ0LmZpbGwsIC5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmFkZC10by1jYXJ0LmZpbGwsIC5hZXVjX3NjYXJ0IGEuYWRkLXRvLWNhcnQuZmlsbCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuYWRkLXRvLWNhcnQuZmlsbC5wYWdpbmF0ZV9idXR0b24sICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuYWRkLXRvLWNhcnRbdHlwZT1zdWJtaXRdIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2IxMWYzZjtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLyogbGluZSAyNjQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAuYnRuLmFkZC10by1jYXJ0LmZpbGw6YmVmb3JlLCAuYWRkLXRvLWNhcnQtYnV0dG9uOmJlZm9yZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6YmVmb3JlLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmFkZC10by1jYXJ0LmZpbGw6YmVmb3JlLCAuYWV1Y19zY2FydCBhLmFkZC10by1jYXJ0LmZpbGw6YmVmb3JlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5hZGQtdG8tY2FydC5maWxsLnBhZ2luYXRlX2J1dHRvbjpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuYWRkLXRvLWNhcnRbdHlwZT1zdWJtaXRdOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4NjE3MzA7IH1cbiAgLyogbGluZSAyNjksIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idG4ud2FybmluZywgLndhcm5pbmcuYWRkLXRvLWNhcnQtYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC53YXJuaW5nLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLndhcm5pbmcsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLndhcm5pbmcuc2VlLXByb2R1Y3QsIC5hZXVjX3NjYXJ0IGEud2FybmluZywgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAud2FybmluZy5wYWdpbmF0ZV9idXR0b24sICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLndhcm5pbmcucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQud2FybmluZ1t0eXBlPXN1Ym1pdF0ge1xuICAgIGJvcmRlci1jb2xvcjogI2UwMjQyNDsgfVxuICAgIC8qIGxpbmUgMjcxLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4ud2FybmluZzpiZWZvcmUsIC53YXJuaW5nLmFkZC10by1jYXJ0LWJ1dHRvbjpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLndhcm5pbmcuYWRkLXRvLWNhcnQ6YmVmb3JlLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLndhcm5pbmc6YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC53YXJuaW5nLnNlZS1wcm9kdWN0OmJlZm9yZSwgLmFldWNfc2NhcnQgYS53YXJuaW5nOmJlZm9yZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAud2FybmluZy5wYWdpbmF0ZV9idXR0b246YmVmb3JlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC53YXJuaW5nLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50OmhvdmVyOmJlZm9yZSwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC53YXJuaW5nW3R5cGU9c3VibWl0XTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UwMjQyNDsgfVxuICAgIC8qIGxpbmUgMjc0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4ud2FybmluZy5maWxsLCAud2FybmluZy5maWxsLmFkZC10by1jYXJ0LWJ1dHRvbiwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAud2FybmluZy5maWxsLmFkZC10by1jYXJ0LCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLndhcm5pbmcuZmlsbCwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAud2FybmluZy5maWxsLnNlZS1wcm9kdWN0LCAuYWV1Y19zY2FydCBhLndhcm5pbmcuZmlsbCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAud2FybmluZy5maWxsLnBhZ2luYXRlX2J1dHRvbiwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC53YXJuaW5nW3R5cGU9c3VibWl0XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTAyNDI0O1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAvKiBsaW5lIDI3Nywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIC5idG4ud2FybmluZy5maWxsOmJlZm9yZSwgLndhcm5pbmcuZmlsbC5hZGQtdG8tY2FydC1idXR0b246YmVmb3JlLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC53YXJuaW5nLmZpbGwuYWRkLXRvLWNhcnQ6YmVmb3JlLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLndhcm5pbmcuZmlsbDpiZWZvcmUsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLndhcm5pbmcuZmlsbC5zZWUtcHJvZHVjdDpiZWZvcmUsIC5hZXVjX3NjYXJ0IGEud2FybmluZy5maWxsOmJlZm9yZSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAud2FybmluZy5maWxsLnBhZ2luYXRlX2J1dHRvbjpiZWZvcmUsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQud2FybmluZ1t0eXBlPXN1Ym1pdF06YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I3MWExYTsgfVxuICAvKiBsaW5lIDI4Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ0bi50ZXh0LXdoaXRlLCAudGV4dC13aGl0ZS5hZGQtdG8tY2FydC1idXR0b24sIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnRleHQtd2hpdGUuYWRkLXRvLWNhcnQsIC5wYWdlLW5vdC1mb3VuZCBidXR0b24udGV4dC13aGl0ZSwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAudGV4dC13aGl0ZS5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYS50ZXh0LXdoaXRlLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC50ZXh0LXdoaXRlLnBhZ2luYXRlX2J1dHRvbiwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAudGV4dC13aGl0ZS5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC50ZXh0LXdoaXRlW3R5cGU9c3VibWl0XSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSAyODYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idG4uY29sb3ItZml4LW9uLWhvdmVyOmhvdmVyLCAuY29sb3ItZml4LW9uLWhvdmVyLmFkZC10by1jYXJ0LWJ1dHRvbjpob3ZlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuY29sb3ItZml4LW9uLWhvdmVyLmFkZC10by1jYXJ0OmhvdmVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmNvbG9yLWZpeC1vbi1ob3Zlcjpob3ZlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuY29sb3ItZml4LW9uLWhvdmVyLnNlZS1wcm9kdWN0OmhvdmVyLCAuYWV1Y19zY2FydCBhLmNvbG9yLWZpeC1vbi1ob3Zlcjpob3ZlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuY29sb3ItZml4LW9uLWhvdmVyLnBhZ2luYXRlX2J1dHRvbjpob3ZlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5jb2xvci1maXgtb24taG92ZXI6aG92ZXJbdHlwZT1zdWJtaXRdIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAvKiBsaW5lIDI5MSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ0bi5pY29uLCAuYWRkLXRvLWNhcnQtYnV0dG9uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydCwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdCwgLmFldWNfc2NhcnQgYSwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5wYWdpbmF0ZV9idXR0b24sICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmljb24ucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvblt0eXBlPXN1Ym1pdF0ge1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAvKiBBcnJvdyAqLyB9XG4gICAgLyogbGluZSAyOTIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bi5pY29uOmFmdGVyLCAuYWRkLXRvLWNhcnQtYnV0dG9uOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydDphZnRlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdDphZnRlciwgLmFldWNfc2NhcnQgYTphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5wYWdpbmF0ZV9idXR0b246YWZ0ZXIsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmljb24ucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXI6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvblt0eXBlPXN1Ym1pdF06YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMnB4O1xuICAgICAgbGVmdDogMjVweDsgfVxuICAgIC8qIGxpbmUgMjk3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4uaWNvbi5maWxsOmFmdGVyLCAuZmlsbC5hZGQtdG8tY2FydC1idXR0b246YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmZpbGwuYWRkLXRvLWNhcnQ6YWZ0ZXIsIC5wYWdlLW5vdC1mb3VuZCBidXR0b24uaWNvbi5maWxsOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5maWxsLnNlZS1wcm9kdWN0OmFmdGVyLCAuYWV1Y19zY2FydCBhLmZpbGw6YWZ0ZXIsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmljb24uZmlsbC5wYWdpbmF0ZV9idXR0b246YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvblt0eXBlPXN1Ym1pdF06YWZ0ZXIge1xuICAgICAgdG9wOiAxNXB4OyB9XG4gICAgLyogbGluZSAzMDgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bi5pY29uLmFycm93OmFmdGVyLCAuYXJyb3cuYWRkLXRvLWNhcnQtYnV0dG9uOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy5hZGQtdG8tY2FydDphZnRlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLmFycm93OmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy5zZWUtcHJvZHVjdDphZnRlciwgLmFldWNfc2NhcnQgYTphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5hcnJvdy5wYWdpbmF0ZV9idXR0b246YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvbi5hcnJvd1t0eXBlPXN1Ym1pdF06YWZ0ZXIge1xuICAgICAgbGVmdDogMTVweDtcbiAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC1ibGFjay5wbmdcIik7IH1cbiAgICAvKiBsaW5lIDMxMiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmljb24uYXJyb3c6aG92ZXI6YWZ0ZXIsIC5hcnJvdy5hZGQtdG8tY2FydC1idXR0b246aG92ZXI6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LmFkZC10by1jYXJ0OmhvdmVyOmFmdGVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24uYXJyb3c6aG92ZXI6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LnNlZS1wcm9kdWN0OmhvdmVyOmFmdGVyLCAuYWV1Y19zY2FydCBhOmhvdmVyOmFmdGVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5pY29uLmFycm93LnBhZ2luYXRlX2J1dHRvbjpob3ZlcjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uLmFycm93W3R5cGU9c3VibWl0XTpob3ZlcjphZnRlciwgLmJ0bi5pY29uLmFycm93LnRleHQtd2hpdGU6YWZ0ZXIsIC5hcnJvdy50ZXh0LXdoaXRlLmFkZC10by1jYXJ0LWJ1dHRvbjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYXJyb3cudGV4dC13aGl0ZS5hZGQtdG8tY2FydDphZnRlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLmFycm93LnRleHQtd2hpdGU6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LnRleHQtd2hpdGUuc2VlLXByb2R1Y3Q6YWZ0ZXIsIC5hZXVjX3NjYXJ0IGEudGV4dC13aGl0ZTphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5hcnJvdy50ZXh0LXdoaXRlLnBhZ2luYXRlX2J1dHRvbjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uLmFycm93LnRleHQtd2hpdGVbdHlwZT1zdWJtaXRdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5wbmdcIik7IH1cbiAgICAvKiBsaW5lIDMxNywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmljb24uYXJyb3cuYXJyb3ctbGVmdDphZnRlciwgLmFycm93LmFycm93LWxlZnQuYWRkLXRvLWNhcnQtYnV0dG9uOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy5hcnJvdy1sZWZ0LmFkZC10by1jYXJ0OmFmdGVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24uYXJyb3cuYXJyb3ctbGVmdDphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYXJyb3cuYXJyb3ctbGVmdC5zZWUtcHJvZHVjdDphZnRlciwgLmFldWNfc2NhcnQgYTphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5hcnJvdy5hcnJvdy1sZWZ0LnBhZ2luYXRlX2J1dHRvbjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uLmFycm93LmFycm93LWxlZnRbdHlwZT1zdWJtaXRdOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEpO1xuICAgICAgdG9wOiAxNnB4OyB9XG4gICAgLyogbGluZSAzMjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bi5pY29uLmFycm93LnRleHQtd2hpdGU6YWZ0ZXIsIC5hcnJvdy50ZXh0LXdoaXRlLmFkZC10by1jYXJ0LWJ1dHRvbjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYXJyb3cudGV4dC13aGl0ZS5hZGQtdG8tY2FydDphZnRlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLmFycm93LnRleHQtd2hpdGU6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LnRleHQtd2hpdGUuc2VlLXByb2R1Y3Q6YWZ0ZXIsIC5hZXVjX3NjYXJ0IGEudGV4dC13aGl0ZTphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5hcnJvdy50ZXh0LXdoaXRlLnBhZ2luYXRlX2J1dHRvbjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uLmFycm93LnRleHQtd2hpdGVbdHlwZT1zdWJtaXRdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5wbmdcIik7IH1cbiAgICAvKiBsaW5lIDMyOCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmljb24uYXJyb3cuY29sb3ItZml4LW9uLWhvdmVyOmhvdmVyOmFmdGVyLCAuYXJyb3cuY29sb3ItZml4LW9uLWhvdmVyLmFkZC10by1jYXJ0LWJ1dHRvbjpob3ZlcjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYXJyb3cuY29sb3ItZml4LW9uLWhvdmVyLmFkZC10by1jYXJ0OmhvdmVyOmFmdGVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24uYXJyb3cuY29sb3ItZml4LW9uLWhvdmVyOmhvdmVyOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy5jb2xvci1maXgtb24taG92ZXIuc2VlLXByb2R1Y3Q6aG92ZXI6YWZ0ZXIsIC5hZXVjX3NjYXJ0IGEuY29sb3ItZml4LW9uLWhvdmVyOmhvdmVyOmFmdGVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5pY29uLmFycm93LmNvbG9yLWZpeC1vbi1ob3Zlci5wYWdpbmF0ZV9idXR0b246aG92ZXI6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvbi5hcnJvdy5jb2xvci1maXgtb24taG92ZXJbdHlwZT1zdWJtaXRdOmhvdmVyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC1ibGFjay5wbmdcIik7IH1cbiAgICAvKiBsaW5lIDMzMywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmljb24uYXJyb3cueWVsbG93OmhvdmVyOmFmdGVyLCAuYXJyb3cueWVsbG93LmFkZC10by1jYXJ0LWJ1dHRvbjpob3ZlcjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYXJyb3cueWVsbG93LmFkZC10by1jYXJ0OmhvdmVyOmFmdGVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24uYXJyb3cueWVsbG93OmhvdmVyOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy55ZWxsb3cuc2VlLXByb2R1Y3Q6aG92ZXI6YWZ0ZXIsIC5hZXVjX3NjYXJ0IGEueWVsbG93OmhvdmVyOmFmdGVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5pY29uLmFycm93LnllbGxvdy5wYWdpbmF0ZV9idXR0b246aG92ZXI6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvbi5hcnJvd1t0eXBlPXN1Ym1pdF06aG92ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL2Fycm93LXJpZ2h0LWJsYWNrLnBuZ1wiKTsgfVxuICAgIC8qIGxpbmUgMzM5LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5idG4uaWNvbi5jYXJ0OmFmdGVyLCAuYWRkLXRvLWNhcnQtYnV0dG9uOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydDphZnRlciwgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLmNhcnQ6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmNhcnQuc2VlLXByb2R1Y3Q6YWZ0ZXIsIC5hZXVjX3NjYXJ0IGEuY2FydDphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5jYXJ0LnBhZ2luYXRlX2J1dHRvbjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uLmNhcnRbdHlwZT1zdWJtaXRdOmFmdGVyIHtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9wYW5pZXItd2hpdGUucG5nXCIpOyB9XG4gICAgLyogbGluZSAzNDMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJ0bi5pY29uLmNhcnQ6aG92ZXI6YWZ0ZXIsIC5hZGQtdG8tY2FydC1idXR0b246aG92ZXI6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0OmhvdmVyOmFmdGVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24uY2FydDpob3ZlcjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuY2FydC5zZWUtcHJvZHVjdDpob3ZlcjphZnRlciwgLmFldWNfc2NhcnQgYS5jYXJ0OmhvdmVyOmFmdGVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5pY29uLmNhcnQucGFnaW5hdGVfYnV0dG9uOmhvdmVyOmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0Lmljb24uY2FydFt0eXBlPXN1Ym1pdF06aG92ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL3Bhbmllci13aGl0ZS5wbmdcIik7IH1cbiAgICAvKiBsaW5lIDM0OCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuYnRuLmljb24ucGx1czphZnRlciwgLnBsdXMuYWRkLXRvLWNhcnQtYnV0dG9uOmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wbHVzLmFkZC10by1jYXJ0OmFmdGVyLCAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24ucGx1czphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3Q6YWZ0ZXIsIC5hZXVjX3NjYXJ0IGEucGx1czphZnRlciwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5wbHVzLnBhZ2luYXRlX2J1dHRvbjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBpbnB1dC5pY29uLnBsdXNbdHlwZT1zdWJtaXRdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHRvcDogMTVweDsgfVxuXG4vKiBsaW5lIDM2Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogIzkxNDEwNzsgfVxuXG4vKiBsaW5lIDM3Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5ncmF5LXdhdmUtY29udGFpbmVyLCAjaGVhZGVyIC5oZWFkZXItYm90dG9tLCAuZ3JleS13YXZlLWN0YSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjsgfVxuICAvKiBsaW5lIDM4MCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmdyYXktd2F2ZS1jb250YWluZXI6YmVmb3JlLCAjaGVhZGVyIC5oZWFkZXItYm90dG9tOmJlZm9yZSwgLmdyZXktd2F2ZS1jdGE6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xpZ2h0LWdyYXktd2F2ZS10b3AucG5nXCIpIHJlcGVhdC14OyB9XG4gIC8qIGxpbmUgMzg4LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuZ3JheS13YXZlLWNvbnRhaW5lcjphZnRlciwgI2hlYWRlciAuaGVhZGVyLWJvdHRvbTphZnRlciwgLmdyZXktd2F2ZS1jdGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xOHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9saWdodC1ncmF5LXdhdmUtdG9wLnBuZ1wiKSByZXBlYXQteDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7IH1cblxuLyogbGluZSA0MDAsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4ucmVkLXdhdmUtY29udGFpbmVyLCAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIsIC5icm93bi13YXZlLWNvbnRhaW5lciwgLmJsdWUtd2F2ZS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODYwMDAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDQwNCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLnJlZC13YXZlLWNvbnRhaW5lcjpiZWZvcmUsIC5idXJndW5keS13YXZlLWNvbnRhaW5lcjpiZWZvcmUsIC5icm93bi13YXZlLWNvbnRhaW5lcjpiZWZvcmUsIC5ibHVlLXdhdmUtY29udGFpbmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy93YXZlLXJlZC10b3AucG5nXCIpIHJlcGVhdC14O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLyogbGluZSA0MTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5yZWQtd2F2ZS1jb250YWluZXI6YWZ0ZXIsIC5idXJndW5keS13YXZlLWNvbnRhaW5lcjphZnRlciwgLmJyb3duLXdhdmUtY29udGFpbmVyOmFmdGVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lcjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy93YXZlLXJlZC1ib3R0b20ucG5nXCIpIHJlcGVhdC14O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLyogbGluZSA0MjIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5yZWQtd2F2ZS1jb250YWluZXIud2F0ZXJtYXJrLCAud2F0ZXJtYXJrLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyLCAud2F0ZXJtYXJrLmJyb3duLXdhdmUtY29udGFpbmVyLCAud2F0ZXJtYXJrLmJsdWUtd2F2ZS1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9uZW9kaWYtd2F0ZXJtYXJrLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4vKiBsaW5lIDQyOSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5idXJndW5keS13YXZlLWNvbnRhaW5lciwgLmJyb3duLXdhdmUtY29udGFpbmVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YzI0MmQ7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC8qIGxpbmUgNDMzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgcCwgLmJyb3duLXdhdmUtY29udGFpbmVyIHAsIC5ibHVlLXdhdmUtY29udGFpbmVyIHAsXG4gIC5idXJndW5keS13YXZlLWNvbnRhaW5lciBoMixcbiAgLmJyb3duLXdhdmUtY29udGFpbmVyIGgyLFxuICAuYmx1ZS13YXZlLWNvbnRhaW5lciBoMixcbiAgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIC5oMixcbiAgLmJyb3duLXdhdmUtY29udGFpbmVyIC5oMixcbiAgLmJsdWUtd2F2ZS1jb250YWluZXIgLmgyLFxuICAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgaDMsXG4gIC5icm93bi13YXZlLWNvbnRhaW5lciBoMyxcbiAgLmJsdWUtd2F2ZS1jb250YWluZXIgaDMsXG4gIC5idXJndW5keS13YXZlLWNvbnRhaW5lciBoNCxcbiAgLmJyb3duLXdhdmUtY29udGFpbmVyIGg0LFxuICAuYmx1ZS13YXZlLWNvbnRhaW5lciBoNCxcbiAgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIGg1LFxuICAuYnJvd24td2F2ZS1jb250YWluZXIgaDUsXG4gIC5ibHVlLXdhdmUtY29udGFpbmVyIGg1LFxuICAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgaDYsXG4gIC5icm93bi13YXZlLWNvbnRhaW5lciBoNixcbiAgLmJsdWUtd2F2ZS1jb250YWluZXIgaDYge1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSA0NDEsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idXJndW5keS13YXZlLWNvbnRhaW5lciBhLCAuYnJvd24td2F2ZS1jb250YWluZXIgYSwgLmJsdWUtd2F2ZS1jb250YWluZXIgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLyogbGluZSA0NDQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idXJndW5keS13YXZlLWNvbnRhaW5lciBkaXYucHJvZHVjdC1hdHRyaWJ1dGUsIC5icm93bi13YXZlLWNvbnRhaW5lciBkaXYucHJvZHVjdC1hdHRyaWJ1dGUsIC5ibHVlLXdhdmUtY29udGFpbmVyIGRpdi5wcm9kdWN0LWF0dHJpYnV0ZSB7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDQ0OCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIC5idG4uaWNvbi5hcnJvdzo6YWZ0ZXIsIC5icm93bi13YXZlLWNvbnRhaW5lciAuYnRuLmljb24uYXJyb3c6OmFmdGVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lciAuYnRuLmljb24uYXJyb3c6OmFmdGVyLCAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLmFycm93LmFkZC10by1jYXJ0LWJ1dHRvbjo6YWZ0ZXIsIC5icm93bi13YXZlLWNvbnRhaW5lciAuYXJyb3cuYWRkLXRvLWNhcnQtYnV0dG9uOjphZnRlciwgLmJsdWUtd2F2ZS1jb250YWluZXIgLmFycm93LmFkZC10by1jYXJ0LWJ1dHRvbjo6YWZ0ZXIsIC5idXJndW5keS13YXZlLWNvbnRhaW5lciAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy5hZGQtdG8tY2FydDo6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIC5hcnJvdy5hZGQtdG8tY2FydDo6YWZ0ZXIsIC5icm93bi13YXZlLWNvbnRhaW5lciAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hcnJvdy5hZGQtdG8tY2FydDo6YWZ0ZXIsIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmJyb3duLXdhdmUtY29udGFpbmVyIC5hcnJvdy5hZGQtdG8tY2FydDo6YWZ0ZXIsIC5ibHVlLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LmFkZC10by1jYXJ0OjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYmx1ZS13YXZlLWNvbnRhaW5lciAuYXJyb3cuYWRkLXRvLWNhcnQ6OmFmdGVyLCAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLmFycm93OjphZnRlciwgLnBhZ2Utbm90LWZvdW5kIC5idXJndW5keS13YXZlLWNvbnRhaW5lciBidXR0b24uaWNvbi5hcnJvdzo6YWZ0ZXIsIC5icm93bi13YXZlLWNvbnRhaW5lciAucGFnZS1ub3QtZm91bmQgYnV0dG9uLmljb24uYXJyb3c6OmFmdGVyLCAucGFnZS1ub3QtZm91bmQgLmJyb3duLXdhdmUtY29udGFpbmVyIGJ1dHRvbi5pY29uLmFycm93OjphZnRlciwgLmJsdWUtd2F2ZS1jb250YWluZXIgLnBhZ2Utbm90LWZvdW5kIGJ1dHRvbi5pY29uLmFycm93OjphZnRlciwgLnBhZ2Utbm90LWZvdW5kIC5ibHVlLXdhdmUtY29udGFpbmVyIGJ1dHRvbi5pY29uLmFycm93OjphZnRlciwgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LnNlZS1wcm9kdWN0OjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLmFycm93LnNlZS1wcm9kdWN0OjphZnRlciwgLmJyb3duLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFycm93LnNlZS1wcm9kdWN0OjphZnRlciwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYnJvd24td2F2ZS1jb250YWluZXIgLmFycm93LnNlZS1wcm9kdWN0OjphZnRlciwgLmJsdWUtd2F2ZS1jb250YWluZXIgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYXJyb3cuc2VlLXByb2R1Y3Q6OmFmdGVyLCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5ibHVlLXdhdmUtY29udGFpbmVyIC5hcnJvdy5zZWUtcHJvZHVjdDo6YWZ0ZXIsIC5idXJndW5keS13YXZlLWNvbnRhaW5lciAuYWV1Y19zY2FydCBhOjphZnRlciwgLmFldWNfc2NhcnQgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIGE6OmFmdGVyLCAuYnJvd24td2F2ZS1jb250YWluZXIgLmFldWNfc2NhcnQgYTo6YWZ0ZXIsIC5hZXVjX3NjYXJ0IC5icm93bi13YXZlLWNvbnRhaW5lciBhOjphZnRlciwgLmJsdWUtd2F2ZS1jb250YWluZXIgLmFldWNfc2NhcnQgYTo6YWZ0ZXIsIC5hZXVjX3NjYXJ0IC5ibHVlLXdhdmUtY29udGFpbmVyIGE6OmFmdGVyLCAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5hcnJvdy5wYWdpbmF0ZV9idXR0b246OmFmdGVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5idXJndW5keS13YXZlLWNvbnRhaW5lciAuaWNvbi5hcnJvdy5wYWdpbmF0ZV9idXR0b246OmFmdGVyLCAuYnJvd24td2F2ZS1jb250YWluZXIgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuaWNvbi5hcnJvdy5wYWdpbmF0ZV9idXR0b246OmFmdGVyLCAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5icm93bi13YXZlLWNvbnRhaW5lciAuaWNvbi5hcnJvdy5wYWdpbmF0ZV9idXR0b246OmFmdGVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lciAjbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5pY29uLmFycm93LnBhZ2luYXRlX2J1dHRvbjo6YWZ0ZXIsICNtYWluIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmJsdWUtd2F2ZS1jb250YWluZXIgLmljb24uYXJyb3cucGFnaW5hdGVfYnV0dG9uOjphZnRlciwgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaW5wdXQuaWNvbi5hcnJvd1t0eXBlPXN1Ym1pdF06OmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIC5idXJndW5keS13YXZlLWNvbnRhaW5lciBpbnB1dC5pY29uLmFycm93W3R5cGU9c3VibWl0XTo6YWZ0ZXIsIC5icm93bi13YXZlLWNvbnRhaW5lciAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0Lmljb24uYXJyb3dbdHlwZT1zdWJtaXRdOjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiAuYnJvd24td2F2ZS1jb250YWluZXIgaW5wdXQuaWNvbi5hcnJvd1t0eXBlPXN1Ym1pdF06OmFmdGVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lciAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAuc2lkZWJhciAuZW1haWxfc3Vic2NyaXB0aW9uIGlucHV0Lmljb24uYXJyb3dbdHlwZT1zdWJtaXRdOjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiAuYmx1ZS13YXZlLWNvbnRhaW5lciBpbnB1dC5pY29uLmFycm93W3R5cGU9c3VibWl0XTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5wbmdcIik7IH1cbiAgLyogbGluZSA0NTIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5idXJndW5keS13YXZlLWNvbnRhaW5lcjpiZWZvcmUsIC5icm93bi13YXZlLWNvbnRhaW5lcjpiZWZvcmUsIC5ibHVlLXdhdmUtY29udGFpbmVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2J1cmd1bmR5LXdhdmUtdG9wLnBuZ1wiKSByZXBlYXQteDsgfVxuICAvKiBsaW5lIDQ1NSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyOmFmdGVyLCAuYnJvd24td2F2ZS1jb250YWluZXI6YWZ0ZXIsIC5ibHVlLXdhdmUtY29udGFpbmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYnVyZ3VuZHktd2F2ZS1ib3R0b20ucG5nXCIpIHJlcGVhdC14OyB9XG5cbi8qIGxpbmUgNDYwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuLmJyb3duLXdhdmUtY29udGFpbmVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDJjMjE7IH1cbiAgLyogbGluZSA0NjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5icm93bi13YXZlLWNvbnRhaW5lcjpiZWZvcmUsIC5ibHVlLXdhdmUtY29udGFpbmVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Jyb3duLXdhdmUtdG9wLnBuZ1wiKSByZXBlYXQteDsgfVxuICAvKiBsaW5lIDQ2Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJyb3duLXdhdmUtY29udGFpbmVyOmFmdGVyLCAuYmx1ZS13YXZlLWNvbnRhaW5lcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Jyb3duLXdhdmUtYm90dG9tLnBuZ1wiKSByZXBlYXQteDsgfVxuICAvKiBsaW5lIDQ3MSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJyb3duLXdhdmUtY29udGFpbmVyIGgyOjphZnRlciwgLmJsdWUtd2F2ZS1jb250YWluZXIgaDI6OmFmdGVyLCAuYnJvd24td2F2ZS1jb250YWluZXIgLmgyOjphZnRlciwgLmJsdWUtd2F2ZS1jb250YWluZXIgLmgyOjphZnRlcixcbiAgLmJyb3duLXdhdmUtY29udGFpbmVyIGgzOjphZnRlcixcbiAgLmJsdWUtd2F2ZS1jb250YWluZXIgaDM6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cblxuLyogbGluZSA0NzcsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4uYmx1ZS13YXZlLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYjU3NzcgIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDQ4MCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmJsdWUtd2F2ZS1jb250YWluZXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYmx1ZS13YXZlLXRvcC5wbmdcIikgcmVwZWF0LXg7XG4gICAgaGVpZ2h0OiAyMXB4O1xuICAgIHRvcDogLTE1cHg7IH1cbiAgLyogbGluZSA0ODUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5ibHVlLXdhdmUtY29udGFpbmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYmx1ZS13YXZlLWJvdHRvbS5wbmdcIikgcmVwZWF0LXg7IH1cbiAgLyogbGluZSA0ODksIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5ibHVlLXdhdmUtY29udGFpbmVyLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYzYzU4OyB9XG4gICAgLyogbGluZSA0OTIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmJsdWUtd2F2ZS1jb250YWluZXIucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZGVjby1yb3VuZC1ibHVlLnBuZ1wiKTsgfVxuXG4vKiBsaW5lIDUwMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5ib3JkZXItYm90dG9tLCAjaGVhZGVyIC5oZWFkZXItbWlkZGxlIC5oZWFkZXItbWlkZGxlLXRpdGxlLCAjaGVhZGVyIC5oZWFkZXItbWlkZGxlIC5oZWFkZXItbWlkZGxlLXN1YnRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC8qIGxpbmUgNTAyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuYm9yZGVyLWJvdHRvbTphZnRlciwgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSAuaGVhZGVyLW1pZGRsZS10aXRsZTphZnRlciwgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSAuaGVhZGVyLW1pZGRsZS1zdWJ0aXRsZTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLyogbGluZSA1MTUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4ubm9wYWRkaW5nIHtcbiAgcGFkZGluZzogMDsgfVxuXG4vKiBsaW5lIDUxOSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi50aXRsZS1iZy1kaWFnb25hbCwgI21haW4gaDEsXG4jbWFpbiBoMiwgI21haW4gLmgyLFxuI21haW4gaDMsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgaDEsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgaDIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgLmgyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgzLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGg0LCAjd3JhcHBlciAuYmxvZ3ZpZXcgLmJsb2dfdGl0bGUsXG4jd3JhcHBlciAuYmxvZ3ZpZXcgLm1haW5fdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cbiAgLyogbGluZSA1MjIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC50aXRsZS1iZy1kaWFnb25hbDphZnRlciwgI21haW4gaDE6YWZ0ZXIsXG4gICNtYWluIGgyOmFmdGVyLCAjbWFpbiAuaDI6YWZ0ZXIsXG4gICNtYWluIGgzOmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgxOmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgyOmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIC5oMjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoMzphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoNDphZnRlciwgI3dyYXBwZXIgLmJsb2d2aWV3IC5ibG9nX3RpdGxlOmFmdGVyLFxuICAjd3JhcHBlciAuYmxvZ3ZpZXcgLm1haW5fdGl0bGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YzNkQwQjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTVweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAtMTVweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNmRlZyk7XG4gICAgei1pbmRleDogLTE7IH1cbiAgLyogbGluZSA1MzQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC50aXRsZS1iZy1kaWFnb25hbC5kaWFnb25hbC1ibGFjazphZnRlciwgI21haW4gaDEuZGlhZ29uYWwtYmxhY2s6YWZ0ZXIsXG4gICNtYWluIGgyLmRpYWdvbmFsLWJsYWNrOmFmdGVyLCAjbWFpbiAuZGlhZ29uYWwtYmxhY2suaDI6YWZ0ZXIsICNtYWluICNibG9jay1yZWFzc3VyYW5jZSBoMjphZnRlciwgI2Jsb2NrLXJlYXNzdXJhbmNlICNtYWluIGgyOmFmdGVyLCAjbWFpbiAjYmxvY2stcmVhc3N1cmFuY2UgLmgyOmFmdGVyLCAjYmxvY2stcmVhc3N1cmFuY2UgI21haW4gLmgyOmFmdGVyLFxuICAjbWFpbiBoMy5kaWFnb25hbC1ibGFjazphZnRlciwgI2Jsb2NrLXJlYXNzdXJhbmNlIGgyLnRpdGxlLWJnLWRpYWdvbmFsOmFmdGVyLCAjYmxvY2stcmVhc3N1cmFuY2UgLnRpdGxlLWJnLWRpYWdvbmFsLmgyOmFmdGVyLCAjYmxvY2stcmVhc3N1cmFuY2UgI3dyYXBwZXIgLmJsb2d2aWV3IC5oMi5ibG9nX3RpdGxlOmFmdGVyLCAjd3JhcHBlciAuYmxvZ3ZpZXcgI2Jsb2NrLXJlYXNzdXJhbmNlIC5oMi5ibG9nX3RpdGxlOmFmdGVyLFxuICAjYmxvY2stcmVhc3N1cmFuY2UgI3dyYXBwZXIgLmJsb2d2aWV3IC5oMi5tYWluX3RpdGxlOmFmdGVyLCAjd3JhcHBlciAuYmxvZ3ZpZXcgI2Jsb2NrLXJlYXNzdXJhbmNlIC5oMi5tYWluX3RpdGxlOmFmdGVyLCAjYmxvY2stcmVhc3N1cmFuY2UgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoMjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciAjYmxvY2stcmVhc3N1cmFuY2UgaDI6YWZ0ZXIsICNibG9jay1yZWFzc3VyYW5jZSAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIC5oMjphZnRlciwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciAjYmxvY2stcmVhc3N1cmFuY2UgLmgyOmFmdGVyLCAjYmxvY2stcmVhc3N1cmFuY2UgI3dyYXBwZXIgLmJsb2d2aWV3IGgyLmJsb2dfdGl0bGU6YWZ0ZXIsICN3cmFwcGVyIC5ibG9ndmlldyAjYmxvY2stcmVhc3N1cmFuY2UgaDIuYmxvZ190aXRsZTphZnRlcixcbiAgI2Jsb2NrLXJlYXNzdXJhbmNlICN3cmFwcGVyIC5ibG9ndmlldyBoMi5tYWluX3RpdGxlOmFmdGVyLCAjd3JhcHBlciAuYmxvZ3ZpZXcgI2Jsb2NrLXJlYXNzdXJhbmNlIGgyLm1haW5fdGl0bGU6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgaDEuZGlhZ29uYWwtYmxhY2s6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgaDIuZGlhZ29uYWwtYmxhY2s6YWZ0ZXIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgLmRpYWdvbmFsLWJsYWNrLmgyOmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgzLmRpYWdvbmFsLWJsYWNrOmFmdGVyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGg0LmRpYWdvbmFsLWJsYWNrOmFmdGVyLCAjd3JhcHBlciAuYmxvZ3ZpZXcgLmRpYWdvbmFsLWJsYWNrLmJsb2dfdGl0bGU6YWZ0ZXIsXG4gICN3cmFwcGVyIC5ibG9ndmlldyAuZGlhZ29uYWwtYmxhY2subWFpbl90aXRsZTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4vKiBsaW5lIDU0MCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiNtYWluIC5vd2wtY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgMjVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNTQwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNtYWluIC5vd2wtY2Fyb3VzZWwge1xuICAgICAgcGFkZGluZzogMCA1MHB4OyB9IH1cbiAgLyogbGluZSA1NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICNtYWluIC5vd2wtY2Fyb3VzZWwgLm93bC1wcmV2LFxuICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIHdpZHRoOiAxM3B4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNTQ2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI21haW4gLm93bC1jYXJvdXNlbCAub3dsLXByZXYsXG4gICAgICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtbmV4dCB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSA4LjVweCk7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDE3cHg7IH0gfVxuICAgIC8qIGxpbmUgNTYwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNtYWluIC5vd2wtY2Fyb3VzZWwgLm93bC1wcmV2OmhvdmVyLCAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtcHJldjpmb2N1cyxcbiAgICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtbmV4dDpob3ZlcixcbiAgICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtbmV4dDpmb2N1cyB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLyogbGluZSA1NjQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgI21haW4gLm93bC1jYXJvdXNlbCAub3dsLXByZXYuZGlzYWJsZWQsXG4gICAgI21haW4gLm93bC1jYXJvdXNlbCAub3dsLW5leHQuZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC40ICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSA1NjgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICNtYWluIC5vd2wtY2Fyb3VzZWwgLm93bC1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcnJvdy1sZWZ0LW1vYmlsZS1vcmFuZ2UucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA1NjgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtcHJldiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9hcnJvdy1sZWZ0LW9yYW5nZS5wbmdcIik7IH0gfVxuICAvKiBsaW5lIDU3NSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgI21haW4gLm93bC1jYXJvdXNlbCAub3dsLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC1tb2JpbGUtb3JhbmdlLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNTc1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI21haW4gLm93bC1jYXJvdXNlbCAub3dsLW5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXJyb3ctcmlnaHQtb3JhbmdlLnBuZ1wiKTsgfSB9XG4gICAgLyogbGluZSA1ODEsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgI21haW4gLm93bC1jYXJvdXNlbCAub3dsLW5leHQuZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC40OyB9XG4gIC8qIGxpbmUgNTg1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtZG90cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA1ODUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtZG90cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDcwcHg7IH0gfVxuICAgIC8qIGxpbmUgNTkxLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNtYWluIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzIC5vd2wtZG90IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLyogbGluZSA1OTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAjbWFpbiAub3dsLWNhcm91c2VsIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlZmM4M2E7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAvKiBsaW5lIDYwMywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICNtYWluIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmYzgzYTsgfVxuXG4vKiBsaW5lIDYxMSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiNub3RpZmljYXRpb25zIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAjbm90aWZpY2F0aW9uczo6YmVmb3JlLCAjbm90aWZpY2F0aW9uczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAjbm90aWZpY2F0aW9uczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi8qIGxpbmUgNjE3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuLm5vdGlmaWNhdGlvbixcbi5hbGVydCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwIDAgMTVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjE3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5ub3RpZmljYXRpb24sXG4gICAgLmFsZXJ0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgLm5vdGlmaWNhdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuYWxlcnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC8qIGxpbmUgNTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzICovXG4gIC5ub3RpZmljYXRpb24gPiA6Zmlyc3QtY2hpbGQsXG4gIC5hbGVydCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAvKiBsaW5lIDU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyAqL1xuICAubm90aWZpY2F0aW9uID4gOmxhc3QtY2hpbGQsXG4gIC5hbGVydCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC8qIGxpbmUgNjIzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAubm90aWZpY2F0aW9uOmZpcnN0LW9mLXR5cGUsXG4gIC5hbGVydDpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIC8qIGxpbmUgNjI2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAubm90aWZpY2F0aW9uOmxhc3Qtb2YtdHlwZSxcbiAgLmFsZXJ0Omxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAvKiBsaW5lIDYyOSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLm5vdGlmaWNhdGlvbi5ub3RpZmljYXRpb24tc3VjY2VzcywgLm5vdGlmaWNhdGlvbi5hbGVydC1zdWNjZXNzLFxuICAuYWxlcnQubm90aWZpY2F0aW9uLXN1Y2Nlc3MsXG4gIC5hbGVydC5hbGVydC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRmNWU1O1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGNvbG9yOiAjMzNhNDU3OyB9XG4gIC8qIGxpbmUgNjM0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAubm90aWZpY2F0aW9uLm5vdGlmaWNhdGlvbi1kYW5nZXIsIC5ub3RpZmljYXRpb24uYWxlcnQtZGFuZ2VyLFxuICAuYWxlcnQubm90aWZpY2F0aW9uLWRhbmdlcixcbiAgLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzdjNztcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBjb2xvcjogIzg2MDAwMDsgfVxuICAvKiBsaW5lIDYzOSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLm5vdGlmaWNhdGlvbi5ub3RpZmljYXRpb24td2FybmluZywgLm5vdGlmaWNhdGlvbi5hbGVydC13YXJuaW5nLFxuICAuYWxlcnQubm90aWZpY2F0aW9uLXdhcm5pbmcsXG4gIC5hbGVydC5hbGVydC13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRlOWRhO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGNvbG9yOiAjRjM2RDBCOyB9XG4gIC8qIGxpbmUgNjQ0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAubm90aWZpY2F0aW9uLm5vdGlmaWNhdGlvbi1pbmZvLCAubm90aWZpY2F0aW9uLmFsZXJ0LWluZm8sXG4gIC5hbGVydC5ub3RpZmljYXRpb24taW5mbyxcbiAgLmFsZXJ0LmFsZXJ0LWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY5ZTM7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICNhYjg0MDA7IH1cblxuLyogbGluZSA2NTEsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4ucGFnZS1ub3QtZm91bmQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogbGluZSA2NTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5wYWdlLW5vdC1mb3VuZCA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC8qIGxpbmUgNjYwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAucGFnZS1ub3QtZm91bmQgdWwubWVudSwgLnBhZ2Utbm90LWZvdW5kIC5wYWdlLW15LWFjY291bnQgdWwubGluay1saXN0LCAucGFnZS1teS1hY2NvdW50IC5wYWdlLW5vdC1mb3VuZCB1bC5saW5rLWxpc3QsIC5wYWdlLW5vdC1mb3VuZCB1bC5teS1hY2NvdW50LWxpbmtzLCAucGFnZS1ub3QtZm91bmQgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IC5wYWdlLW5vdC1mb3VuZCB1bCwgLnBhZ2Utbm90LWZvdW5kIC5hZGRyZXNzZXMgLmFkZHJlc3MgdWwuYWN0aW9uLWxpc3QsIC5hZGRyZXNzZXMgLmFkZHJlc3MgLnBhZ2Utbm90LWZvdW5kIHVsLmFjdGlvbi1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAvKiBsaW5lIDY2Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAucGFnZS1ub3QtZm91bmQgdWwubWVudSBsaSwgLnBhZ2Utbm90LWZvdW5kIC5wYWdlLW15LWFjY291bnQgdWwubGluay1saXN0IGxpLCAucGFnZS1teS1hY2NvdW50IC5wYWdlLW5vdC1mb3VuZCB1bC5saW5rLWxpc3QgbGksIC5wYWdlLW5vdC1mb3VuZCB1bC5teS1hY2NvdW50LWxpbmtzIGxpLCAucGFnZS1ub3QtZm91bmQgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwgbGksIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IC5wYWdlLW5vdC1mb3VuZCB1bCBsaSwgLnBhZ2Utbm90LWZvdW5kIC5hZGRyZXNzZXMgLmFkZHJlc3MgdWwuYWN0aW9uLWxpc3QgbGksIC5hZGRyZXNzZXMgLmFkZHJlc3MgLnBhZ2Utbm90LWZvdW5kIHVsLmFjdGlvbi1saXN0IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cblxuLyoqXG5cdFBhZ2UgQ01TIFxuKiovXG4vKiBsaW5lIDY3Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiNjb250ZW50LnBhZ2UtY21zIHtcbiAgbWFyZ2luLWJvdHRvbTogODVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgNjczLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNjb250ZW50LnBhZ2UtY21zIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDY3Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAjY29udGVudC5wYWdlLWNtcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgI2NvbnRlbnQucGFnZS1jbXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLyogbGluZSAyMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzICovXG4gICAgICAjY29udGVudC5wYWdlLWNtcywgI2NvbnRlbnQucGFnZS1jbXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIC8qIGxpbmUgNjc5LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAjY29udGVudC5wYWdlLWNtcyBoMiwgI2NvbnRlbnQucGFnZS1jbXMgLmgyLFxuICAjY29udGVudC5wYWdlLWNtcyBoMyB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLyogbGluZSA2ODYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICNjb250ZW50LnBhZ2UtY21zIGE6Zm9jdXMsICNjb250ZW50LnBhZ2UtY21zIGE6YWN0aXZlLCAjY29udGVudC5wYWdlLWNtcyBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4vKiBsaW5lIDY5Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiNwcmVzdGFibG9nZm9udCBhOmZvY3VzLCAjcHJlc3RhYmxvZ2ZvbnQgYTphY3RpdmUsICNwcmVzdGFibG9nZm9udCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLyoqXG5cdFNob3BwaW5nIGxpc3RcbioqL1xuLyogbGluZSA3MDgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4uc2hvcHBpbmctbGlzdCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi8qIGxpbmUgNzEyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuLnNob3BwaW5nLWxpc3QtYnRuIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRyYW5zaXRpb246IDAuMTVzOyB9XG4gIC8qIGxpbmUgNzE5LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuc2hvcHBpbmctbGlzdC1idG46aG92ZXIge1xuICAgIGNvbG9yOiAjRjM2RDBCOyB9XG4gIC8qIGxpbmUgNzIyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAuc2hvcHBpbmctbGlzdC1idG46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9pY29uLXdpc2hsaXN0LnBuZ1wiKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAvKiBsaW5lIDcyOSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLnNob3BwaW5nLWxpc3QtYnRuLndpc2gtZmlsbDphZnRlciB7XG4gICAgY29udGVudDogdXJsKFwiLi4vaW1nL2ljb24td2lzaGxpc3QtZmlsbC5wbmdcIik7IH1cblxuLyoqIFNlYXJjZGggd2lkZ2V0IG9uIDQwNCBwYWdlICoqL1xuLyogbGluZSA3MzcsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4jY29udGVudCAjc2VhcmNoX3dpZGdldCB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogYXV0bzsgfVxuICAvKiBsaW5lIDc0MCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgI2NvbnRlbnQgI3NlYXJjaF93aWRnZXQgLnNlYXJjaC1maWVsZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLyogbGluZSA3NDIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgI2NvbnRlbnQgI3NlYXJjaF93aWRnZXQgLnNlYXJjaC1maWVsZCAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDsgfVxuICAgIC8qIGxpbmUgNzQ2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNjb250ZW50ICNzZWFyY2hfd2lkZ2V0IC5zZWFyY2gtZmllbGQgLnNlYXJjaC1pbnB1dCB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5oZXJpdDsgfVxuXG4vKipcbiAqIE1peGlucyBcbiAqL1xuLyoqXG4gKlx0TWl4aW4gZm9yIENhcmQgc2xpZGVycyBcbiAqL1xuLyogbGluZSA4NzIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4ubG9hZGVyIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvbG9hZGVyLmdpZlwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICB3aWR0aDogMTAwJTsgfVxuICAvKiBsaW5lIDg3OSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLmxvYWRlci5oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogbGluZSA4ODYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4ucnJzc2ItYnV0dG9ucy50aW55LWZvcm1hdCB7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMwcHg7IH1cblxuLyogbGluZSA4OTIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4uc2hhcmUtY29udGVudC1wcmVzdGFibG9nIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAzN3B4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTdweCAhaW1wb3J0YW50OyB9XG5cbi8qKiBJbXBvcnQgZm9ybXMgKiovXG4vKiBsaW5lIDEsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkNmQ3ZDU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC8qIGxpbmUgMjgsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYTNhNWExO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAvKiBsaW5lIDM1LCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIFt0eXBlPVwidGV4dFwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cInBhc3N3b3JkXCJdOnZhbGlkLmZ1bGwsXG4gIFt0eXBlPVwiZGF0ZVwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cImRhdGV0aW1lXCJdOnZhbGlkLmZ1bGwsXG4gIFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06dmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJtb250aFwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cIndlZWtcIl06dmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJlbWFpbFwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cIm51bWJlclwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cInNlYXJjaFwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cInRlbFwiXTp2YWxpZC5mdWxsLFxuICBbdHlwZT1cInRpbWVcIl06dmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJ1cmxcIl06dmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJjb2xvclwiXTp2YWxpZC5mdWxsLFxuICB0ZXh0YXJlYTp2YWxpZC5mdWxsIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMzNhNDU3O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvdmFsaWQucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNXB4IGNlbnRlcjsgfVxuICAvKiBsaW5lIDQyLCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIFt0eXBlPVwidGV4dFwiXTppbnZhbGlkLmZ1bGwsXG4gIFt0eXBlPVwicGFzc3dvcmRcIl06aW52YWxpZC5mdWxsLFxuICBbdHlwZT1cImRhdGVcIl06aW52YWxpZC5mdWxsLFxuICBbdHlwZT1cImRhdGV0aW1lXCJdOmludmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTppbnZhbGlkLmZ1bGwsXG4gIFt0eXBlPVwibW9udGhcIl06aW52YWxpZC5mdWxsLFxuICBbdHlwZT1cIndlZWtcIl06aW52YWxpZC5mdWxsLFxuICBbdHlwZT1cImVtYWlsXCJdOmludmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJudW1iZXJcIl06aW52YWxpZC5mdWxsLFxuICBbdHlwZT1cInNlYXJjaFwiXTppbnZhbGlkLmZ1bGwsXG4gIFt0eXBlPVwidGVsXCJdOmludmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJ0aW1lXCJdOmludmFsaWQuZnVsbCxcbiAgW3R5cGU9XCJ1cmxcIl06aW52YWxpZC5mdWxsLFxuICBbdHlwZT1cImNvbG9yXCJdOmludmFsaWQuZnVsbCxcbiAgdGV4dGFyZWE6aW52YWxpZC5mdWxsIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjODYwMDAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvLWZhbHNlLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDVweCBjZW50ZXI7IH1cbiAgLyogbGluZSA1MCwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuICBbdHlwZT1cInRleHRcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJwYXNzd29yZFwiXSArIGxhYmVsLFxuICBbdHlwZT1cImRhdGVcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJkYXRldGltZVwiXSArIGxhYmVsLFxuICBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdICsgbGFiZWwsXG4gIFt0eXBlPVwibW9udGhcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJ3ZWVrXCJdICsgbGFiZWwsXG4gIFt0eXBlPVwiZW1haWxcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJudW1iZXJcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJzZWFyY2hcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJ0ZWxcIl0gKyBsYWJlbCxcbiAgW3R5cGU9XCJ0aW1lXCJdICsgbGFiZWwsXG4gIFt0eXBlPVwidXJsXCJdICsgbGFiZWwsXG4gIFt0eXBlPVwiY29sb3JcIl0gKyBsYWJlbCxcbiAgdGV4dGFyZWEgKyBsYWJlbCB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC00OHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xczsgfVxuICAvKiBsaW5lIDYwLCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIFt0eXBlPVwidGV4dFwiXTpmb2N1cyArIGxhYmVsLCBbdHlwZT1cInRleHRcIl0uZnVsbCArIGxhYmVsLFxuICBbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzICsgbGFiZWwsXG4gIFt0eXBlPVwicGFzc3dvcmRcIl0uZnVsbCArIGxhYmVsLFxuICBbdHlwZT1cImRhdGVcIl06Zm9jdXMgKyBsYWJlbCxcbiAgW3R5cGU9XCJkYXRlXCJdLmZ1bGwgKyBsYWJlbCxcbiAgW3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cyArIGxhYmVsLFxuICBbdHlwZT1cImRhdGV0aW1lXCJdLmZ1bGwgKyBsYWJlbCxcbiAgW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyArIGxhYmVsLFxuICBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLmZ1bGwgKyBsYWJlbCxcbiAgW3R5cGU9XCJtb250aFwiXTpmb2N1cyArIGxhYmVsLFxuICBbdHlwZT1cIm1vbnRoXCJdLmZ1bGwgKyBsYWJlbCxcbiAgW3R5cGU9XCJ3ZWVrXCJdOmZvY3VzICsgbGFiZWwsXG4gIFt0eXBlPVwid2Vla1wiXS5mdWxsICsgbGFiZWwsXG4gIFt0eXBlPVwiZW1haWxcIl06Zm9jdXMgKyBsYWJlbCxcbiAgW3R5cGU9XCJlbWFpbFwiXS5mdWxsICsgbGFiZWwsXG4gIFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzICsgbGFiZWwsXG4gIFt0eXBlPVwibnVtYmVyXCJdLmZ1bGwgKyBsYWJlbCxcbiAgW3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMgKyBsYWJlbCxcbiAgW3R5cGU9XCJzZWFyY2hcIl0uZnVsbCArIGxhYmVsLFxuICBbdHlwZT1cInRlbFwiXTpmb2N1cyArIGxhYmVsLFxuICBbdHlwZT1cInRlbFwiXS5mdWxsICsgbGFiZWwsXG4gIFt0eXBlPVwidGltZVwiXTpmb2N1cyArIGxhYmVsLFxuICBbdHlwZT1cInRpbWVcIl0uZnVsbCArIGxhYmVsLFxuICBbdHlwZT1cInVybFwiXTpmb2N1cyArIGxhYmVsLFxuICBbdHlwZT1cInVybFwiXS5mdWxsICsgbGFiZWwsXG4gIFt0eXBlPVwiY29sb3JcIl06Zm9jdXMgKyBsYWJlbCxcbiAgW3R5cGU9XCJjb2xvclwiXS5mdWxsICsgbGFiZWwsXG4gIHRleHRhcmVhOmZvY3VzICsgbGFiZWwsXG4gIHRleHRhcmVhLmZ1bGwgKyBsYWJlbCB7XG4gICAgdG9wOiAtNzJweDsgfVxuXG4vKiBsaW5lIDY1LCBzY3NzL19mb3Jtcy5zY3NzICovXG50ZXh0YXJlYSArIGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDsgfVxuXG4vKiBsaW5lIDY5LCBzY3NzL19mb3Jtcy5zY3NzICovXG50ZXh0YXJlYTpmb2N1cyArIGxhYmVsLCB0ZXh0YXJlYS5mdWxsICsgbGFiZWwge1xuICB0b3A6IC0xOHB4OyB9XG5cbi8qKiBQbGFjZWhvbGRlcnMgKiovXG4vKiBsaW5lIDc0LCBzY3NzL19mb3Jtcy5zY3NzICovXG4jbWFpbiBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgNzcsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbiNtYWluIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOSsgKi9cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIGxpbmUgODEsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbiNtYWluIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIElFIDEwKyAqL1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogbGluZSA4NSwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuI21haW4gaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XG4gIC8qIEZpcmVmb3ggMTgtICovXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiogTGFiZWwgKiovXG4vKiBsaW5lIDkwLCBzY3NzL19mb3Jtcy5zY3NzICovXG5sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAvKiBsaW5lIDkzLCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIGxhYmVsLnJlcXVpcmVkOmFmdGVyIHtcbiAgICBjb250ZW50OiAnKic7IH1cbiAgLyogbGluZSA5OCwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuICBsYWJlbC5zZWxlY3QtZmllbGQucmVxdWlyZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC8qIGxpbmUgMTAzLCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIGxhYmVsLnJhZGlvLWJsb2NrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cblxuLyoqIFJhZGlvIGFuZCBjaGVja2JveCAqKi9cbi8qIGxpbmUgMTEzLCBzY3NzL19mb3Jtcy5zY3NzICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgdG9wOiA1cHg7IH1cbiAgLyogbGluZSAxMjAsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbiAgW3R5cGU9XCJjaGVja2JveFwiXSArIC5wc2V1ZG8tY2hlY2ssIFt0eXBlPVwicmFkaW9cIl0gKyAucHNldWRvLWNoZWNrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNmQ3ZDU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzOyB9XG4gIC8qIGxpbmUgMTMxLCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIFt0eXBlPVwiY2hlY2tib3hcIl1bdHlwZT0nY2hlY2tib3gnXSArIC5wc2V1ZG8tY2hlY2ssIFt0eXBlPVwicmFkaW9cIl1bdHlwZT0nY2hlY2tib3gnXSArIC5wc2V1ZG8tY2hlY2sge1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAvKiBsaW5lIDEzNCwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAucHNldWRvLWNoZWNrLCBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyAucHNldWRvLWNoZWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjM2RDBCOyB9XG4gIC8qIGxpbmUgMTM3LCBzY3NzL19mb3Jtcy5zY3NzICovXG4gIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC5wc2V1ZG8tY2hlY2sgKyBzcGFuLCBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAucHNldWRvLWNoZWNrICsgbGFiZWwsIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsLCBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBzcGFuLFxuICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAucHNldWRvLWNoZWNrICsgZm9ybSArIHNwYW4sIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC5wc2V1ZG8tY2hlY2sgKyBmb3JtICsgbGFiZWwsIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGZvcm0gKyBsYWJlbCwgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgZm9ybSArIHNwYW4sIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIC5wc2V1ZG8tY2hlY2sgKyBzcGFuLCBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyAucHNldWRvLWNoZWNrICsgbGFiZWwsIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsLCBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBzcGFuLFxuICBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyAucHNldWRvLWNoZWNrICsgZm9ybSArIHNwYW4sIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIC5wc2V1ZG8tY2hlY2sgKyBmb3JtICsgbGFiZWwsIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGZvcm0gKyBsYWJlbCwgW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgZm9ybSArIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLyogbGluZSAxNDMsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbiAgW3R5cGU9XCJjaGVja2JveFwiXSArIC5wc2V1ZG8tY2hlY2sgKyBsYWJlbCwgW3R5cGU9XCJjaGVja2JveFwiXSArIC5wc2V1ZG8tY2hlY2sgKyBmb3JtICsgbGFiZWwsIFt0eXBlPVwiY2hlY2tib3hcIl0gKyAucHNldWRvLWNoZWNrICsgc3BhbiwgW3R5cGU9XCJyYWRpb1wiXSArIC5wc2V1ZG8tY2hlY2sgKyBsYWJlbCwgW3R5cGU9XCJyYWRpb1wiXSArIC5wc2V1ZG8tY2hlY2sgKyBmb3JtICsgbGFiZWwsIFt0eXBlPVwicmFkaW9cIl0gKyAucHNldWRvLWNoZWNrICsgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG5cbi8qKiBFcnJvcnMgKiovXG4vKiBsaW5lIDE1Miwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuLmZvcm0tZXJyb3JzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzdjNztcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGNvbG9yOiAjODYwMDAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC8qIGxpbmUgNTUsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzICovXG4gIC5mb3JtLWVycm9ycyA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAvKiBsaW5lIDU5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyAqL1xuICAuZm9ybS1lcnJvcnMgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAvKiBsaW5lIDE2MCwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuICAuZm9ybS1lcnJvcnMgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cbi8qKiBHZm9ybXBybyAqKi9cbi8qIGxpbmUgMTY3LCBzY3NzL19mb3Jtcy5zY3NzICovXG4uZ2Zvcm1idWlsZGVycHJvX2Zvcm0gLml0ZW1maWVsZF93cC5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5nZm9ybWJ1aWxkZXJwcm9fZm9ybSAuaXRlbWZpZWxkX3dwLnJvdzo6YmVmb3JlLCAuZ2Zvcm1idWlsZGVycHJvX2Zvcm0gLml0ZW1maWVsZF93cC5yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLmdmb3JtYnVpbGRlcnByb19mb3JtIC5pdGVtZmllbGRfd3Aucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLyogbGluZSAxNzAsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbi5nZm9ybWJ1aWxkZXJwcm9fZm9ybSAuaXRlbWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNzAsIHNjc3MvX2Zvcm1zLnNjc3MgKi9cbiAgICAuZ2Zvcm1idWlsZGVycHJvX2Zvcm0gLml0ZW1maWVsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gIC5nZm9ybWJ1aWxkZXJwcm9fZm9ybSAuaXRlbWZpZWxkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4vKiBsaW5lIDE3Mywgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuLmdmb3JtYnVpbGRlcnByb19mb3JtIC5mb3JtYnVpbGRlcl9ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMTczLCBzY3NzL19mb3Jtcy5zY3NzICovXG4gICAgLmdmb3JtYnVpbGRlcnByb19mb3JtIC5mb3JtYnVpbGRlcl9ncm91cCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gIC5nZm9ybWJ1aWxkZXJwcm9fZm9ybSAuZm9ybWJ1aWxkZXJfZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi8qIGxpbmUgMTc4LCBzY3NzL19mb3Jtcy5zY3NzICovXG4uZ2Zvcm1idWlsZGVycHJvX2FjdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKiBsaW5lIDE4Miwgc2Nzcy9fZm9ybXMuc2NzcyAqL1xuI3BzZm9ybSAjY29tbWVudCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgfVxuXG4vKiogSW1wb3J0IEhlYWRlciBzdHlsZXMgKi9cbi8qKlxuICogSGVhZGVyIGN1c3RvbWlzYXRpb25zXG4gKi9cbi8qIGxpbmUgMjIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4jaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7IH1cbiAgLyogbGluZSAzNCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhID4gLmNvbHVtbiwgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhID4gLmNvbHVtbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAvKiBsaW5lIDM4LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmJhY2stdG8tcG9ydGFpbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLyogbGluZSAzOCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuYmFjay10by1wb3J0YWlsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLyogbGluZSA1Mywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmJhY2stdG8tcG9ydGFpbCBhIHtcbiAgICAgIGNvbG9yOiAjMjIyMjJBO1xuICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIC8qIGxpbmUgNTksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmJhY2stdG8tcG9ydGFpbCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC8qIGxpbmUgNjMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmJhY2stdG8tcG9ydGFpbCBhOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC1ibGFjay5wbmdcIik7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIC8qIGxpbmUgNzIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuZW5nbGlzaC1wYWdlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDQ3cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgLyogbGluZSA3Nywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmVuZ2xpc2gtcGFnZSBhIHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC8qIGxpbmUgODEsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmVuZ2xpc2gtcGFnZSBhIGltZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAvKiBsaW5lIDcyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhIC5lbmdsaXNoLXBhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLyogbGluZSA5MSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhIC5jdXN0b21lci1idXR0b24tY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLyogbGluZSA5MSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC8qIGxpbmUgMTEwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAubG9naW4tYnV0dG9uLFxuICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tZXItYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4IDVweCAxNXB4OyB9XG4gICAgICAvKiBsaW5lIDExOCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAubG9naW4tYnV0dG9uIC5idXR0b24tdGV4dCxcbiAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tZXItYnV0dG9uIC5idXR0b24tdGV4dCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogIzIyMjIyQTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgICAvKiBsaW5lIDEyNCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhIC5jdXN0b21lci1idXR0b24tY29udGFpbmVyIC5sb2dpbi1idXR0b24gLmJ1dHRvbi10ZXh0OmhvdmVyLFxuICAgICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgLmN1c3RvbWVyLWJ1dHRvbiAuYnV0dG9uLXRleHQ6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAgIC8qIGxpbmUgMTM2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgLmxvZ2luLWJ1dHRvbiAuYnV0dG9uLXRleHQ6YmVmb3JlLFxuICAgICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgLmN1c3RvbWVyLWJ1dHRvbiAuYnV0dG9uLXRleHQ6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvaWNvbi1jbGllbnQucG5nXCIpO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gICAgICAgICAgaGVpZ2h0OiAzNHB4OyB9XG4gICAgLyogbGluZSAxNjAsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhIC5jdXN0b21lci1idXR0b24tY29udGFpbmVyIC5jdXN0b21lci1idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAvKiBsaW5lIDE2Mywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tZXItYnV0dG9uOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9jaGV2cm9uLXNvdXMtbWVudS1ibGFjay5wbmdcIik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICByaWdodDogLTVweDsgfVxuICAgIC8qIGxpbmUgMTc2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tZXItbWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTc4OyB9XG4gICAgICAvKiBsaW5lIDE4Mywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tZXItbWVudSBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgLyogbGluZSAxODYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tZXItbWVudSBsaSBhIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtaW4td2lkdGg6IDE4MHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZENTQ1OyB9XG4gICAgICAgICAgLyogbGluZSAxNiwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgLmN1c3RvbWVyLW1lbnUgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1OyB9XG4gICAgLyogbGluZSAxOTgsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuY3VzdG9tZXItbGluay1hcmVhIC5jdXN0b21lci1idXR0b24tY29udGFpbmVyIHVsIHtcbiAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDEwcHggMTVweDsgfVxuICAgICAgLyogbGluZSAyMDEsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgdWwgbGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIC8qIGxpbmUgMjA1LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgdWwgbGkgYSB7XG4gICAgICAgICAgY29sb3I6ICMyMjIyMkE7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgICAgIC8qIGxpbmUgMjExLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICNoZWFkZXIgLmN1c3RvbWVyLWxpbmstYXJlYSAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAgIC8qIGxpbmUgMjE2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5jdXN0b21lci1saW5rLWFyZWEgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLyogbGluZSAyMSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMDIwMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY2F2aXN0ZXMucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSAyNjIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLmhlYWRlci1pbWFnZS1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMDIwMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY2F2aXN0ZXMucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9XG4gICAgLyogbGluZSAyNzYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLWltYWdlLWJnLmhlYWRlci1pbWFnZS1iZy0tcGFkZGluZyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogODBweCAhaW1wb3J0YW50OyB9IH1cblxuLyogbGluZSAyODIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4jaGVhZGVyIC5oZWFkZXItdG9wIHtcbiAgaGVpZ2h0OiAxNzFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC8qIGxpbmUgMjg2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItdG9wIC5sb2dvLWxpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDE0cHg7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLyogbGluZSAyODYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5sb2dvLWxpbmsge1xuICAgICAgICB0b3A6IDQwcHg7IH0gfVxuICAgIC8qIGxpbmUgMjk2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AgLmxvZ28tbGluayBpbWcge1xuICAgICAgd2lkdGg6IDc3cHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMjk2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5sb2dvLWxpbmsgaW1nIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAvKiBsaW5lIDMwNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLXRvcCAuaGVhZGVyLXNsb2dhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMzVweDtcbiAgICByaWdodDogMjQwcHg7XG4gICAgbGVmdDogMTEwcHg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDMwNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLmhlYWRlci1zbG9nYW4ge1xuICAgICAgICB0b3A6IDcwcHg7XG4gICAgICAgIGxlZnQ6IDE3NXB4O1xuICAgICAgICBmb250LXNpemU6IDMzcHg7IH0gfVxuICAvKiBsaW5lIDMyNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLXRvcCAjc2VhcmNoX3dpZGdldCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAyMzBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDMyNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQge1xuICAgICAgICB0b3A6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDMyNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQge1xuICAgICAgICB0b3A6IDU2cHg7IH0gfVxuICAgIC8qIGxpbmUgMzQxLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLyogbGluZSAzNDQsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wICNzZWFyY2hfd2lkZ2V0IGZvcm0gLnNlYXJjaC1maWVsZCAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICB6LWluZGV4OiAzOyB9XG4gICAgICAvKiBsaW5lIDM1MSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgICAgLyogbGluZSAzNTgsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgICAgLyogbGluZSAzNjUsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMzcyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wICNzZWFyY2hfd2lkZ2V0IGZvcm0gLnNlYXJjaC1maWVsZCAuc2VhcmNoLWlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMzc5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wICNzZWFyY2hfd2lkZ2V0IGZvcm0gLnNlYXJjaC1maWVsZCAuc2VhcmNoLWlucHV0Oi1tb3otaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgICAgLyogbGluZSAzODYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLyogbGluZSAzOTcsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcCAjc2VhcmNoX3dpZGdldCAjc2VhcmNoX3BvcHVwIC5wcm9kdWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwYWRkaW5nOiA1cHg7IH1cbiAgICAgIC8qIGxpbmUgNDAyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcCAjc2VhcmNoX3dpZGdldCAjc2VhcmNoX3BvcHVwIC5wcm9kdWN0OmhvdmVyLCAjaGVhZGVyIC5oZWFkZXItdG9wICNzZWFyY2hfd2lkZ2V0ICNzZWFyY2hfcG9wdXAgLnByb2R1Y3Q6Zm9jdXMsICNoZWFkZXIgLmhlYWRlci10b3AgI3NlYXJjaF93aWRnZXQgI3NlYXJjaF9wb3B1cCAucHJvZHVjdDphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OyB9XG4gICAgLyogbGluZSA0MDksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcCAjc2VhcmNoX3dpZGdldCAjc2VhcmNoX3BvcHVwIC5zZWFyY2hfaW1nIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHdpZHRoOiAyMCU7IH1cbiAgICAvKiBsaW5lIDQxNCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5oZWFkZXItdG9wICNzZWFyY2hfd2lkZ2V0ICNzZWFyY2hfcG9wdXAgLnNlYXJjaF9pbmZvIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAgIC8qIGxpbmUgNDE5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcCAjc2VhcmNoX3dpZGdldCAjc2VhcmNoX3BvcHVwIC5zZWFyY2hfaW5mbyAucHJvZHVjdF9uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC8qIGxpbmUgNDI3LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogLTdweDtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgNDI3LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcCAubWFpbi1tZW51IHtcbiAgICAgICAgbGVmdDogMTc1cHg7IH0gfVxuICAgIC8qIGxpbmUgNDQwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSAubWVudSwgI2hlYWRlciAuaGVhZGVyLXRvcCAubWFpbi1tZW51IC5wYWdlLW15LWFjY291bnQgLmxpbmstbGlzdCwgLnBhZ2UtbXktYWNjb3VudCAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgLmxpbmstbGlzdCwgI2hlYWRlciAuaGVhZGVyLXRvcCAubWFpbi1tZW51IC5teS1hY2NvdW50LWxpbmtzLCAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYgdWwsIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2ICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSB1bCwgI2hlYWRlciAuaGVhZGVyLXRvcCAubWFpbi1tZW51IC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFjdGlvbi1saXN0LCAuYWRkcmVzc2VzIC5hZGRyZXNzICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSAuYWN0aW9uLWxpc3Qge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNDQ0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAvKiBsaW5lIDQ0OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpID4gYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLyogbGluZSA0NjQsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5jdXJyZW50ID4gYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLyogbGluZSA0ODIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5zdWJtZW51ID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAgICAgLyogbGluZSA0ODksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5zdWJtZW51ID4gYTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvY2hldnJvbi1zb3VzLW1lbnUucG5nXCIpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA0cHg7XG4gICAgICAgIHRvcDogLTJweDsgfVxuICAgICAgLyogbGluZSA0OTYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5zdWJtZW51IC5zdWIge1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgICAgIC8qIGxpbmUgNTAyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5zdWJtZW51IC5zdWIgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAgICAgICAgIC8qIGxpbmUgNTA2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICAvKiBsaW5lIDUxMSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCA+IGxpID4gYSxcbiAgICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCA+IGxpID4gLnN1Ym1vcmUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgICAvKiBsaW5lIDUxNiwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCA+IGxpID4gdWwge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICAvKiBsaW5lIDUyMiwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCBsaSBhIHtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZjOTEyOyB9XG4gICAgICAgICAgICAgIC8qIGxpbmUgNTMwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5zdWJtZW51IC5zdWIgLnN1Ym1lbnUtY29udGFpbmVyID4gdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzkxMjsgfVxuICAgICAgICAgICAgLyogbGluZSA1MzUsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5zdWJtZW51IC5zdWIgLnN1Ym1lbnUtY29udGFpbmVyID4gdWwgbGkuY3VycmVudCBhIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC8qIGxpbmUgNTQ1LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IC5saS1zZXBhcmF0b3Ige1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NlcC1tZW51LnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogNnB4O1xuICAgICAgaGVpZ2h0OiA1cHg7IH1cbiAgICAgIC8qIGxpbmUgNTUwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcCAubWFpbi1tZW51ID4gLmxpLXNlcGFyYXRvcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBsaW5lIDU1Nywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIHtcbiAgaGVpZ2h0OiA2NHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4OyB9XG4gIC8qIGxpbmUgNTY1LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuYnV0dG9uLWhvbGRlci1sZWZ0LFxuICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuYnV0dG9uLWhvbGRlci1yaWdodCB7XG4gICAgZmxleDogMTsgfVxuICAvKiBsaW5lIDU3MCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gICAgLyogbGluZSA1NzMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAjYmxvY2tjYXJ0LXdyYXBwZXIsXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAjc2VhcmNoX3dpZGdldCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAvKiBsaW5lIDU3OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuYnV0dG9uLWhvbGRlci1sZWZ0ICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIC8qIGxpbmUgNTgxLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAjYmxvY2tjYXJ0LXdyYXBwZXIgYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgIC8qIGxpbmUgNTg2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5idXR0b24taG9sZGVyLWxlZnQgI3NlYXJjaF93aWRnZXQge1xuICAgICAgbGluZS1oZWlnaHQ6IDU4cHg7IH1cbiAgICAgIC8qIGxpbmUgNTg5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAjc2VhcmNoX3dpZGdldCAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC8qIGxpbmUgNTkzLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAjc2VhcmNoX3dpZGdldCAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLThweDtcbiAgICAgICAgbGVmdDogMSU7XG4gICAgICAgIHJpZ2h0OiAxJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JheTtcbiAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC8qIGxpbmUgNjA4LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAjc2VhcmNoX3dpZGdldCAuc2VhcmNoLWhvbGRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA2NHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlNjkyO1xuICAgICAgICB6LWluZGV4OiA5OyB9XG4gICAgICAgIC8qIGxpbmUgNjA5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuYnV0dG9uLWhvbGRlci1sZWZ0ICNzZWFyY2hfd2lkZ2V0IC5zZWFyY2gtaG9sZGVyIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICByaWdodDogLTFweDtcbiAgICAgICAgICB0b3A6IC00cHg7IH1cbiAgICAgICAgICAvKiBsaW5lIDYxNSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuYnV0dG9uLWhvbGRlci1sZWZ0ICNzZWFyY2hfd2lkZ2V0IC5zZWFyY2gtaG9sZGVyIC5zZWFyY2gtYnV0dG9uIGltZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLyogbGluZSA2MzIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmJ1dHRvbi1ob2xkZXItbGVmdCAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogNTJweDsgfVxuICAgICAgLyogbGluZSA2MzYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuYnV0dG9uLWhvbGRlci1sZWZ0IC5jdXN0b21lci1idXR0b24tY29udGFpbmVyIC5sb2dpbi1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLyogbGluZSA2MzksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5idXR0b24taG9sZGVyLWxlZnQgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgLmxvZ2luLWJ1dHRvbiAuYnV0dG9uLXRleHQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLyogbGluZSA2NDMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5idXR0b24taG9sZGVyLWxlZnQgLmN1c3RvbWVyLWJ1dHRvbi1jb250YWluZXIgLmxvZ2luLWJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9pY29uLWNsaWVudC5wbmdcIik7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgICAgICAgICBoZWlnaHQ6IDM0cHg7IH1cbiAgLyogbGluZSA2NTgsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5sb2dvLWxpbmsge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLyogbGluZSA2NjIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLmxvZ28tbGluayBpbWcge1xuICAgICAgd2lkdGg6IDM5cHg7XG4gICAgICBoZWlnaHQ6IDQycHg7IH1cbiAgLyogbGluZSA2NjgsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgbGluZS1oZWlnaHQ6IDU4cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGZsb2F0OiBub25lOyB9XG4gIC8qIGxpbmUgNjc0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAuZW5nbGlzaC1wYWdlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDQ3cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi10b3A6IDdweDsgfVxuICAgIC8qIGxpbmUgNjgwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5lbmdsaXNoLXBhZ2UgYSB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgICAvKiBsaW5lIDY4NCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5lbmdsaXNoLXBhZ2UgYSBpbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAvKiBsaW5lIDY5MCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBjb2xvcjogIzIyMjIyQTtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC8qIGxpbmUgNjk5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LWJ1dHRvbjphZnRlciB7XG4gICAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvbWVudS1pcy1jbG9zZS5wbmdcIik7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAvKiBsaW5lIDcwOCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1idXR0b24ubWVudS1vcGVuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9tZW51LWlzLW9wZW4ucG5nXCIpOyB9XG4gIC8qIGxpbmUgNzEzLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkQ1NDU7XG4gICAgcGFkZGluZzogMTVweDsgfVxuICAgIC8qIGxpbmUgNzIyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSBsaSB7XG4gICAgICBtYXJnaW46IDAgMjVweCAxNXB4IDI1cHg7IH1cbiAgICAgIC8qIGxpbmUgNzI1LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgLyogbGluZSA3MzQsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSBsaSBhOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgLyogbGluZSA3MzksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgbGkuc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIC8qKiBTdWJtZW51ICoqLyB9XG4gICAgICAgIC8qIGxpbmUgNzQyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgbGkuc3VibWVudSA+IGEge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMzBweDsgfVxuICAgICAgICAvKiBsaW5lIDc0OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpLnN1Ym1lbnUgLnN1Ym1vcmU6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL2NoZXZyb24tc291cy1tZW51LWJsYWNrLnBuZ1wiKTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICB6LWluZGV4OiAtMTsgfVxuICAgICAgICAvKiBsaW5lIDc1OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpLnN1Ym1lbnUgLnN1YiB7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAgICAgICAgIC8qIGxpbmUgNzYyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSBsaS5zdWJtZW51IC5zdWIgLnN1Ym1lbnUtY29udGFpbmVyID4gdWwge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAjZmZlODk3IDFweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkICNmZmU4OTcgMXB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDExcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7IH1cbiAgICAgICAgICAgIC8qIGxpbmUgNzY5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCA+IGxpID4gYSxcbiAgICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSBsaS5zdWJtZW51IC5zdWIgLnN1Ym1lbnUtY29udGFpbmVyID4gdWwgPiBsaSA+IC5zdWJtb3JlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICAgLyogbGluZSA3NzQsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgbGkuc3VibWVudSAuc3ViIC5zdWJtZW51LWNvbnRhaW5lciA+IHVsIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgICAgICAgICAvKiBsaW5lIDc3OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCBsaSBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgICAgICAgICAgICAvKiBsaW5lIDc4Miwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCBsaSB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICAvKiBsaW5lIDc4NSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgbGkuc3VibWVudSAuc3ViIC5zdWJtZW51LWNvbnRhaW5lciA+IHVsIGxpIHVsIGxpIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4IDEwcHg7IH1cbiAgICAgICAgICAgICAgICAgIC8qIGxpbmUgNzg4LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIGxpLnN1Ym1lbnUgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCBsaSB1bCBsaSBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAvKiBsaW5lIDc5OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSBsaS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgYSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7IH1cbiAgICAgICAgLyogbGluZSA4MDIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSBsaS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgYTphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gICAgLyogbGluZSA4MTAsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlICNzZWFyY2hfd2lkZ2V0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyM3B4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgICAgLyogbGluZSA4MTgsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNXB4OyB9XG4gICAgICAvKiBsaW5lIDgyMywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAjc2VhcmNoX3dpZGdldCBmb3JtIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1pbnB1dCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJsYWNrOyB9XG4gICAgLyogbGluZSA4MzAsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIC5jdXN0b21lci1saW5rLW1vYmlsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICAgICAvKiBsaW5lIDgzMywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgLmxvZ2luLWJ1dHRvbixcbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgLmN1c3RvbWVyLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDI3cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC8qIGxpbmUgODUyLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgLmN1c3RvbWVyLWxpbmstbW9iaWxlIC5sb2dpbi1idXR0b246YmVmb3JlLFxuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgLmN1c3RvbWVyLWxpbmstbW9iaWxlIC5jdXN0b21lci1idXR0b246YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvaWNvbi1jbGllbnQtbW9iaWxlLnBuZ1wiKTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cbiAgICAgIC8qIGxpbmUgODYwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIC5jdXN0b21lci1saW5rLW1vYmlsZSAjYmxvY2tjYXJ0LXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAvKiBsaW5lIDg2NSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgLmN1c3RvbWVyLWJ1dHRvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1ib3R0b20td2hpdGUucG5nXCIpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC8qIGxpbmUgODc0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIC5jdXN0b21lci1saW5rLW1vYmlsZSB1bCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgLyogbGluZSA4NzksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgdWwgbGkge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZmZmZjsgfVxuICAgICAgICAgIC8qIGxpbmUgODgzLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgdWwgbGkgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAgICAgICAvKiBsaW5lIDg4OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgICAgIC8qIGxpbmUgODkzLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAvKiBsaW5lIDg5OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgLmJhY2stdG8tcG9ydGFpbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgLyogbGluZSA5MTAsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbW9iaWxlIC5tZW51LW1vYmlsZSAuY3VzdG9tZXItbGluay1tb2JpbGUgLmJhY2stdG8tcG9ydGFpbCBhIHtcbiAgICAgICAgICBjb2xvcjogIzIyMjIyQTtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgICAgLyogbGluZSA5MTYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1tb2JpbGUgLm1lbnUtbW9iaWxlIC5jdXN0b21lci1saW5rLW1vYmlsZSAuYmFjay10by1wb3J0YWlsIGE6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgICAvKiBsaW5lIDkyMCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW1vYmlsZSAubWVudS1tb2JpbGUgLmN1c3RvbWVyLWxpbmstbW9iaWxlIC5iYWNrLXRvLXBvcnRhaWwgYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL2Fycm93LXJpZ2h0LWJsYWNrLnBuZ1wiKTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLyogbGluZSA5MzIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4jaGVhZGVyIC5oZWFkZXItbWlkZGxlIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSA5MzIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLyogbGluZSA5MzIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IH0gfVxuICAvKiBsaW5lIDk2MCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSAuaGVhZGVyLW1pZGRsZS10aXRsZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbjogMCAwIDMwcHggMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDk2MCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci1taWRkbGUgLmhlYWRlci1taWRkbGUtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgICAgICAgLyogbGluZSA5NzMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci1taWRkbGUgLmhlYWRlci1taWRkbGUtdGl0bGU6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vcm1hbDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgOTYwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSAuaGVhZGVyLW1pZGRsZS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gIC8qIGxpbmUgOTg3LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItbWlkZGxlIC5oZWFkZXItbWlkZGxlLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLyogbGluZSA5OTgsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItbWlkZGxlIC5oZWFkZXItbWlkZGxlLXN1YnRpdGxlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9ybWFsOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA5ODcsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5oZWFkZXItbWlkZGxlIC5oZWFkZXItbWlkZGxlLXN1YnRpdGxlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDM0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfSB9XG4gIC8qIGxpbmUgMTAxMCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSAuaGVhZGVyLXJlYXNzdXJhbmNlIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAvKiBsaW5lIDEwMTQsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLW1pZGRsZSAuaGVhZGVyLXJlYXNzdXJhbmNlIC5pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgICAgIC8qIGxpbmUgMTAxNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci1taWRkbGUgLmhlYWRlci1yZWFzc3VyYW5jZSAuaXRlbSAuaW1nLWNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgICAgIC8qIGxpbmUgMTAyNSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci1taWRkbGUgLmhlYWRlci1yZWFzc3VyYW5jZSAuaXRlbSAudGV4dC1sZWdlbmQge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuLyogbGluZSAxMDM5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuI2hlYWRlciAuaGVhZGVyLWJvdHRvbS1tb2JpbGUgLnN1YmRvbWFpbi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMzBweCA1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cbiAgLyogbGluZSAxMDQ3LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItYm90dG9tLW1vYmlsZSAuc3ViZG9tYWluLWxpbmsgaDMge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLyogbGluZSAxMDU3LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItYm90dG9tLW1vYmlsZSAuc3ViZG9tYWluLWxpbmsgLmNvbW1lcmNpYWwtdGV4dCwgI2hlYWRlciAuaGVhZGVyLWJvdHRvbS1tb2JpbGUgLnN1YmRvbWFpbi1saW5rIC5jb21tZXJjaWFsLWhvb2sge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAvKiBsaW5lIDEwNjcsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLmhlYWRlci1ib3R0b20tbW9iaWxlIC5zdWJkb21haW4tbGluayAuY29tbWVyY2lhbC1ob29rIHtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC8qIGxpbmUgMTA3Miwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbS1tb2JpbGUgLnN1YmRvbWFpbi1saW5rOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgei1pbmRleDogLTE7IH1cbiAgLyogbGluZSAxMDgzLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItYm90dG9tLW1vYmlsZSAuc3ViZG9tYWluLWxpbms6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VmYzgzYTsgfVxuXG4vKiBsaW5lIDEwOTUsIHNjc3MvX2hlYWRlci5zY3NzICovXG4jaGVhZGVyIC5oZWFkZXItYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206IDc1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDEwOTUsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDsgfSB9XG4gIC8qIGxpbmUgMTEwMywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuc3ViZG9tYWluLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaGFkb3c6IDAgLTVweCAyMHB4ICMxMjEyMTI7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBtYXJnaW46IC0xMTBweCBhdXRvIDMwcHggYXV0bztcbiAgICBtYXgtd2lkdGg6IDE1NXB4O1xuICAgIGhlaWdodDogMTU1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgMTEwMywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci1ib3R0b20gLnN1YmRvbWFpbi1saW5rIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgICAgbWFyZ2luOiAtMTg1cHggYXV0byAzNXB4IGF1dG87IH0gfVxuICAgIC8qIGxpbmUgMTEyMCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5oZWFkZXItYm90dG9tIC5zdWJkb21haW4tbGluazpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICB0cmFuc2l0aW9uOiAwLjRzOyB9XG4gICAgLyogbGluZSAxMTMxLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLmhlYWRlci1ib3R0b20gLnN1YmRvbWFpbi1saW5rOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgLTVweCAzMHB4ICMwZDBkMGQ7IH1cbiAgICAgIC8qIGxpbmUgMTEzNCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci1ib3R0b20gLnN1YmRvbWFpbi1saW5rOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAgICAgLyogbGluZSAxMTM4LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuc3ViZG9tYWluLWxpbms6aG92ZXI6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7IH1cbiAgICAvKiBsaW5lIDExNDMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuc3ViZG9tYWluLWxpbms6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9ybWFsOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgICAvKiBsaW5lIDExNDMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci1ib3R0b20gLnN1YmRvbWFpbi1saW5rOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMC40cztcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jb250b3VyLWRpYWdvbmFsZS5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDgyJSA4MiU7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9IH1cbiAgICAvKiBsaW5lIDExNjIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuc3ViZG9tYWluLWxpbmsgaDMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMTE2Miwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuc3ViZG9tYWluLWxpbmsgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIC8qIGxpbmUgMTE4Miwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuY29tbWVyY2lhbC10ZXh0LCAjaGVhZGVyIC5oZWFkZXItYm90dG9tIC5oZWFkZXItYm90dG9tLW1vYmlsZSAuc3ViZG9tYWluLWxpbmsgLmNvbW1lcmNpYWwtaG9vaywgI2hlYWRlciAuaGVhZGVyLWJvdHRvbS1tb2JpbGUgLnN1YmRvbWFpbi1saW5rIC5oZWFkZXItYm90dG9tIC5jb21tZXJjaWFsLWhvb2ssICNoZWFkZXIgLmhlYWRlci1ib3R0b20gLmNvbW1lcmNpYWwtaG9vayB7XG4gICAgbWF4LXdpZHRoOiAxODBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgMTE4Miwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLmhlYWRlci1ib3R0b20gLmNvbW1lcmNpYWwtdGV4dCwgI2hlYWRlciAuaGVhZGVyLWJvdHRvbSAuaGVhZGVyLWJvdHRvbS1tb2JpbGUgLnN1YmRvbWFpbi1saW5rIC5jb21tZXJjaWFsLWhvb2ssICNoZWFkZXIgLmhlYWRlci1ib3R0b20tbW9iaWxlIC5zdWJkb21haW4tbGluayAuaGVhZGVyLWJvdHRvbSAuY29tbWVyY2lhbC1ob29rLCAjaGVhZGVyIC5oZWFkZXItYm90dG9tIC5jb21tZXJjaWFsLWhvb2sge1xuICAgICAgICBtYXgtd2lkdGg6IDIxMHB4OyB9IH1cbiAgLyogbGluZSAxMTk4LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5oZWFkZXItYm90dG9tIC5jb21tZXJjaWFsLWhvb2sge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogbGluZSAxMjA0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuI2hlYWRlciAuc3ViZG9tYWluLWxpbmsge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgLyogbGluZSAxMjA5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5zdWJkb21haW4tbGluay5pbmZvcm1hdGlvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ZyYW5rLW1ja2VubmEtMjUyMDE0LmpwZ1wiKTsgfVxuICAvKiBsaW5lIDEyMTMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLnN1YmRvbWFpbi1saW5rLmNhdmlzdGVzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmVlci1iYXJyZWwta2VnLWNhc2stb2FrLmpwZ1wiKTsgfVxuICAvKiBsaW5lIDEyMTcsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLnN1YmRvbWFpbi1saW5rLmNhdmVzLWJhcnMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9wZXhlbHMtcGhvdG8tNDgxNjc2LmpwZ1wiKTsgfVxuICAvKiBsaW5lIDEyMjEsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLnN1YmRvbWFpbi1saW5rLmV2ZW50LW9yZ2FuaXplciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3BleGVscy1waG90by00NzQ4OTMuanBnXCIpOyB9XG5cbi8qIGxpbmUgMTIyNywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiNibG9ja2NhcnQtd3JhcHBlciB7XG4gIGZsb2F0OiByaWdodDtcbiAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gIC8qIGxpbmUgMTIzOCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2Jsb2NrY2FydC13cmFwcGVyIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC8qIGxpbmUgMTI0MSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjYmxvY2tjYXJ0LXdyYXBwZXIgYS5teS1jYXJ0LXRleHQsICNibG9ja2NhcnQtd3JhcHBlciBhLm15LWZhdm9yaXRlcy10ZXh0IHtcbiAgICAgIGNvbG9yOiAjMjIyMjJBO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbiAgICAgIC8qIGxpbmUgMTI0Niwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNibG9ja2NhcnQtd3JhcHBlciBhLm15LWNhcnQtdGV4dDpob3ZlciwgI2Jsb2NrY2FydC13cmFwcGVyIGEubXktZmF2b3JpdGVzLXRleHQ6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAvKiBsaW5lIDEyNDEsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNibG9ja2NhcnQtd3JhcHBlciBhLm15LWNhcnQtdGV4dCwgI2Jsb2NrY2FydC13cmFwcGVyIGEubXktZmF2b3JpdGVzLXRleHQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC8qIGxpbmUgMTI2MCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjYmxvY2tjYXJ0LXdyYXBwZXIgYS5teS1mYXZvcml0ZXMtdGV4dCAuaWNvbiB7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGhlaWdodDogMTVweDsgfVxuICAgIC8qIGxpbmUgMTI2Niwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjYmxvY2tjYXJ0LXdyYXBwZXIgYSAucHJvZHVjdHMtYmFkZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtOHB4O1xuICAgICAgcmlnaHQ6IC04cHg7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kOiAjRjM2RDBCO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjdweDtcbiAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgIG1pbi13aWR0aDogMTRweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLyogbGluZSAxMjg3LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAuY3VzdG9tZXItbGluay1hcmVhICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIGxpbmUgMTI5Mywgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiNpbmRleCAjaGVhZGVyIC5oZWFkZXItaW1hZ2UtYmcge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4vKiogU3RpY2t5IG1lbnUgKiovXG4vKiBsaW5lIDEyOTksIHNjc3MvX2hlYWRlci5zY3NzICovXG4jaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC0xMTBweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzO1xuICB6LWluZGV4OiA5OTk5OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC8qIGxpbmUgMTI5OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIC8qIGxpbmUgMTMxMSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAubm90aWZpY2F0aW9uIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzLCBwYWRkaW5nIDAuM3M7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLyogbGluZSAxMzE5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50LnNob3cge1xuICAgIHRvcDogMHB4OyB9XG4gICAgLyogbGluZSAxMzIxLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQuc2hvdyAubm90aWZpY2F0aW9uIHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cbiAgLyogbGluZSAxMzI5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5oZWFkZXItdG9wIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAvKiBsaW5lIDEzMzIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuaGVhZGVyLXRvcCAubG9nby1saW5rIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIC8qIGxpbmUgMTMzOSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmhlYWRlci10b3AgLmxvZ28tbGluayBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC8qIGxpbmUgMTM0NSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5oZWFkZXItdG9wIC5tYWluLW1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMjNweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMzNweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyM3B4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH1cbiAgICAgIC8qIGxpbmUgMTM1OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgLyogbGluZSAxMzY0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5oZWFkZXItdG9wIC5tYWluLW1lbnUgPiBsaS5jdXJyZW50IGE6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAgICAgICAvKiBsaW5lIDEzNjksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTM3NCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuaGVhZGVyLXRvcCAubWFpbi1tZW51ID4gbGkuc3VibWVudSA+IGE6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvY2hldnJvbi1zb3VzLW1lbnUtYmxhY2sucG5nXCIpOyB9XG4gICAgICAgIC8qIGxpbmUgMTM3OSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuaGVhZGVyLXRvcCAubWFpbi1tZW51ID4gbGkgLnN1YiAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmM5MTI7IH1cbiAgICAgICAgICAvKiBsaW5lIDEzODIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuaGVhZGVyLXRvcCAubWFpbi1tZW51ID4gbGkgLnN1YiAuc3VibWVudS1jb250YWluZXIgPiB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGMwMDA7IH1cbiAgICAgIC8qIGxpbmUgMTM4OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IC5saS1zZXBhcmF0b3Ige1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAvKiBsaW5lIDEzOTIsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmhlYWRlci10b3AgLm1haW4tbWVudSA+IC5saS1zZXBhcmF0b3I6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBsaW5lIDEzOTksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmxvZ2luLWJ1dHRvbixcbiAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuY3VzdG9tZXItYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC8qIGxpbmUgMTQwNSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5sb2dpbi1idXR0b24gLmJ1dHRvbi10ZXh0LFxuICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmN1c3RvbWVyLWJ1dHRvbiAuYnV0dG9uLXRleHQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgMTQxNCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5sb2dpbi1idXR0b246aG92ZXIsICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgLmxvZ2luLWJ1dHRvbjpmb2N1cyxcbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5jdXN0b21lci1idXR0b246aG92ZXIsXG4gICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuY3VzdG9tZXItYnV0dG9uOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAvKiBsaW5lIDE0MTksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAubG9naW4tYnV0dG9uOjpiZWZvcmUsXG4gICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAuY3VzdG9tZXItYnV0dG9uOjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL2ljb24tY2xpZW50LnBuZ1wiKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBsaW5lLWhlaWdodDogOTRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBsaW5lLWhlaWdodDogMTA1cHg7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gICAgICBoZWlnaHQ6IDM0cHg7IH1cbiAgLyogbGluZSAxNDM1LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IC5jdXN0b21lci1idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAvKiBsaW5lIDE0MzksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgI3NlYXJjaF93aWRnZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICB3aWR0aDogMjlweDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjMwcHg7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC8qIGxpbmUgMTQ1MCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50ICNzZWFyY2hfd2lkZ2V0IGZvcm0gLnNlYXJjaC1maWVsZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgLyogbGluZSAxNDUzLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAjc2VhcmNoX3dpZGdldCBmb3JtIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1idXR0b24ge1xuICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzOyB9XG4gICAgICAgIC8qIGxpbmUgMTQ1OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAjc2VhcmNoX3dpZGdldCBmb3JtIC5zZWFyY2gtZmllbGQgLnNlYXJjaC1idXR0b246aG92ZXIsICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgI3NlYXJjaF93aWRnZXQgZm9ybSAuc2VhcmNoLWZpZWxkIC5zZWFyY2gtYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAvKiBsaW5lIDE0NjQsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50ICNzZWFyY2hfd2lkZ2V0IGZvcm0gLnNlYXJjaC1maWVsZCAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzLCBwYWRkaW5nLWxlZnQgMC4zcywgcGFkZGluZy1yaWdodCAwLjNzO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAyMXB4ICNGRkQ1NDU7IH1cbiAgICAvKiBsaW5lIDE0NzUsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAjc2VhcmNoX3dpZGdldC5zaG93IHtcbiAgICAgIHdpZHRoOiAyMzBweDsgfVxuICAgICAgLyogbGluZSAxNDgwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2hlYWRlciAuc3RpY2t5LW1lbnUtY29udGVudCAjc2VhcmNoX3dpZGdldC5zaG93IGZvcm0gLnNlYXJjaC1maWVsZCAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07IH1cbiAgLyogbGluZSAxNDkwLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50ICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgbGluZS1oZWlnaHQ6IDY2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNHB4OyB9XG4gICAgLyogbGluZSAxNDk0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICNoZWFkZXIgLnN0aWNreS1tZW51LWNvbnRlbnQgI2Jsb2NrY2FydC13cmFwcGVyIC5teS1jYXJ0LXRleHQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgMTQ5OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAjaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50ICNibG9ja2NhcnQtd3JhcHBlciAubXktZmF2b3JpdGVzLXRleHQgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIGxpbmUgMTUwNSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbi5tYWluLW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLyogbGluZSAxNTA4LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAubWFpbi1tZW51IC5hY3RpdmUtaW5kaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtOHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YzNmQwYjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7IH1cbiAgICAvKiBsaW5lIDE1MTksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgLm1haW4tbWVudSAuYWN0aXZlLWluZGljYXRvci5oaWRkZW4ge1xuICAgICAgb3BhY2l0eTogMDsgfVxuXG4vKiBsaW5lIDE1MjcsIHNjc3MvX2hlYWRlci5zY3NzICovXG4jYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IC0yMTBweDtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgcGFkZGluZzogMTVweDsgfVxuICAvKiBsaW5lIDE1MzYsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5ID4gdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDE1cHg7IH1cbiAgICAvKiBsaW5lIDE1NDMsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICAgI2Jsb2NrY2FydC13cmFwcGVyIC5jYXJ0LXByZXZpZXcgLmJvZHkgPiB1bCBsaSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgLyogbGluZSAxNTQ2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2Jsb2NrY2FydC13cmFwcGVyIC5jYXJ0LXByZXZpZXcgLmJvZHkgPiB1bCBsaSAucHJvZHVjdC1xdWFudGl0eSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6IGdyZXk7IH1cbiAgICAgICAgLyogbGluZSAxNTQ5LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSA+IHVsIGxpIC5wcm9kdWN0LXF1YW50aXR5OjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyB4JzsgfVxuICAgICAgLyogbGluZSAxNTU0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAgICAgI2Jsb2NrY2FydC13cmFwcGVyIC5jYXJ0LXByZXZpZXcgLmJvZHkgPiB1bCBsaSAucHJvZHVjdC1wcmljZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAgIC8qIGxpbmUgMTU1OCwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgICAgICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5ID4gdWwgbGkgLnJlbW92ZS1mcm9tLWNhcnQge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgLyogbGluZSAxNTY0LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSAuY2FydC1zdWJ0b3RhbHMsXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXRvdGFsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgLyogbGluZSAxNTcxLCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSAuY2FydC1zdW1tYXJ5LXRvdGFscyAuY2FydC1zdW1tYXJ5LXRvdGFscyBzcGFuLFxuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSAuY2FydC10b3RhbCBzcGFuLFxuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSAjY2FydC1zdW1tYXJ5ID4gZGl2IHNwYW4sXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXN1YnRvdGFscyA+IGRpdiBzcGFuLFxuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSAuY2FydC10b3RhbCA+IGRpdiBzcGFuIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogbm9uZTsgfVxuICAvKiBsaW5lIDE1ODAsIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5ICNjYXJ0LXN1bW1hcnkgPiBkaXYgc3BhbixcbiAgI2Jsb2NrY2FydC13cmFwcGVyIC5jYXJ0LXByZXZpZXcgLmJvZHkgLmNhcnQtc3VidG90YWxzID4gZGl2IHNwYW4sXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXRvdGFsID4gZGl2IHNwYW4sXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzIHNwYW4sXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXRvdGFsIHNwYW4ge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAvKiBsaW5lIDE1ODksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzLFxuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSAuY2FydC10b3RhbCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogNXB4OyB9XG4gIC8qIGxpbmUgMTU5NSwgc2Nzcy9faGVhZGVyLnNjc3MgKi9cbiAgI2Jsb2NrY2FydC13cmFwcGVyIC5jYXJ0LXByZXZpZXcgLmJvZHkgLnByb2R1Y3RzIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAvKiBsaW5lIDE1OTksIHNjc3MvX2hlYWRlci5zY3NzICovXG4gICNibG9ja2NhcnQtd3JhcHBlciAuY2FydC1wcmV2aWV3IC5ib2R5IC5jYXJ0LXRvdGFsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSAxNjA2LCBzY3NzL19oZWFkZXIuc2NzcyAqL1xuICAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldzpob3ZlciAuYm9keSwgI2Jsb2NrY2FydC13cmFwcGVyIC5jYXJ0LXByZXZpZXc6YWN0aXZlIC5ib2R5LCAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldzpmb2N1cyAuYm9keSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4vKiBsaW5lIDE2MTcsIHNjc3MvX2hlYWRlci5zY3NzICovXG4uc3RpY2t5LW1lbnUtY29udGVudCAjYmxvY2tjYXJ0LXdyYXBwZXIgLmNhcnQtcHJldmlldyAuYm9keSB7XG4gIGxlZnQ6IC0zMDBweDtcbiAgcmlnaHQ6IC02MXB4OyB9XG5cbi8qKiBJbXBvcnQgRm9vdGVyIHN0eWxlcyAqL1xuLyoqXG4gKiBGb290ZXIgY3VzdG9taXNhdGlvbnNcbiAqL1xuLyogbGluZSA2LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuLmNvbnRhY3QtcHJlZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3ByZWZvb3Rlci1iYWNrZ3JvdW5kLXBhdHRlcm4ucG5nXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDMzcHg7XG4gIG1hcmdpbi1ib3R0b206IC0yOXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzNweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAtMTsgfVxuICAvKiBsaW5lIDE2LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAuY29udGFjdC1wcmVmb290ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMThweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xpZ2h0LWdyYXktd2F2ZS1ib3RoLnBuZ1wiKSByZXBlYXQteDsgfVxuICAvKiBsaW5lIDI0LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAuY29udGFjdC1wcmVmb290ZXIgLmNvbnRhY3Qtcm93IHtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAgIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdzo6YmVmb3JlLCAuY29udGFjdC1wcmVmb290ZXIgLmNvbnRhY3Qtcm93OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdzo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAvKiBsaW5lIDI2LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgIC5jb250YWN0LXByZWZvb3RlciAuY29udGFjdC1yb3cgLnByYWN0aWNhbC1pbmZvcm1hdGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMjYsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgIC5jb250YWN0LXByZWZvb3RlciAuY29udGFjdC1yb3cgLnByYWN0aWNhbC1pbmZvcm1hdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAuY29udGFjdC1wcmVmb290ZXIgLmNvbnRhY3Qtcm93IC5wcmFjdGljYWwtaW5mb3JtYXRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLyogbGluZSAyNiwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdyAucHJhY3RpY2FsLWluZm9ybWF0aW9uIHtcbiAgICAgICAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMjYsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdyAucHJhY3RpY2FsLWluZm9ybWF0aW9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICAgICAuY29udGFjdC1wcmVmb290ZXIgLmNvbnRhY3Qtcm93IC5wcmFjdGljYWwtaW5mb3JtYXRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC8qIGxpbmUgMzIsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdyAuY3VzdG9tZXItc2VydmljZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMzIsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgIC5jb250YWN0LXByZWZvb3RlciAuY29udGFjdC1yb3cgLmN1c3RvbWVyLXNlcnZpY2Uge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdyAuY3VzdG9tZXItc2VydmljZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAvKiBsaW5lIDMyLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAuY29udGFjdC1wcmVmb290ZXIgLmNvbnRhY3Qtcm93IC5jdXN0b21lci1zZXJ2aWNlIHtcbiAgICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMzIsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdyAuY3VzdG9tZXItc2VydmljZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgICAgLmNvbnRhY3QtcHJlZm9vdGVyIC5jb250YWN0LXJvdyAuY3VzdG9tZXItc2VydmljZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMjQsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAuY29udGFjdC1wcmVmb290ZXIgLmNvbnRhY3Qtcm93IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDcwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4OyB9IH1cbiAgLyogbGluZSA0NSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgLmNvbnRhY3QtcHJlZm9vdGVyIGgyLCAuY29udGFjdC1wcmVmb290ZXIgLmgyLFxuICAuY29udGFjdC1wcmVmb290ZXIgaDMsXG4gIC5jb250YWN0LXByZWZvb3RlciBoNCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzM3B4OyB9XG4gIC8qIGxpbmUgNTMsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gIC5jb250YWN0LXByZWZvb3RlciBwIHtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cblxuLyogbGluZSA1OSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiNpbmRleCAuY29udGFjdC1wcmVmb290ZXIge1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIC8qIGxpbmUgNjEsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICNpbmRleCAuY29udGFjdC1wcmVmb290ZXI6OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLyogbGluZSA2OCwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiNmb290ZXIge1xuICBwYWRkaW5nLXRvcDogMThweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Zvb3Rlci10b3Atd2F2ZS5wbmdcIikgcmVwZWF0LXggY2VudGVyIHRvcDsgfVxuICAvKiBsaW5lIDcxLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAjZm9vdGVyIC5mb290ZXItdG9wIHtcbiAgICBwYWRkaW5nOiA3MHB4IDAgMjBweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMkE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2xvZ28tbmVvZGlmLWZvb3Rlci5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gbGVmdDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLyogbGluZSA3NSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgPiAucm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLyogbGluZSA3OSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgI2Zvb3RlciAuZm9vdGVyLXRvcCA+IC5yb3cgaDMge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAvKiBsaW5lIDgzLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wID4gLnJvdyAuZW1haWxfc3Vic2NyaXB0aW9uIGZvcm0ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gICAgLyogbGluZSA5NSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDsgfVxuICAgICAgLyogbGluZSA5Nywgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuZm9vdGVyLXRpdGxlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLyogbGluZSAxMDcsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuZm9vdGVyLXRpdGxlOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL3NsYXNoLW9yYW5nZS5wbmdcIik7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAvKiBsaW5lIDExNCwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayBoNCB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAvKiBsaW5lIDEyMiwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayBwIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cbiAgICAgICAgLyogbGluZSAxMjgsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayBwIGIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMTMyLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2suZm9vdGVyLWxpbmtzIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7IH0gfVxuICAgICAgLyogbGluZSAxNDAsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2suZm9vdGVyLWxpbmtzIHVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLyogbGluZSAxMzYsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jay5mb290ZXItbGlua3MgdWwge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgICAvKiBsaW5lIDE0NSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2suZm9vdGVyLWxpbmtzIHVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gICAgICAvKiBsaW5lIDE1MCwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jay5mb290ZXItbGlua3MgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCIuXCI7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAvKiBsaW5lIDE1OCwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jay5mb290ZXItbGlua3MgdWwgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTY0LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2suZm9vdGVyLWxpbmtzIHVsIGxpIGE6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAvKiBsaW5lIDE3MSwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuY29udGFjdC1saW5rIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBjb2xvcjogI2VmYzgzYTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgLyogbGluZSAxNzcsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuY29udGFjdC1saW5rOmhvdmVyLCAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLmNvbnRhY3QtbGluazphY3RpdmUsICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuY29udGFjdC1saW5rOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI2I0OTEwZjsgfVxuICAgICAgLyogbGluZSAxODEsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLmVtYWlsX3N1YnNjcmlwdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAvKiBsaW5lIDE4Mywgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLWJsb2NrIC5lbWFpbF9zdWJzY3JpcHRpb24gZm9ybSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMzdweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIC8qIGxpbmUgMTg4LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuZW1haWxfc3Vic2NyaXB0aW9uIGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgY29sb3I6ICMxNzE3MTc7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCA2NXB4IDAgMTVweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAgICAgLyogbGluZSAyMDEsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLmVtYWlsX3N1YnNjcmlwdGlvbiBmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjODY4Njg2O1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAgICAgICAgIC8qIGxpbmUgMjA5LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuZW1haWxfc3Vic2NyaXB0aW9uIGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGMzZEMEI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjE1cztcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICAgICAgLyogbGluZSAyMjksIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLmVtYWlsX3N1YnNjcmlwdGlvbiBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M1YjA5OyB9XG4gICAgICAgIC8qIGxpbmUgMjM0LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLmVtYWlsX3N1YnNjcmlwdGlvbiAubm90aWZpY2F0aW9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMjJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgIzAwMDsgfVxuICAgICAgICAgIC8qIGxpbmUgMjQzLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAuZW1haWxfc3Vic2NyaXB0aW9uIC5ub3RpZmljYXRpb24ubm90aWZpY2F0aW9uLWVycm9yIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4NjAwMDA7IH1cbiAgICAgICAgICAvKiBsaW5lIDI0Niwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLmVtYWlsX3N1YnNjcmlwdGlvbiAubm90aWZpY2F0aW9uLm5vdGlmaWNhdGlvbi1zdWNjZXNzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzM2E0NTc7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMjUxLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLnBzLXNvY2lhbC1mb2xsb3cge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC8qIGxpbmUgMjYwLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLnBzLXNvY2lhbC1mb2xsb3cgKyB1bCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAgICAgLyogbGluZSAyNjcsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLnBzLXNvY2lhbC1mb2xsb3cgdWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4OyB9XG4gICAgICAgIC8qIGxpbmUgMjcxLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLnBzLXNvY2lhbC1mb2xsb3cgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBub25lOyB9XG4gICAgICAgIC8qIGxpbmUgMjc0LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLnBzLXNvY2lhbC1mb2xsb3cgdWwgbGkgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuMTVzOyB9XG4gICAgICAgIC8qIGxpbmUgMjgwLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItYmxvY2sgLnBzLXNvY2lhbC1mb2xsb3cgdWwgbGkuZmFjZWJvb2sgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzNiNTk5OCB1cmwoXCIuLi9pbWcvaWNvbi1mYWNlYm9vay5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjsgfVxuICAgICAgICAgIC8qIGxpbmUgMjgyLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAucHMtc29jaWFsLWZvbGxvdyB1bCBsaS5mYWNlYm9vayBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTRhN2U7IH1cbiAgICAgICAgLyogbGluZSAyODYsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAucHMtc29jaWFsLWZvbGxvdyB1bCBsaS50d2l0dGVyIGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICM1NWFjZWUgdXJsKFwiLi4vaW1nL2ljb24tdHdpdHRlci5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjsgfVxuICAgICAgICAgIC8qIGxpbmUgMjg4LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAucHMtc29jaWFsLWZvbGxvdyB1bCBsaS50d2l0dGVyIGE6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI3OTVlOTsgfVxuICAgICAgICAvKiBsaW5lIDI5Miwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLWJsb2NrIC5wcy1zb2NpYWwtZm9sbG93IHVsIGxpLmluc3RhZ3JhbSBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjNmE0NTNiIHVybChcIi4uL2ltZy9pY29uLWluc3RhZ3JhbS5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjsgfVxuICAgICAgICAgIC8qIGxpbmUgMjk0LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1ibG9jayAucHMtc29jaWFsLWZvbGxvdyB1bCBsaS5pbnN0YWdyYW0gYTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWEzYTMyOyB9XG4gICAgLyogbGluZSAzMDIsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLXN1Yi1saW5rcyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC8qIGxpbmUgMzA0LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLXN1Yi1saW5rcyBsaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSAzMDQsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICAgI2Zvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLXN1Yi1saW5rcyBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICAgIC8qIGxpbmUgMzEzLCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItc3ViLWxpbmtzIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgICAvKiBsaW5lIDMxOCwgc2Nzcy9fZm9vdGVyLnNjc3MgKi9cbiAgICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItc3ViLWxpbmtzIGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgLyogbGluZSAzMjIsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1zdWItbGlua3MgbGk6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDJweCAwIDNweDsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAgICAgLyogbGluZSAzMjIsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICAgICAjZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItc3ViLWxpbmtzIGxpOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogbm9ybWFsOyB9IH1cbiAgICAgICAgLyogbGluZSAzMzMsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgICAgICNmb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1zdWItbGlua3MgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9ybWFsOyB9XG4gIC8qIGxpbmUgMzM5LCBzY3NzL19mb290ZXIuc2NzcyAqL1xuICAjZm9vdGVyIC5mb290ZXItYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTcxNzE3OyB9XG4gICAgLyogbGluZSAzNDEsIHNjc3MvX2Zvb3Rlci5zY3NzICovXG4gICAgI2Zvb3RlciAuZm9vdGVyLWJvdHRvbSBwIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAxOHB4IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi8qKiBJbXBvcnQgSG9tZXBhZ2Ugc3R5bGVzICovXG4vKipcbiAqIEhvbWVwYWdlIHN0eWxlc1xuICovXG4vKiBsaW5lIDUsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiNpbmRleCAjd3JhcHBlciB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuICAvKiBsaW5lIDgsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgI2luZGV4ICN3cmFwcGVyICNtYWluIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLyogbGluZSAxMCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICNpbmRleCAjd3JhcHBlciAjbWFpbiAjY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwOyB9XG5cbi8qIGxpbmUgMTcsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiNpbmRleCAuYnJlYWRjcnVtYi1ob2xkZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIGxpbmUgMjEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiNhbl9icmFuZHNsaWRlci1ibG9jayB7XG4gIHBhZGRpbmc6IDYwcHggMCA3MHB4IDA7IH1cbiAgLyogbGluZSAyMywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAjYW5fYnJhbmRzbGlkZXItYmxvY2sgaDIsICNhbl9icmFuZHNsaWRlci1ibG9jayAuaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgLyogbGluZSAyNiwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAjYW5fYnJhbmRzbGlkZXItYmxvY2sgcCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDI2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAjYW5fYnJhbmRzbGlkZXItYmxvY2sgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gIC8qIGxpbmUgMzYsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgI2FuX2JyYW5kc2xpZGVyLWJsb2NrIC5vd2wtY2Fyb3VzZWwgLm93bC1wcmV2LCAjYW5fYnJhbmRzbGlkZXItYmxvY2sgLm93bC1jYXJvdXNlbCAub3dsLW5leHQge1xuICAgIHRvcDogNzBweDsgfVxuICAvKiBsaW5lIDM5LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICNhbl9icmFuZHNsaWRlci1ibG9jayAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NoYWRvdy1icmFuZC1sb2dvLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIGJvdHRvbTsgfVxuICAgIC8qIGxpbmUgNDIsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAjYW5fYnJhbmRzbGlkZXItYmxvY2sgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLmFuX2JyYW5kc2xpZGVyLWl0ZW0ge1xuICAgICAgcGFkZGluZzogMjBweDsgfVxuXG4vKiBsaW5lIDQ5LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4jYmxvY2stcmVhc3N1cmFuY2Uge1xuICBwYWRkaW5nOiA1MHB4IDAgODBweCAwO1xuICBiYWNrZ3JvdW5kOiAjODYwMDAwIHVybChcIi4uL2ltZy9sb2dvLW5lb2RpZi1yZWFzc3VyYW5jZS5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSA0OSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICNibG9jay1yZWFzc3VyYW5jZSB7XG4gICAgICBwYWRkaW5nOiA3MHB4IDAgOTBweCAwOyB9IH1cbiAgLyogbGluZSA1Niwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAjYmxvY2stcmVhc3N1cmFuY2UgaDIsICNibG9jay1yZWFzc3VyYW5jZSAuaDIge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgLyogbGluZSA2MSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAjYmxvY2stcmVhc3N1cmFuY2UgcCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDYxLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAjYmxvY2stcmVhc3N1cmFuY2UgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gIC8qIGxpbmUgNzEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNzEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICNibG9jay1yZWFzc3VyYW5jZSB1bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDkwcHg7IH0gfVxuICAgIC8qIGxpbmUgNzYsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAjYmxvY2stcmVhc3N1cmFuY2UgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLyogbGluZSA3Niwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAjYmxvY2stcmVhc3N1cmFuY2UgdWwgbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgICAgIC8qIGxpbmUgODMsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICNibG9jay1yZWFzc3VyYW5jZSB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLyogbGluZSA4Niwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIGxpIC5pbWFnZS1ibG9jaywgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIGxpIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAvKiBsaW5lIDg2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICAgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIGxpIC5pbWFnZS1ibG9jaywgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIGxpIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IH0gfVxuICAgICAgLyogbGluZSA5NCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIGxpIC5pbWFnZS1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MCU7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgaGVpZ2h0OiA4NHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSA5NCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAgICNibG9jay1yZWFzc3VyYW5jZSB1bCBsaSAuaW1hZ2UtYmxvY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gICAgICAvKiBsaW5lIDEwNSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgI2Jsb2NrLXJlYXNzdXJhbmNlIHVsIGxpIHNwYW4ge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBtYXgtd2lkdGg6IDE2NXB4OyB9XG5cbi8qIGxpbmUgMTE4LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4uZnNjaC1ob21lLWJsb2NrIHtcbiAgcGFkZGluZzogNjBweCAwIDgwcHggMDsgfVxuICAvKiBsaW5lIDEyMCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuZnNjaC1ob21lLWJsb2NrIGgyLCAuZnNjaC1ob21lLWJsb2NrIC5oMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxMjMsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAuZnNjaC1ob21lLWJsb2NrIC5vd2wtY2Fyb3VzZWwge1xuICAgICAgcGFkZGluZzogMCA3MHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAvKiBsaW5lIDEyNywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuZnNjaC1ob21lLWJsb2NrIC5vd2wtY2Fyb3VzZWwgLm93bC1wcmV2LCAuZnNjaC1ob21lLWJsb2NrIC5vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IHtcbiAgICB0b3A6IDYwcHggIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDEzMCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuZnNjaC1ob21lLWJsb2NrIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgbWF4LWhlaWdodDogMTgwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDEzNiwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIC5mc2NoLWhvbWUtYmxvY2sgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yczsgfVxuICAgICAgLyogbGluZSAxNDAsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgIC5mc2NoLWhvbWUtYmxvY2sgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gYTpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC8qIGxpbmUgMTQzLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAuZnNjaC1ob21lLWJsb2NrIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGEgaW1nIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bzsgfVxuXG4vKiogSW1wbGVtZW50IGNhcmQgc2xpZGVycyAqKi9cbi8qIGxpbmUgMTU2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG5ib2R5IC5wcmVzdGFibG9nX3NsaWRlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogNTBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNTYsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIHtcbiAgICAgIHBhZGRpbmc6IDgwcHggMDsgfSB9XG4gIC8qIGxpbmUgMTYyLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgaDIsIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSA3NjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm93bC1jYXJvdXNlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDc2Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm93bC1jYXJvdXNlbCB7XG4gICAgICAgIHBhZGRpbmc6IDAgNzBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLyogbGluZSA3NjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5vd2wtY2Fyb3VzZWwge1xuICAgICAgICBwYWRkaW5nOiAwIDk0cHggIWltcG9ydGFudDsgfSB9XG4gICAgLyogbGluZSA3NzIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgICAgcGFkZGluZzogMzBweCAwOyB9XG4gICAgICAvKiBsaW5lIDc3NCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAvKiBsaW5lIDc3Nywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtaXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgIC8qIGxpbmUgNzgyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm93bC1jYXJvdXNlbCAub3dsLWRvdHMge1xuICAgICAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50OyB9XG4gIC8qIGxpbmUgNzg2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5uZXdzLWJsb2NrIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICB0cmFuc2l0aW9uOiAwLjE1cztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLyogbGluZSA3OTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jazpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgICAvKiBsaW5lIDc5Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5uZXdzLWJsb2NrIC5uZXdzLWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAvKiBsaW5lIDgwMiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm5ld3MtYmxvY2sgLm5ld3MtaW1hZ2UgYSB7XG4gICAgICAgIGhlaWdodDogMzkzcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAgICAgLyogbGluZSA4MTAsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5uZXdzLWJsb2NrIC5uZXdzLWltYWdlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0ZGRDU0NTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLyogbGluZSA4MjAsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5uZXdzLWJsb2NrIC5uZXdzLWltYWdlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZGVjby1yb3VuZC1ncmF5LnBuZ1wiKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICB6LWluZGV4OiAyOyB9XG4gICAgLyogbGluZSA4MzIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jayAubmV3cy1kYXRlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgLyogbGluZSA4MzYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jayAubmV3cy1pbmZvIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7IH1cbiAgICAgIC8qIGxpbmUgODM4LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jayAubmV3cy1pbmZvIC5uZXdzLWRhdGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgY29sb3I6ICNGMzZEMEI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLyogbGluZSA4NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5uZXdzLWJsb2NrIC5uZXdzLWluZm8gLm5ld3MtdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLyogbGluZSA4NDgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm5ld3MtYmxvY2sgLm5ld3MtaW5mbyAubmV3cy10aXRsZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSA4NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jayAubmV3cy1pbmZvIC5uZXdzLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jayAubmV3cy1pbmZvIC5uZXdzLWV4Y2VycHQge1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLm5ld3MtYmxvY2sgLm5ld3MtaW5mbyAubmV3cy1leGNlcnB0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIC8qIGxpbmUgODYyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAubmV3cy1ibG9jayAubmV3cy1pbmZvIC5ibG9jay1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0YzNkQwQjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4vKiBDYXZlLWJhcnMgKi9cbi8qIGxpbmUgMTY5LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG5ib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNjksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDE2OSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNjksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAvKiBsaW5lIDc2Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAub3dsLWNhcm91c2VsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAub3dsLWNhcm91c2VsIHtcbiAgICAgICAgcGFkZGluZzogMCA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDc2Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLm93bC1jYXJvdXNlbCB7XG4gICAgICAgIHBhZGRpbmc6IDAgOTRweCAhaW1wb3J0YW50OyB9IH1cbiAgICAvKiBsaW5lIDc3Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAgIC8qIGxpbmUgNzc0LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIgLm93bC1zdGFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC8qIGxpbmUgNzc3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIgLm93bC1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLyogbGluZSA3ODIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAub3dsLWNhcm91c2VsIC5vd2wtZG90cyB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7IH1cbiAgLyogbGluZSA3ODYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICB0cmFuc2l0aW9uOiAwLjE1cztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLyogbGluZSA3OTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAuc2luZ2xlLW5ld3MtYmxvY2s6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG4gICAgLyogbGluZSA3OTYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAvKiBsaW5lIDgwMiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbWFnZSBhIHtcbiAgICAgICAgaGVpZ2h0OiAzOTNweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG4gICAgICAvKiBsaW5lIDgxMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbWFnZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkQ1NDU7XG4gICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIC8qIGxpbmUgODIwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZGVjby1yb3VuZC1ncmF5LnBuZ1wiKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICB6LWluZGV4OiAyOyB9XG4gICAgLyogbGluZSA4MzIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWRhdGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAvKiBsaW5lIDgzNiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW5mbyB7XG4gICAgICBwYWRkaW5nOiAzMHB4OyB9XG4gICAgICAvKiBsaW5lIDgzOCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIC5zaW5nbGUtbmV3cy1kYXRlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGNvbG9yOiAjRjM2RDBCO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIC8qIGxpbmUgODQ2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbiAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWluZm8gLnNpbmdsZS1uZXdzLXRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC8qIGxpbmUgODQ4LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW5mbyAuc2luZ2xlLW5ld3MtdGl0bGU6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC8qIGxpbmUgODQ2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIC5zaW5nbGUtbmV3cy10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHggIWltcG9ydGFudDsgfSB9XG4gICAgICAvKiBsaW5lIDg1NSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIC5zaW5nbGUtbmV3cy1leGNlcnB0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAvKiBsaW5lIDg1NSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW5mbyAuc2luZ2xlLW5ld3MtZXhjZXJwdCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDsgfSB9XG4gICAgICAvKiBsaW5lIDg2Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4gLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIC5ibG9jay1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0YzNkQwQjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4vKiBsaW5lIDE3OSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuZXhjaGFuZ2UtY29sdW1uLCBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY2NvbXBhZ25lbWVudC1jb2x1bW4ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDE3OSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmV4Y2hhbmdlLWNvbHVtbiwgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWNjb21wYWduZW1lbnQtY29sdW1uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuZXhjaGFuZ2UtY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDE3OSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmV4Y2hhbmdlLWNvbHVtbiwgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWNjb21wYWduZW1lbnQtY29sdW1uIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNzksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5leGNoYW5nZS1jb2x1bW4sIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuZXhjaGFuZ2UtY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLyogbGluZSAxODQsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuZXhjaGFuZ2UtY29sdW1uIC5leGNoYW5nZXMtaWNvbiwgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWNjb21wYWduZW1lbnQtY29sdW1uIC5leGNoYW5nZXMtaWNvbiB7XG4gICAgbWFyZ2luLXRvcDogMTE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogbGluZSAxODksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuZXhjaGFuZ2UtY29sdW1uIC5leGNoYW5nZXMtYnV0dG9uLWhvbGRlciwgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWNjb21wYWduZW1lbnQtY29sdW1uIC5leGNoYW5nZXMtYnV0dG9uLWhvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfVxuXG4vKiogQ2F2aXN0ZXMgKiovXG4vKiBsaW5lIDE5Niwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlOjpiZWZvcmUsIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxOTYsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLyogbGluZSA4Mywgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlLCBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5vd2wtY2Fyb3VzZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA3NjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5vd2wtY2Fyb3VzZWwge1xuICAgICAgICBwYWRkaW5nOiAwIDcwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAub3dsLWNhcm91c2VsIHtcbiAgICAgICAgcGFkZGluZzogMCA5NHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIC8qIGxpbmUgNzcyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDsgfVxuICAgICAgLyogbGluZSA3NzQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLXN0YWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgLyogbGluZSA3NzcsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAvKiBsaW5lIDc4Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDsgfVxuICAvKiBsaW5lIDc4Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgIHRyYW5zaXRpb246IDAuMTVzO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAvKiBsaW5lIDc5Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1ibG9jazpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgICAvKiBsaW5lIDc5Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC8qIGxpbmUgODAyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlIGEge1xuICAgICAgICBoZWlnaHQ6IDM5M3B4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cbiAgICAgIC8qIGxpbmUgODEwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0ZGRDU0NTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLyogbGluZSA4MjAsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW1hZ2U6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9kZWNvLXJvdW5kLWdyYXkucG5nXCIpIG5vLXJlcGVhdCBib3R0b20gY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAvKiBsaW5lIDgzMiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtZGF0ZSB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIC8qIGxpbmUgODM2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7IH1cbiAgICAgIC8qIGxpbmUgODM4LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWluZm8gLnNpbmdsZS1uZXdzLWRhdGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgY29sb3I6ICNGMzZEMEI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLyogbGluZSA4NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW5mbyAuc2luZ2xlLW5ld3MtdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLyogbGluZSA4NDgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIC5zaW5nbGUtbmV3cy10aXRsZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSA4NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWluZm8gLnNpbmdsZS1uZXdzLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWluZm8gLnNpbmdsZS1uZXdzLWV4Y2VycHQge1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvIC5zaW5nbGUtbmV3cy1leGNlcnB0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIC8qIGxpbmUgODYyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWluZm8gLmJsb2NrLWxpbmsge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjRjM2RDBCO1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMDEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1zbGlkZXIgLnNpbmdsZS1uZXdzLWJsb2NrIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3Mtc2xpZGVyIC5zaW5nbGUtbmV3cy1ibG9jazo6YmVmb3JlLCBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1zbGlkZXIgLnNpbmdsZS1uZXdzLWJsb2NrOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7IH1cbiAgICAgIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1zbGlkZXIgLnNpbmdsZS1uZXdzLWJsb2NrOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAvKiBsaW5lIDIwNCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3Mtc2xpZGVyIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3Mtc2xpZGVyIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgIC8qIGxpbmUgMjA2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLnNpbmdsZS1uZXdzLXNsaWRlciAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2RlY28tcm91bmQtZ3JheS1yb3RhdGVkLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlOyB9XG4gICAgICAgIC8qIGxpbmUgMjEwLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLnNpbmdsZS1uZXdzLXNsaWRlciAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWltYWdlOjpiZWZvcmUge1xuICAgICAgICAgIGJvdHRvbTogMjVweDtcbiAgICAgICAgICByaWdodDogMDsgfVxuICAgICAgLyogbGluZSAyMTUsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUuc2luZ2xlLWFydGljbGUtc2xpZGUgLnNpbmdsZS1uZXdzLXNsaWRlciAuc2luZ2xlLW5ld3MtYmxvY2sgLnNpbmdsZS1uZXdzLWluZm8ge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDIxNSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSAuc2luZ2xlLW5ld3Mtc2xpZGVyIC5zaW5nbGUtbmV3cy1ibG9jayAuc2luZ2xlLW5ld3MtaW5mbyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlLnNpbmdsZS1hcnRpY2xlLXNsaWRlIC5zaW5nbGUtbmV3cy1zbGlkZXIgLnNpbmdsZS1uZXdzLWJsb2NrIC5zaW5nbGUtbmV3cy1pbmZvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi8qKiBJbXBvcnRhdGlvbiAqKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC8qIGxpbmUgMjI1LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4uc2xpbW1lciB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDIyNSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjdHVhbGl0ZS1jb2x1bW4uc2xpbW1lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY3R1YWxpdGUtY29sdW1uLnNsaW1tZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4vKiBsaW5lIDIyOSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWN0dWFsaXRlLWNvbHVtbi5zbGltbWVyIC5vd2wtY2Fyb3VzZWwge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC8qIGxpbmUgMjMzLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAvKiBsaW5lIDIzMywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY2NvbXBhZ25lbWVudC1jb2x1bW4ge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMzMsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY2NvbXBhZ25lbWVudC1jb2x1bW4ge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWNjb21wYWduZW1lbnQtY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogbGluZSAyNDIsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbmJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1uIC5zdGVwLWljb24sIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1ucyAuc3RlcC1pY29uIHtcbiAgYm9yZGVyOiAzcHggc29saWQgI0ZGRDU0NTtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLyogbGluZSAyNDksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgYm9keSAucHJlc3RhYmxvZ19zbGlkZSAuYWNjb21wYWduZW1lbnQtY29sdW1uIC5jb2x1bW4gLnN0ZXAtaWNvbiAuc3RlcC1udW1iZXIsIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1ucyAuc3RlcC1pY29uIC5zdGVwLW51bWJlciB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLyogbGluZSAyNTQsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbmJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1uIGgzLCBib2R5IC5wcmVzdGFibG9nX3NsaWRlIC5hY2NvbXBhZ25lbWVudC1jb2x1bW4gLmNvbHVtbnMgaDMge1xuICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IDMwcHg7IH1cblxuLyogbGluZSAyNTksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbmJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1uIHAsIGJvZHkgLnByZXN0YWJsb2dfc2xpZGUgLmFjY29tcGFnbmVtZW50LWNvbHVtbiAuY29sdW1ucyBwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS43OyB9XG5cbi8qIGxpbmUgMjY4LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4uaG9tZV9jYXRlZ29yaWVzIHtcbiAgbWFyZ2luLXRvcDogODVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLyogbGluZSAxNzAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgLmhvbWVfY2F0ZWdvcmllczo6YmVmb3JlLCAuaG9tZV9jYXRlZ29yaWVzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5ob21lX2NhdGVnb3JpZXM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDI3Miwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMjcyLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAvKiBsaW5lIDc2Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAub3dsLWNhcm91c2VsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAub3dsLWNhcm91c2VsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDcwcHggIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAub3dsLWNhcm91c2VsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDk0cHggIWltcG9ydGFudDsgfSB9XG4gICAgICAvKiBsaW5lIDc3Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMDsgfVxuICAgICAgICAvKiBsaW5lIDc3NCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgICAgLyogbGluZSA3NzcsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAvKiBsaW5lIDc4Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50OyB9XG4gICAgLyogbGluZSA3ODYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgICB0cmFuc2l0aW9uOiAwLjE1cztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAvKiBsaW5lIDc5Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jazpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuICAgICAgLyogbGluZSA3OTYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAucHJvbW8tYmxvY2sgLnByb21vLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMzhweDsgfVxuICAgICAgICAvKiBsaW5lIDgwMiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbWFnZSBhIHtcbiAgICAgICAgICBoZWlnaHQ6IDM5M3B4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAgICAgICAvKiBsaW5lIDgxMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbWFnZTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0ZGRDU0NTtcbiAgICAgICAgICB6LWluZGV4OiAxOyB9XG4gICAgICAgIC8qIGxpbmUgODIwLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAucHJvbW8tYmxvY2sgLnByb21vLWltYWdlOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9kZWNvLXJvdW5kLWdyYXkucG5nXCIpIG5vLXJlcGVhdCBib3R0b20gY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICB6LWluZGV4OiAyOyB9XG4gICAgICAvKiBsaW5lIDgzMiwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jayAucHJvbW8tZGF0ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgIC8qIGxpbmUgODM2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbmZvIHtcbiAgICAgICAgcGFkZGluZzogMzBweDsgfVxuICAgICAgICAvKiBsaW5lIDgzOCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbmZvIC5wcm9tby1kYXRlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiAjRjM2RDBCO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgLyogbGluZSA4NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jayAucHJvbW8taW5mbyAucHJvbW8tdGl0bGUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgICAgIC8qIGxpbmUgODQ4LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jayAucHJvbW8taW5mbyAucHJvbW8tdGl0bGU6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC8qIGxpbmUgODQ2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAgICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbmZvIC5wcm9tby10aXRsZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgLyogbGluZSA4NTUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jayAucHJvbW8taW5mbyAucHJvbW8tZXhjZXJwdCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAvKiBsaW5lIDg1NSwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jayAucHJvbW8taW5mbyAucHJvbW8tZXhjZXJwdCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgLyogbGluZSA4NjIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgIC5ob21lX2NhdGVnb3JpZXMgI2hvbWVjYXRlZ29yaWVzIC5wcm9tby1ibG9jayAucHJvbW8taW5mbyAuYmxvY2stbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGMzZEMEI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC8qIGxpbmUgMjc1LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC8qIGxpbmUgMjgzLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbWFnZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBoZWlnaHQ6IDIyNHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC8qIGxpbmUgMjkyLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAucHJvbW8tYmxvY2sgLnByb21vLWltYWdlIC5jYXRlZ29yeS1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC8qIGxpbmUgMzAyLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgLmhvbWVfY2F0ZWdvcmllcyAjaG9tZWNhdGVnb3JpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbmZvIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLyogbGluZSAzMDksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAuaG9tZV9jYXRlZ29yaWVzICNob21lY2F0ZWdvcmllcyAucHJvbW8tc2xpZGVyLWJyYXNzZXJpZXMgLnByb21vLWJsb2NrIC5wcm9tby1pbWFnZSB7XG4gICAgICBwYWRkaW5nOiA0OHB4OyB9XG5cbi8qIGxpbmUgMzE2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4jaW5kZXggLnBhZ2UtaGVhZGVyIGgxIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBsaW5lIDMyMSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuI3Byb21vLWFyZWEge1xuICBwYWRkaW5nOiAxNTBweCAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLyogbGluZSAzMjEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAjcHJvbW8tYXJlYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH0gfVxuICAvKiBsaW5lIDMzMSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAzMzEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICNwcm9tby1hcmVhIC5zcGhlcmVzLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMCU7IH0gfVxuICAgIC8qIGxpbmUgMzM3LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDU1cHggMzVweCA4OHB4IDM1cHg7XG4gICAgICBtYXgtd2lkdGg6IDQxOXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLyogbGluZSAzMzcsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgbGVmdDogLTY4cHg7XG4gICAgICAgICAgdG9wOiAxMDBweDsgfSB9XG4gICAgICAvKiBsaW5lIDM1MCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmU6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjRkZENTQ1O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAgIC8qIGxpbmUgMzYwLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZSBoMiwgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUgLmgyIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgICAvKiBsaW5lIDM2Nywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZSBoMjphZnRlciwgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUgLmgyOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub3JtYWw7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgICAgLyogbGluZSAzNjAsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZSBoMiwgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUgLmgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4OyB9IH1cbiAgICAgIC8qIGxpbmUgMzc2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZSBoMyB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAgIC8qIGxpbmUgMzg0LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICNwcm9tby1hcmVhIC5zcGhlcmVzLWNvbnRhaW5lciAuc3BoZXJlIGgzOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub3JtYWw7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgICAgLyogbGluZSAzNzYsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZSBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfSB9XG4gICAgICAvKiBsaW5lIDM5NCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUgLnRleHQge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAgIC8qIGxpbmUgMzk0LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICAgI3Byb21vLWFyZWEgLnNwaGVyZXMtY29udGFpbmVyIC5zcGhlcmUgLnRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLyogbGluZSA0MDQsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG1heC13aWR0aDogMTkwcHg7XG4gICAgICBtYXJnaW46IC01MHB4IGF1dG8gMCBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YzNkQwQjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA2OHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgIHBhZGRpbmc6IDI1cHggMzVweCA0NXB4IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb2xvcjogI2Y2ZjZmNjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICB0cmFuc2l0aW9uOiAwLjE1czsgfVxuICAgICAgLyogbGluZSA0MjEsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICNwcm9tby1hcmVhIC5zcGhlcmVzLWNvbnRhaW5lciAuc3BoZXJlLWxpbms6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZ1wiKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgICAgIC8qIGxpbmUgNDI2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAjcHJvbW8tYXJlYSAuc3BoZXJlcy1jb250YWluZXIgLnNwaGVyZS1saW5rOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RiNjIwYTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC8qIGxpbmUgNDA0LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICNwcm9tby1hcmVhIC5zcGhlcmVzLWNvbnRhaW5lciAuc3BoZXJlLWxpbmsge1xuICAgICAgICAgIGxlZnQ6IDg4cHg7XG4gICAgICAgICAgdG9wOiA0MHB4OyB9IH1cblxuLyogbGluZSA0MzcsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbi5mZWF0dXJlZC1wcm9kdWN0cyB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgLyoqIEZvciB0d28gdXAgKiovIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDQzNywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIC5mZWF0dXJlZC1wcm9kdWN0cyB7XG4gICAgICBwYWRkaW5nLXRvcDogMTA0cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTA0cHg7IH0gfVxuICAvKiBsaW5lIDQ0NSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLnByb2R1Y3RzLCAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYnJvd24td2F2ZS1jb250YWluZXIgLnByb2R1Y3RzLCAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYmx1ZS13YXZlLWNvbnRhaW5lciAucHJvZHVjdHMge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC8qIGxpbmUgNDQ4LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUsIC5mZWF0dXJlZC1wcm9kdWN0cy5mZWF0dXJlZC1wcm9kdWN0cy5icm93bi13YXZlLWNvbnRhaW5lciAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlLCAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYmx1ZS13YXZlLWNvbnRhaW5lciAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAvKiBsaW5lIDQ0OCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSwgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJyb3duLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUsIC5mZWF0dXJlZC1wcm9kdWN0cy5mZWF0dXJlZC1wcm9kdWN0cy5ibHVlLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJ1cmd1bmR5LXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJyb3duLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJsdWUtd2F2ZS1jb250YWluZXIgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLyogbGluZSA0NTMsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLnByb2R1Y3RzIC5vd2wtZG90cywgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJyb3duLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAub3dsLWRvdHMsIC5mZWF0dXJlZC1wcm9kdWN0cy5mZWF0dXJlZC1wcm9kdWN0cy5ibHVlLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAub3dsLWRvdHMge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAvKiBsaW5lIDQ1Niwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIC5mZWF0dXJlZC1wcm9kdWN0cy5mZWF0dXJlZC1wcm9kdWN0cy5idXJndW5keS13YXZlLWNvbnRhaW5lciAucHJvZHVjdHMgLm93bC1zdGFnZSwgLmZlYXR1cmVkLXByb2R1Y3RzLmZlYXR1cmVkLXByb2R1Y3RzLmJyb3duLXdhdmUtY29udGFpbmVyIC5wcm9kdWN0cyAub3dsLXN0YWdlLCAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYmx1ZS13YXZlLWNvbnRhaW5lciAucHJvZHVjdHMgLm93bC1zdGFnZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgICAgIC8qIGxpbmUgNDU5LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYnVyZ3VuZHktd2F2ZS1jb250YWluZXIgLnByb2R1Y3RzIC5vd2wtc3RhZ2UgLm93bC1pdGVtLCAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYnJvd24td2F2ZS1jb250YWluZXIgLnByb2R1Y3RzIC5vd2wtc3RhZ2UgLm93bC1pdGVtLCAuZmVhdHVyZWQtcHJvZHVjdHMuZmVhdHVyZWQtcHJvZHVjdHMuYmx1ZS13YXZlLWNvbnRhaW5lciAucHJvZHVjdHMgLm93bC1zdGFnZSAub3dsLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAvKiBsaW5lIDQ2Niwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuZmVhdHVyZWQtcHJvZHVjdHMgLmZlYXR1cmVkLXByb2R1Y3RzLXRpdGxlLWJsb2NrIHtcbiAgICBtYXgtd2lkdGg6IDg4MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC8qIGxpbmUgNDcwLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMge1xuICAgIG1heC13aWR0aDogOTEwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAvKiBsaW5lIDQ3Mywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAgICAgLyogbGluZSA0NzUsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogNXB4OyB9XG4gICAgICAgIC8qIGxpbmUgNDc4LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lcjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxuICAgICAgICAvKiBsaW5lIDQ4MSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgICAgICAgIC8qIGxpbmUgNDg2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LW5hbWUgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgICAvKiBsaW5lIDQ5MCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtcmVmZXJlbmNlIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgICAvKiBsaW5lIDQ5Mywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0IHtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgICAvKiBsaW5lIDQ5Nywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LCAuZmVhdHVyZWQtcHJvZHVjdHMgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0IHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQycHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgICAvKiBsaW5lIDUwMiwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6YWZ0ZXIsIC5mZWF0dXJlZC1wcm9kdWN0cyAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3Q6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogMjBweDsgfVxuICAvKiBsaW5lIDUxMiwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyB7XG4gICAgbWF4LXdpZHRoOiAxMTAwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA1MTIsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDsgfSB9XG4gICAgLyogbGluZSA1MTcsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAvKiBsaW5lIDUxNywgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC8qIGxpbmUgNTIzLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC8qIGxpbmUgNTI2LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLm5hbWUtcm93IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAgIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gICAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubmFtZS1yb3c6OmJlZm9yZSwgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubmFtZS1yb3c6OmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAgICAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5uYW1lLXJvdzo6YWZ0ZXIge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAvKiBsaW5lIDUyOSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLm5hbWUtcm93IC5uYW1lLWNvbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubmFtZS1yb3cgLm5hbWUtY29sOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAgIC8qIGxpbmUgNTI5LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLm5hbWUtcm93IC5uYW1lLWNvbCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICAgICAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5uYW1lLXJvdyAubmFtZS1jb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICAgICAgLyogbGluZSA1MzQsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLm5hbWUtcm93IC5uYW1lLWNvbCBoMywgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubmFtZS1yb3cgLm5hbWUtY29sIC5wcm9kdWN0LXJlZmVyZW5jZSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgICAgICAgLyogbGluZSA1MzUsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLm5hbWUtcm93IC5uYW1lLWNvbCAucHJvZHVjdC1yZWZlcmVuY2Uge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgICAgLyogbGluZSA1NDAsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5uYW1lLXJvdyAuYWRkLXRvLWZhdi1jb2wge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLm5hbWUtcm93IC5hZGQtdG8tZmF2LWNvbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgICAvKiBsaW5lIDU0MCwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5uYW1lLXJvdyAuYWRkLXRvLWZhdi1jb2wge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgICAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAubmFtZS1yb3cgLmFkZC10by1mYXYtY29sOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgLyogbGluZSA1NTAsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLWhvbGRlciB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC8qIGxpbmUgNTUwLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC50aHVtYm5haWwtaG9sZGVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnRodW1ibmFpbC1ob2xkZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgICAvKiBsaW5lIDU1NSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnRodW1ibmFpbC1ob2xkZXIgLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgICAgICAgLyogbGluZSA1NTUsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLWhvbGRlciAucHJvZHVjdC10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSA1NjIsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWF0dHJpYnV0ZSwgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAucHJvZHVjdC1saXN0LWFjdGlvbnMge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDU0JTsgfSB9XG4gICAgICAgIC8qIGxpbmUgNTY4LCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAgIC5mZWF0dXJlZC1wcm9kdWN0cy50d28tdXAgLnByb2R1Y3RzIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtYXR0cmlidXRlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSA1NzMsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWxpc3QtYWN0aW9ucyB7XG4gICAgICAgICAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWxpc3QtYWN0aW9uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgLyogbGluZSA1NzksIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAucHJvZHVjdC1saXN0LWFjdGlvbnMgYSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSA1ODIsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbiAgICAgICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWxpc3QtYWN0aW9ucyAuc2hvcHBpbmctbGlzdCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgICAgICByaWdodDogMjBweDsgfSB9XG4gICAgICAvKiBsaW5lIDU5MSwgc2Nzcy9faG9tZXBhZ2Uuc2NzcyAqL1xuICAgICAgLmZlYXR1cmVkLXByb2R1Y3RzLnR3by11cCAucHJvZHVjdHMgLnByb2R1Y3QtbWluaWF0dXJlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAtMnB4O1xuICAgICAgICB0b3A6IDEzJTtcbiAgICAgICAgYm90dG9tOiA2JTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NlcC5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7IH1cbiAgICAgIC8qIGxpbmUgNjAyLCBzY3NzL19ob21lcGFnZS5zY3NzICovXG4gICAgICAuZmVhdHVyZWQtcHJvZHVjdHMudHdvLXVwIC5wcm9kdWN0cyAucHJvZHVjdC1taW5pYXR1cmU6bnRoLWNoaWxkKDJuKTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogbGluZSA2MTIsIHNjc3MvX2hvbWVwYWdlLnNjc3MgKi9cbi5ncmV5LXdhdmUtY3RhIHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG5cbi8qKiBJbXBvcnQgUHJvZHVjdCBMaXN0IHN0eWxlcyAqL1xuLyoqXG4gKiBQcm9kdWN0IExpc3Qgc3R5bGVzXG4gKi9cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLyogbGluZSA3NjMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4uc3ViY2F0ZWdvcmllcyAub3dsLWNhcm91c2VsIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5zdWJjYXRlZ29yaWVzIC5vd2wtY2Fyb3VzZWwge1xuICAgICAgcGFkZGluZzogMCA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDc2Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuc3ViY2F0ZWdvcmllcyAub3dsLWNhcm91c2VsIHtcbiAgICAgIHBhZGRpbmc6IDAgOTRweCAhaW1wb3J0YW50OyB9IH1cbiAgLyogbGluZSA3NzIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5zdWJjYXRlZ29yaWVzIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgcGFkZGluZzogMzBweCAwOyB9XG4gICAgLyogbGluZSA3NzQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLnN1YmNhdGVnb3JpZXMgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2Uge1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgIC8qIGxpbmUgNzc3LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5zdWJjYXRlZ29yaWVzIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLWl0ZW0ge1xuICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAvKiBsaW5lIDc4Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLnN1YmNhdGVnb3JpZXMgLm93bC1jYXJvdXNlbCAub3dsLWRvdHMge1xuICAgIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDsgfVxuXG4vKiBsaW5lIDc4Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbi5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2sge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gIHRyYW5zaXRpb246IDAuMTVzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLyogbGluZSA3OTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2s6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuICAvKiBsaW5lIDc5Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgLnN1YmNhdGVnb3JpZXMgLmNhdGVnb3J5LW1pbmlhdHVyZS1ibG9jayAuY2F0ZWdvcnktbWluaWF0dXJlLWltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMzhweDsgfVxuICAgIC8qIGxpbmUgODAyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2sgLmNhdGVnb3J5LW1pbmlhdHVyZS1pbWFnZSBhIHtcbiAgICAgIGhlaWdodDogMzkzcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cbiAgICAvKiBsaW5lIDgxMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW1hZ2U6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyNXB4O1xuICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAyNXB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI0ZGRDU0NTtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAvKiBsaW5lIDgyMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW1hZ2U6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvZGVjby1yb3VuZC1ncmF5LnBuZ1wiKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgLyogbGluZSA4MzIsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2sgLmNhdGVnb3J5LW1pbmlhdHVyZS1kYXRlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLyogbGluZSA4MzYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gIC5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2sgLmNhdGVnb3J5LW1pbmlhdHVyZS1pbmZvIHtcbiAgICBwYWRkaW5nOiAzMHB4OyB9XG4gICAgLyogbGluZSA4MzgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgLnN1YmNhdGVnb3JpZXMgLmNhdGVnb3J5LW1pbmlhdHVyZS1ibG9jayAuY2F0ZWdvcnktbWluaWF0dXJlLWluZm8gLmNhdGVnb3J5LW1pbmlhdHVyZS1kYXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIGNvbG9yOiAjRjM2RDBCO1xuICAgICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAvKiBsaW5lIDg0Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW5mbyAuY2F0ZWdvcnktbWluaWF0dXJlLXRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgLyogbGluZSA4NDgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAuc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW5mbyAuY2F0ZWdvcnktbWluaWF0dXJlLXRpdGxlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAvKiBsaW5lIDg0Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgLnN1YmNhdGVnb3JpZXMgLmNhdGVnb3J5LW1pbmlhdHVyZS1ibG9jayAuY2F0ZWdvcnktbWluaWF0dXJlLWluZm8gLmNhdGVnb3J5LW1pbmlhdHVyZS10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNXB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgIC5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2sgLmNhdGVnb3J5LW1pbmlhdHVyZS1pbmZvIC5jYXRlZ29yeS1taW5pYXR1cmUtZXhjZXJwdCB7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAuc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW5mbyAuY2F0ZWdvcnktbWluaWF0dXJlLWV4Y2VycHQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9IH1cbiAgICAvKiBsaW5lIDg2Miwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAuc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW5mbyAuYmxvY2stbGluayB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGMzZEMEI7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi8qIGxpbmUgMTEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4uc3ViY2F0ZWdvcmllcyAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIC5jYXRlZ29yeS1taW5pYXR1cmUtaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDM4cHg7IH1cblxuLyogbGluZSAxOCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbi5zdWJjYXRlZ29yaWVzIC5jYXRlZ29yeS1taW5pYXR1cmUtYmxvY2sgLmNhdGVnb3J5LW1pbmlhdHVyZS1pbmZvIC5jYXRlZ29yeS1taW5pYXR1cmUtdGl0bGUgYSB7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi8qIGxpbmUgMjcsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4ucHJvZHVjdC1saXN0LXNlY3Rpb24gaDEsXG4ucHJvZHVjdC1saXN0LXNlY3Rpb24gaDIsXG4ucHJvZHVjdC1saXN0LXNlY3Rpb24gLmgyIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuXG4vKiBsaW5lIDMxLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNjYXRlZ29yeS1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLyogbGluZSA0NCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNjYXRlZ29yeS1kZXNjcmlwdGlvbiBwIHtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC8qIGxpbmUgNDgsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAucHJvZHVjdC1maWx0ZXItY29sdW1ucy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4vKiBsaW5lIDUyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuLnByb2R1Y3QtbGlzdC1zZWN0aW9uIC5wcm9kdWN0LWZpbHRlci1jb2x1bW5zLWNvbnRhaW5lciAuZmlsdGVyLWNvbHVtbiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDUyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAucHJvZHVjdC1maWx0ZXItY29sdW1ucy1jb250YWluZXIgLmZpbHRlci1jb2x1bW4ge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSA1Miwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gLnByb2R1Y3QtZmlsdGVyLWNvbHVtbnMtY29udGFpbmVyIC5maWx0ZXItY29sdW1uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gLnByb2R1Y3QtZmlsdGVyLWNvbHVtbnMtY29udGFpbmVyIC5maWx0ZXItY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4vKiBsaW5lIDYwLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuLnByb2R1Y3QtbGlzdC1zZWN0aW9uIC5wcm9kdWN0LWZpbHRlci1jb2x1bW5zLWNvbnRhaW5lciAucHJvZHVjdC1saXN0LWNvbHVtbiB7XG4gIGZsZXgtZ3JvdzogMTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uIC5wcm9kdWN0LWZpbHRlci1jb2x1bW5zLWNvbnRhaW5lciAucHJvZHVjdC1saXN0LWNvbHVtbiB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uIC5wcm9kdWN0LWZpbHRlci1jb2x1bW5zLWNvbnRhaW5lciAucHJvZHVjdC1saXN0LWNvbHVtbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uIC5wcm9kdWN0LWZpbHRlci1jb2x1bW5zLWNvbnRhaW5lciAucHJvZHVjdC1saXN0LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogbGluZSA2OSwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbi5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4ge1xuICBwYWRkaW5nOiAwOyB9XG4gIC8qIGxpbmUgNzMsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmNhdGVnb3J5LXRyZWUgdWwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLyogbGluZSA3Niwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5jYXRlZ29yeS10cmVlIHVsIGxpOjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKFwiLi4vaW1nL2NoZXZyb24tc291cy1tZW51LWJsYWNrLnBuZ1wiKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0xN3B4OyB9XG4gIC8qIGxpbmUgODcsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCBoMyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogMjVweCAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZENTQ1O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAvKiBsaW5lIDk5LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCBoMzphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lOyB9XG4gIC8qIGxpbmUgMTAzLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmFjdGl2ZV9maWx0ZXJzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG4gICAgLyogbGluZSAxMDksIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5hY3RpdmVfZmlsdGVycyAuYWN0aXZlLWZpbHRlcnMtdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgIC8qIGxpbmUgMTEzLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCAuYWN0aXZlX2ZpbHRlcnMgLnJlbW92ZS1maWx0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi1jcm9peC5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4OyB9XG4gICAgLyogbGluZSAxMjAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5hY3RpdmVfZmlsdGVycyAucmVzZXQtZmlsdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAvKiBsaW5lIDEyNSwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCAuYWN0aXZlX2ZpbHRlcnMgLnJlc2V0LWZpbHRlciBhIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cbiAgICAgICAgLyogbGluZSAxMzEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCAuYWN0aXZlX2ZpbHRlcnMgLnJlc2V0LWZpbHRlciBhOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAvKiBsaW5lIDEzNywgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5mYWNldHMtbGlzdCB7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjOyB9XG4gICAgLyogbGluZSAxNDAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5mYWNldHMtbGlzdCAuZmFjZXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgICAgLyogbGluZSAxNDIsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLyogbGluZSAxNDUsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldCAuZmFjZXQtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTU0LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldCAuZmFjZXQtbGFiZWw6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IHVybChcIi4uL2ltZy9hcnJvdy1tZWRpdW0tYm90dG9tLnBuZ1wiKTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC8qIGxpbmUgMTU5LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5mYWNldHMtbGlzdCAuZmFjZXQgLmZhY2V0LWZpZWxkcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLyogbGluZSAxNjEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCAuZmFjZXRzLWxpc3QgLmZhY2V0IC5mYWNldC1maWVsZHMgc2VsZWN0IHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDMwcHggOHB4IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZiB1cmwoXCIuLi9pbWcvYXJyb3ctc21hbGwtYm90dG9tLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDIwcHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgIC8qIGxpbmUgMTc2LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldCAuZmFjZXQtZmllbGRzIGxhYmVsIHtcbiAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4OyB9XG4gICAgICAgIC8qIGxpbmUgMTgzLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldCAuZmFjZXQtZmllbGRzIHVsIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIC8qIGxpbmUgMTg1LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLmZpbHRlci1jb2x1bW4gLmZhY2V0LXNlYXJjaCAuZmFjZXRzLWxpc3QgLmZhY2V0IC5mYWNldC1maWVsZHMgdWwgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICAvKiBsaW5lIDE5MCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5mYWNldHMtbGlzdCAuZmFjZXQgLmZhY2V0LWZpZWxkcyAuanMtc2xpZGVyLW1pbi1sYWJlbCxcbiAgICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5mYWNldHMtbGlzdCAuZmFjZXQgLmZhY2V0LWZpZWxkcyAuanMtc2xpZGVyLW1heC1sYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIC8qIGxpbmUgMjAyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldCAuZmFjZXQtZmllbGRzIC5qcy1zbGlkZXItbWF4LWxhYmVsIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC8qIGxpbmUgMjA3LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAuZmlsdGVyLWNvbHVtbiAuZmFjZXQtc2VhcmNoIC5mYWNldHMtbGlzdCAuZmFjZXQuaXMtb3BlbiAuZmFjZXQtbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgICAgIC8qIGxpbmUgMjA5LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldC5pcy1vcGVuIC5mYWNldC1sYWJlbDphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgLyogbGluZSAyMTMsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5maWx0ZXItY29sdW1uIC5mYWNldC1zZWFyY2ggLmZhY2V0cy1saXN0IC5mYWNldC5pcy1vcGVuIC5mYWNldC1maWVsZHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBsaW5lIDIyMSwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbi5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgLyogbGluZSAyMjQsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAubmItcHJvZHVjdHMge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMjI0LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5uYi1wcm9kdWN0cyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLyogbGluZSAyMzYsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtc29ydC1vcmRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDIzNiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtc29ydC1vcmRlciB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLyogbGluZSAyNDIsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5wcm9kdWN0cy1zb3J0LW9yZGVyIHVsIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAvKiBsaW5lIDI0Miwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5wcm9kdWN0cy1zb3J0LW9yZGVyIHVsIHtcbiAgICAgICAgICB3aWR0aDogMjYwcHg7IH0gfVxuICAgICAgLyogbGluZSAyNDcsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLXNvcnQtb3JkZXIgdWwgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLyogbGluZSAyNDksIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtc29ydC1vcmRlciB1bCBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHBhZGRpbmc6IDExcHggNDBweCAxMXB4IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjE1czsgfVxuICAgICAgICAgIC8qIGxpbmUgMjU3LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtc29ydC1vcmRlciB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmRmZGY7IH1cbiAgICAgICAgICAvKiBsaW5lIDI2MCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLXNvcnQtb3JkZXIgdWwgbGkgYTphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lOyB9XG4gICAgICAgIC8qIGxpbmUgMjY0LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLXNvcnQtb3JkZXIgdWwgbGkgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB6LWluZGV4OiAzOyB9XG4gICAgICAgIC8qIGxpbmUgMjczLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLXNvcnQtb3JkZXIgdWwgbGkuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgLyogbGluZSAyNzUsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5wcm9kdWN0cy1zb3J0LW9yZGVyIHVsIGxpLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Fycm93LXNtYWxsLWJvdHRvbS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4OyB9XG4gICAgICAgIC8qIGxpbmUgMjg2LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLXNvcnQtb3JkZXIgdWwgbGkuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIC8qIGxpbmUgMjkyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLWRpc3BsYXktdHlwZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAvKiBsaW5lIDI5Miwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtZGlzcGxheS10eXBlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLyogbGluZSAyOTgsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5wcm9kdWN0cy1kaXNwbGF5LXR5cGUgbGkge1xuICAgICAgb3BhY2l0eTogMC4zOyB9XG4gICAgICAvKiBsaW5lIDMwMCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtZGlzcGxheS10eXBlIGxpLmlzLWFjdGl2ZSwgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5wcm9kdWN0cy1kaXNwbGF5LXR5cGUgbGk6aG92ZXIsIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtZGlzcGxheS10eXBlIGxpOmZvY3VzLCAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLWRpc3BsYXktdHlwZSBsaTphY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAvKiBsaW5lIDMwNiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LWxpc3Qtc2VjdGlvbiAjcHJvZHVjdHMgLnByb2R1Y3RzLXNlbGVjdGlvbiAucHJvZHVjdHMtZGlzcGxheS10eXBlIGxpIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAvKiBsaW5lIDMwOCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICAgLnByb2R1Y3QtbGlzdC1zZWN0aW9uICNwcm9kdWN0cyAucHJvZHVjdHMtc2VsZWN0aW9uIC5wcm9kdWN0cy1kaXNwbGF5LXR5cGUgbGkgYSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDsgfVxuICAgICAgLyogbGluZSAzMTYsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLWRpc3BsYXktdHlwZSBsaTpob3ZlciBhLCAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLWRpc3BsYXktdHlwZSBsaTpmb2N1cyBhLCAucHJvZHVjdC1saXN0LXNlY3Rpb24gI3Byb2R1Y3RzIC5wcm9kdWN0cy1zZWxlY3Rpb24gLnByb2R1Y3RzLWRpc3BsYXktdHlwZSBsaTphY3RpdmUgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7IH1cblxuLyogbGluZSAzMjYsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG5ib2R5Om5vdCguaXMtc2FmYXJpKSAucHJvZHVjdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLyogbGluZSAzMzIsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4ucHJvZHVjdC1taW5pYXR1cmUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDMzMiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1taW5pYXR1cmUge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAucHJvZHVjdC1taW5pYXR1cmU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC8qIGxpbmUgMzMyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LW1pbmlhdHVyZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAvKiBsaW5lIDMzMiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1taW5pYXR1cmUge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbWluaWF0dXJlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC8qIGxpbmUgMzQyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbWluaWF0dXJlOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDMzMiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1taW5pYXR1cmUge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbWluaWF0dXJlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC8qIGxpbmUgMzQ5LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbWluaWF0dXJlOm50aC1jaGlsZCg0bisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAvKiBsaW5lIDQ5LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LW1pbmlhdHVyZTpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLyogbGluZSAzNTcsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMzBweDtcbiAgICB0cmFuc2l0aW9uOiAwLjE1czsgfVxuICAgIC8qIGxpbmUgMzY0LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxuICAgIC8qIGxpbmUgMzY3LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtZmxhZ3Mge1xuICAgICAgbWluLWhlaWdodDogMzhweDtcbiAgICAgIG1hcmdpbjogLTMwcHggLTMwcHggMTJweCAtMzBweDsgfVxuICAgICAgLyogbGluZSAzNzAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWZsYWdzIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxM3B4IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5MWFjMzk7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLyogbGluZSAzODEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtZmxhZ3MgbGk6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IC0xMnB4O1xuICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDk5ZGVnLCAjOTFhYzM5LCAjOTFhYzM5IDhweCwgdHJhbnNwYXJlbnQgOHB4LCB0cmFuc3BhcmVudCA2MHB4KTsgfVxuICAgIC8qIGxpbmUgMzkyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtbmFtZSB7XG4gICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBtYXJnaW46IDAgMzBweCAzcHggMzBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgICAgLyogbGluZSA0MDEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LW5hbWU6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgIC8qIGxpbmUgNDA0LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAucHJvZHVjdC1uYW1lIGEge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC8qIGxpbmUgNDA4LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtcmVmZXJlbmNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBtYXJnaW46IDAgMzBweCAyMHB4IDMwcHg7IH1cbiAgICAvKiBsaW5lIDQxOSwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC50aHVtYm5haWwge1xuICAgICAgbWFyZ2luOiAwIDMwcHggMjVweCAzMHB4OyB9XG4gICAgLyogbGluZSA0MjIsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLXNtYWxsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDQyNSwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWF0dHJpYnV0ZSB7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAvKiBsaW5lIDQzMiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5zaG9wcGluZy1saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLyogbGluZSA0MzcsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAuc2VlLXByb2R1Y3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgIC8qIGxpbmUgNDQ1LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAvKiBsaW5lIDQ0OCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LmxvYWRpbmcge1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAgICAgLyogbGluZSA0NTEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAgIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LmxvYWRpbmc6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXI6IDZweCBzb2xpZCAjZjNmM2YzO1xuICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICB0b3A6IDExcHg7IH1cblxuLyogbGluZSA0NzMsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4ucGFnZS1tYW51ZmFjdHVyZXIgI21haW4gaDEsXG4ucGFnZS1zdXBwbGllciAjbWFpbiBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuLyogbGluZSA0NzYsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4ucGFnZS1tYW51ZmFjdHVyZXIgLmZpbHRlci1jb2x1bW4sXG4ucGFnZS1zdXBwbGllciAuZmlsdGVyLWNvbHVtbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogbGluZSA0NzksIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4ucGFnZS1tYW51ZmFjdHVyZXIgLmJyYW5kLWNvbnRlbnQsXG4ucGFnZS1zdXBwbGllciAuYnJhbmQtY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuLyogbGluZSA0ODIsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4ucGFnZS1tYW51ZmFjdHVyZXIgI21hbnVmYWN0dXJlci1jaXR5LFxuLnBhZ2Utc3VwcGxpZXIgI21hbnVmYWN0dXJlci1jaXR5IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qIGxpbmUgNDg2LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuLnBhZ2UtbWFudWZhY3R1cmVyIC5icmFuZC10YWJzLFxuLnBhZ2Utc3VwcGxpZXIgLmJyYW5kLXRhYnMge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gIC8qIGxpbmUgNDg5LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAucGFnZS1tYW51ZmFjdHVyZXIgLmJyYW5kLXRhYnMgLnRhYnMsXG4gIC5wYWdlLW1hbnVmYWN0dXJlciAuYnJhbmQtdGFicyAuYWNjb3JkaW9uLFxuICAucGFnZS1zdXBwbGllciAuYnJhbmQtdGFicyAudGFicyxcbiAgLnBhZ2Utc3VwcGxpZXIgLmJyYW5kLXRhYnMgLmFjY29yZGlvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjRjM2RDBCOyB9XG4gICAgLyogbGluZSA0OTQsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgLnBhZ2UtbWFudWZhY3R1cmVyIC5icmFuZC10YWJzIC50YWJzIGxpIGEsXG4gICAgLnBhZ2UtbWFudWZhY3R1cmVyIC5icmFuZC10YWJzIC5hY2NvcmRpb24gbGkgYSxcbiAgICAucGFnZS1zdXBwbGllciAuYnJhbmQtdGFicyAudGFicyBsaSBhLFxuICAgIC5wYWdlLXN1cHBsaWVyIC5icmFuZC10YWJzIC5hY2NvcmRpb24gbGkgYSB7XG4gICAgICBjb2xvcjogIzIyMjIyQTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7IH1cbiAgICAgIC8qIGxpbmUgNDk4LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgLnBhZ2UtbWFudWZhY3R1cmVyIC5icmFuZC10YWJzIC50YWJzIGxpIGE6Zm9jdXMsIC5wYWdlLW1hbnVmYWN0dXJlciAuYnJhbmQtdGFicyAudGFicyBsaSBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSxcbiAgICAgIC5wYWdlLW1hbnVmYWN0dXJlciAuYnJhbmQtdGFicyAuYWNjb3JkaW9uIGxpIGE6Zm9jdXMsXG4gICAgICAucGFnZS1tYW51ZmFjdHVyZXIgLmJyYW5kLXRhYnMgLmFjY29yZGlvbiBsaSBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSxcbiAgICAgIC5wYWdlLXN1cHBsaWVyIC5icmFuZC10YWJzIC50YWJzIGxpIGE6Zm9jdXMsXG4gICAgICAucGFnZS1zdXBwbGllciAuYnJhbmQtdGFicyAudGFicyBsaSBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSxcbiAgICAgIC5wYWdlLXN1cHBsaWVyIC5icmFuZC10YWJzIC5hY2NvcmRpb24gbGkgYTpmb2N1cyxcbiAgICAgIC5wYWdlLXN1cHBsaWVyIC5icmFuZC10YWJzIC5hY2NvcmRpb24gbGkgYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjM2RDBCO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLyogbGluZSA1MDQsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAucGFnZS1tYW51ZmFjdHVyZXIgLmJyYW5kLXRhYnMgLnRhYnMgbGkgYTpob3Zlcjpub3QoW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSksXG4gICAgICAucGFnZS1tYW51ZmFjdHVyZXIgLmJyYW5kLXRhYnMgLmFjY29yZGlvbiBsaSBhOmhvdmVyOm5vdChbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddKSxcbiAgICAgIC5wYWdlLXN1cHBsaWVyIC5icmFuZC10YWJzIC50YWJzIGxpIGE6aG92ZXI6bm90KFthcmlhLXNlbGVjdGVkPSd0cnVlJ10pLFxuICAgICAgLnBhZ2Utc3VwcGxpZXIgLmJyYW5kLXRhYnMgLmFjY29yZGlvbiBsaSBhOmhvdmVyOm5vdChbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmM0OWM7IH1cbiAgLyogbGluZSA1MTAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gIC5wYWdlLW1hbnVmYWN0dXJlciAuYnJhbmQtdGFicyAudGFicy1jb250ZW50LFxuICAucGFnZS1zdXBwbGllciAuYnJhbmQtdGFicyAudGFicy1jb250ZW50IHtcbiAgICBib3JkZXI6IG5vbmU7IH1cblxuLyogbGluZSA1MTYsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4jbWFpbiAuYnJhbmRzLWxpc3Qge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gICNtYWluIC5icmFuZHMtbGlzdDo6YmVmb3JlLCAjbWFpbiAuYnJhbmRzLWxpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLyogbGluZSAxODEsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MgKi9cbiAgI21haW4gLmJyYW5kcy1saXN0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSA1MTgsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDUxOCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSA1MTgsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDUxOCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgNTE4LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSA1MTgsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICNtYWluIC5icmFuZHMtbGlzdCAuYnJhbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLyogbGluZSA1MjUsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICAvKiBsaW5lIDUzMCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIC5icmFuZC1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAgIC8qIGxpbmUgNTM1LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAuYnJhbmQtY29udGFpbmVyOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZGVjby1yb3VuZC1ncmF5LnBuZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgLyogbGluZSA1NDksIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAuYnJhbmQtaW1nIHtcbiAgICAgIGhlaWdodDogMTI1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTI1cHg7IH1cbiAgICAgIC8qIGxpbmUgNTUyLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAuYnJhbmQtaW1nIGltZyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAvKiBsaW5lIDU1Nywgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIC5icmFuZC1kZXNjIGgyLCAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIC5icmFuZC1kZXNjIC5oMiB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgIC8qIGxpbmUgNTYwLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgI21haW4gLmJyYW5kcy1saXN0IC5icmFuZCAuYnJhbmQtZGVzYyBoMiBhLCAjbWFpbiAuYnJhbmRzLWxpc3QgLmJyYW5kIC5icmFuZC1kZXNjIC5oMiBhIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLyoqXG4gKiBMaXN0IHN0eWxlIFxuICpcbiAqL1xuLyogbGluZSA1NzUsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4janMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC8qIGxpbmUgNTc4LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAvKiBsaW5lIDU3OCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyLCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyAucHJvZHVjdC1jb250YWluZXIge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICAgIC8qIGxpbmUgNTg1LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LW1haW4taW5mbywgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LW1haW4taW5mbyB7XG4gICAgICBmbGV4LWJhc2lzOiAyNyU7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBmbGV4LXNocmluazogMDsgfVxuICAgIC8qIGxpbmUgNTkwLCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC50aHVtYm5haWwsICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDU5Mywgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLXNtYWxsLCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyAucHJvZHVjdC1jb250YWluZXIgLnRodW1ibmFpbC1zbWFsbCB7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LWJhc2lzOiAxMjBweDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwOyB9XG4gICAgICAvKiBsaW5lIDU5Nywgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC50aHVtYm5haWwtc21hbGwsICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLXNtYWxsLFxuICAgICAgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbiAucHJvZHVjdC1jb250YWluZXIgLnRodW1ibmFpbC1zbWFsbCA+IC50aHVtYm5haWwsXG4gICAgICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyAucHJvZHVjdC1jb250YWluZXIgLnRodW1ibmFpbC1zbWFsbCA+IC50aHVtYm5haWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLyogbGluZSA2MDEsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLXNtYWxsIC50aHVtYm5haWwsICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIC5wcm9kdWN0LWNvbnRhaW5lciAudGh1bWJuYWlsLXNtYWxsIC50aHVtYm5haWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAvKiBsaW5lIDYwNywgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAucHJvZHVjdC1mbGFncywgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LWZsYWdzIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgLTMwcHg7IH1cbiAgICAvKiBsaW5lIDYxMCwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAucHJvZHVjdC1uYW1lLCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3QtbmFtZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAvKiBsaW5lIDYxMiwgc2Nzcy9fcHJvZHVjdC1saXN0LnNjc3MgKi9cbiAgICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LW5hbWUgYSwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LW5hbWUgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC8qIGxpbmUgNjE3LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LXJlZmVyZW5jZSwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0LXJlZmVyZW5jZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLyogbGluZSA2MjAsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbiAucHJvZHVjdC1jb250YWluZXIgLnByb2R1Y3RfYXR0cmlidXRlcywgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5wcm9kdWN0X2F0dHJpYnV0ZXMge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC8qIGxpbmUgNjI1LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IC5yb3cucHJvZHVjdHMubGFyZ2UtdXAtMyA+IC5jb2x1bW4gLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdCwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgICAgIC8qIGxpbmUgNjI4LCBzY3NzL19wcm9kdWN0LWxpc3Quc2NzcyAqL1xuICAgICAgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbiAucHJvZHVjdC1jb250YWluZXIgLnNlZS1wcm9kdWN0OjphZnRlciwgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbnMgLnByb2R1Y3QtY29udGFpbmVyIC5zZWUtcHJvZHVjdDo6YWZ0ZXIge1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLyogbGluZSA2MzQsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgI2pzLXByb2R1Y3QtbGlzdC5saXN0LXN0eWxlLWxpc3QgLnJvdy5wcm9kdWN0cy5sYXJnZS11cC0zID4gLmNvbHVtbiAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzVweDsgfVxuICAgICAgLyogbGluZSA2MzcsIHNjc3MvX3Byb2R1Y3QtbGlzdC5zY3NzICovXG4gICAgICAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1uIC5wcm9kdWN0LWNvbnRhaW5lciAuYWRkLXRvLWNhcnQ6OmFmdGVyLCAjanMtcHJvZHVjdC1saXN0Lmxpc3Qtc3R5bGUtbGlzdCAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMgPiAuY29sdW1ucyAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0OjphZnRlciB7XG4gICAgICAgIHRvcDogN3B4O1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLyoqIEltcG9ydCBTaW5nbGUgUHJvZHVjdCBQYWdlIHN0eWxlcyAqL1xuLyoqXG4gKiBTaW5nbGUgUHJvZHVjdCBQYWdlIHN0eWxlc1xuICovXG4vKiBsaW5lIDYsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuI3Byb2R1Y3QgLnByb2R1Y3QtZmxhZ3Mge1xuICBtaW4taGVpZ2h0OiAzOHB4O1xuICBtYXJnaW46IDAgMCAxNXB4IDA7IH1cbiAgLyogbGluZSA5LCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgI3Byb2R1Y3QgLnByb2R1Y3QtZmxhZ3MgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxM3B4IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkxYWMzOTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC8qIGxpbmUgMjEsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAjcHJvZHVjdCAuaW1hZ2VzLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG5cbi8qIGxpbmUgMjUsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuI3Byb2R1Y3QgLmltYWdlcy1jb250YWluZXIgLnByb2R1Y3QtY292ZXIge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG5cbi8qIGxpbmUgMjgsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuI3Byb2R1Y3QgLmltYWdlcy1jb250YWluZXIgLnByb2R1Y3QtaW1hZ2VzIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLyogbGluZSAzMSwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICNwcm9kdWN0IC5pbWFnZXMtY29udGFpbmVyIC5wcm9kdWN0LWltYWdlcyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDQ4JTsgfVxuXG4vKiBsaW5lIDM4LCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiNwcm9kdWN0IC5wcm9kdWN0LWluZm9ybWF0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGRkQ1NDU7XG4gIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIC8qIGxpbmUgNDYsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAjcHJvZHVjdCAucHJvZHVjdC1pbmZvcm1hdGlvbiAjcHJvZHVjdC1yZWZlcmVuY2Uge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIC8qIGxpbmUgNDgsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAgICNwcm9kdWN0IC5wcm9kdWN0LWluZm9ybWF0aW9uICNwcm9kdWN0LXJlZmVyZW5jZSAucmVmLWxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAvKiBsaW5lIDUxLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgICAjcHJvZHVjdCAucHJvZHVjdC1pbmZvcm1hdGlvbiAjcHJvZHVjdC1yZWZlcmVuY2UgLnJlZiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgLyogbGluZSA1Niwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICNwcm9kdWN0IC5wcm9kdWN0LWluZm9ybWF0aW9uIC5wcm9kdWN0LXByaWNlcyAucHJvZHVjdC1wcmljZSB7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgLyogbGluZSA1OCwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICAgI3Byb2R1Y3QgLnByb2R1Y3QtaW5mb3JtYXRpb24gLnByb2R1Y3QtcHJpY2VzIC5wcm9kdWN0LXByaWNlICNvbmx5LXByaWNlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAvKiBsaW5lIDYyLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgICAjcHJvZHVjdCAucHJvZHVjdC1pbmZvcm1hdGlvbiAucHJvZHVjdC1wcmljZXMgLnByb2R1Y3QtcHJpY2UgLmRpc2NvdW50LXBlcmNlbnRhZ2Uge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YzNkQwQjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAvKiBsaW5lIDcwLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgI3Byb2R1Y3QgLnByb2R1Y3QtaW5mb3JtYXRpb24gLnByb2R1Y3QtcHJpY2VzIC5hZXVjX2RlbGl2ZXJ5X2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC8qIGxpbmUgNzUsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAjcHJvZHVjdCAucHJvZHVjdC1pbmZvcm1hdGlvbiAjcHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAvKiBsaW5lIDc5LCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgI3Byb2R1Y3QgLnByb2R1Y3QtaW5mb3JtYXRpb24gLnByb2R1Y3QtZmVhdHVyZXMgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuXG4vKiBsaW5lIDg3LCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiNwcm9kdWN0IC5wcm9kdWN0LXZhcmlhbnRzIHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLyogbGluZSA4OSwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICNwcm9kdWN0IC5wcm9kdWN0LXZhcmlhbnRzIHVsIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC8qIGxpbmUgOTQsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAgICNwcm9kdWN0IC5wcm9kdWN0LXZhcmlhbnRzIHVsIGxpIC5jb2xvci1uYW1lIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLyogbGluZSA5OCwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICAgI3Byb2R1Y3QgLnByb2R1Y3QtdmFyaWFudHMgdWwgbGkgLmNvbG9yLXN3YXRjaCB7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tbGVmdDogN3B4OyB9XG5cbi8qIGxpbmUgMTExLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgLnByb2R1Y3QtcXVhbnRpdHkge1xuICAvKiBIaWRlIEhUTUw1IFVwIGFuZCBEb3duIGFycm93cyAqLyB9XG4gIC8qIGxpbmUgMTEyLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgI3Byb2R1Y3QgLnByb2R1Y3QtYWN0aW9ucyAucHJvZHVjdC1xdWFudGl0eSBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAvKiBsaW5lIDExNiwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgLnByb2R1Y3QtcXVhbnRpdHkgLmRlY3JlYXNlLXByb2R1Y3QtcXVhbnRpdHksICNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgLnByb2R1Y3QtcXVhbnRpdHkgLmluY3JlYXNlLXByb2R1Y3QtcXVhbnRpdHkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC8qIGxpbmUgMTMxLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgI3Byb2R1Y3QgLnByb2R1Y3QtYWN0aW9ucyAucHJvZHVjdC1xdWFudGl0eSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZjZmNmY2O1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLyogbGluZSAxNDYsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAgICNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgLnByb2R1Y3QtcXVhbnRpdHkgaW5wdXRbdHlwZT1cIm51bWJlclwiXTp2YWxpZCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC8qIGxpbmUgMTUxLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiAgI3Byb2R1Y3QgLnByb2R1Y3QtYWN0aW9ucyAucHJvZHVjdC1xdWFudGl0eSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLCAjcHJvZHVjdCAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LXF1YW50aXR5IGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLyogbGluZSAxNTUsIHNjc3MvX3Byb2R1Y3Quc2NzcyAqL1xuICAjcHJvZHVjdCAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LXF1YW50aXR5IGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XG5cbi8qIGxpbmUgMTU5LCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgI3Byb2R1Y3QtcHJpY2Utc3VtIHtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBmb250LXdlaWdodDogOTAwOyB9XG5cbi8qIGxpbmUgMTYzLCBzY3NzL19wcm9kdWN0LnNjc3MgKi9cbiNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgLmFkZC10by1jYXJ0LWJ1dHRvbiwgI3Byb2R1Y3QgLnByb2R1Y3QtYWN0aW9ucyAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyIC5hZGQtdG8tY2FydCwgLnByb2R1Y3QtbWluaWF0dXJlIC5wcm9kdWN0LWNvbnRhaW5lciAjcHJvZHVjdCAucHJvZHVjdC1hY3Rpb25zIC5hZGQtdG8tY2FydCB7XG4gIG1hcmdpbi1yaWdodDogMzBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAvKiBsaW5lIDE2Mywgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICAgI3Byb2R1Y3QgLnByb2R1Y3QtYWN0aW9ucyAuYWRkLXRvLWNhcnQtYnV0dG9uLCAjcHJvZHVjdCAucHJvZHVjdC1hY3Rpb25zIC5wcm9kdWN0LW1pbmlhdHVyZSAucHJvZHVjdC1jb250YWluZXIgLmFkZC10by1jYXJ0LCAucHJvZHVjdC1taW5pYXR1cmUgLnByb2R1Y3QtY29udGFpbmVyICNwcm9kdWN0IC5wcm9kdWN0LWFjdGlvbnMgLmFkZC10by1jYXJ0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4vKiBsaW5lIDE3NSwgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4jbWFpbiAucHNfY3Jvc3NzZWxsaW5nIHtcbiAgbWFyZ2luLXRvcDogNzBweDsgfVxuICAvKiBsaW5lIDE3Nywgc2Nzcy9fcHJvZHVjdC5zY3NzICovXG4gICNtYWluIC5wc19jcm9zc3NlbGxpbmcgaDIsICNtYWluIC5wc19jcm9zc3NlbGxpbmcgLmgyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8qKiBJbXBvcnQgY2FydCBhbmQgY2hlY2tvdXQgc3R5bGVzICoqL1xuLyoqXG4gICAgQ2FydCBDU1MgXG4gICAgKi9cbi8qIGxpbmUgNSwgc2Nzcy9fY2FydC5zY3NzICovXG4uY2FydC1vdmVydmlldyB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcGFkZGluZy1yaWdodDogMzBweDsgfVxuICAvKiBsaW5lIDEwLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLyogbGluZSAxMywgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLyogbGluZSAxNywgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAucHJvZHVjdC1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogYXV0bzsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC8qIGxpbmUgMTcsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgICAuY2FydC1vdmVydmlldyB1bCAuY2FydC1pdGVtIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLyogbGluZSAxNywgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgICAgIC5jYXJ0LW92ZXJ2aWV3IHVsIC5jYXJ0LWl0ZW0gLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG4gICAgLyogbGluZSAyOCwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAucHJvZHVjdC1uYW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgLyogbGluZSAzMSwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgICAuY2FydC1vdmVydmlldyB1bCAuY2FydC1pdGVtIC5wcm9kdWN0LW5hbWUgYSB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLyogbGluZSAzNSwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAucHJvZHVjdC1hdHRyaWJ1dGVzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAvKiBsaW5lIDM3LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAgIC5jYXJ0LW92ZXJ2aWV3IHVsIC5jYXJ0LWl0ZW0gLnByb2R1Y3QtYXR0cmlidXRlcyBzcGFuLmxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgIC8qIGxpbmUgNDUsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LW92ZXJ2aWV3IHVsIC5jYXJ0LWl0ZW0gLnByb2R1Y3QtYXZhaWxhYmlsaXR5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLyogbGluZSA0OSwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAucHJvZHVjdC11bml0LXByaWNlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgeCc7IH1cbiAgICAvKiBsaW5lIDUzLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1vdmVydmlldyB1bCAuY2FydC1pdGVtIC5wcm9kdWN0LXF1YW50aXR5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmYgIWltcG9ydGFudDsgfVxuICAgIC8qIGxpbmUgNjEsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LW92ZXJ2aWV3IHVsIC5jYXJ0LWl0ZW0gLmpzLWRlY3JlYXNlLXByb2R1Y3QtcXVhbnRpdHksXG4gICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAuanMtaW5jcmVhc2UtcHJvZHVjdC1xdWFudGl0eSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGMzZEMEI7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAvKiBsaW5lIDc3LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1vdmVydmlldyB1bCAuY2FydC1pdGVtIC5wcm9kdWN0LXByaWNlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgIC8qIGxpbmUgODIsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LW92ZXJ2aWV3IHVsIC5jYXJ0LWl0ZW0gLnF1YW50aXR5LXVwZGF0ZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAvKiBsaW5lIDg1LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1vdmVydmlldyB1bCAuY2FydC1pdGVtIC51cGRhdGUtcXVhbnRpdHkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDcwcHg7IH1cbiAgICAvKiBsaW5lIDg5LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1vdmVydmlldyB1bCAuY2FydC1pdGVtIC5zbWFsbC10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycywgb3BhY2l0eSAwLjJzO1xuICAgICAgY29sb3I6ICNGMzZEMEI7IH1cbiAgICAgIC8qIGxpbmUgOTQsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAuc21hbGwtdGV4dC5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAjNTU1ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIG9wYWNpdHk6IDAuMzsgfVxuICAgICAgLyogbGluZSAxMDAsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgLmNhcnQtb3ZlcnZpZXcgdWwgLmNhcnQtaXRlbSAuc21hbGwtdGV4dC53YXJuaW5nIHtcbiAgICAgICAgY29sb3I6ICNmODBjMGM7IH1cblxuLyogbGluZSAxMDgsIHNjc3MvX2NhcnQuc2NzcyAqL1xuI2l0ZW1zLXN1YnRvdGFsIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgLyogbGluZSAxMTEsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAjaXRlbXMtc3VidG90YWwgLnRvdGFsLWFtb3VudCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgICAvKiBsaW5lIDExNSwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgI2l0ZW1zLXN1YnRvdGFsIC50b3RhbC1hbW91bnQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcvLyc7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbi8qIGxpbmUgMTI0LCBzY3NzL19jYXJ0LnNjc3MgKi9cbi5jYXJ0LXZvdWNoZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDEyNCwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtdm91Y2hlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gIC5jYXJ0LXZvdWNoZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxMjQsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LXZvdWNoZXIge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogNTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxMjQsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LXZvdWNoZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgIC5jYXJ0LXZvdWNoZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC8qIGxpbmUgMTM0LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgLmNhcnQtdm91Y2hlciA+IHVsIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAvKiBsaW5lIDEzNiwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtdm91Y2hlciA+IHVsID4gbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAvKiBsaW5lIDE0Mywgc2Nzcy9fY2FydC5zY3NzICovXG4gIC5jYXJ0LXZvdWNoZXIgc3Bhbi5sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YzNkQwQjtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAvKiBsaW5lIDE0Nywgc2Nzcy9fY2FydC5zY3NzICovXG4gIC5jYXJ0LXZvdWNoZXIgYS5yZW1vdmUtdm91Y2hlciB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIC8qIGxpbmUgMTUyLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC12b3VjaGVyIGEucmVtb3ZlLXZvdWNoZXI6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICd4JztcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi8qIGxpbmUgMTYwLCBzY3NzL19jYXJ0LnNjc3MgKi9cbi5jYXJ0LWRldGFpbGVkLXRvdGFscyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNjAsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LWRldGFpbGVkLXRvdGFscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gIC5jYXJ0LWRldGFpbGVkLXRvdGFsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDE2MCwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtZGV0YWlsZWQtdG90YWxzIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDUwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMTYwLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1kZXRhaWxlZC10b3RhbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgIC5jYXJ0LWRldGFpbGVkLXRvdGFsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLyogbGluZSAxNjksIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAuY2FydC1kZXRhaWxlZC10b3RhbHMgc3Bhbi5sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKiBsaW5lIDE4MCwgc2Nzcy9fY2FydC5zY3NzICovXG4uY2FydC1zdWJ0b3RhbHMgPiBkaXYsXG4uY2FydC10b3RhbCA+IGRpdixcbiNjYXJ0LXN1bW1hcnkgPiBkaXYge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5jYXJ0LXN1YnRvdGFscyA+IGRpdjo6YmVmb3JlLCAuY2FydC1zdWJ0b3RhbHMgPiBkaXY6OmFmdGVyLFxuICAuY2FydC10b3RhbCA+IGRpdjo6YmVmb3JlLFxuICAuY2FydC10b3RhbCA+IGRpdjo6YWZ0ZXIsXG4gICNjYXJ0LXN1bW1hcnkgPiBkaXY6OmJlZm9yZSxcbiAgI2NhcnQtc3VtbWFyeSA+IGRpdjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAuY2FydC1zdWJ0b3RhbHMgPiBkaXY6OmFmdGVyLFxuICAuY2FydC10b3RhbCA+IGRpdjo6YWZ0ZXIsXG4gICNjYXJ0LXN1bW1hcnkgPiBkaXY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMTgwLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1zdWJ0b3RhbHMgPiBkaXYsXG4gICAgLmNhcnQtdG90YWwgPiBkaXYsXG4gICAgI2NhcnQtc3VtbWFyeSA+IGRpdiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjg3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgMTgwLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgICAuY2FydC1zdWJ0b3RhbHMgPiBkaXYsXG4gICAgLmNhcnQtdG90YWwgPiBkaXYsXG4gICAgI2NhcnQtc3VtbWFyeSA+IGRpdiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjg3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07IH0gfVxuICAvKiBsaW5lIDE4Mywgc2Nzcy9fY2FydC5zY3NzICovXG4gIC5jYXJ0LXN1YnRvdGFscyA+IGRpdiBzcGFuLFxuICAuY2FydC10b3RhbCA+IGRpdiBzcGFuLFxuICAjY2FydC1zdW1tYXJ5ID4gZGl2IHNwYW4ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHdpZHRoOiA0OSU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAxODMsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgLmNhcnQtc3VidG90YWxzID4gZGl2IHNwYW4sXG4gICAgICAuY2FydC10b3RhbCA+IGRpdiBzcGFuLFxuICAgICAgI2NhcnQtc3VtbWFyeSA+IGRpdiBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAuY2FydC1zdWJ0b3RhbHMgPiBkaXYgc3BhbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5jYXJ0LXRvdGFsID4gZGl2IHNwYW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAjY2FydC1zdW1tYXJ5ID4gZGl2IHNwYW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAvKiBsaW5lIDE4Niwgc2Nzcy9fY2FydC5zY3NzICovXG4gICAgLmNhcnQtc3VidG90YWxzID4gZGl2IHNwYW46Zmlyc3QtY2hpbGQsXG4gICAgLmNhcnQtdG90YWwgPiBkaXYgc3BhbjpmaXJzdC1jaGlsZCxcbiAgICAjY2FydC1zdW1tYXJ5ID4gZGl2IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qIGxpbmUgMTkyLCBzY3NzL19jYXJ0LnNjc3MgKi9cbi5jYXJ0LXN1YnRvdGFscyBzcGFuLmxhYmVsLFxuLmNhcnQtdG90YWwgc3Bhbi5sYWJlbCxcbiNjYXJ0LXN1bW1hcnkgc3Bhbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyogbGluZSAyMDAsIHNjc3MvX2NhcnQuc2NzcyAqL1xuLmNhcnQtdG90YWwsXG4uY2FydC1zdW1tYXJ5LXRvdGFscyAuY2FydC1zdW1tYXJ5LXRvdGFscyB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjY2RjZGNkO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAuY2FydC10b3RhbDo6YmVmb3JlLCAuY2FydC10b3RhbDo6YWZ0ZXIsXG4gIC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzOjpiZWZvcmUsXG4gIC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5jYXJ0LXRvdGFsOjphZnRlcixcbiAgLmNhcnQtc3VtbWFyeS10b3RhbHMgLmNhcnQtc3VtbWFyeS10b3RhbHM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDIwNiwgc2Nzcy9fY2FydC5zY3NzICovXG4gIC5jYXJ0LXRvdGFsIHNwYW4sXG4gIC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzIHNwYW4ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLyogbGluZSAyMDYsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgLmNhcnQtdG90YWwgc3BhbixcbiAgICAgIC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzIHNwYW4ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgIC5jYXJ0LXRvdGFsIHNwYW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuY2FydC1zdW1tYXJ5LXRvdGFscyAuY2FydC1zdW1tYXJ5LXRvdGFscyBzcGFuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLyogbGluZSAyMDgsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5jYXJ0LXRvdGFsIHNwYW46Zmlyc3QtY2hpbGQsXG4gICAgLmNhcnQtc3VtbWFyeS10b3RhbHMgLmNhcnQtc3VtbWFyeS10b3RhbHMgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAvKiBsaW5lIDIxMywgc2Nzcy9fY2FydC5zY3NzICovXG4gIC5jYXJ0LXRvdGFsIHNwYW4ubGFiZWwsXG4gIC5jYXJ0LXN1bW1hcnktdG90YWxzIC5jYXJ0LXN1bW1hcnktdG90YWxzIHNwYW4ubGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyogbGluZSAyMjEsIHNjc3MvX2NhcnQuc2NzcyAqL1xuLmNvbnRpbnVlLXNob3BwaW5nIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4vKiBsaW5lIDIyNiwgc2Nzcy9fY2FydC5zY3NzICovXG4ub3JkZXItYnV0dG9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbi8qKiBtb2RhbCAqKi9cbi8qIGxpbmUgMjM4LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiNhZGQtdG8tY2FydC1tb2RhbCB7XG4gIG1hcmdpbi10b3A6IDcwcHg7XG4gIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gIC8qIGxpbmUgMjQxLCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgI2FkZC10by1jYXJ0LW1vZGFsIGgyLCAjYWRkLXRvLWNhcnQtbW9kYWwgLmgyIHtcbiAgICBmb250LXNpemU6IDI3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLyogbGluZSAyNDcsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICNhZGQtdG8tY2FydC1tb2RhbCBoMiAuZmEsICNhZGQtdG8tY2FydC1tb2RhbCAuaDIgLmZhIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgLyogbGluZSAyNTksIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgI2FkZC10by1jYXJ0LW1vZGFsIGgyIC5mYS5mYS1jaGVjaywgI2FkZC10by1jYXJ0LW1vZGFsIC5oMiAuZmEuZmEtY2hlY2sge1xuICAgICAgICBjb2xvcjogIzM0YzU3ZDsgfVxuICAgICAgLyogbGluZSAyNjIsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgICAgI2FkZC10by1jYXJ0LW1vZGFsIGgyIC5mYS5mYS13YXJuaW5nLCAjYWRkLXRvLWNhcnQtbW9kYWwgLmgyIC5mYS5mYS13YXJuaW5nIHtcbiAgICAgICAgY29sb3I6ICM4NjAwMDA7XG4gICAgICAgIG9wYWNpdHk6IDAuMzsgfVxuICAvKiBsaW5lIDI2OCwgc2Nzcy9fY2FydC5zY3NzICovXG4gICNhZGQtdG8tY2FydC1tb2RhbCBoMyB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgLyogbGluZSAyNzIsIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAjYWRkLXRvLWNhcnQtbW9kYWwgLnByaWNlIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMzBweDsgfVxuICAvKiBsaW5lIDI3Niwgc2Nzcy9fY2FydC5zY3NzICovXG4gICNhZGQtdG8tY2FydC1tb2RhbCAubW9kYWwtYWN0aW9ucyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qIGxpbmUgMjgxLCBzY3NzL19jYXJ0LnNjc3MgKi9cbi5wcm9kdWN0LXVwZGF0ZS1xdWFudGl0eS1zcGlubmVyLFxuLnByb2R1Y3QtdXBkYXRlLXF1YW50aXR5LXNwaW5uZXI6YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiAxMGVtO1xuICBoZWlnaHQ6IDEwZW07IH1cblxuLyogbGluZSAyODgsIHNjc3MvX2NhcnQuc2NzcyAqL1xuLnByb2R1Y3QtdXBkYXRlLXF1YW50aXR5LXNwaW5uZXIge1xuICBtYXJnaW46IDYwcHggYXV0bztcbiAgZm9udC1zaXplOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICBib3JkZXItdG9wOiAxLjFlbSBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1yaWdodDogMS4xZW0gc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3JkZXItYm90dG9tOiAxLjFlbSBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1sZWZ0OiAxLjFlbSBzb2xpZCAjZmZmZmZmO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbG9hZDggMS4xcyBpbmZpbml0ZSBsaW5lYXI7XG4gIGFuaW1hdGlvbjogbG9hZDggMS4xcyBpbmZpbml0ZSBsaW5lYXI7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWQ4IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGxvYWQ4IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4vKiBsaW5lIDMyNiwgc2Nzcy9fY2FydC5zY3NzICovXG4ucHJvZHVjdC11cGRhdGUtcXVhbnRpdHktc3Bpbm5lciB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qIGxpbmUgMzM0LCBzY3NzL19jYXJ0LnNjc3MgKi9cbi5xdWFudGl0eS1wYW5lbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNXB4OyB9XG4gIC8qIGxpbmUgMzM3LCBzY3NzL19jYXJ0LnNjc3MgKi9cbiAgLnF1YW50aXR5LXBhbmVsLmlzLXNob3duIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDBkMGQwOyB9XG4gICAgLyogbGluZSAzMzksIHNjc3MvX2NhcnQuc2NzcyAqL1xuICAgIC5xdWFudGl0eS1wYW5lbC5pcy1zaG93biAucHJvZHVjdC11cGRhdGUtcXVhbnRpdHktc3Bpbm5lciB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi8qKiBDaGVja291dCAqKi9cbi8qKiBSZXR1cm4gdG8gY2hlY2tvdXQgYnV0dG9uICoqL1xuLyogbGluZSAxMiwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuLmNhcnQtc3VtbWFyeS1zdHJpbmcge1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG5cbi8qIGxpbmUgMTgsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiNvcmRlci1jb25maXJtYXRpb24gI2NvbnRlbnQge1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qIGxpbmUgMjMsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMywgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAgICNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDIzLCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICAgI2NhcnQtc3VtbWFyeS1wcm9kdWN0LWxpc3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC8qIGxpbmUgMjAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyAqL1xuICAgICAgI2NhcnQtc3VtbWFyeS1wcm9kdWN0LWxpc3QsICNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAvKiBsaW5lIDMyLCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IHVsIGxpIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC8qIGxpbmUgMzUsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCB1bCBsaSAucHJvZHVjdC1xdWFudGl0eSB7XG4gICAgICBmb250LXNpemU6IDAuOWVtOyB9XG4gICAgICAvKiBsaW5lIDM3LCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICAgICAjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCB1bCBsaSAucHJvZHVjdC1xdWFudGl0eTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcgeCAnOyB9XG4gICAgLyogbGluZSA0MSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAgICNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IHVsIGxpIC5wcm9kdWN0LW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC8qIGxpbmUgNDQsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCB1bCBsaSAucHJvZHVjdC1wcmljZSB7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgICAvKiBsaW5lIDQ1LCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICAgICAjY2FydC1zdW1tYXJ5LXByb2R1Y3QtbGlzdCB1bCBsaSAucHJvZHVjdC1wcmljZTpiZWZvcmUge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBjb250ZW50OiAnIOKAkyAnOyB9XG5cbi8qIGxpbmUgNTYsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiNjaGVja291dCAuY2FydC12b3VjaGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAvKiBsaW5lIDIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MgKi9cbiAgI2NoZWNrb3V0IC5jYXJ0LXZvdWNoZXIsICNjaGVja291dCAuY2FydC12b3VjaGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC8qIGxpbmUgNjEsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgI2NhcnQtc3VtbWFyeSwgLmNhcnQtc3VtbWFyeS10b3RhbHMge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjEsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAjY2FydC1zdW1tYXJ5LCAuY2FydC1zdW1tYXJ5LXRvdGFscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAjY2FydC1zdW1tYXJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jYXJ0LXN1bW1hcnktdG90YWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLyogbGluZSAyMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzICovXG4gICAgI2NhcnQtc3VtbWFyeSwgI2NhcnQtc3VtbWFyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY2FydC1zdW1tYXJ5LXRvdGFscywgLmNhcnQtc3VtbWFyeS10b3RhbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuLyogbGluZSA3MSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuLmNhcnQtc3VtbWFyeS10b3RhbHMgc3Bhbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyoqIFN0ZXBzICoqL1xuLyogbGluZSA4MSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuLmNoZWNrb3V0LXN0ZXAge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIC8qIFBlcnNvbmFsIGluZm8gKi8gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgODEsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAuY2hlY2tvdXQtc3RlcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gIC5jaGVja291dC1zdGVwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgODEsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAuY2hlY2tvdXQtc3RlcCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSA4MSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAgIC5jaGVja291dC1zdGVwIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAuY2hlY2tvdXQtc3RlcDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAvKiBsaW5lIDIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MgKi9cbiAgICAgIC5jaGVja291dC1zdGVwLCAuY2hlY2tvdXQtc3RlcDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgLyogbGluZSA4OSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAuY2hlY2tvdXQtc3RlcC4tdW5yZWFjaGVhYmxlIHtcbiAgICBvcGFjaXR5OiAwLjM7IH1cbiAgLyogbGluZSA5NSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAuY2hlY2tvdXQtc3RlcCA+IGgxIC5zdGVwLW51bWJlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC8qIGxpbmUgOTgsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAuY2hlY2tvdXQtc3RlcCA+IGgxIC5zdGVwLW51bWJlcjphZnRlciB7XG4gICAgICBjb250ZW50OiAnLic7IH1cbiAgLyogbGluZSAxMDQsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgLmNoZWNrb3V0LXN0ZXAgLmZvcm0tZm9vdGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogbGluZSAxMDgsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgLmNoZWNrb3V0LXN0ZXAgLmZvcm0tZmllbGRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC8qIGxpbmUgMTExLCBzY3NzL19jaGVja291dC5zY3NzICovXG4gIC5jaGVja291dC1zdGVwIC5hbHJlYWR5LWhhcy1hY2NvdW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNjZGNkY2Q7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgLyogbGluZSAxMTcsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgLmNoZWNrb3V0LXN0ZXAgLmd1ZXN0LWNoZWNrb3V0IHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAvKiBsaW5lIDEyMiwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAuY2hlY2tvdXQtc3RlcCAuanMtYWRkcmVzcy1mb3JtID4gZm9ybSBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi8qKiBBZGRyZXNzZXMgKiovXG4vKiBsaW5lIDEyOSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuLmFkZHJlc3Mtc2VsZWN0b3Ige1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5hZGRyZXNzLXNlbGVjdG9yOjpiZWZvcmUsIC5hZGRyZXNzLXNlbGVjdG9yOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5hZGRyZXNzLXNlbGVjdG9yOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSAxMzEsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgLmFkZHJlc3Mtc2VsZWN0b3IgLmFkZHJlc3MtaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMTMxLCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICAgICAuYWRkcmVzcy1zZWxlY3RvciAuYWRkcmVzcy1pdGVtIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAuYWRkcmVzcy1zZWxlY3RvciAuYWRkcmVzcy1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgMTMxLCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICAgICAuYWRkcmVzcy1zZWxlY3RvciAuYWRkcmVzcy1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDEzMSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAgIC5hZGRyZXNzLXNlbGVjdG9yIC5hZGRyZXNzLWl0ZW0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgIC5hZGRyZXNzLXNlbGVjdG9yIC5hZGRyZXNzLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogbGluZSAxNDIsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbi5kZWxpdmVyeS1vcHRpb25zIC5kZWxpdmVyeS1vcHRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLyogbGluZSAxNDUsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgLmRlbGl2ZXJ5LW9wdGlvbnMgLmRlbGl2ZXJ5LW9wdGlvbiBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgICAvKiBsaW5lIDE0OSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAgIC5kZWxpdmVyeS1vcHRpb25zIC5kZWxpdmVyeS1vcHRpb24gbGFiZWwgaW1nIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLyogbGluZSAxNTcsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbi5wYXltZW50LW9wdGlvbnMgLmpzLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuICAvKiBsaW5lIDE2Mywgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAucGF5bWVudC1vcHRpb25zIC5qcy1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIHAsIC5wYXltZW50LW9wdGlvbnMgLmpzLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24gbGkge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4vKiBsaW5lIDE2OSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuI2NvbmRpdGlvbnMtdG8tYXBwcm92ZSB1bCwgLnBheW1lbnQtb3B0aW9ucyB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC8qIGxpbmUgMTcxLCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICNjb25kaXRpb25zLXRvLWFwcHJvdmUgdWwgbGksICNjb25kaXRpb25zLXRvLWFwcHJvdmUgdWwgZGl2LnBheW1lbnQtb3B0aW9uLCAucGF5bWVudC1vcHRpb25zIHVsIGxpLCAucGF5bWVudC1vcHRpb25zIHVsIGRpdi5wYXltZW50LW9wdGlvbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgLyogbGluZSAxNzQsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAjY29uZGl0aW9ucy10by1hcHByb3ZlIHVsIGxpIGxhYmVsLCAjY29uZGl0aW9ucy10by1hcHByb3ZlIHVsIGRpdi5wYXltZW50LW9wdGlvbiBsYWJlbCwgLnBheW1lbnQtb3B0aW9ucyB1bCBsaSBsYWJlbCwgLnBheW1lbnQtb3B0aW9ucyB1bCBkaXYucGF5bWVudC1vcHRpb24gbGFiZWwge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4vKiBsaW5lIDE4MCwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuI3BheW1lbnQtY29uZmlybWF0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qIGxpbmUgMTg0LCBzY3NzL19jaGVja291dC5zY3NzICovXG4jY29udGVudC1ob29rX3BheW1lbnRfcmV0dXJuIHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuLyogbGluZSAxOTMsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiNjb250ZW50LWhvb2tfb3JkZXJfY29uZmlybWF0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuXG4vKiBsaW5lIDIwNiwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuI29yZGVyLWl0ZW1zIHRhYmxlIHRkIC5wcm9kdWN0LWltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMHB4OyB9XG5cbi8qIGxpbmUgMjE0LCBzY3NzL19jaGVja291dC5zY3NzICovXG4jb3JkZXItZGV0YWlscyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAvKiBsaW5lIDIxOSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAjb3JkZXItZGV0YWlscyB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vKiBsaW5lIDIyNSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuLmdsYXNzLXBpY2t1cC1jYWxsb3V0IHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMjUsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAuZ2xhc3MtcGlja3VwLWNhbGxvdXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAuZ2xhc3MtcGlja3VwLWNhbGxvdXQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMjUsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAuZ2xhc3MtcGlja3VwLWNhbGxvdXQge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMjI1LCBzY3NzL19jaGVja291dC5zY3NzICovXG4gICAgLmdsYXNzLXBpY2t1cC1jYWxsb3V0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAuZ2xhc3MtcGlja3VwLWNhbGxvdXQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLyogbGluZSAyMCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzICovXG4gICAgICAuZ2xhc3MtcGlja3VwLWNhbGxvdXQsIC5nbGFzcy1waWNrdXAtY2FsbG91dDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAvKiBsaW5lIDIyNSwgc2Nzcy9fY2hlY2tvdXQuc2NzcyAqL1xuICAgIC5nbGFzcy1waWNrdXAtY2FsbG91dCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMjUsIHNjc3MvX2NoZWNrb3V0LnNjc3MgKi9cbiAgICAuZ2xhc3MtcGlja3VwLWNhbGxvdXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgIC5nbGFzcy1waWNrdXAtY2FsbG91dDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAvKiBsaW5lIDIwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MgKi9cbiAgICAgIC5nbGFzcy1waWNrdXAtY2FsbG91dCwgLmdsYXNzLXBpY2t1cC1jYWxsb3V0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG4vKiBsaW5lIDEsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4ubG9naW4tZm9ybS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG5cbi8qIGxpbmUgMTEsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4ucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLyogbGluZSAxMywgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbiAgLnBhZ2UtbXktYWNjb3VudCAubGluay1saXN0IGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fycm93LXJpZ2h0LW9yYW5nZS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogMjdweDsgfVxuICAvKiBsaW5lIDIyLCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuICAucGFnZS1teS1hY2NvdW50IC5saW5rLWxpc3QgbGkgYSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyogbGluZSAzMSwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbi5wYWdlLWN1c3RvbWVyLWFjY291bnQgI2NvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi8qIGxpbmUgMzksIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4ubXktYWNjb3VudC1saW5rcyBsaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cblxuLyogbGluZSA0NSwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbi5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDU0NTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgNDUsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNDUsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAubXktYWNjb3VudC1uYXYge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAvKiBsaW5lIDYwLCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLyogbGluZSA2Miwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbiAgICAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXJyb3ctcmlnaHQtb3JhbmdlLnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMjdweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAvKiBsaW5lIDcyLCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIGxpIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiAjMjIyMjJBO1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yczsgfVxuICAgICAgLyogbGluZSA3OSwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbiAgICAgIC5teS1hY2NvdW50LWhhcy1uYXYgLm15LWFjY291bnQtbmF2IHVsIGxpIGEuYWN0aXZlLCAubXktYWNjb3VudC1oYXMtbmF2IC5teS1hY2NvdW50LW5hdiB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNhYTRjMDg7IH1cblxuLyogbGluZSA4Nywgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbi5teS1hY2NvdW50LWhhcy1uYXYgI2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDg3LCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuICAgIC5teS1hY2NvdW50LWhhcy1uYXYgI2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAubXktYWNjb3VudC1oYXMtbmF2ICNjb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgODcsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAjY29udGVudCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgODcsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4gICAgLm15LWFjY291bnQtaGFzLW5hdiAjY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgLm15LWFjY291bnQtaGFzLW5hdiAjY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogbGluZSA5NSwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbi5hZGRyZXNzZXMge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC8qIGxpbmUgMTcwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gIC5hZGRyZXNzZXM6OmJlZm9yZSwgLmFkZHJlc3Nlczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAuYWRkcmVzc2VzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAuYWRkcmVzc2VzID4gLmFkZHJlc3Mge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgICAuYWRkcmVzc2VzID4gLmFkZHJlc3Mge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgLyogbGluZSA0Niwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5hZGRyZXNzZXMgPiAuYWRkcmVzczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAvKiBsaW5lIDUwLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmFkZHJlc3NlcyA+IC5hZGRyZXNzOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLyogbGluZSA1NCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5hZGRyZXNzZXMgPiAuYWRkcmVzczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAyMiwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgIC5hZGRyZXNzZXMgPiAuYWRkcmVzcyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAuYWRkcmVzc2VzID4gLmFkZHJlc3Mge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgNDYsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAgIC5hZGRyZXNzZXMgPiAuYWRkcmVzczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLyogbGluZSA1MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyAqL1xuICAgICAgLmFkZHJlc3NlcyA+IC5hZGRyZXNzOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC8qIGxpbmUgNTQsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAgIC5hZGRyZXNzZXMgPiAuYWRkcmVzczpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC8qIGxpbmUgMjIsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAuYWRkcmVzc2VzID4gLmFkZHJlc3Mge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDIyLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgLmFkZHJlc3NlcyA+IC5hZGRyZXNzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDQ2LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgICAuYWRkcmVzc2VzID4gLmFkZHJlc3M6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC8qIGxpbmUgNTAsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MgKi9cbiAgICAgIC5hZGRyZXNzZXMgPiAuYWRkcmVzczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAvKiBsaW5lIDU0LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzICovXG4gICAgICAuYWRkcmVzc2VzID4gLmFkZHJlc3M6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLyogbGluZSAxMTUsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4gIC5hZGRyZXNzZXMgLmFkZHJlc3MgLmFjdGlvbi1saXN0IGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi8qIGxpbmUgMTI5LCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuI3Nob3BwaW5nLWxpc3QgdGhlYWQgdGg6bnRoLWNoaWxkKDMpIHtcbiAgd2lkdGg6IDIwJTsgfVxuXG4vKiBsaW5lIDEzNCwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbiNzaG9wcGluZy1saXN0IHRkLmxpc3QtY2hlY2tib3ggPiBkaXYge1xuICBtYXJnaW4tdG9wOiAtMTNweDsgfVxuXG4vKiBsaW5lIDEzOSwgc2Nzcy9fbXlhY2NvdW50LnNjc3MgKi9cbiNzaG9wcGluZy1saXN0IHRkOmxhc3QtY2hpbGQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qIGxpbmUgMTQ2LCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuI21haW4gLmRhdGFUYWJsZXNfbGVuZ3RoIGxhYmVsLCAjbWFpbiAuZGF0YVRhYmxlc19maWx0ZXIgbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC8qIGxpbmUgMTQ5LCBzY3NzL19teWFjY291bnQuc2NzcyAqL1xuICAjbWFpbiAuZGF0YVRhYmxlc19sZW5ndGggbGFiZWwgc2VsZWN0LCAjbWFpbiAuZGF0YVRhYmxlc19sZW5ndGggbGFiZWwgaW5wdXQsICNtYWluIC5kYXRhVGFibGVzX2ZpbHRlciBsYWJlbCBzZWxlY3QsICNtYWluIC5kYXRhVGFibGVzX2ZpbHRlciBsYWJlbCBpbnB1dCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogbGluZSAxNTYsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4jbWFpbiB0YWJsZS5kYXRhVGFibGUgdGhlYWQgdGgsICNtYWluIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZCwgI21haW4gdGFibGUuZGF0YVRhYmxlLm5vLWZvb3RlciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLyogbGluZSAxNTksIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4jbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7IH1cblxuLyogbGluZSAxNjQsIHNjc3MvX215YWNjb3VudC5zY3NzICovXG4jbWFpbiAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudCwgI21haW4gLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkQ1NDU7IH1cblxuLyoqIEltcG9ydCBibG9nICoqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSAyLCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAgICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXI6OmJlZm9yZSwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAgICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSA2LCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAjbWFpbiB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDYsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuICAgICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgI21haW4ge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAjbWFpbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi8qIGxpbmUgMTAsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAjbWFpbiAucnJzc2ItYnV0dG9ucyB7XG4gIG1heC13aWR0aDogMTMwcHg7IH1cbiAgLyogbGluZSAxMiwgc2Nzcy9fYmxvZy5zY3NzICovXG4gICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgI21haW4gLnJyc3NiLWJ1dHRvbnMgbGkgYSAudGV4dCB7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogbGluZSAxNywgc2Nzcy9fYmxvZy5zY3NzICovXG4gICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDE1MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxNywgc2Nzcy9fYmxvZy5zY3NzICovXG4gICAgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogbGluZSAyMywgc2Nzcy9fYmxvZy5zY3NzICovXG4jbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgxLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIC5oMiwgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoMywgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoNCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC8qIGxpbmUgMjMsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuICAgICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgaDEsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgaDIsICNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nICNjb250ZW50LXdyYXBwZXIgLnNpZGViYXIgLmgyLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGgzLCAjbW9kdWxlLXByZXN0YWJsb2ctYmxvZyAjY29udGVudC13cmFwcGVyIC5zaWRlYmFyIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfSB9XG5cbi8qIGxpbmUgMzcsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoMywgI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgI2NvbnRlbnQtd3JhcHBlciAuc2lkZWJhciBoNCB7XG4gIGZvbnQtc2l6ZTogMjJweDsgfVxuXG4vKiBsaW5lIDQ0LCBzY3NzL19ibG9nLnNjc3MgKi9cbiNwcmVzdGFibG9nX21lbnVfY2F0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBsaW5lIDUwLCBzY3NzL19ibG9nLnNjc3MgKi9cbiNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIGRpdi5wcmVzdGFibG9nX3BhZ2luYXRpb24gc3Bhbi5jdXJyZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi8qIGxpbmUgNTcsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgZGl2LnByZXN0YWJsb2dfcGFnaW5hdGlvbiBzcGFuLmRpc2FibGVkIHtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi8qIGxpbmUgNjAsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgZGl2LnByZXN0YWJsb2dfcGFnaW5hdGlvbiBhIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4vKiBsaW5lIDY3LCBzY3NzL19ibG9nLnNjc3MgKi9cbiNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIC5zaWRlYmFyIC5lbWFpbF9zdWJzY3JpcHRpb24gaDQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIGxpbmUgNzAsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuI21vZHVsZS1wcmVzdGFibG9nLWJsb2cgLnNpZGViYXIgLmVtYWlsX3N1YnNjcmlwdGlvbiBmb3JtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qIGxpbmUgODMsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuI25lb2RpZl9ibG9nX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKiBsaW5lIDg4LCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm93bC1jYXJvdXNlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAvKiBsaW5lIDc2Mywgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAub3dsLWNhcm91c2VsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDcwcHggIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC8qIGxpbmUgNzYzLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5vd2wtY2Fyb3VzZWwge1xuICAgICAgICAgIHBhZGRpbmc6IDAgOTRweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIC8qIGxpbmUgNzcyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAgICAgLyogbGluZSA3NzQsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgICAgLyogbGluZSA3NzcsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtaXRlbSB7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC8qIGxpbmUgNzgyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAub3dsLWNhcm91c2VsIC5vd2wtZG90cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDsgfVxuICAgIC8qIGxpbmUgNzg2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgICAgdHJhbnNpdGlvbjogMC4xNXM7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLyogbGluZSA3OTMsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2s6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgICAgIC8qIGxpbmUgNzk2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC8qIGxpbmUgODAyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbWFnZSBhIHtcbiAgICAgICAgICBoZWlnaHQ6IDM5M3B4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAgICAgICAvKiBsaW5lIDgxMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkQ1NDU7XG4gICAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgICAvKiBsaW5lIDgyMCwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW1hZ2U6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2RlY28tcm91bmQtZ3JheS5wbmdcIikgbm8tcmVwZWF0IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAgIC8qIGxpbmUgODMyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtZGF0ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgIC8qIGxpbmUgODM2LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW5mbyB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7IH1cbiAgICAgICAgLyogbGluZSA4MzgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm8gLm5ld3MtbGlzdC1kYXRlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiAjRjM2RDBCO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgLyogbGluZSA4NDYsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm8gLm5ld3MtbGlzdC10aXRsZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgLyogbGluZSA4NDgsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW5mbyAubmV3cy1saXN0LXRpdGxlOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAvKiBsaW5lIDg0Niwgc2Nzcy9fZ2xvYmFsLnNjc3MgKi9cbiAgICAgICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm8gLm5ld3MtbGlzdC10aXRsZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgLyogbGluZSA4NTUsIHNjc3MvX2dsb2JhbC5zY3NzICovXG4gICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm8gLm5ld3MtbGlzdC1leGNlcnB0IHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC8qIGxpbmUgODU1LCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW5mbyAubmV3cy1saXN0LWV4Y2VycHQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDsgfSB9XG4gICAgICAgIC8qIGxpbmUgODYyLCBzY3NzL19nbG9iYWwuc2NzcyAqL1xuICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbmZvIC5ibG9jay1saW5rIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0YzNkQwQjtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLyogbGluZSA5Mywgc2Nzcy9fYmxvZy5zY3NzICovXG4gICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIHtcbiAgICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrOjpiZWZvcmUsICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jazo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAvKiBsaW5lIDE4MSwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAvKiBsaW5lIDk2LCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAvKiBsaW5lIDk2LCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAvKiBsaW5lIDEwMSwgc2Nzcy9fYmxvZy5zY3NzICovXG4gICAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW1hZ2U6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9kZWNvLXJvdW5kLWdyYXktcm90YXRlZC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAvKiBsaW5lIDEwNywgc2Nzcy9fYmxvZy5zY3NzICovXG4gICAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW1hZ2U6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgICAvKiBsaW5lIDExNSwgc2Nzcy9fYmxvZy5zY3NzICovXG4gICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLyogbGluZSAxMTUsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuICAgICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm8ge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgICAgICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbmZvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC8qIGxpbmUgMTE1LCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgICAgICAgICAjbmVvZGlmX2Jsb2dfbGlzdCA+IGxpIC5uZXdzLWxpc3QtYmxvY2sgLm5ld3MtbGlzdC1pbmZvIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAxMTUsIHNjc3MvX2Jsb2cuc2NzcyAqL1xuICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICAgICAgICNuZW9kaWZfYmxvZ19saXN0ID4gbGkgLm5ld3MtbGlzdC1ibG9jayAubmV3cy1saXN0LWluZm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAgIC8qIGxpbmUgMTIwLCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW5mbyAubmV3cy1saXN0LXRpdGxlIGEge1xuICAgICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAgIC8qIGxpbmUgMTI0LCBzY3NzL19ibG9nLnNjc3MgKi9cbiAgICAgICAgI25lb2RpZl9ibG9nX2xpc3QgPiBsaSAubmV3cy1saXN0LWJsb2NrIC5uZXdzLWxpc3QtaW5mbyAubmV3cy1saXN0LWRhdGUgLmNhdGVnb3JpZV9ibG9nIHtcbiAgICAgICAgICBjb2xvcjogI0YzNkQwQjsgfVxuXG4vKiBsaW5lIDMsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jbW9kdWxlLXhlbmZvcnVtLWhvbWUgI3dyYXBwZXIsXG4jbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAvKiBsaW5lIDE3MCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyAqL1xuICAjbW9kdWxlLXhlbmZvcnVtLWhvbWUgI3dyYXBwZXI6OmJlZm9yZSwgI21vZHVsZS14ZW5mb3J1bS1ob21lICN3cmFwcGVyOjphZnRlcixcbiAgI21vZHVsZS14ZW5mb3J1bS1jYXRlZ29yeSAjd3JhcHBlcjo6YmVmb3JlLFxuICAjbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC8qIGxpbmUgMTgxLCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzICovXG4gICNtb2R1bGUteGVuZm9ydW0taG9tZSAjd3JhcHBlcjo6YWZ0ZXIsXG4gICNtb2R1bGUteGVuZm9ydW0tY2F0ZWdvcnkgI3dyYXBwZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAvKiBsaW5lIDUsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4gICNtb2R1bGUteGVuZm9ydW0taG9tZSAjd3JhcHBlciAjbGVmdC1jb2x1bW4sXG4gICNtb2R1bGUteGVuZm9ydW0tY2F0ZWdvcnkgI3dyYXBwZXIgI2xlZnQtY29sdW1uIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAvKiBsaW5lIDUsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4gICAgICAjbW9kdWxlLXhlbmZvcnVtLWhvbWUgI3dyYXBwZXIgI2xlZnQtY29sdW1uLFxuICAgICAgI21vZHVsZS14ZW5mb3J1bS1jYXRlZ29yeSAjd3JhcHBlciAjbGVmdC1jb2x1bW4ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICNtb2R1bGUteGVuZm9ydW0taG9tZSAjd3JhcHBlciAjbGVmdC1jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAjbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyICNsZWZ0LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDUsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4gICAgICAjbW9kdWxlLXhlbmZvcnVtLWhvbWUgI3dyYXBwZXIgI2xlZnQtY29sdW1uLFxuICAgICAgI21vZHVsZS14ZW5mb3J1bS1jYXRlZ29yeSAjd3JhcHBlciAjbGVmdC1jb2x1bW4ge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDcwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDUsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4gICAgI21vZHVsZS14ZW5mb3J1bS1ob21lICN3cmFwcGVyICNsZWZ0LWNvbHVtbixcbiAgICAjbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyICNsZWZ0LWNvbHVtbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC8qIGxpbmUgNjgsIG5vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MgKi9cbiAgICAgICAgI21vZHVsZS14ZW5mb3J1bS1ob21lICN3cmFwcGVyICNsZWZ0LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgICAjbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyICNsZWZ0LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAvKiBsaW5lIDEzLCBzY3NzL19mb3J1bXMuc2NzcyAqL1xuICAjbW9kdWxlLXhlbmZvcnVtLWhvbWUgI3dyYXBwZXIgLmxlZnQtY29sdW1uLFxuICAjbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyIC5sZWZ0LWNvbHVtbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC8qIGxpbmUgMTMsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4gICAgICAjbW9kdWxlLXhlbmZvcnVtLWhvbWUgI3dyYXBwZXIgLmxlZnQtY29sdW1uLFxuICAgICAgI21vZHVsZS14ZW5mb3J1bS1jYXRlZ29yeSAjd3JhcHBlciAubGVmdC1jb2x1bW4ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgLyogbGluZSA2OCwgbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyAqL1xuICAgICNtb2R1bGUteGVuZm9ydW0taG9tZSAjd3JhcHBlciAubGVmdC1jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAjbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5ICN3cmFwcGVyIC5sZWZ0LWNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAvKiBsaW5lIDEzLCBzY3NzL19mb3J1bXMuc2NzcyAqL1xuICAgICAgI21vZHVsZS14ZW5mb3J1bS1ob21lICN3cmFwcGVyIC5sZWZ0LWNvbHVtbixcbiAgICAgICNtb2R1bGUteGVuZm9ydW0tY2F0ZWdvcnkgI3dyYXBwZXIgLmxlZnQtY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAvKiBsaW5lIDEzLCBzY3NzL19mb3J1bXMuc2NzcyAqL1xuICAgICNtb2R1bGUteGVuZm9ydW0taG9tZSAjd3JhcHBlciAubGVmdC1jb2x1bW4sXG4gICAgI21vZHVsZS14ZW5mb3J1bS1jYXRlZ29yeSAjd3JhcHBlciAubGVmdC1jb2x1bW4ge1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAvKiBsaW5lIDY4LCBub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzICovXG4gICAgICAgICNtb2R1bGUteGVuZm9ydW0taG9tZSAjd3JhcHBlciAubGVmdC1jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgI21vZHVsZS14ZW5mb3J1bS1jYXRlZ29yeSAjd3JhcHBlciAubGVmdC1jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogbGluZSAyNCwgc2Nzcy9fZm9ydW1zLnNjc3MgKi9cbmJvZHlbaWRePVwibW9kdWxlLXhlbmZvcnVtLVwiXSAjd3JhcHBlciAucGFnZS1oZWFkZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIGxpbmUgMzEsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jd3JhcHBlciAuYmxvZ3ZpZXcgYSB7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi8qIGxpbmUgMzQsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jd3JhcHBlciAuYmxvZ3ZpZXcgLmJsb2dfdGl0bGUsXG4jd3JhcHBlciAuYmxvZ3ZpZXcgLm1haW5fdGl0bGUge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLyogbGluZSAzNCwgc2Nzcy9fZm9ydW1zLnNjc3MgKi9cbiAgICAjd3JhcHBlciAuYmxvZ3ZpZXcgLmJsb2dfdGl0bGUsXG4gICAgI3dyYXBwZXIgLmJsb2d2aWV3IC5tYWluX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfSB9XG5cbi8qIGxpbmUgNTMsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jd3JhcHBlciAuYmxvZ3ZpZXcgZmllbGRzZXQgc3Bhbi5pbmxpbmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBsaW5lIDU2LCBzY3NzL19mb3J1bXMuc2NzcyAqL1xuI3dyYXBwZXIgLmJsb2d2aWV3IGZpZWxkc2V0IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgLyogQ2hyb21lL09wZXJhL1NhZmFyaSAqL1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBkaXNwbGF5OiBpbmhlcml0O1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgNjIsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jd3JhcHBlciAuYmxvZ3ZpZXcgZmllbGRzZXQgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE5KyAqL1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBkaXNwbGF5OiBpbmhlcml0O1xuICBvcGFjaXR5OiAxOyB9XG5cbi8qIGxpbmUgNjgsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jd3JhcHBlciAuYmxvZ3ZpZXcgZmllbGRzZXQgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgLyogSUUgMTArICovXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGRpc3BsYXk6IGluaGVyaXQ7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyogbGluZSA3NCwgc2Nzcy9fZm9ydW1zLnNjc3MgKi9cbiN3cmFwcGVyIC5ibG9ndmlldyBmaWVsZHNldCBpbnB1dDotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOC0gKi9cbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgb3BhY2l0eTogMTsgfVxuXG4vKiBsaW5lIDg2LCBzY3NzL19mb3J1bXMuc2NzcyAqL1xuLnNpZGViYXIgLnNlY29uZGFyeUNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi8qIGxpbmUgOTEsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4uc2lkZWJhciAuZm9ybS1zZWFyY2ggaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQ7IH1cblxuLyogbGluZSA5Niwgc2Nzcy9fZm9ydW1zLnNjc3MgKi9cbi5zaWRlYmFyIC5zZWN0aW9uIC5wcmltYXJ5Q29udGVudCBoMyxcbi5zaWRlYmFyIC5zZWN0aW9uIC5zZWNvbmRhcnlDb250ZW50IGgzLFxuLnNpZGViYXIgLnNlY29uZGFyeUNvbnRlbnQgaDMsXG4ucHJvZmlsZVBhZ2UgLm1hc3QgLnNlY3Rpb24uaW5mb0Jsb2NrIGgzIHtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi8qIGxpbmUgMTA5LCBzY3NzL19mb3J1bXMuc2NzcyAqL1xuI3dyYXBwZXIgLnRvcEN0cmwge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBmbG9hdDogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLyogbGluZSAxMTQsIHNjc3MvX2ZvcnVtcy5zY3NzICovXG4jd3JhcHBlciAuYXZhdGFySG9tZSAuYXZhdGFyIGltZyB7XG4gIG1heC13aWR0aDogbm9uZTsgfVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWF0dHJpYnV0ZS1uZXN0aW5nLCBmb3JjZS1wc2V1ZG8tbmVzdGluZywgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuJHByaW1hcnktY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRzZWNvbmRhcnktY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuJHN1Y2Nlc3MtY29sb3I6IGdldC1jb2xvcihzdWNjZXNzKTtcbiR3YXJuaW5nLWNvbG9yOiBnZXQtY29sb3Iod2FybmluZyk7XG4kYWxlcnQtY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSAtemYtbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gTG9hZHMgbm9ybWFsaXplLmNzcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtemYtbm9ybWFsaXplIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplKCk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vIFxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSwgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGlmICRhdXRvLWluc2VydC1icmVha3BvaW50cyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRndXR0ZXI6ICdndXR0ZXInLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJyxcbiAgJGJsb2NrOiAnYmxvY2snXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguI3skZXhwYW5kZWR9KSAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJGdyaWQtY29sdW1uLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgLy8gU3RhdGljICh1bnJlc3BvbnNpdmUpIHJvdyBndXR0ZXJzXG4gICAgICAvL1xuICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHtcbiAgICAgICAgJi4jeyRndXR0ZXJ9LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkdmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuI3skY29sdW1ufSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2w7XG5cbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJi4jeyRlbmR9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC4jeyRyb3d9IC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gQ29sdW1uIHdpZHRoXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSgkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgICAgQGlmICRpIDwgJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKCRpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtJGkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skb2Zmc2V0fS0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW9mZigkbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgkaSwgJy4jeyRjb2x1bW59Jyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skZXhwYW5kZWR9LiN7JHJvd30gLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0uI3skcm93fSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjZW50ZXJ9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgIH1cblxuICAgIC8vIEd1dHRlciBhZGp1c3RtZW50XG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNlbnRlcn0sXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0wLFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tMCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC11bnBvcztcbiAgICB9XG4gIH1cblxuICAvLyBCbG9jayBncmlkIGNvbHVtbnNcbiAgLiN7JGNvbHVtbn0tI3skYmxvY2t9IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1tYXJnaW47XG4gIH1cblxuICBAaWYgJGNvbHVtbiA9PSAnY29sdW1uJyBhbmQgaGFzLXZhbHVlKCRncmlkLWNvbHVtbi1hbGlhcykge1xuICAgIC4jeyRncmlkLWNvbHVtbi1hbGlhc30ge1xuICAgICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG4gICAgICBAZXh0ZW5kIC5jb2x1bW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgLyAyICogLTE7XG5cbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldCBhIGdyaWQgcm93IHNpemVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbkBtaXhpbiBncmlkLXJvdy1zaXplKCRzaXplOiAkZ3JpZC1yb3ctd2lkdGgpIHtcbiAgQGlmICRzaXplID09IGV4cGFuZCB7XG4gICAgJHNpemU6IG5vbmU7XG4gIH1cblxuICBtYXgtd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldHMgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVybiB0aGVuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFVuLWNvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlLWFkZGluZyB0aGUgcGFkZGluZy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLlxuQG1peGluIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbHVtbi1ndXR0ZXIoKS4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bmNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bmNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sLWd1dHRlcigpLiBncmlkLWNvbC11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcik7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbiAgYS5idXR0b24ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTMnO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG4gICYuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDFyZW07XG4gIH1cbiAgJi5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51IHtcblxuICAuYWNjb3JkaW9uLW1lbnUge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgICBib3JkZXItdG9wOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItbGVmdDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiAgICB9XG4gICAgXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICB3aWR0aDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ7XG5cbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjtcblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQWRkIHRoZSBhcnJvdyB0byB0aGUgdG9nZ2xlXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuXG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gUm90YXRlIHRoZSBhcnJvdyB3aGVuIG1lbnUgaXMgb3BlblxuICAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cblxuICAuc3VibWVudS10b2dnbGUtdGV4dCB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGFuIGhvdmVyZWQgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBiYWRnZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYmFkZ2Uge1xuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJhZGdlO1xuXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJhZGdlLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGV0ZXJtaW5lcyBpZiAkYnV0dG9uLXJhZGl1cyBpcyBhcHBsaWVkIHRvIGVhY2ggYnV0dG9uIG9yIHRoZSBidXR0b24gZ3JvdXAgYXMgYSB3aG9sZS4gVXNlICRnbG9iYWwtcmFkaXVzIGluIF9zZXR0aW5ncy5zY3NzIHRvIGNoYW5nZSByYWRpdXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgZm9yY2UtZWxlbWVudC1uZXN0aW5nXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBpbm5lciBwYWRkaW5nIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGNhbGxvdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG4gIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoMC41cmVtKTtcbiAgICB9XG5cbiAgICAmLmxhcmdlIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgzcmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhcmRcbi8vLy9cblxuLy8vIERlZnVhbHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYXJkcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjYXJkIHNoYWRvdy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4uXG4vLy8gQHR5cGUgbnVtYmVyXG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBmb250IGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIC0gQm90dG9tIG1hcmdpbiBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRib3JkZXIgLSBCb3JkZXIgYXJvdW5kIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhZGl1cyAtIGJvcmRlciByYWRpdXMgb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hhZG93IC0gYm94IHNoYWRvdyBvZiB0aGUgY2FyZC5cbkBtaXhpbiBjYXJkLWNvbnRhaW5lcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGNhcmQtZm9udC1jb2xvcixcbiAgJG1hcmdpbjogJGNhcmQtbWFyZ2luLWJvdHRvbSxcbiAgJGJvcmRlcjogJGNhcmQtYm9yZGVyLFxuICAkcmFkaXVzOiAkY2FyZC1ib3JkZXItcmFkaXVzLFxuICAkc2hhZG93OiAkY2FyZC1zaGFkb3dcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG5cbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgZGl2aWRlci5cbkBtaXhpbiBjYXJkLWRpdmlkZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1kaXZpZGVyLWJhY2tncm91bmQsXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgc2VjdGlvbi5cbkBtaXhpbiBjYXJkLXNlY3Rpb24oXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FyZCB7XG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBjYXJkLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5jYXJkLWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIGNhcmQtZGl2aWRlcjtcbiAgfVxuXG4gIC5jYXJkLXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGNhcmQtc2VjdGlvbjtcbiAgfVxuXG4gIC8vIEZvciBJRSAxMSAtIEZsZXhidWdcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncy9pc3N1ZXMvNzVcbiAgLmNhcmQtaW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZyBpbiB0aGUgc3VibWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgdG9wIGxldmVsIDx1bD5cbiAgLmRyaWxsZG93biB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQXBwbGllZCB0byBzdWJtZW51IDx1bD5zXG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIC0xMDAlLCAxMDAlKSk7XG4gICAgICB9XG5cbiAgICAgICYuaXMtY2xvc2luZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgMTAwJSwgLTEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VibWVudSBpdGVtIHBhZGRpbmdcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcblxuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd25cbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBkcm9wZG93biBwYW5lcy4gRWFjaCBzaXplIGlzIGEgQ1NTIGNsYXNzIHlvdSBjYW4gYXBwbHkuXG4vLy8gQHR5cGUgTWFwXG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciBhIGJhc2ljIGRyb3Bkb3duLlxuQG1peGluIGRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG5cbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmc7XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcblxuXG4gIC8vIEFsbG93IGFuIGludGVybWl0dGVudCBzdGF0ZSB0byBkbyBwb3NpdGlvbmluZyBiZWZvcmUgbWFraW5nIHZpc2libGUuXG4gICYuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRkcm9wZG93bi1zaXplcyB7XG4gICAgLmRyb3Bkb3duLXBhbmUuI3skbmFtZX0ge1xuICAgICAgd2lkdGg6ICRzaXplO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkZHJvcGRvd25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLyBXQVJOSU5HOiBXaWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiA2LjRcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvOiBkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8ge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQoKS4gZm91bmRhdGlvbi1mbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbn1cblxuQG1peGluIGZsZXgtdmlkZW8oJHJhdGlvOiAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbykge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSByZXNwb25zaXZlLWVtYmVkKCkuIGZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW8pO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmLm1pZGRsZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgICYuYm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9mZi1jYW52YXNcbi8vLy9cblxuLy8vIFdpZHRoIG1hcCBvZiBhIGxlZnQvcmlnaHQgb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBtYXAgb2YgYSB0b3AvYm90dG9tIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGZvciB0aGUgb2ZmLWNhbnZhcyBvdmVybGFwIHBhbmVsLlxuLy8vIEB0eXBlIFNoYWRvd1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBzaXplIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweCAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgY29sb3IgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgY29udGVudCBvdmVybGF5LlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTEgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYHB1c2hgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgb3ZlcmxhcGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHVzaW5nIHRoZSBgcmV2ZWFsLWZvci0qYCBjbGFzc2VzIG9yIG1peGluLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzICFkZWZhdWx0O1xuXG4vLy8gVGltaW5nIGZ1bmN0aW9uIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhIHJldmVhbGVkIG9mZi1jYW52YXMgd2lsbCBiZSBmaXhlZC1wb3NpdGlvbiwgYW5kIHNjcm9sbCB3aXRoIHRoZSBzY3JlZW4uXG4vLy8gQHR5cGUgQm9vbFxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBDU1MgY2xhc3MgdXNlZCBmb3IgdGhlIG1haW4gY29udGVudCBhcmVhLiBUaGUgb2ZmLWNhbnZhcyBtaXhpbnMgdXNlIHRoaXMgdG8gdGFyZ2V0IHRoZSBwYWdlIGNvbnRlbnQuXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNlbGluZSBzdHlsZXMgZm9yIG9mZi1jYW52YXMuIFRoaXMgQ1NTIGlzIHJlcXVpcmVkIHRvIG1ha2UgdGhlIG90aGVyIHBpZWNlcyB3b3JrLlxuQG1peGluIG9mZi1jYW52YXMtYmFzaWNzIHtcblxuICAvLy8gVHJhbnNmb3JtIGRlcHJlY2F0ZWQgc2l6ZSBzZXR0aW5ncyBpbnRvIG1hcCAmIHNob3cgd2FybmluZ1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXNpemVzIGluc3RlYWQnO1xuICB9XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cblxuICAvLyBDaGVja3MgdGhlIHotaW5kZXhlcyBhbmQgaW5jcmVhc2UgdGhlbSBkdWUgdG8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG4gIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIG92ZXJsYXkncyB6LWluZGV4IGlzIG5ldyBzaW5jZSB2Ni40IGFuZCBtYXkgYmUgaWRlbnRpY2FsIHRvIHRoZSB1c2VyIGN1c3RvbSBzZXR0aW5ncyBvZiB0aGUgcHVzaCB6LWluZGV4LlxuICBAaWYgJG9mZmNhbnZhcy1wdXNoLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1wdXNoLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleCA8PSAkb2ZmY2FudmFzLXB1c2gtemluZGV4IHsgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cblxuICAvLyBIaWRlcyBvdmVyZmxvdyBvbiBib2R5IHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuICAuaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBvdmVybGF5IChnZW5lcmF0ZWQgYnkgSmF2YVNjcmlwdClcbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZywgdmlzaWJpbGl0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3NhYmxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHdyYXBwZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwcGVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2UoXG4gICRiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQsXG4gICR0cmFuc2l0aW9uOiAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsXG4gICRmaXhlZDogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgLy8gSGlkZSBpbmFjdGl2ZSBvZmYtY2FudmFzIHdpdGhpbiB0aGUgY29udGVudCB0aGF0IGhhdmUgdGhlIHNhbWUgcG9zaXRpb25cbiAgJi5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE92ZXJsYXAgb25seSBzdHlsZXMuXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4O1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgdHJhbnNmb3JtIHRvIDAgdG8gc2hvdyBhbiBvZmYtY2FudmFzIHBhbmVsLlxuICAmLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBwb3NpdGlvbiBhbiBvZmYtY2FudmFzIHBhbmVsIHRvIHRoZSBsZWZ0L3JpZ2h0L3RvcC9ib3R0b20uXG5AbWl4aW4gb2ZmLWNhbnZhcy1wb3NpdGlvbihcbiAgJHBvc2l0aW9uOiBsZWZ0LFxuICAkb3JpZW50YXRpb246IGhvcml6b250YWwsXG4gICRzaXplczogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZXMsICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMpXG4pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSBpcyBzZXQsIGFkZCBpbm5lciBib3gtc2hhZG93LlxuICAvLyBUaGlzIG1pbWljcyB0aGUgb2ZmLWNhbnZhcyBwYW5lbCBoYXZpbmcgYSBsb3dlciB6LWluZGV4LCB3aXRob3V0IGhhdmluZyB0byBoYXZlIG9uZS5cbiAgQGlmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUge1xuICAgICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHJpZ2h0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhsZWZ0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3coYm90dG9tLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3codG9wLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8vIFNldHMgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIG9mZi1jYW52YXMtY29udGVudCgpIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgLy8gVHJhbnNmb3JtIHNjb3BlIHVudGlsIHRoZSBlbGVtZW50IGlzIGNsb3NlZCAobWFrZXMgc3VyZSB0cmFuc2l0aW9uZW5kIGdldHMgdHJpZ2dlcmVkKVxuICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgZWxlbWVudCAmIGNvbnRlbnQsIG5lc3RlZCBpbiBhbm90aGVyIGNvbnRlbnRcbiAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1yZXZlYWwoXG4kcG9zaXRpb246IGxlZnQsXG4kemluZGV4OiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsXG4kY29udGVudDogJG1haW5jb250ZW50LWNsYXNzLFxuJGJyZWFrcG9pbnQ6IHNtYWxsXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBDb25zaWRlciByZXZlYWxlZCBlbGVtZW50IGlzIG5lc3RlZCBpbiBjb250ZW50XG4gIC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3QgLiN7JGNvbnRlbnR9Lmhhcy1yZXZlYWwtI3skcG9zaXRpb259IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSAocHJpb3IgdG8gdjYuNClcbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogaW5oZXJpdDtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9yYml0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBhY3RpdmUgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlhbWV0ZXIgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGJldHdlZW4gT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlzdGFuY2UgZnJvbSBzbGlkZSByZWdpb24gZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZyb20gT3JiaXQncyBidWxsZXRzIHRvIHdoYXRldmVyIGNvbnRlbnQgbWF5IGx1cmsgYmVsb3cgaXQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjb250cm9scyB3aGVuIGhvdmVyZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIG91dGVyIE9yYml0IHdyYXBwZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgT3JiaXQgc2xpZGUgY29udGFpbmVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY29udGFpbmVyYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDsgLy8gUHJldmVudCBGT1VDIGJ5IG5vdCBzaG93aW5nIHVudGlsIEpTIHNldHMgaGVpZ2h0XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5kaXZpZHVhbCBzbGlkZXMgb2YgYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtc2xpZGVgIGNsYXNzLlxuQG1peGluIG9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A7XG4gIG1hcmdpbi1ib3R0b206ICRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwcm9ncmVzcyBiYXIgY29udGFpbmVyLlxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBtZXRlciBvZiBhIHByb2dyZXNzIGJhci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRleHQgaW4gdGhlIHByb2dyZXNzIG1ldGVyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyLXRleHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyIHtcbiAgLy8gUHJvZ3Jlc3MgYmFyXG4gIC5wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyXG4gIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gIH1cblxuICAvLyBJbm5lciBtZXRlciB0ZXh0XG4gIC5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlci10ZXh0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBhY3RpdmUgZmlsbCBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBzd2l0Y2hcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBhY3RpdmUgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodDogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC50aW55IGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnNtYWxsIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAubGFyZ2UgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lciBhbmQgcGFkZGxlLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaCBwYWRkbGVcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBzd2l0Y2ggdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gbWFrZSB0aGVtIHZhcmlhYmxlc1xuLy8gYXNrIGFib3V0IGFjY2Vzc2liaWxpdHkgb24gbGFiZWxcbi8vIGNoYW5nZSBjbGFzcyBuYW1lIGZvciB0ZXh0XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgY29udGFpbmVyIGNsYXNzLlxuQG1peGluIHN3aXRjaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206ICRzd2l0Y2gtbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFRoZXNlIHByb3BlcnRpZXMgY2FzY2FkZSBkb3duIHRvIHRoZSBzd2l0Y2ggdGV4dFxuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggaW5wdXQuIEFwcGx5IHRoaXMgdG8gYW4gYDxpbnB1dD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgYW5kIHBhZGRsZSBvZiBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byBhIGA8bGFiZWw+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXBhZGRsZSB7XG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuXG4gIC8vIFJlc2V0dGluZyB0aGVzZSA8bGFiZWw+IHByZXNldHMgc28gdHlwZSBzdHlsZXMgY2FzY2FkZSBkb3duXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHNwZWNpZmljaXR5XG4gIGlucHV0ICsgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gVGhlIHBhZGRsZSBpdHNlbGZcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcGFkZGxlLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgYWN0aXZlXG4gIGlucHV0OmNoZWNrZWQgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzd2l0Y2gtaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtb2Zmc2V0IFswLjI1cmVtXSAtIFNwYWNpbmcgYmV0d2VlbiB0aGUgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIHN3aXRjaCBib2R5LlxuQG1peGluIHN3aXRjaC1zaXplKFxuICAkZm9udC1zaXplOiAxcmVtLFxuICAkc3dpdGNoLWhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS1vZmZzZXQ6IDAuMjVyZW1cbikge1xuXG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAkcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtb2Zmc2V0O1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zd2l0Y2gge1xuICAvLyBDb250YWluZXIgY2xhc3NcbiAgLnN3aXRjaCB7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50XG4gIC5zd2l0Y2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1pbnB1dDtcbiAgfVxuXG4gIC8vIDxsYWJlbD4gZWxlbWVudFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXBhZGRsZTtcbiAgfVxuXG4gIC8vIEJhc2UgbGFiZWwgdGV4dCBzdHlsZXNcbiAgJXN3aXRjaC10ZXh0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dDtcbiAgfVxuXG4gIC8vIEFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtYWN0aXZlO1xuICB9XG5cbiAgLy8gSW5hY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtaW5hY3RpdmU7XG4gIH1cblxuICAvLyBTd2l0Y2ggc2l6ZXNcbiAgLnN3aXRjaC50aW55IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMCksICRzd2l0Y2gtaGVpZ2h0LXRpbnksICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMiksICRzd2l0Y2gtaGVpZ2h0LXNtYWxsLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5sYXJnZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTYpLCAkc3dpdGNoLWhlaWdodC1sYXJnZSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWVsZW1lbnQtbmVzdGluZywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYGV4cGFuZC1uYCBjbGFzc2VzIHRvIGluY2x1ZGUgaW4gdGhlIENTUy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5AbWl4aW4gdGh1bWJuYWlsLWxpbmsge1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cblxuICBhLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjdXJzb3Igb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBib3R0b20gb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBMaXN0XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgZm9udC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4IHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvcjtcbn1cblxuQG1peGluIHRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIHotaW5kZXg6IDEyMDA7XG5cbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCB1cCk7XG4gICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi50b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCByaWdodCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlO1xuICB9XG5cbiAgJi5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGA8aW5wdXQ+YCBlbGVtZW50cyBpbnNpZGUgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggdG9wIGJhciBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRvcCBiYXIgY29udGFpbmVyLlxuQG1peGluIHRvcC1iYXItY29udGFpbmVyIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBwYWRkaW5nOiAkdG9wYmFyLXBhZGRpbmc7XG5cbiAgJixcbiAgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyBkaWZmZXJudCBmcm9tICR0b3BiYXItYmFja2dyb3VuZC1zdWJtZW51XG4gIEBpZiAoJHRvcGJhci1iYWNrZ3JvdW5kICE9ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kKSB7XG4gICAgdWwgdWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdHJhaW4gd2lkdGggb2YgaW5wdXRzIGJ5IGRlZmF1bHQgdG8gbWFrZSB0aGVtIGVhc2llciB0byBhcnJhbmdlXG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6ICR0b3BiYXItaW5wdXQtd2lkdGg7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gIH1cblxuICAvLyBUaGUgYWJvdmUgc3R5bGVzIHNob3VsZG4ndCBhcHBseSB0byBpbnB1dCBncm91cCBmaWVsZHNcbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcblxuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW46ICR0b3BiYXItdGl0bGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG5cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAoMSAvIDE2KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtICgxIC8gMTYpO1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgYWN0aXZhdGUtcXVldWUtY2xhc3M6ICdpcy1hbmltYXRpbmcnLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbWFwOiBjYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbGVmdF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGFtb3VudCBbMTAwJV0gLSBMZW5ndGggb2YgdGhlIHNsaWRlIGFzIGEgcGVyY2VudGFnZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zbGlkZSAoXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGxlZnQsXG4gICRhbW91bnQ6IDEwMCUsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNsaWRlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFswXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gWzFdIC0gT3BhY2l0eSB0byBlbmQgb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDAsXG4gICR0bzogMSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgZWZmZWN0IGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbkBmdW5jdGlvbiBoaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHJvdGF0aW9uOiAnJztcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1mcm9tLCAkZnJvbSk7XG4gIH0gQGVsc2UgaWYgJHR1cm4tb3JpZ2luID09IGZyb20tYmFjayB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtYmFjaywgJGZyb20pO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnJHR1cm4tb3JpZ2luIG11c3QgYmUgZWl0aGVyIFwiZnJvbS1iYWNrXCIgb3IgXCJmcm9tLWZyb250XCInO1xuICB9XG5cbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxuICAkc3RhcnQ6ICcnO1xuICAkZW5kOiAnJztcbiAgQGlmICRzdGF0ZSA9PSBpbiB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgfSBAZWxzZSB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgfVxuXG4gIC8vIFR1cm4gYXhpc1xuICAkb3JpZ2luOiAnJztcbiAgQGlmICRheGlzID09IGVkZ2Uge1xuICAgICRvcmlnaW46ICRmcm9tO1xuICB9IEBlbHNlIHtcbiAgICAkb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICAka2V5ZnJhbWVzOiAoXG4gICAgbmFtZTogJ2hpbmdlLSN7JHN0YXRlfS0jeyRmcm9tfS0jeyRheGlzfS0jeyR0dXJuLW9yaWdpbn0nLFxuICAgIDA6ICh0cmFuc2Zvcm06ICRzdGFydCwgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbiksXG4gICAgMTAwOiAodHJhbnNmb3JtOiAkZW5kKSxcbiAgKTtcblxuICBAcmV0dXJuICRrZXlmcmFtZXM7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFjayxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMS41XSAtIFNpemUgdG8gc3RhcnQgYXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxXSAtIFNpemUgdG8gZW5kIGF0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktem9vbShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDEuNSxcbiAgJHRvOiAxLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRkaXJlY3Rpb24gW2N3XSAtIERpcmVjdGlvbiB0byBzcGluLiBTaG91bGQgYmUgYGN3YCAoY2xvY2t3aXNlKSBvciBgY2N3YCAoY291bnRlcmNsb2Nrd2lzZSkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhbW91bnQgWzAuNzV0dXJuXSAtIEFtb3VudCB0byBlbGVtZW50IHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNwaW4oXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGN3LFxuICAkYW1vdW50OiAwLjc1dHVybixcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc3Bpbi1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNwaW46IHNwaW4oJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgYW5kIGFzc2lnbnMgaXQgdG8gdGhlIGVsZW1lbnQgYnkgYWRkaW5nIHRoZSBgYW5pbWF0aW9uLW5hbWVgIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiLyoqXG4gKiBDdXN0b21pemF0aW9ucyB0byBTdGFuZGFyZCBGb3VuZGF0aW9uIGVsZW1lbnRzXG4gKi9cblxuIGEge1xuXHQgY29sb3I6ICRvcmFuZ2U7XG5cdCAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG5cdFx0IGNvbG9yOiBkYXJrZW4oJG9yYW5nZSwgMTAlKTtcblx0IH1cbiB9XG5cbi8qKioqKioqKlxuICogRHJvcGRvd24gTWVudVxuICovXG5cbiAuZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gXHRwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gXHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jaGV2cm9uLXNvdXMtbWVudS5wbmcnKSBuby1yZXBlYXQgcmlnaHQgY2VudGVyO1xuIFx0Jjo6YWZ0ZXIge1xuIFx0XHRjb250ZW50OiBub3JtYWwgIWltcG9ydGFudDtcbiBcdH1cbiB9XG5cbiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gXHRib3JkZXI6IDFweCBzb2xpZCAkYmxhY2s7XG4gXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiBcdGJveC1zaGFkb3c6IDAgMCAxNXB4ICRibGFjaztcbiBcdG1hcmdpbi10b3A6IDE1cHg7XG4gXHRsaSB7XG4gXHRcdGEge1xuIFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLCAwJSk7XG4gXHRcdFx0cGFkZGluZzogMTVweDtcbiBcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuIFx0XHRcdHRyYW5zaXRpb246IDAuMTVzO1xuIFx0XHRcdCY6aG92ZXIge1xuIFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDUlKTtcbiBcdFx0XHR9XG4gXHRcdH1cbiBcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkd2hpdGUsIDc1JSk7XG4gXHRcdCY6bGFzdC1jaGlsZCB7XG4gXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcbiBcdFx0fVxuIFx0XHQmLmN1cnJlbnQgYSB7XG4gXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDUlKTtcbiBcdFx0fVxuIFx0fVxuIFx0Ji5qcy1kcm9wZG93bi1hY3RpdmUge1xuIFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuIFx0fVxuIH1cblxuXG4gLyoqKioqKiogQnJlYWRjcnVtYiAqKioqKioqL1xuXG4gLmJyZWFkY3J1bWItaG9sZGVyIHtcblx0aGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogMzJweDtcblx0LmJyZWFkY3J1bWJzIHtcblx0XHRsaSB7XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7IFxuXHRcdFx0XHRjb250ZW50OiB1cmwoJy4uL2ltZy9jaGV2cm9uLnBuZycpO1xuXHRcdFx0fVxuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHR9XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG4gfSIsIi8qKlxuICogR2xvYmFsIHN0eWxlc1xuICovXG5cbi5oaWRlLWZvci1wb3J0YWwge1xuICAgIEBpZiAkaGFzLWhlYWRlci1iYXI9PXRydWUge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ucGFuZWwtYmxvY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbG91ZC1ncmF5O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAmLndoaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAmLmRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNsb3VkLWdyYXksIDEwJSk7XG4gICAgfVxuICAgICYucmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkc2NhcmxldCwgMC44KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcCxcbiAgICAgICAgbGksXG4gICAgICAgIGgxLFxuICAgICAgICBoMixcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYucGFkZGluZy1zaWRlcyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICB9XG4gICAgJi55ZWxsb3cge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR5ZWxsb3csIDEwJSk7XG4gICAgfVxufVxuXG4ucGFuZWwge1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrLnBhZGRpbmctc2lkZXM7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2sueWVsbG93O1xufVxuXG4vKiogTGF5b3V0ICoqL1xuXG4jd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgICNtYWluIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNzBweFxuICAgICAgICB9XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbiNjb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbC1yb3coKTtcbn1cblxuI21haW4ge1xuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgQGV4dGVuZCAudGl0bGUtYmctZGlhZ29uYWw7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYmxhY2s7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgfVxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxucCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG59XG5cbi5uby1kaWFnb25hbCB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbiNpbmRleCxcbiNmb290ZXIge1xuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxufVxuXG4udGh1bWJuYWlsIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiNiYWNrLXRvLXRvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9hcnJvdy10b3Atb3JhbmdlLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMTIlO1xuICAgIHJpZ2h0OiA1JTtcbiAgICB0cmFuc2l0aW9uOiAwLjE1cztcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgIH1cbn1cblxuLnRleHQteWVsbG93IHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG59XG5cbi8qKiBidXR0b25zICoqL1xuXG4uYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ibGFjaztcbiAgICBib3JkZXI6IDNweCBzb2xpZCAkb3JhbmdlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgcGFkZGluZzogMTRweCAzMHB4IDE0cHggMzBweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBvcGFjaXR5IDAuMnM7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuZmlsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDE3cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxN3B4O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJG9yYW5nZSwgMTAlKTtcbiAgICAgICAgfVxuICAgICAgICAmLmljb24ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnRyYW5zcGFyZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgICYudGV4dC11cHBlcmNhc2Uge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICAmLmxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgICYuaWNvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMTNweDtcbiAgICAgICAgJi5pY29uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnllbGxvdyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHllbGxvdztcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgfVxuICAgICAgICAmLmZpbGwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkeWVsbG93LCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmFkZC10by1jYXJ0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYWRkLXRvLWNhcnQtY29sb3I7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhZGQtdG8tY2FydC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICAmLmZpbGwge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhZGQtdG8tY2FydC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYWRkLXRvLWNhcnQtY29sb3IsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi53YXJuaW5nIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2FybmluZy1jb2xvcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdhcm5pbmctY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgJi5maWxsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3YXJuaW5nLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCR3YXJuaW5nLWNvbG9yLCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudGV4dC13aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgICYuY29sb3ItZml4LW9uLWhvdmVyIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKiBJY29uICovXG4gICAgJi5pY29uIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgICYuZmlsbDphZnRlciB7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLyogQXJyb3cgKi9cbiAgICAgICAgJi5hcnJvdyB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LWJsYWNrLnBuZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlcjphZnRlcixcbiAgICAgICAgICAgICYudGV4dC13aGl0ZTphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcuLi9pbWcvYXJyb3ctcmlnaHQtd2hpdGUucG5nJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFycm93LWxlZnQge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xKTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGV4dC13aGl0ZSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZycpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY29sb3ItZml4LW9uLWhvdmVyIHtcbiAgICAgICAgICAgICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcuLi9pbWcvYXJyb3ctcmlnaHQtYmxhY2sucG5nJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi55ZWxsb3cge1xuICAgICAgICAgICAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC1ibGFjay5wbmcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJ0IHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9wYW5pZXItd2hpdGUucG5nJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9wYW5pZXItd2hpdGUucG5nJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wbHVzIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaDIge1xuICAgIEBleHRlbmQgaDI7XG59XG5cbmEge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJG9yYW5nZSwgMjAlKTtcbiAgICB9XG59XG5cbi5hZGQtdG8tY2FydC1idXR0b24ge1xuICAgIEBleHRlbmQgLmJ0bjtcbiAgICBAZXh0ZW5kIC5idG4uaWNvbjtcbiAgICBAZXh0ZW5kIC5idG4uaWNvbi5jYXJ0O1xuICAgIEBleHRlbmQgLmJ0bi5hZGQtdG8tY2FydDtcbiAgICBAZXh0ZW5kIC5idG4uYWRkLXRvLWNhcnQuZmlsbDtcbn1cblxuLmdyYXktd2F2ZS1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvbGlnaHQtZ3JheS13YXZlLXRvcC5wbmcnKSByZXBlYXQteDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTE4cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2xpZ2h0LWdyYXktd2F2ZS10b3AucG5nJykgcmVwZWF0LXg7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICB9XG59XG5cbi5yZWQtd2F2ZS1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXJlZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvd2F2ZS1yZWQtdG9wLnBuZycpIHJlcGVhdC14O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvd2F2ZS1yZWQtYm90dG9tLnBuZycpIHJlcGVhdC14O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmLndhdGVybWFyayB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL25lb2RpZi13YXRlcm1hcmsucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSByaWdodDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi5idXJndW5keS13YXZlLWNvbnRhaW5lciB7XG4gICAgQGV4dGVuZCAucmVkLXdhdmUtY29udGFpbmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXJndW5keTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHAsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICBkaXYucHJvZHVjdC1hdHRyaWJ1dGUge1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5idG4uaWNvbi5hcnJvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZycpO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvYnVyZ3VuZHktd2F2ZS10b3AucG5nJykgcmVwZWF0LXg7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9idXJndW5keS13YXZlLWJvdHRvbS5wbmcnKSByZXBlYXQteDtcbiAgICB9XG59XG5cbi5icm93bi13YXZlLWNvbnRhaW5lciB7XG4gICAgQGV4dGVuZCAuYnVyZ3VuZHktd2F2ZS1jb250YWluZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyb3duO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvYnJvd24td2F2ZS10b3AucG5nJykgcmVwZWF0LXg7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9icm93bi13YXZlLWJvdHRvbS5wbmcnKSByZXBlYXQteDtcbiAgICB9XG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsdWUtd2F2ZS1jb250YWluZXIge1xuICAgIEBleHRlbmQgLmJyb3duLXdhdmUtY29udGFpbmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsLWJsdWUgIWltcG9ydGFudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2JsdWUtd2F2ZS10b3AucG5nJykgcmVwZWF0LXg7XG4gICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgdG9wOiAtMTVweDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2JsdWUtd2F2ZS1ib3R0b20ucG5nJykgcmVwZWF0LXg7XG4gICAgfVxuICAgICYucHJlc3RhYmxvZ19zbGlkZSB7XG4gICAgICAgIC5hY3R1YWxpdGUtY29sdW1uIC5zaW5nbGUtbmV3cy1ibG9jayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYzYzU4O1xuICAgICAgICAgICAgLnNpbmdsZS1uZXdzLWltYWdlIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2RlY28tcm91bmQtYmx1ZS5wbmcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ib3JkZXItYm90dG9tIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG5cbi5ub3BhZGRpbmcge1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi50aXRsZS1iZy1kaWFnb25hbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJvdHRvbTogLTE1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2ZGVnKTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgICYuZGlhZ29uYWwtYmxhY2s6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxufVxuXG4vLyBPd2wgY2Fyb3VzZWwgc3R5bGVzXG4jbWFpbiAub3dsLWNhcm91c2VsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAyNXB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgNTBweDtcbiAgICB9XG4gICAgLm93bC1wcmV2LFxuICAgIC5vd2wtbmV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDguNXB4KTtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxN3B4O1xuICAgICAgICB9XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAub3dsLXByZXYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9hcnJvdy1sZWZ0LW1vYmlsZS1vcmFuZ2UucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2Fycm93LWxlZnQtb3JhbmdlLnBuZycpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5vd2wtbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC1tb2JpbGUtb3JhbmdlLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC1vcmFuZ2UucG5nJyk7XG4gICAgICAgIH1cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm93bC1kb3RzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNzBweDtcbiAgICAgICAgfVxuICAgICAgICAub3dsLWRvdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR5ZWxsb3ctdmFyaWFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy12YXJpYW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI25vdGlmaWNhdGlvbnMge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubm90aWZpY2F0aW9uLFxuLmFsZXJ0IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbCgxMik7XG4gICAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAmLm5vdGlmaWNhdGlvbi1zdWNjZXNzLFxuICAgICYuYWxlcnQtc3VjY2VzcyB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJHN1Y2Nlc3MtY29sb3IpO1xuICAgICAgICBjb2xvcjogJHN1Y2Nlc3MtY29sb3I7XG4gICAgfVxuICAgICYubm90aWZpY2F0aW9uLWRhbmdlcixcbiAgICAmLmFsZXJ0LWRhbmdlciB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGFsZXJ0LWNvbG9yKTtcbiAgICAgICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICB9XG4gICAgJi5ub3RpZmljYXRpb24td2FybmluZyxcbiAgICAmLmFsZXJ0LXdhcm5pbmcge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRvcmFuZ2UpO1xuICAgICAgICBjb2xvcjogJG9yYW5nZTtcbiAgICB9XG4gICAgJi5ub3RpZmljYXRpb24taW5mbyxcbiAgICAmLmFsZXJ0LWluZm8ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCR5ZWxsb3cpO1xuICAgICAgICBjb2xvcjogZGFya2VuKCR5ZWxsb3csIDMwJSk7XG4gICAgfVxufVxuXG4ucGFnZS1ub3QtZm91bmQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmPmxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgICAgQGV4dGVuZCAuYnRuO1xuICAgICAgICBAZXh0ZW5kIC5idG4uc21hbGw7XG4gICAgfVxuICAgIHVsLm1lbnUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuXHRQYWdlIENNUyBcbioqL1xuXG4jY29udGVudC5wYWdlLWNtcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogODVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgfVxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgQGV4dGVuZCAubm8tZGlhZ29uYWw7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jcHJlc3RhYmxvZ2ZvbnQge1xuICAgIGEge1xuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG5cdFNob3BwaW5nIGxpc3RcbioqL1xuXG4uc2hvcHBpbmctbGlzdCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zaG9wcGluZy1saXN0LWJ0biB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRyYW5zaXRpb246IDAuMTVzO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJG9yYW5nZTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2ljb24td2lzaGxpc3QucG5nJyk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuICAgICYud2lzaC1maWxsIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9pY29uLXdpc2hsaXN0LWZpbGwucG5nJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKiBTZWFyY2RoIHdpZGdldCBvbiA0MDQgcGFnZSAqKi9cblxuI2NvbnRlbnQgI3NlYXJjaF93aWRnZXQge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIC5zZWFyY2gtZmllbGQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5zZWFyY2gtaW5wdXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogTWl4aW5zIFxuICovXG5cbi8qKlxuICpcdE1peGluIGZvciBDYXJkIHNsaWRlcnMgXG4gKi9cblxuQG1peGluIGNhcmQtc2xpZGVyKCAkc2x1ZyxcbiRmdWxsU2l6ZUhlYWRlcjogZmFsc2UpIHtcbiAgICAub3dsLWNhcm91c2VsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDk0cHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAub3dsLXN0YWdlLW91dGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgICAgIC5vd2wtc3RhZ2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAub3dsLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5vd2wtZG90cyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLiN7JHNsdWd9LWJsb2NrIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4xNXM7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JHNsdWd9LWltYWdlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGlmICRmdWxsU2l6ZUhlYWRlciAhPXRydWUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDM4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAvLyBFeGNlcHRpb24gZm9yIGJsb2cgcGFnZXNcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM5M3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2RlY28tcm91bmQtZ3JheS5wbmcnKSBuby1yZXBlYXQgYm90dG9tIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuI3skc2x1Z30tZGF0ZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRzbHVnfS1pbmZvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAuI3skc2x1Z30tZGF0ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG9yYW5nZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC4jeyRzbHVnfS10aXRsZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC4jeyRzbHVnfS1leGNlcnB0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ibG9jay1saW5rIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJG9yYW5nZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2FkZXIge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9sb2FkZXIuZ2lmJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAmLmhpZGRlbiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5ycnNzYi1idXR0b25zLnRpbnktZm9ybWF0IHtcbiAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzBweDtcbn1cblxuLnNoYXJlLWNvbnRlbnQtcHJlc3RhYmxvZyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbGluZS1oZWlnaHQ6IDM3cHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE3cHggIWltcG9ydGFudDtcbn0iLCJbdHlwZT1cInRleHRcIl0sXG4gW3R5cGU9XCJwYXNzd29yZFwiXSxcbiBbdHlwZT1cImRhdGVcIl0sXG4gW3R5cGU9XCJkYXRldGltZVwiXSxcbiBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuIFt0eXBlPVwibW9udGhcIl0sXG4gW3R5cGU9XCJ3ZWVrXCJdLFxuIFt0eXBlPVwiZW1haWxcIl0sXG4gW3R5cGU9XCJudW1iZXJcIl0sXG4gW3R5cGU9XCJzZWFyY2hcIl0sXG4gW3R5cGU9XCJ0ZWxcIl0sXG4gW3R5cGU9XCJ0aW1lXCJdLFxuIFt0eXBlPVwidXJsXCJdLFxuIFt0eXBlPVwiY29sb3JcIl0sXG50ZXh0YXJlYSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRmb3JtLWdyYXk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7ICBcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjNzO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBkYXJrZW4oJGZvcm0tZ3JheSwyMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICY6dmFsaWQuZnVsbCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRzdWNjZXNzLWNvbG9yO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3ZhbGlkLnBuZycpOyBcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNXB4IGNlbnRlcjtcbiAgICB9XG4gICAgJjppbnZhbGlkLmZ1bGwge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYWxlcnQtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvLWZhbHNlLnBuZycpOyBcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNXB4IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmICsgbGFiZWwge1xuICAgICAgICBoZWlnaHQ6MDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC00OHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXM7XG4gICAgfVxuXG4gICAgJjpmb2N1cyArIGxhYmVsLCAmLmZ1bGwgKyBsYWJlbCB7XG4gICAgICAgIHRvcDogLTcycHg7XG4gICAgfVxuICAgIFxufVxudGV4dGFyZWEgKyBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xufVxudGV4dGFyZWE6Zm9jdXMgKyBsYWJlbCwgdGV4dGFyZWEuZnVsbCArIGxhYmVsIHtcbiAgICB0b3A6IC0xOHB4O1xufVxuXG4vKiogUGxhY2Vob2xkZXJzICoqL1xuI21haW4gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXG4gICAgdmlzaWJpbGl0eTpoaWRkZW47IGRpc3BsYXk6bm9uZTsgb3BhY2l0eTogMDtcbn1cbiNtYWluIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cbnZpc2liaWxpdHk6aGlkZGVuOyBkaXNwbGF5Om5vbmU7IG9wYWNpdHk6IDA7XG5cbn1cbiNtYWluIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xudmlzaWJpbGl0eTpoaWRkZW47IGRpc3BsYXk6bm9uZTsgb3BhY2l0eTogMDtcblxufVxuI21haW4gaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXG52aXNpYmlsaXR5OmhpZGRlbjsgZGlzcGxheTpub25lOyBvcGFjaXR5OiAwO1xufVxuXG4vKiogTGFiZWwgKiovXG5sYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICYucmVxdWlyZWQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcqJztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNlbGVjdC1maWVsZC5yZXF1aXJlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucmFkaW8tYmxvY2sge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgfVxufVxuXG5cblxuXG4vKiogUmFkaW8gYW5kIGNoZWNrYm94ICoqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLCBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICB0b3A6IDVweDtcbiAgICAmKy5wc2V1ZG8tY2hlY2sge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1ncmF5O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDo1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG4gICAgfVxuICAgICZbdHlwZT0nY2hlY2tib3gnXSsucHNldWRvLWNoZWNrIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OyBcbiAgICB9XG4gICAgJjpjaGVja2VkKy5wc2V1ZG8tY2hlY2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICAgIH1cbiAgICAmOmNoZWNrZWQrLnBzZXVkby1jaGVjaytzcGFuLCAmOmNoZWNrZWQrLnBzZXVkby1jaGVjaytsYWJlbCwgJjpjaGVja2VkK2xhYmVsLCAmOmNoZWNrZWQrc3BhbixcbiAgICAmOmNoZWNrZWQrLnBzZXVkby1jaGVjaytmb3JtK3NwYW4sICY6Y2hlY2tlZCsucHNldWRvLWNoZWNrK2Zvcm0rbGFiZWwsICY6Y2hlY2tlZCtmb3JtK2xhYmVsLCAmOmNoZWNrZWQrZm9ybStzcGFuICAge1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICB9XG5cbiAgICAvLyBUcnkgdG8gZml4IGxhYmVscyBcbiAgICAmKy5wc2V1ZG8tY2hlY2srbGFiZWwsICYrLnBzZXVkby1jaGVjaytmb3JtK2xhYmVsLCAmKy5wc2V1ZG8tY2hlY2src3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IFxuICAgIH1cblxufVxuXG5cbi8qKiBFcnJvcnMgKiovXG4uZm9ybS1lcnJvcnMge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRhbGVydC1jb2xvcik7XG4gICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgLy8gY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cbn1cblxuLyoqIEdmb3JtcHJvICoqL1xuLmdmb3JtYnVpbGRlcnByb19mb3JtIHtcbiAgIC5pdGVtZmllbGRfd3Aucm93IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICB9XG4gICAgLml0ZW1maWVsZCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDEyKTsgXG4gICAgfVxuICAgIC5mb3JtYnVpbGRlcl9ncm91cCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDEyKTtcbiAgICB9XG5cbn1cbi5nZm9ybWJ1aWxkZXJwcm9fYWN0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNwc2Zvcm0gI2NvbW1lbnQge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn0iLCIvKipcbiAqIEhlYWRlciBjdXN0b21pc2F0aW9uc1xuICovXG5cbkBtaXhpbiB5ZWxsb3dEcm9wZG93bk1lbnVJdGVtKCkge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1pbi13aWR0aDogMTgwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHllbGxvdztcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgIH1cbn1cblxuI2hlYWRlciB7XG4gICAgLmN1c3RvbWVyLWxpbmstYXJlYSB7XG4gICAgICAgIEBpZiAkaGFzLWhlYWRlci1iYXIgIT10cnVlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXIteWVsbG93O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgfVxuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMztcblxuICAgICAgICAmPi5jb2x1bW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhY2stdG8tcG9ydGFpbCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIEBpZiAkaGFzLWhlYWRlci1iYXIgIT10cnVlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LWJsYWNrLnBuZycpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZW5nbGlzaC1wYWdlIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0N3B4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY3VzdG9tZXItYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaWYgJGhhcy1oZWFkZXItYmFyICE9dHJ1ZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLXllbGxvdztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubG9naW4tYnV0dG9uLFxuICAgICAgICAgICAgLmN1c3RvbWVyLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4IDVweCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgLmJ1dHRvbi10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9pY29uLWNsaWVudC5wbmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAkaGFzLWhlYWRlci1iYXI9PXRydWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dpbi1idXR0b24ge1xuICAgICAgICAgICAgICAgIEBpZiAkaGFzLWhlYWRlci1iYXIgIT10cnVlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbWFyZ2luIDAuM3M7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY3VzdG9tZXItYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2NoZXZyb24tc291cy1tZW51LWJsYWNrLnBuZycpO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTFweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGlmICRoYXMtaGVhZGVyLWJhciAhPXRydWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN1c3RvbWVyLW1lbnUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR5ZWxsb3csIDEwJSk7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB5ZWxsb3dEcm9wZG93bk1lbnVJdGVtKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaWYgJGhhcy1oZWFkZXItYmFyICE9dHJ1ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXIteWVsbG93O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweCAxMHB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaWYgJGhhcy1oZWFkZXItYmFyICE9dHJ1ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jdXN0b21lci1saW5rLXdhdmUucG5nJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItYmctY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRoZWFkZXItaW1hZ2UtYmc7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgfVxuXG4gICAgQGlmICRoYXMtaGVhZGVyLWJhciAhPXRydWUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci15ZWxsb3c7XG4gICAgICAgICAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gYm9yZGVyLXRvcDogNHB4IHNvbGlkICRoZWFkZXIteWVsbG93OyAgXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyLWltYWdlLWJnIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItYmctY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaGVhZGVyLWltYWdlLWJnO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcblxuICAgICAgICAgICAgQGlmICRoZWFkZXItaW1hZ2UtY2VudGVyZWQ9PXRydWUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5oZWFkZXItaW1hZ2UtYmctLXBhZGRpbmcge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyLXRvcCB7XG4gICAgICAgIGhlaWdodDogMTcxcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAubG9nby1saW5rIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTRweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc3cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXItc2xvZ2FuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMzVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyNDBweDtcbiAgICAgICAgICAgIGxlZnQ6IDExMHB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ibGFjaztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHRvcDogNzBweDsgLy8gcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMTc1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3NlYXJjaF93aWRnZXQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMjMwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgdG9wOiA1NnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAuc2VhcmNoLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNlYXJjaC1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOi1tb3otaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3NlYXJjaF9wb3B1cCB7XG4gICAgICAgICAgICAgICAgLnByb2R1Y3Qge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zZWFyY2hfaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zZWFyY2hfaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzUlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0X25hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAtN3B4O1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE3NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJj5saSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJj5hIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50PmEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAvLyAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFx0Y29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgLy8gXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIC8vIFx0bGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgLy8gXHRyaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgLy8gXHRib3R0b206IC04cHg7XG4gICAgICAgICAgICAgICAgICAgIC8vIFx0bWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgIC8vIFx0d2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIC8vIFx0aGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgICAgIC8vIFx0YmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICYuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICY+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIHByZXZlbnQgaXQncyBpbW1lZGlhdGUgQSBjaGlsZCB0byBmb2xsb3cgSFJFRlxuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJj5hOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9jaGV2cm9uLXNvdXMtbWVudS5wbmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc3ViIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJtZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmPmxpIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJj5hLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJj4uc3VibW9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJj51bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCR5ZWxsb3csIDEwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCR5ZWxsb3csIDEwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmN1cnJlbnQgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY+LmxpLXNlcGFyYXRvciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc2VwLW1lbnUucG5nJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItdG9wLW1vYmlsZSB7XG4gICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICAgICAgLmJ1dHRvbi1ob2xkZXItbGVmdCxcbiAgICAgICAgLmJ1dHRvbi1ob2xkZXItcmlnaHQge1xuICAgICAgICAgICAgZmxleDogMVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbi1ob2xkZXItbGVmdCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICNibG9ja2NhcnQtd3JhcHBlcixcbiAgICAgICAgICAgICNzZWFyY2hfd2lkZ2V0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNzZWFyY2hfd2lkZ2V0IHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNThweDtcblxuICAgICAgICAgICAgICAgIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMSU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlYXJjaC1ob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDY0cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHllbGxvdyxcbiAgICAgICAgICAgICAgICAgICAgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdXN0b21lci1idXR0b24tY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUycHg7XG5cbiAgICAgICAgICAgICAgICAubG9naW4tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5idXR0b24tdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcuLi9pbWcvaWNvbi1jbGllbnQucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgJGhhcy1oZWFkZXItYmFyPT10cnVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28tbGluayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzOXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNThweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmVuZ2xpc2gtcGFnZSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDdweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDdweDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUtYnV0dG9uIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcuLi9pbWcvbWVudS1pcy1jbG9zZS5wbmcnKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm1lbnUtb3BlbjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcuLi9pbWcvbWVudS1pcy1vcGVuLnBuZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUtbW9iaWxlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMjVweCAxNXB4IDI1cHg7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8qKiBTdWJtZW51ICoqL1xuICAgICAgICAgICAgICAgICAgICAuc3VibW9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2NoZXZyb24tc291cy1tZW51LWJsYWNrLnBuZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnN1YiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3VibWVudS1jb250YWluZXI+dWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHNvbGlkICNmZmU4OTcgMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkICNmZmU4OTcgMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY+bGk+YSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmPmxpPi5zdWJtb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjc2VhcmNoX3dpZGdldCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyM3B4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgICAgIC5zZWFyY2gtZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnNlYXJjaC1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN1c3RvbWVyLWxpbmstbW9iaWxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgLmxvZ2luLWJ1dHRvbixcbiAgICAgICAgICAgICAgICAuY3VzdG9tZXItYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMjdweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9pY29uLWNsaWVudC1tb2JpbGUucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgI2Jsb2NrY2FydC13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY3VzdG9tZXItYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9hcnJvdy1ib3R0b20td2hpdGUucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFjay10by1wb3J0YWlsIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgICAgICBAaWYgJGhhcy1oZWFkZXItYmFyICE9dHJ1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LWJsYWNrLnBuZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItbWlkZGxlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNjVweDtcblxuICAgICAgICAgICAgQGlmICRoYXMtaGVhZGVyLWJhcj09dHJ1ZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE4MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGlmICRoYXMtaGVhZGVyLWJhcj09dHJ1ZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjI4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLW1pZGRsZS10aXRsZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ibGFjaztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1taWRkbGUtc3VidGl0bGUge1xuICAgICAgICAgICAgQGV4dGVuZCAuYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM0cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXItcmVhc3N1cmFuY2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgICAgICAgICAgICAgLmltZy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50ZXh0LWxlZ2VuZCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlci1ib3R0b20tbW9iaWxlIHtcbiAgICAgICAgLnN1YmRvbWFpbi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCA1MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb21tZXJjaWFsLXRleHQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb21tZXJjaWFsLWhvb2sge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmNvbW1lcmNpYWwtdGV4dDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR5ZWxsb3ctdmFyaWFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItYm90dG9tIHtcbiAgICAgICAgQGV4dGVuZCAuZ3JheS13YXZlLWNvbnRhaW5lcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc1cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc3ViZG9tYWluLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAtNXB4IDIwcHggbGlnaHRlbigkYmxhY2ssIDclKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgICAgICBtYXJnaW46IC0xMTBweCBhdXRvIDMwcHggYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTU1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1NXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIzMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTE4NXB4IGF1dG8gMzVweCBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAtNXB4IDMwcHggbGlnaHRlbigkYmxhY2ssIDUlKTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc1MHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9jb250b3VyLWRpYWdvbmFsZS5wbmcnKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4MiUgODIlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbW1lcmNpYWwtdGV4dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29tbWVyY2lhbC1ob29rIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmNvbW1lcmNpYWwtdGV4dDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1YmRvbWFpbi1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICYuaW5mb3JtYXRpb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZnJhbmstbWNrZW5uYS0yNTIwMTQuanBnJyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNhdmlzdGVzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2JlZXItYmFycmVsLWtlZy1jYXNrLW9hay5qcGcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY2F2ZXMtYmFycyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9wZXhlbHMtcGhvdG8tNDgxNjc2LmpwZycpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ldmVudC1vcmdhbml6ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvcGV4ZWxzLXBob3RvLTQ3NDg5My5qcGcnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2Jsb2NrY2FydC13cmFwcGVyIHtcbiAgICBAaWYgJGhhcy1oZWFkZXItYmFyICE9dHJ1ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5teS1jYXJ0LXRleHQsXG4gICAgICAgICYubXktZmF2b3JpdGVzLXRleHQge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubXktZmF2b3JpdGVzLXRleHQge1xuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0cy1iYWRnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC04cHg7XG4gICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRvcmFuZ2U7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyN3B4O1xuICAgICAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY3VzdG9tZXItbGluay1hcmVhICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4jaW5kZXggI2hlYWRlciAuaGVhZGVyLWltYWdlLWJnIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyoqIFN0aWNreSBtZW51ICoqL1xuXG4jaGVhZGVyIC5zdGlja3ktbWVudS1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogLTExMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuM3M7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICAubm90aWZpY2F0aW9uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzLCBwYWRkaW5nIDAuM3M7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgLm5vdGlmaWNhdGlvbiB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlci10b3Age1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgLmxvZ28tbGluayB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIzcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMzcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjNweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgICAmPmxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgYTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICY+YTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKCcuLi9pbWcvY2hldnJvbi1zb3VzLW1lbnUtYmxhY2sucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3ViIC5zdWJtZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkeWVsbG93LCAxMCUpO1xuXG4gICAgICAgICAgICAgICAgICAgICY+dWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHllbGxvdywgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJj4ubGktc2VwYXJhdG9yIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubG9naW4tYnV0dG9uLFxuICAgIC5jdXN0b21lci1idXR0b24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuXG4gICAgICAgIC5idXR0b24tdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2ljb24tY2xpZW50LnBuZycpO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgQGlmICRoYXMtaGVhZGVyLWJhcj09dHJ1ZSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEwNXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tZXItYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICNzZWFyY2hfd2lkZ2V0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICB3aWR0aDogMjlweDtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4zcztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMzBweDtcbiAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIC5zZWFyY2gtZmllbGQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgLnNlYXJjaC1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zZWFyY2gtaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3MsIHBhZGRpbmctbGVmdCAwLjNzLCBwYWRkaW5nLXJpZ2h0IDAuM3M7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDIxcHggJHllbGxvdztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuXG4gICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAuc2VhcmNoLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgLnNlYXJjaC1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2Jsb2NrY2FydC13cmFwcGVyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY2cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTRweDtcblxuICAgICAgICAubXktY2FydC10ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubXktZmF2b3JpdGVzLXRleHQgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBY3RpdmUgSW5kaWNhdG9yXG4ubWFpbi1tZW51IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuYWN0aXZlLWluZGljYXRvciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtOHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YzNmQwYjtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuXG4gICAgICAgICYuaGlkZGVuIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgLmNhcnQtcHJldmlldyB7XG4gICAgICAgIC5ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMjEwcHg7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk5OTk5O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgICAgICAgJj51bCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1xdWFudGl0eSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZ3JleTtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnIHgnOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucmVtb3ZlLWZyb20tY2FydCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LXN1YnRvdGFscyxcbiAgICAgICAgICAgIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcnQtc3VtbWFyeS10b3RhbHMgLmNhcnQtc3VtbWFyeS10b3RhbHMgc3BhbixcbiAgICAgICAgICAgIC5jYXJ0LXRvdGFsIHNwYW4sXG4gICAgICAgICAgICAjY2FydC1zdW1tYXJ5PmRpdiBzcGFuLFxuICAgICAgICAgICAgLmNhcnQtc3VidG90YWxzPmRpdiBzcGFuLFxuICAgICAgICAgICAgLmNhcnQtdG90YWw+ZGl2IHNwYW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjY2FydC1zdW1tYXJ5PmRpdiBzcGFuLFxuICAgICAgICAgICAgLmNhcnQtc3VidG90YWxzPmRpdiBzcGFuLFxuICAgICAgICAgICAgLmNhcnQtdG90YWw+ZGl2IHNwYW4sXG4gICAgICAgICAgICAuY2FydC1zdW1tYXJ5LXRvdGFscyAuY2FydC1zdW1tYXJ5LXRvdGFscyBzcGFuLFxuICAgICAgICAgICAgLmNhcnQtdG90YWwgc3BhbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1zdW1tYXJ5LXRvdGFscyAuY2FydC1zdW1tYXJ5LXRvdGFscyxcbiAgICAgICAgICAgIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0cyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAuYm9keSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0aWNreS1tZW51LWNvbnRlbnQge1xuICAgICNibG9ja2NhcnQtd3JhcHBlciB7XG4gICAgICAgIC5jYXJ0LXByZXZpZXcge1xuICAgICAgICAgICAgLmJvZHkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zMDBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTYxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqXG4gKiBGb290ZXIgY3VzdG9taXNhdGlvbnNcbiAqL1xuXG4vLyAgUHJlRm9vdGVyXG4uY29udGFjdC1wcmVmb290ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3ByZWZvb3Rlci1iYWNrZ3JvdW5kLXBhdHRlcm4ucG5nJykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAzM3B4O1xuICAgIG1hcmdpbi1ib3R0b206IC0yOXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzM3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTE4cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2xpZ2h0LWdyYXktd2F2ZS1ib3RoLnBuZycpIHJlcGVhdC14O1xuICAgIH1cbiAgICAuY29udGFjdC1yb3cge1xuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgICAgICAucHJhY3RpY2FsLWluZm9ybWF0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jdXN0b21lci1zZXJ2aWNlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ibGFjaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzNweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG59XG5cbiNpbmRleCB7XG4gICAgLmNvbnRhY3QtcHJlZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNmb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxOHB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Zvb3Rlci10b3Atd2F2ZS5wbmcnKSByZXBlYXQteCBjZW50ZXIgdG9wO1xuICAgIC5mb290ZXItdG9wIHtcbiAgICAgICAgQGlmICgkaGFzLWhlYWRlci1iYXI9PXRydWUpIHtcbiAgICAgICAgICAgIC8vIE9uIHN1Yi1zaXRlcywgcmV2ZXJzZSBmb290ZXIgb3JkZXJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICY+LnJvdyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmVtYWlsX3N1YnNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcGFkZGluZzogNzBweCAwIDIwcHggMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvbG9nby1uZW9kaWYtZm9vdGVyLnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gbGVmdDtcbiAgICAgICAgLmZvb3Rlci1ibG9jayB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgICAgICAgICAgLmZvb3Rlci10aXRsZSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9zbGFzaC1vcmFuZ2UucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZm9vdGVyLWxpbmtzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAvLyBAZXh0ZW5kIC5zbWFsbC0xMjtcbiAgICAgICAgICAgICAgICAgICAgLy8gQGV4dGVuZCAubWVkaXVtLTY7XG4gICAgICAgICAgICAgICAgICAgIC8vIEBleHRlbmQgLmNvbHVtbnM7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIuXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGFjdC1saW5rIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkeWVsbG93LXZhcmlhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCR5ZWxsb3ctdmFyaWFudCwgMjAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZW1haWxfc3Vic2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIzN3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDY1cHggMCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4xNXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJG9yYW5nZSwgOCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5ub3RpZmljYXRpb24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAwICMwMDA7XG4gICAgICAgICAgICAgICAgICAgICYubm90aWZpY2F0aW9uLWVycm9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmLm5vdGlmaWNhdGlvbi1zdWNjZXNzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWNjZXNzLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBzLXNvY2lhbC1mb2xsb3cge1xuICAgICAgICAgICAgICAgIEBpZiAkc2ltcGxpZmllZC1mb290ZXI9PXRydWUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgJHNpbXBsaWZpZWQtZm9vdGVyPT10cnVlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYrdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4xNXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmZhY2Vib29rIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzYjU5OTggdXJsKCcuLi9pbWcvaWNvbi1mYWNlYm9vay5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzNiNTk5OCwgNyUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICYudHdpdHRlciBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNTVhY2VlIHVybCgnLi4vaW1nL2ljb24tdHdpdHRlci5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oIzU1YWNlZSwgMTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmluc3RhZ3JhbSBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNmE0NTNiIHVybCgnLi4vaW1nL2ljb24taW5zdGFncmFtLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjNmE0NTNiLCA1JSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb290ZXItc3ViLWxpbmtzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAycHggMCAzcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZvb3Rlci1ib3R0b20ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMThweCAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKipcbiAqIEhvbWVwYWdlIHN0eWxlc1xuICovXG4jaW5kZXgge1xuXHQjd3JhcHBlciB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0I21haW4ge1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0I2NvbnRlbnQge1xuXHRcdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmJyZWFkY3J1bWItaG9sZGVyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG4jYW5fYnJhbmRzbGlkZXItYmxvY2sge1xuXHRwYWRkaW5nOiA2MHB4IDAgNzBweCAwO1xuXHRoMiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNjBweDtcblx0fVxuXHRwIHtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaWJvbGQ7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDgwcHg7XG5cdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0fVxuXHR9XG5cdC5vd2wtY2Fyb3VzZWwge1xuXHRcdC5vd2wtcHJldiwgLm93bC1uZXh0IHtcblx0XHRcdHRvcDogNzBweDtcblx0XHR9XG5cdFx0Lm93bC1pdGVtIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc2hhZG93LWJyYW5kLWxvZ28ucG5nJykgbm8tcmVwZWF0IGNlbnRlciBib3R0b207XG5cdFx0XHQuYW5fYnJhbmRzbGlkZXItaXRlbSB7XG5cdFx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbiNibG9jay1yZWFzc3VyYW5jZSB7XG4gXHRwYWRkaW5nOiA1MHB4IDAgODBweCAwO1xuIFx0YmFja2dyb3VuZDogJGRhcmstcmVkIHVybCgnLi4vaW1nL2xvZ28tbmVvZGlmLXJlYXNzdXJhbmNlLnBuZycpIG5vLXJlcGVhdCByaWdodCBib3R0b207XG4gXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuIFx0XHRwYWRkaW5nOiA3MHB4IDAgOTBweCAwO1xuIFx0fVxuIFx0aDIge1xuIFx0XHRAZXh0ZW5kIC5kaWFnb25hbC1ibGFjaztcbiBcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuIFx0fVxuIFx0cCB7XG4gXHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcbiBcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuIFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDgwcHg7XG5cdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0fVxuIFx0fVxuIFx0dWwge1xuIFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuIFx0XHRcdG1hcmdpbi1ib3R0b206IDkwcHg7XG4gXHRcdH1cbiBcdFx0bGkge1xuIFx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG4gXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0fVxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHRcdC5pbWFnZS1ibG9jaywgc3BhbiB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRtYXJnaW46IGF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cbiBcdFx0XHQuaW1hZ2UtYmxvY2sge1xuIFx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiBcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiBcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogNzAlO1xuIFx0XHRcdFx0d2lkdGg6IDEyMHB4O1xuIFx0XHRcdFx0aGVpZ2h0OiA4NHB4O1xuIFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiBcdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBhdXRvO1xuIFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0XHRzcGFuIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHRcdFx0bWF4LXdpZHRoOiAxNjVweDtcbiBcdFx0XHR9XG4gXHRcdH1cbiBcdH1cbn1cblxuLmZzY2gtaG9tZS1ibG9jayB7XG5cdHBhZGRpbmc6IDYwcHggMCA4MHB4IDA7XG5cdGgyIHtcblx0XHRtYXJnaW4tYm90dG9tOiA2MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0Lm93bC1jYXJvdXNlbCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiBcdFx0XHRwYWRkaW5nOiAwIDcwcHggIWltcG9ydGFudDtcbiBcdFx0fVxuXHRcdC5vd2wtcHJldiwgLm93bC1uZXh0IHtcblx0XHRcdHRvcDogNjBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQub3dsLWl0ZW0ge1xuXHRcdFx0cGFkZGluZzogMCAxMHB4O1xuXHRcdFx0bWF4LWhlaWdodDogMTgwcHg7IFxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0YSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuXG4vKiogSW1wbGVtZW50IGNhcmQgc2xpZGVycyAqKi9cbmJvZHkgLnByZXN0YWJsb2dfc2xpZGUge1xuIFx0Ym94LXNoYWRvdzogbm9uZTtcbiBcdHBhZGRpbmc6IDUwcHggMDtcbiBcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gXHRcdHBhZGRpbmc6IDgwcHggMDtcbiBcdH1cbiBcdGgyIHtcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0QGluY2x1ZGUgY2FyZC1zbGlkZXIoICduZXdzJywgdHJ1ZSApO1xufVxuLyogQ2F2ZS1iYXJzICovXG5ib2R5IC5wcmVzdGFibG9nX3NsaWRlIHtcblx0LmFjdHVhbGl0ZS1jb2x1bW4ge1xuXHRcdEBpbmNsdWRlIGdyaWQtY29sKCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkLWNvbCg2KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcblx0XHR9XG5cdFx0QGluY2x1ZGUgY2FyZC1zbGlkZXIoICdzaW5nbGUtbmV3cycsIHRydWUgKTsgXG5cdH1cblx0LmV4Y2hhbmdlLWNvbHVtbiB7XG5cdFx0QGluY2x1ZGUgZ3JpZC1jb2woKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxuXHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2woNik7XG5cdFx0fVxuXHRcdC5leGNoYW5nZXMtaWNvbiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMTRweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDc1cHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXHRcdC5leGNoYW5nZXMtYnV0dG9uLWhvbGRlciB7XG5cdFx0XHRtYXJnaW4tdG9wOlx0NTBweDtcblx0XHR9XG5cdH1cbn1cblxuLyoqIENhdmlzdGVzICoqL1xuYm9keSAucHJlc3RhYmxvZ19zbGlkZS5zaW5nbGUtYXJ0aWNsZS1zbGlkZSB7XG5cdEBpbmNsdWRlIGdyaWQtY29sLXJvdygpO1xuXHRAaW5jbHVkZSBjYXJkLXNsaWRlciggJ3NpbmdsZS1uZXdzJywgdHJ1ZSApO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdC5zaW5nbGUtbmV3cy1zbGlkZXIge1xuXHRcdFx0LnNpbmdsZS1uZXdzLWJsb2NrIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3coKTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdC5zaW5nbGUtbmV3cy1pbWFnZSB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbCg2LCAwKTsgXG5cdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2RlY28tcm91bmQtZ3JheS1yb3RhdGVkLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRib3R0b206IDI1cHg7XG5cdFx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNpbmdsZS1uZXdzLWluZm8ge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sKDYpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qKiBJbXBvcnRhdGlvbiAqKi9cbmJvZHkgLnByZXN0YWJsb2dfc2xpZGUge1xuXHQuYWN0dWFsaXRlLWNvbHVtbi5zbGltbWVyIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkLWNvbCg0KTtcblx0XHR9XG5cdFx0Lm93bC1jYXJvdXNlbCB7XG5cdFx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdC5hY2NvbXBhZ25lbWVudC1jb2x1bW4ge1xuXHRcdEBleHRlbmQgLmV4Y2hhbmdlLWNvbHVtbjtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwMHB4O1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkLWNvbCg4KTtcblx0XHR9XG5cdFx0LmNvbHVtbntcblx0XHRcdC5zdGVwLWljb24ge1xuXHRcdFx0XHRib3JkZXI6IDNweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNDBweDtcblx0XHRcdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdFx0XHR3aWR0aDogODBweDtcblx0XHRcdFx0bWFyZ2luOiBhdXRvO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdC5zdGVwLW51bWJlciB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiA1MHB4O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pYm9sZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0aDMge1xuXHRcdFx0XHRAZXh0ZW5kIC5uby1kaWFnb25hbDtcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAzMHB4O1xuXHRcdFx0fVxuXHRcdFx0cCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4uaG9tZV9jYXRlZ29yaWVzIHtcblx0bWFyZ2luLXRvcDogODVweDtcblx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XG5cdEBpbmNsdWRlIGdyaWQtcm93KCk7XG5cdCNob21lY2F0ZWdvcmllcyB7XG5cdFx0QGluY2x1ZGUgZ3JpZC1jb2woKTtcblx0XHRAaW5jbHVkZSBjYXJkLXNsaWRlciggJ3Byb21vJyApO1xuXHRcdC5wcm9tby1ibG9jayB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGZsZXgtZ3JvdzogMDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgXG5cdFx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDsgXG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0LnByb21vLWJsb2NrIC5wcm9tby1pbWFnZSB7XG5cdFx0XHQvLyBwYWRkaW5nOiA0MXB4IDAgMzBweCAwOyAgXG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0YmFja2dyb3VuZDogd2hpdGU7IFxuXHRcdFx0aGVpZ2h0OiAyMjRweDsgXG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdC5jYXRlZ29yeS1pbWFnZSB7XG5cdFx0XHRcdC8vIG1heC13aWR0aDogMTUwcHg7XG5cdFx0XHRcdC8vIG1heC1oZWlnaHQ6IDE1MHB4O1xuXHRcdFx0XHQvLyBtYXJnaW46IGF1dG87XG5cdFx0XHRcdHdpZHRoOiBhdXRvOyBcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRtYXgtd2lkdGg6MTAwJTtcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wcm9tby1ibG9jayAucHJvbW8taW5mbyB7XG5cdFx0XHRmbGV4LWdyb3c6IDE7ICBcblxuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0fVxuXHRcdC5wcm9tby1zbGlkZXItYnJhc3NlcmllcyAucHJvbW8tYmxvY2sgLnByb21vLWltYWdlIHtcblx0XHRcdHBhZGRpbmc6IDQ4cHg7XG5cdFx0fVxuXHR9XG59XG5cbiNpbmRleCAucGFnZS1oZWFkZXIge1xuXHRoMSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4jcHJvbW8tYXJlYSB7XG5cdHBhZGRpbmc6IDE1MHB4IDA7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHBhZGRpbmctdG9wOiAzMHB4O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdH1cblx0LnNwaGVyZXMtY29udGFpbmVyIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMjAlO1xuXHRcdH1cblx0XHQuc3BoZXJlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0cGFkZGluZzogNTVweCAzNXB4IDg4cHggMzVweDtcblx0XHRcdG1heC13aWR0aDogNDE5cHg7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0cGFkZGluZzogMTBweDtcblx0XHRcdFx0d2lkdGg6IDIwMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDIwMHB4O1xuXHRcdFx0XHRsZWZ0OiAtNjhweDtcblx0XHRcdFx0dG9wOiAxMDBweFxuXHRcdFx0fVxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogLTIwcHg7XG5cdFx0XHRcdHJpZ2h0OiAtMjBweDtcblx0XHRcdFx0Ym90dG9tOiAtMjBweDtcblx0XHRcdFx0bGVmdDogLTIwcHg7XG5cdFx0XHRcdGJvcmRlcjogNHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHR9XG5cdFx0XHRoMiB7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblx0XHRcdFx0Zm9udC1zaXplOiAyNXB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYmxhY2s7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IG5vcm1hbDtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IDE4cHg7IFxuXHRcdFx0XHRcdG1heC13aWR0aDogMTAwcHg7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG8gMjBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0aDMge1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogNDVweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogNTBweDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogbm9ybWFsO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjNweDsgXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiAxNTBweDtcblx0XHRcdFx0XHRtYXJnaW46IGF1dG87XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRleHQge1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5zcGhlcmUtbGluayB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRtYXgtd2lkdGg6IDE5MHB4O1xuXHRcdFx0bWFyZ2luOiAtNTBweCBhdXRvIDAgYXV0bztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgNjhweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG5cdFx0XHRwYWRkaW5nOiAyNXB4IDM1cHggNDVweCAzNXB4O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0Y29sb3I6ICRsaWdodC1ncmF5O1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjM7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjE1cztcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogdXJsKCcuLi9pbWcvYXJyb3ctcmlnaHQtd2hpdGUucG5nJyk7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNnB4O1xuXHRcdFx0fVxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkb3JhbmdlLCA1JSk7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0bGVmdDogODhweDtcblx0XHRcdFx0dG9wOiA0MHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uZmVhdHVyZWQtcHJvZHVjdHMge1xuXHRwYWRkaW5nLXRvcDogNTBweDtcblx0cGFkZGluZy1ib3R0b206IDUwcHg7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuXHRcdHBhZGRpbmctdG9wOiAxMDRweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTA0cHg7XG5cdH1cblx0Ji5mZWF0dXJlZC1wcm9kdWN0cy5idXJndW5keS13YXZlLWNvbnRhaW5lciB7XG5cdFx0LnByb2R1Y3RzIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdFx0LnByb2R1Y3QtbWluaWF0dXJlIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0Lm93bC1kb3RzIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0XHQub3dsLXN0YWdlIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdFx0XHRcdC5vd2wtaXRlbSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuZmVhdHVyZWQtcHJvZHVjdHMtdGl0bGUtYmxvY2sge1xuXHRcdG1heC13aWR0aDogODgwcHg7XG5cdFx0bWFyZ2luOiAwIGF1dG87IFxuXHR9XG5cdC5wcm9kdWN0cyB7XG5cdFx0bWF4LXdpZHRoOiA5MTBweDsgXG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0LnByb2R1Y3QtbWluaWF0dXJlIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcblx0XHRcdC5wcm9kdWN0LWNvbnRhaW5lciB7XG5cdFx0XHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0XHRcdG1hcmdpbjogNXB4OyBcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0LnByb2R1Y3QtbmFtZSB7IFxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjA7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgIFxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LnByb2R1Y3QtcmVmZXJlbmNlIHtcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5zZWUtcHJvZHVjdCB7XG5cdFx0XHRcdFx0QGV4dGVuZCAuYnRuLnRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmFkZC10by1jYXJ0LCAuc2VlLXByb2R1Y3Qge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogNDJweDtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDIwMHB4O1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGxlZnQ6IDIwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyoqIEZvciB0d28gdXAgKiovXG5cdCYudHdvLXVwIHtcblx0XHQucHJvZHVjdHMge1xuXHRcdFx0bWF4LXdpZHRoOiAxMTAwcHg7IFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNzBweDtcblx0XHRcdH1cblx0XHRcdC5wcm9kdWN0LW1pbmlhdHVyZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sKDEyKTtcblx0XHRcdFx0Ly8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0Ly8gXHRAaW5jbHVkZSBncmlkLWNvbCg2KTtcblx0XHRcdFx0Ly8gfVxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdC5wcm9kdWN0LWNvbnRhaW5lciB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHQubmFtZS1yb3cge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3coKTtcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0Lm5hbWUtY29se1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbCgxMiwgMCk7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2woOCwgMClcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRoMywgLnByb2R1Y3QtcmVmZXJlbmNlIHt0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7fVxuXHRcdFx0XHRcdFx0XHQucHJvZHVjdC1yZWZlcmVuY2Uge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjA7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQuYWRkLXRvLWZhdi1jb2wge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbCgxMiwgMCk7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2woNCwgMClcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuYWRkLXRvLWZhdm91cml0ZXMge1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC50aHVtYm5haWwtaG9sZGVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sKDUsIDApO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0XHQucHJvZHVjdC10aHVtYm5haWwge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwXG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LnByb2R1Y3QtYXR0cmlidXRlLCAucHJvZHVjdC1saXN0LWFjdGlvbnN7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7IFxuXHRcdFx0XHRcdFx0XHR3aWR0aDogNTQlO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQucHJvZHVjdC1hdHRyaWJ1dGUge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMzBweDtcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5wcm9kdWN0LWxpc3QtYWN0aW9ucyB7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbCg3LCAwKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC8vIHBhZGRpbmctbGVmdDogMzBweDtcblx0XHRcdFx0XHRcdC8vIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0LnNob3BwaW5nLWxpc3Qge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0XHR0b3A6IDMycHg7XG5cdFx0XHRcdFx0XHRcdFx0cmlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdHdpZHRoOiA0cHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHJpZ2h0OiAtMnB4O1xuXHRcdFx0XHRcdHRvcDogMTMlO1xuXHRcdFx0XHRcdGJvdHRvbTogNiU7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc2VwLnBuZycpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG5cdFx0XHRcdH0gXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDJuKSB7XG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmdyZXktd2F2ZS1jdGEge1xuXHRAZXh0ZW5kIC5ncmF5LXdhdmUtY29udGFpbmVyO1xuXHRwYWRkaW5nLXRvcDogNjBweDtcblx0cGFkZGluZy1ib3R0b206IDMwcHg7XG59IiwiLyoqXG4gKiBQcm9kdWN0IExpc3Qgc3R5bGVzXG4gKi9cbiBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuLnN1YmNhdGVnb3JpZXMge1xuICAgIEBpbmNsdWRlIGNhcmQtc2xpZGVyKCdjYXRlZ29yeS1taW5pYXR1cmUnKTtcbiAgICAuY2F0ZWdvcnktbWluaWF0dXJlLWJsb2NrIHtcbiAgICAgICAgLmNhdGVnb3J5LW1pbmlhdHVyZS1pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAzOHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jYXRlZ29yeS1taW5pYXR1cmUtaW5mbyB7XG4gICAgICAgICAgICAuY2F0ZWdvcnktbWluaWF0dXJlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0LWxpc3Qtc2VjdGlvbiB7XG4gICAgaDEsXG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICAjY2F0ZWdvcnktZGVzY3JpcHRpb24ge1xuICAgICAgICAvLyBAaW5jbHVkZSBncmlkLWNvbCgxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIC8vIFx0QGluY2x1ZGUgZ3JpZC1jb2woMTEpO1xuICAgICAgICAvLyBcdGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIFx0Y2xlYXI6IGJvdGg7XG4gICAgICAgIC8vIFx0bWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIC8vIFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAvLyBcdG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIC8vIH1cbiAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvLyBcdEBpbmNsdWRlIGdyaWQtY29sKDkpO1xuICAgICAgICAvLyB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtZmlsdGVyLWNvbHVtbnMtY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlci1jb2x1bW4ge1xuICAgICAgICAgICAgLy8gQGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woMyk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC1saXN0LWNvbHVtbiB7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBncmlkLWNvbCgxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgICNwcm9kdWN0cyB7XG4gICAgICAgIC5maWx0ZXItY29sdW1uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAuY2F0ZWdvcnktdHJlZSB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoJy4uL2ltZy9jaGV2cm9uLXNvdXMtbWVudS1ibGFjay5wbmcnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mYWNldC1zZWFyY2gge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmFjdGl2ZV9maWx0ZXJzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAuYWN0aXZlLWZpbHRlcnMtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnJlbW92ZS1maWx0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29uLWNyb2l4LnBuZycpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAucmVzZXQtZmlsdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZmFjZXRzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheS0yO1xuICAgICAgICAgICAgICAgICAgICAuZmFjZXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mYWNldC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1nL2Fycm93LW1lZGl1bS1ib3R0b20ucG5nJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZmFjZXQtZmllbGRzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAzMHB4IDhweCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgdXJsKCcuLi9pbWcvYXJyb3ctc21hbGwtYm90dG9tLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5qcy1zbGlkZXItbWluLWxhYmVsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5qcy1zbGlkZXItbWF4LWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5qcy1zbGlkZXItbWF4LWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICYuaXMtb3BlbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZhY2V0LWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mYWNldC1maWVsZHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1Y3RzLXNlbGVjdGlvbiB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAubmItcHJvZHVjdHMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1Y3RzLXNvcnQtb3JkZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggNDBweCAxMXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXktMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjE1cztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRsaWdodC1ncmF5LTIsIDUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Fycm93LXNtYWxsLWJvdHRvbS5wbmcnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddPmE6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1Y3RzLWRpc3BsYXktdHlwZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgICAgICAgICAgICAgJi5pcy1hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5Om5vdCguaXMtc2FmYXJpKSAucHJvZHVjdHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4vLyBQcm9kdWN0IEJsb2NrIFN0eWxlc1xuLnByb2R1Y3QtbWluaWF0dXJlIHtcbiAgICAvLyBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIEBpbmNsdWRlIGdyaWQtY29sKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg0LFxuICAgICAgICAwKTtcbiAgICAgICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgzLFxuICAgICAgICAwKTtcbiAgICAgICAgJjpudGgtY2hpbGQoNG4rMSkge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZCgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4xNXM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1Y3QtZmxhZ3Mge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMzhweDtcbiAgICAgICAgICAgIG1hcmdpbjogLTMwcHggLTMwcHggMTJweCAtMzBweDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTNweCAxNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5MWFjMzk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5OWRlZywgIzkxYWMzOSwgIzkxYWMzOSA4cHgsIHRyYW5zcGFyZW50IDhweCwgdHJhbnNwYXJlbnQgNjBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYmxhY2s7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzMHB4IDNweCAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC1yZWZlcmVuY2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBtYXJnaW46IDAgMzBweCAyMHB4IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMzBweCAyNXB4IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRodW1ibmFpbC1zbWFsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5wcm9kdWN0LWF0dHJpYnV0ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIC5zaG9wcGluZy1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5zZWUtcHJvZHVjdCB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5idG47XG4gICAgICAgICAgICBAZXh0ZW5kIC5idG4uaWNvbjtcbiAgICAgICAgICAgIEBleHRlbmQgLmJ0bi5pY29uLnBsdXM7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5hZGQtdG8tY2FydCB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5hZGQtdG8tY2FydC1idXR0b247XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICYubG9hZGluZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0Ym9yZGVyOiA2cHggc29saWQgI2YzZjNmMzsgXG5cdFx0XHRcdFx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjMpOyBcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDExcHg7XG5cdFx0XHRcdH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTWFudWZhY3R1cmVyIHBhZ2UgXG4ucGFnZS1tYW51ZmFjdHVyZXIsXG4ucGFnZS1zdXBwbGllciB7XG4gICAgI21haW4gaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICAuZmlsdGVyLWNvbHVtbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5icmFuZC1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB9XG4gICAgI21hbnVmYWN0dXJlci1jaXR5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH0gLy8gQnJhbmQgdGFic1xuICAgIC5icmFuZC10YWJzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgLnRhYnMsXG4gICAgICAgIC5hY2NvcmRpb24ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXI6bm90KFthcmlhLXNlbGVjdGVkPSd0cnVlJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJG9yYW5nZSwgMzAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI21haW4gLmJyYW5kcy1saXN0IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgIC5icmFuZCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDEyKTtcbiAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDYpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDQpO1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5icmFuZC1jb250YWluZXIge1xuICAgICAgICAgICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgICAgICAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jay5wYWRkaW5nLXNpZGVzO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2RlY28tcm91bmQtZ3JheS5wbmcnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLmJyYW5kLWltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyNXB4O1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5icmFuZC1kZXNjIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5uby1kaWFnb25hbDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIExpc3Qgc3R5bGUgXG4gKlxuICovXG5cbiNqcy1wcm9kdWN0LWxpc3QubGlzdC1zdHlsZS1saXN0IHtcbiAgICAucm93LnByb2R1Y3RzLmxhcmdlLXVwLTMge1xuICAgICAgICAmPi5jb2x1bW4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1tYWluLWluZm8ge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAyNyU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAudGh1bWJuYWlsLXNtYWxsIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAxMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICAgICAgICY+LnRodW1ibmFpbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWZsYWdzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAtMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtcmVmZXJlbmNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByb2R1Y3RfYXR0cmlidXRlcyB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc2VlLXByb2R1Y3Qge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5idG4uc21hbGw7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hZGQtdG8tY2FydCB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmJ0bi5zbWFsbDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqXG4gKiBTaW5nbGUgUHJvZHVjdCBQYWdlIHN0eWxlc1xuICovXG5cbiNwcm9kdWN0IHtcblx0LnByb2R1Y3QtZmxhZ3Mge1xuXHRcdG1pbi1oZWlnaHQ6IDM4cHg7XG5cdFx0bWFyZ2luOiAwIDAgMTVweCAwO1xuXHRcdGxpIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBhZGRpbmc6IDEzcHggMTVweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICM5MWFjMzk7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0fVxuXHR9XG5cdC5pbWFnZXMtY29udGFpbmVyIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdFx0fVxuXHRcdC5wcm9kdWN0LWNvdmVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cdFx0fVxuXHRcdC5wcm9kdWN0LWltYWdlcyB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0XHRsaSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdFx0d2lkdGg6IDQ4JTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnByb2R1Y3QtaW5mb3JtYXRpb24ge1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcblx0XHRwYWRkaW5nLWJvdHRvbTogMzVweDtcblx0XHRtYXJnaW4tYm90dG9tOiAzNXB4O1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuXHRcdCNwcm9kdWN0LXJlZmVyZW5jZSB7XG5cdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHQucmVmLWxhYmVsIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0XHR9XG5cdFx0XHQucmVmIHtcblx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucHJvZHVjdC1wcmljZXMge1xuXHRcdFx0LnByb2R1Y3QtcHJpY2Uge1xuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRcdCNvbmx5LXByaWNlIHtcblx0XHRcdFx0XHQvLyBmb250LXNpemU6IDQwcHg7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5kaXNjb3VudC1wZXJjZW50YWdlIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0cGFkZGluZzogNXB4O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmFldWNfZGVsaXZlcnlfbGFiZWwge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0I3Byb2R1Y3QtZGVzY3JpcHRpb24ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHR9XG5cdFx0LnByb2R1Y3QtZmVhdHVyZXMge1xuXHRcdFx0dWwge1xuXHRcdFx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnByb2R1Y3QtdmFyaWFudHMge1xuXHRcdHVsIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0bGkge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdC5wc2V1ZG8tY2hlY2sge1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5jb2xvci1uYW1lIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXHRcdFx0XHR9XG5cdFx0XHRcdC5jb2xvci1zd2F0Y2gge1xuXHRcdFx0XHRcdGhlaWdodDogMTVweDtcblx0XHRcdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogN3B4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5wcm9kdWN0LWFjdGlvbnMge1xuXHRcdC5wcm9kdWN0LXF1YW50aXR5IHtcblx0XHRcdGxhYmVsIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHR9XG5cdFx0XHQuZGVjcmVhc2UtcHJvZHVjdC1xdWFudGl0eSwgLmluY3JlYXNlLXByb2R1Y3QtcXVhbnRpdHkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdG1hcmdpbjogMCAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHRcdFx0d2lkdGg6IDIwcHg7XG5cdFx0XHRcdGhlaWdodDogMjBweDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdH1cblx0XHRcdGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHQgICAgd2lkdGg6IGF1dG87XG5cdFx0XHQgICAgbWF4LXdpZHRoOiA4MHB4O1xuXHRcdFx0ICAgIGhlaWdodDogYXV0bztcblx0XHRcdCAgICBtYXJnaW46IDA7XG5cdFx0XHQgICAgcGFkZGluZzogNXB4IDE1cHg7XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRsaWdodC1ncmF5O1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHQmOnZhbGlkIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQvKiBIaWRlIEhUTUw1IFVwIGFuZCBEb3duIGFycm93cyAqL1xuXHRcdFx0aW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiwgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG5cdFx0XHQgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRcdFx0ICAgIG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHRcdGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHRcdFx0ICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQjcHJvZHVjdC1wcmljZS1zdW0ge1xuXHRcdFx0Zm9udC1zaXplOiA0MHB4O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrXG5cdFx0fVxuXHRcdC5hZGQtdG8tY2FydC1idXR0b24ge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHR9XG5cdFx0XHQmLmxvYWRpbmcge1xuXHRcdFx0XHRcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuI21haW4gLnBzX2Nyb3Nzc2VsbGluZ3tcblx0bWFyZ2luLXRvcDogNzBweDtcblx0aDIge1xuXHRcdEBleHRlbmQgLm5vLWRpYWdvbmFsO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblx0LnByb2R1Y3RzIHtcblxuXHR9XG59IiwiLyoqXG4gICAgQ2FydCBDU1MgXG4gICAgKi9cblxuLmNhcnQtb3ZlcnZpZXcge1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIHVsIHtcbiAgICAgICAgLmNhcnQtaXRlbSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICY+c3BhbiB7XG4gICAgICAgICAgICAgICAgLy8gQWxsIGNhcnQtaXRlbSBpbmZvcyBcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHhcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJvZHVjdC1hdHRyaWJ1dGVzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBzcGFuLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJvZHVjdC1hdmFpbGFiaWxpdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1Y3QtdW5pdC1wcmljZSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcgeCc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1Y3QtcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5qcy1kZWNyZWFzZS1wcm9kdWN0LXF1YW50aXR5LFxuICAgICAgICAgICAgLmpzLWluY3JlYXNlLXByb2R1Y3QtcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5xdWFudGl0eS11cGRhdGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC51cGRhdGUtcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zbWFsbC10ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycywgb3BhY2l0eSAwLjJzO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzU1NSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYud2FybmluZyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZjgwYzBjO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2l0ZW1zLXN1YnRvdGFsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIC50b3RhbC1hbW91bnQge1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJy8vJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJ0LXZvdWNoZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg2KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKDYpO1xuICAgIH1cbiAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jaztcbiAgICBoMiB7XG4gICAgICAgIEBleHRlbmQgLm5vLWRpYWdvbmFsO1xuICAgIH1cbiAgICAmPnVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAmPmxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3Bhbi5sYWJlbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICBhLnJlbW92ZS12b3VjaGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ3gnO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJ0LWRldGFpbGVkLXRvdGFscyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDYpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoNik7XG4gICAgfVxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbG91ZC1ncmF5O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHNwYW4ubGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuXG4uY2FydC1zdWJ0b3RhbHMsXG4uY2FydC10b3RhbCxcbiNjYXJ0LXN1bW1hcnkge1xuICAgICY+ZGl2IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3Q7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woNik7XG4gICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3Bhbi5sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cbi5jYXJ0LXRvdGFsLFxuLmNhcnQtc3VtbWFyeS10b3RhbHMgLmNhcnQtc3VtbWFyeS10b3RhbHMge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYm9yZGVyLWdyYXk7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcbiAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woNik7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgfVxuICAgIHNwYW4ubGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuXG4uY29udGludWUtc2hvcHBpbmcge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm9yZGVyLWJ1dHRvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5jYXJ0LWNtcy1ibG9jayB7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2sucGFkZGluZy1zaWRlcztcbn1cblxuLyoqIG1vZGFsICoqL1xuXG4jYWRkLXRvLWNhcnQtbW9kYWwge1xuICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI3cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5mYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAmLmZhLWNoZWNrIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzM0YzU3ZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZmEtd2FybmluZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM4NjAwMDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYmxhY2s7XG4gICAgfVxuICAgIC5wcmljZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ibGFjaztcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgICAubW9kYWwtYWN0aW9ucyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5wcm9kdWN0LXVwZGF0ZS1xdWFudGl0eS1zcGlubmVyLFxuLnByb2R1Y3QtdXBkYXRlLXF1YW50aXR5LXNwaW5uZXI6YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogMTBlbTtcbiAgICBoZWlnaHQ6IDEwZW07XG59XG5cbi5wcm9kdWN0LXVwZGF0ZS1xdWFudGl0eS1zcGlubmVyIHtcbiAgICBtYXJnaW46IDYwcHggYXV0bztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgIGJvcmRlci10b3A6IDEuMWVtIHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICBib3JkZXItcmlnaHQ6IDEuMWVtIHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICBib3JkZXItYm90dG9tOiAxLjFlbSBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgYm9yZGVyLWxlZnQ6IDEuMWVtIHNvbGlkICNmZmZmZmY7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGxvYWQ4IDEuMXMgaW5maW5pdGUgbGluZWFyO1xuICAgIGFuaW1hdGlvbjogbG9hZDggMS4xcyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsb2FkOCB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbG9hZDgge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG4ucHJvZHVjdC11cGRhdGUtcXVhbnRpdHktc3Bpbm5lciB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnF1YW50aXR5LXBhbmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4O1xuICAgICYuaXMtc2hvd24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGxpZ2h0LWdyYXksIDE1JSk7XG4gICAgICAgIC5wcm9kdWN0LXVwZGF0ZS1xdWFudGl0eS1zcGlubmVyIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqIENoZWNrb3V0ICoqL1xuXG4vKiogUmV0dXJuIHRvIGNoZWNrb3V0IGJ1dHRvbiAqKi9cbi5hZXVjX3NjYXJ0IHtcbiAgICBhIHtcbiAgICAgICAgQGV4dGVuZCAuYnRuO1xuICAgICAgICBAZXh0ZW5kIC5idG4uaWNvbjtcbiAgICAgICAgQGV4dGVuZCAuYnRuLmljb24uYXJyb3c7XG4gICAgICAgIEBleHRlbmQgLmJ0bi5pY29uLmFycm93LmFycm93LWxlZnQ7XG4gICAgfVxufVxuLmNhcnQtc3VtbWFyeS1zdHJpbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbn1cbiNvcmRlci1jb25maXJtYXRpb24ge1xuICAgICNjb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbiNjYXJ0LXN1bW1hcnktcHJvZHVjdC1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg2KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oY2VudGVyKTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgLnByb2R1Y3QtcXVhbnRpdHkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcgeCAnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1Y3QtcHJpY2Uge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyDigJMgJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNjaGVja291dCB7XG4gICAgLmNhcnQtdm91Y2hlciB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgIH1cbn1cblxuI2NhcnQtc3VtbWFyeSwgLmNhcnQtc3VtbWFyeS10b3RhbHMge1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDYpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihjZW50ZXIpO1xuICAgIH1cbn1cblxuLmNhcnQtc3VtbWFyeS10b3RhbHMge1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgICBzcGFuLmxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLyoqIFN0ZXBzICoqL1xuXG4uY2hlY2tvdXQtc3RlcCB7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woOSk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGNlbnRlcik7XG4gICAgfVxuICAgIC8vIFN0YXRlc1xuICAgICYuLXVucmVhY2hlYWJsZSB7IFxuICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJpYyBlbGVtZW50c1xuICAgICY+aDEge1xuICAgICAgICAuc3RlcC1udW1iZXIge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJy4nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZm9vdGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAvKiBQZXJzb25hbCBpbmZvICovXG4gICAgLmZvcm0tZmllbGRzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgLmFscmVhZHktaGFzLWFjY291bnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyLWdyYXk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgLmd1ZXN0LWNoZWNrb3V0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLmpzLWFkZHJlc3MtZm9ybSB7XG4gICAgICAgICY+Zm9ybSBhIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKiBBZGRyZXNzZXMgKiovXG4uYWRkcmVzcy1zZWxlY3RvciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICAuYWRkcmVzcy1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woNCk7XG4gICAgICAgIH1cbiAgICAgICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrLndoaXRlO1xuICAgIH1cbn1cblxuLmRlbGl2ZXJ5LW9wdGlvbnMge1xuICAgIC5kZWxpdmVyeS1vcHRpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBheW1lbnQtb3B0aW9ucyB7XG4gICAgLmpzLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24ge1xuICAgICAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jaztcbiAgICAgICAgQGV4dGVuZCAucGFuZWwtYmxvY2sud2hpdGU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBwLCBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4jY29uZGl0aW9ucy10by1hcHByb3ZlLCAucGF5bWVudC1vcHRpb25zIHtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBsaSwgZGl2LnBheW1lbnQtb3B0aW9uIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4jcGF5bWVudC1jb25maXJtYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2NvbnRlbnQtaG9va19wYXltZW50X3JldHVybiB7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2sucGFkZGluZy1zaWRlcztcblxuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuI2NvbnRlbnQtaG9va19vcmRlcl9jb25maXJtYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBoMyB7XG4gICAgICAgIEBleHRlbmQgLm5vLWRpYWdvbmFsO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbn1cblxuI29yZGVyLWl0ZW1zIHtcbiAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jaztcbiAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jay5wYWRkaW5nLXNpZGVzO1xuICAgIHRhYmxlIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jb3JkZXItZGV0YWlscyB7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgQGV4dGVuZCAucGFuZWwtYmxvY2sucGFkZGluZy1zaWRlcztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2xhc3MtcGlja3VwLWNhbGxvdXQge1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrLmRhcms7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBAaW5jbHVkZSBncmlkLWNvbCgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDgpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg2KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgfVxufSIsIi5sb2dpbi1mb3JtLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbn1cblxuLnBhZ2UtbXktYWNjb3VudCB7XG4gICAgLmxpbmstbGlzdCB7XG4gICAgICAgIEBleHRlbmQgLm1lbnU7XG4gICAgICAgIEBleHRlbmQgLm1lbnUudmVydGljYWw7XG4gICAgICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgICAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jay5wYWRkaW5nLXNpZGVzO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvYXJyb3ctcmlnaHQtb3JhbmdlLnBuZycpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI3cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdlLWN1c3RvbWVyLWFjY291bnQge1xuICAgICNjb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG59XG5cbi8vIEZvb3RlciBcbi5teS1hY2NvdW50LWxpbmtzIHtcbiAgICBAZXh0ZW5kIC5tZW51O1xuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG59XG5cbi5teS1hY2NvdW50LWhhcy1uYXYge1xuICAgIC5teS1hY2NvdW50LW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woMyk7XG4gICAgICAgIH1cbiAgICAgICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrLnBhZGRpbmctc2lkZXM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgIC5uYXYtdGl0bGUge1xuICAgICAgICAgICAgQGV4dGVuZCAubm8tZGlhZ29uYWw7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGV4dGVuZCAubWVudTtcbiAgICAgICAgICAgIEBleHRlbmQgLm1lbnUudmVydGljYWw7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LW9yYW5nZS5wbmcnKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI3cHg7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJG9yYW5nZSwgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAjY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDEyKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woOSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZGRyZXNzZXMge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsXG4gICAgJy5hZGRyZXNzJyxcbiAgICAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLFxuICAgICAgICAnLmFkZHJlc3MnLFxuICAgICAgICAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLFxuICAgICAgICAnLmFkZHJlc3MnLFxuICAgICAgICAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgLmFkZHJlc3Mge1xuICAgICAgICBAZXh0ZW5kIC5wYW5lbC1ibG9jaztcbiAgICAgICAgLmFjdGlvbi1saXN0IHtcbiAgICAgICAgICAgIEBleHRlbmQgLm1lbnU7XG4gICAgICAgICAgICBAZXh0ZW5kIC5tZW51Lmhvcml6b250YWw7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2N1c3RvbWVyLWZvcm0ge1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrO1xuICAgIEBleHRlbmQgLnBhbmVsLWJsb2NrLnBhZGRpbmctc2lkZXNcbn1cblxuI3Nob3BwaW5nLWxpc3Qge1xuICAgIHRoZWFkIHtcbiAgICAgICAgdGg6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGQubGlzdC1jaGVja2JveCB7XG4gICAgICAgICY+ZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xM3B4O1xuICAgICAgICAgICAgJj5pbnB1dCB7fVxuICAgICAgICB9XG4gICAgfVxuICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbn1cbiNtYWluIHtcblxuICAgIC5kYXRhVGFibGVzX2xlbmd0aCwgLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgICAgICAgbGFiZWx7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHNlbGVjdCwgaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCwgdGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLCB0YWJsZS5kYXRhVGFibGUubm8tZm9vdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gICAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBAZXh0ZW5kIC5idG47XG4gICAgfVxuICAgIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50LCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgQGV4dGVuZCAuYnRuO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkeWVsbG93OyAgXG4gICAgfVxufSIsIiNtb2R1bGUtcHJlc3RhYmxvZy1ibG9nIHtcbiAgICAjY29udGVudC13cmFwcGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgI21haW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ycnNzYi1idXR0b25zIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEzMHB4O1xuICAgICAgICAgICAgICAgIGxpIGEgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNpZGViYXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg0KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaDEsIGgyLCBoMywgaDQge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLnRpdGxlLWJnLWRpYWdvbmFsO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYmxhY2s7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMywgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3ByZXN0YWJsb2dfbWVudV9jYXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IFxufVxuXG4jbW9kdWxlLXByZXN0YWJsb2ctYmxvZyB7XG4gICAgZGl2LnByZXN0YWJsb2dfcGFnaW5hdGlvbiB7XG4gICAgICAgIHNwYW4uY3VycmVudCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazsgXG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zaWRlYmFyIHtcbiAgICAgICAgLmVtYWlsX3N1YnNjcmlwdGlvbiB7XG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmJ0bjtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5idG4uc21hbGw7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuYnRuLnllbGxvdztcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5idG4uZmlsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI25lb2RpZl9ibG9nX2xpc3Qge1xuICAgIFxuICAgIFxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IFxuICAgICY+bGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGNhcmQtc2xpZGVyKCAnbmV3cy1saXN0JywgdHJ1ZSApO1xuXG4gICAgICAgIC5uZXdzLWxpc3QtYmxvY2sge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLm5ld3MtbGlzdC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woMTIsIDApO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woNiwgMCk7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9kZWNvLXJvdW5kLWdyYXktcm90YXRlZC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5uZXdzLWxpc3QtaW5mbyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCg2KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5uZXdzLWxpc3QtdGl0bGUgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5uZXdzLWxpc3QtZGF0ZSB7XG4gICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yaWVfYmxvZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG9yYW5nZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIjbW9kdWxlLXhlbmZvcnVtLWhvbWUsXG4jbW9kdWxlLXhlbmZvcnVtLWNhdGVnb3J5IHtcbiAgICAjd3JhcHBlciB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gICAgICAgICNsZWZ0LWNvbHVtbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKDMpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5sZWZ0LWNvbHVtbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woOSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHlbaWRePVwibW9kdWxlLXhlbmZvcnVtLVwiXSB7XG4gICAgI3dyYXBwZXIge1xuICAgICAgICAucGFnZS1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3dyYXBwZXIgLmJsb2d2aWV3IHtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICAgIC5ibG9nX3RpdGxlLFxuICAgIC5tYWluX3RpdGxlIHtcbiAgICAgICAgQGV4dGVuZCAudGl0bGUtYmctZGlhZ29uYWw7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJsYWNrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgZmllbGRzZXQge1xuICAgICAgICBzcGFuLmlubGluZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgLyogRmlyZWZveCAxOSsgKi9cbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgLyogSUUgMTArICovXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAvKiBGaXJlZm94IDE4LSAqL1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfSAvLyBzcGFuLmlubGluZSArIHNwYW4uaW5saW5lIHtcbiAgICAvLyAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIC8vIH1cbn1cblxuLnNpZGViYXIge1xuICAgIC5zZWNvbmRhcnlDb250ZW50IHtcbiAgICAgICAgQGV4dGVuZCAucGFuZWwtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICAgIC5mb3JtLXNlYXJjaCBpbnB1dCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5zaWRlYmFyIC5zZWN0aW9uIC5wcmltYXJ5Q29udGVudCBoMyxcbi5zaWRlYmFyIC5zZWN0aW9uIC5zZWNvbmRhcnlDb250ZW50IGgzLFxuLnNpZGViYXIgLnNlY29uZGFyeUNvbnRlbnQgaDMsXG4ucHJvZmlsZVBhZ2UgLm1hc3QgLnNlY3Rpb24uaW5mb0Jsb2NrIGgzIHtcbiAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYmxhY2s7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbn1cblxuI3dyYXBwZXIge1xuICAgIC50b3BDdHJsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgICAuYXZhdGFySG9tZSAuYXZhdGFyIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG59Il19 */
